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
- SerializationSectionGroup.cs
- CRYPTPROTECT_PROMPTSTRUCT.cs
- BmpBitmapDecoder.cs
- Point4D.cs
- DataSourceHelper.cs
- precedingquery.cs
- ConfigXmlDocument.cs
- ViewSimplifier.cs
- WrappingXamlSchemaContext.cs
- ApplicationDirectory.cs
- SQLDecimal.cs
- METAHEADER.cs
- WeakEventTable.cs
- CryptoApi.cs
- bidPrivateBase.cs
- PipeSecurity.cs
- EdmRelationshipRoleAttribute.cs
- RuntimeConfig.cs
- ReadOnlyObservableCollection.cs
- RegexCompilationInfo.cs
- ActivationArguments.cs
- DbConnectionOptions.cs
- SQLGuidStorage.cs
- AllMembershipCondition.cs
- TypeForwardedToAttribute.cs
- CacheDependency.cs
- PreviewPrintController.cs
- XamlRtfConverter.cs
- TextElement.cs
- TypeBuilderInstantiation.cs
- XPathNavigatorReader.cs
- NamespaceInfo.cs
- PanelStyle.cs
- CellConstant.cs
- SqlInternalConnectionTds.cs
- DataServiceEntityAttribute.cs
- LicFileLicenseProvider.cs
- OleDbConnectionFactory.cs
- MemberAccessException.cs
- RemoveStoryboard.cs
- VectorAnimation.cs
- SimpleModelProvider.cs
- WindowsRebar.cs
- XamlBuildTaskServices.cs
- CqlLexerHelpers.cs
- MappingMetadataHelper.cs
- SystemThemeKey.cs
- SolidBrush.cs
- NonClientArea.cs
- ShutDownListener.cs
- GeometryGroup.cs
- Material.cs
- Int64Converter.cs
- WebResourceUtil.cs
- NamespaceEmitter.cs
- SafeRightsManagementSessionHandle.cs
- GAC.cs
- MimeWriter.cs
- HtmlInputSubmit.cs
- CryptoApi.cs
- DataDocumentXPathNavigator.cs
- UITypeEditor.cs
- BasicHttpSecurity.cs
- XmlSchemaImporter.cs
- OleTxTransactionInfo.cs
- CallContext.cs
- CustomActivityDesigner.cs
- ClientOptions.cs
- BufferedReadStream.cs
- PopupControlService.cs
- followingquery.cs
- GenericQueueSurrogate.cs
- ToolStripPanel.cs
- LookupBindingPropertiesAttribute.cs
- ReadOnlyNameValueCollection.cs
- MaskDescriptors.cs
- HtmlInputButton.cs
- Viewport3DAutomationPeer.cs
- RightsManagementEncryptedStream.cs
- HitTestParameters3D.cs
- CompiledQueryCacheEntry.cs
- updatecommandorderer.cs
- CacheSection.cs
- MapPathBasedVirtualPathProvider.cs
- SqlUDTStorage.cs
- CustomTypeDescriptor.cs
- ListViewDataItem.cs
- ColumnCollection.cs
- Int64AnimationUsingKeyFrames.cs
- Decoder.cs
- DataGridViewCellValidatingEventArgs.cs
- XmlResolver.cs
- FolderBrowserDialog.cs
- SiteOfOriginContainer.cs
- NameValuePermission.cs
- LicFileLicenseProvider.cs
- TextBoxBase.cs
- ConfigurationSectionGroup.cs
- InitializingNewItemEventArgs.cs
- ToolStripDropDownClosedEventArgs.cs