Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / ndp / clr / src / BCL / System / Security / Cryptography / RC2.cs / 1 / RC2.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== // // RC2.cs // namespace System.Security.Cryptography { [System.Runtime.InteropServices.ComVisible(true)] public abstract class RC2 : SymmetricAlgorithm { protected int EffectiveKeySizeValue; private static KeySizes[] s_legalBlockSizes = { new KeySizes(64, 64, 0) }; private static KeySizes[] s_legalKeySizes = { new KeySizes(40, 1024, 8) // 1024 bits is theoretical max according to the RFC }; // // protected constructors // protected RC2() { KeySizeValue = 128; BlockSizeValue = 64; FeedbackSizeValue = BlockSizeValue; LegalBlockSizesValue = s_legalBlockSizes; LegalKeySizesValue = s_legalKeySizes; } // // public properties // public virtual int EffectiveKeySize { get { if (EffectiveKeySizeValue == 0) return KeySizeValue; return EffectiveKeySizeValue; } set { if (value > KeySizeValue) { throw new CryptographicException(Environment.GetResourceString("Cryptography_RC2_EKSKS")); } else if (value == 0) { EffectiveKeySizeValue = value; } else if (value < 40) { throw new CryptographicException(Environment.GetResourceString("Cryptography_RC2_EKS40")); } else { if (ValidKeySize(value)) EffectiveKeySizeValue = value; else throw new CryptographicException(Environment.GetResourceString("Cryptography_InvalidKeySize")); } } } public override int KeySize { get { return KeySizeValue; } set { if (value < EffectiveKeySizeValue) throw new CryptographicException(Environment.GetResourceString("Cryptography_RC2_EKSKS")); base.KeySize = value; } } // // public methods // new static public RC2 Create() { return Create("System.Security.Cryptography.RC2"); } new static public RC2 Create(String AlgName) { return (RC2) CryptoConfig.CreateFromName(AlgName); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== // // RC2.cs // namespace System.Security.Cryptography { [System.Runtime.InteropServices.ComVisible(true)] public abstract class RC2 : SymmetricAlgorithm { protected int EffectiveKeySizeValue; private static KeySizes[] s_legalBlockSizes = { new KeySizes(64, 64, 0) }; private static KeySizes[] s_legalKeySizes = { new KeySizes(40, 1024, 8) // 1024 bits is theoretical max according to the RFC }; // // protected constructors // protected RC2() { KeySizeValue = 128; BlockSizeValue = 64; FeedbackSizeValue = BlockSizeValue; LegalBlockSizesValue = s_legalBlockSizes; LegalKeySizesValue = s_legalKeySizes; } // // public properties // public virtual int EffectiveKeySize { get { if (EffectiveKeySizeValue == 0) return KeySizeValue; return EffectiveKeySizeValue; } set { if (value > KeySizeValue) { throw new CryptographicException(Environment.GetResourceString("Cryptography_RC2_EKSKS")); } else if (value == 0) { EffectiveKeySizeValue = value; } else if (value < 40) { throw new CryptographicException(Environment.GetResourceString("Cryptography_RC2_EKS40")); } else { if (ValidKeySize(value)) EffectiveKeySizeValue = value; else throw new CryptographicException(Environment.GetResourceString("Cryptography_InvalidKeySize")); } } } public override int KeySize { get { return KeySizeValue; } set { if (value < EffectiveKeySizeValue) throw new CryptographicException(Environment.GetResourceString("Cryptography_RC2_EKSKS")); base.KeySize = value; } } // // public methods // new static public RC2 Create() { return Create("System.Security.Cryptography.RC2"); } new static public RC2 Create(String AlgName) { return (RC2) CryptoConfig.CreateFromName(AlgName); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- SemaphoreFullException.cs
- FtpWebResponse.cs
- ThreadExceptionEvent.cs
- OpacityConverter.cs
- MissingMemberException.cs
- MemberAccessException.cs
- unsafeIndexingFilterStream.cs
- validation.cs
- WebPartCloseVerb.cs
- QuadraticBezierSegment.cs
- DocumentViewerConstants.cs
- StreamingContext.cs
- CompositionAdorner.cs
- FixedSOMPageElement.cs
- UInt16.cs
- SiteMapNode.cs
- ListViewGroupItemCollection.cs
- OutputCacheSection.cs
- DescendantOverDescendantQuery.cs
- xmlformatgeneratorstatics.cs
- SystemColors.cs
- SmtpLoginAuthenticationModule.cs
- DataError.cs
- WebPartConnectionsConnectVerb.cs
- AssemblyCache.cs
- HTMLTagNameToTypeMapper.cs
- EventPropertyMap.cs
- DataIdProcessor.cs
- TextAdaptor.cs
- XmlAtomicValue.cs
- SHA1Managed.cs
- InputScopeManager.cs
- DesignerForm.cs
- DetailsViewDeletedEventArgs.cs
- BindingManagerDataErrorEventArgs.cs
- DependencyObjectType.cs
- IndicFontClient.cs
- EventHandlersStore.cs
- ZipIOModeEnforcingStream.cs
- StrokeCollection2.cs
- NamespaceList.cs
- NamedPipeWorkerProcess.cs
- FrameworkObject.cs
- UserInitiatedNavigationPermission.cs
- ScaleTransform.cs
- CodeDefaultValueExpression.cs
- ColumnClickEvent.cs
- DescendantQuery.cs
- DrawingBrush.cs
- OptimizedTemplateContent.cs
- FixedSchema.cs
- ScriptControl.cs
- BitmapFrameEncode.cs
- SQLDouble.cs
- WebConfigurationHost.cs
- ResetableIterator.cs
- ActiveXContainer.cs
- NotCondition.cs
- CaseExpr.cs
- NamedPipeTransportBindingElement.cs
- PassportAuthentication.cs
- TextTreeText.cs
- ReflectionPermission.cs
- MethodExpression.cs
- FaultHandlingFilter.cs
- ItemList.cs
- StringPropertyBuilder.cs
- EndpointDiscoveryBehavior.cs
- SemanticKeyElement.cs
- DotExpr.cs
- _DigestClient.cs
- RowUpdatingEventArgs.cs
- CustomCategoryAttribute.cs
- RootBrowserWindow.cs
- ManualResetEvent.cs
- LocalizableResourceBuilder.cs
- CodePageUtils.cs
- InfoCardBaseException.cs
- DiscoveryInnerClientManaged11.cs
- MessageSecurityOverTcp.cs
- ModulesEntry.cs
- TypeNameConverter.cs
- SdlChannelSink.cs
- GridViewPageEventArgs.cs
- mactripleDES.cs
- ProgressBar.cs
- SpeechAudioFormatInfo.cs
- RichTextBox.cs
- CaseCqlBlock.cs
- PropVariant.cs
- WebPartExportVerb.cs
- AutoGeneratedFieldProperties.cs
- AQNBuilder.cs
- ViewKeyConstraint.cs
- WorkflowServiceNamespace.cs
- CurrencyWrapper.cs
- coordinator.cs
- StrokeFIndices.cs
- DPAPIProtectedConfigurationProvider.cs
- ProfileParameter.cs