Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / 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); } } }
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ValidatedMobileControlConverter.cs
- WebPartDisplayModeEventArgs.cs
- PopOutPanel.cs
- XamlToRtfWriter.cs
- Type.cs
- DoubleAnimationBase.cs
- XmlUrlResolver.cs
- TranslateTransform3D.cs
- SqlParameter.cs
- StringInfo.cs
- AutomationProperties.cs
- WebPartsPersonalizationAuthorization.cs
- AdjustableArrowCap.cs
- Configuration.cs
- D3DImage.cs
- VectorAnimationUsingKeyFrames.cs
- MetadataHelper.cs
- ArraySegment.cs
- MediaContext.cs
- MarshalDirectiveException.cs
- BulletChrome.cs
- FrameworkContextData.cs
- ForceCopyBuildProvider.cs
- FixedPage.cs
- RadialGradientBrush.cs
- DbConnectionPoolGroupProviderInfo.cs
- LogExtent.cs
- SiteMapDataSource.cs
- SamlAuthorityBinding.cs
- MemberCollection.cs
- CurrencyWrapper.cs
- PreviewPageInfo.cs
- SelectionEditor.cs
- UserUseLicenseDictionaryLoader.cs
- ImageResources.Designer.cs
- TableHeaderCell.cs
- ValidationPropertyAttribute.cs
- SystemBrushes.cs
- AdvancedBindingPropertyDescriptor.cs
- ProxySimple.cs
- xml.cs
- SmiEventStream.cs
- NetTcpSecurity.cs
- CacheRequest.cs
- HandleRef.cs
- BindingMAnagerBase.cs
- TextBoxRenderer.cs
- Matrix3DValueSerializer.cs
- WCFServiceClientProxyGenerator.cs
- ByteAnimation.cs
- TextFormatterHost.cs
- RelatedImageListAttribute.cs
- DataServiceRequestOfT.cs
- infer.cs
- XmlStreamStore.cs
- SafeSecurityHelper.cs
- CorrelationValidator.cs
- PrtCap_Builder.cs
- TracedNativeMethods.cs
- PrimitiveXmlSerializers.cs
- WinFormsUtils.cs
- PeerNameResolver.cs
- CapabilitiesAssignment.cs
- XmlKeywords.cs
- DoWhile.cs
- OdbcConnectionOpen.cs
- BrowserCapabilitiesFactoryBase.cs
- Utility.cs
- ClientSettings.cs
- DrawingGroupDrawingContext.cs
- ResourceCategoryAttribute.cs
- RawContentTypeMapper.cs
- InsufficientExecutionStackException.cs
- DbProviderConfigurationHandler.cs
- ConnectionManagementElement.cs
- EdmPropertyAttribute.cs
- PlacementWorkspace.cs
- RangeValueProviderWrapper.cs
- XmlSchemaElement.cs
- ZoneMembershipCondition.cs
- DesignerInterfaces.cs
- NavigationProgressEventArgs.cs
- SafeBitVector32.cs
- WorkflowInlining.cs
- PeerValidationBehavior.cs
- SettingsPropertyWrongTypeException.cs
- OptimalTextSource.cs
- ReadOnlyHierarchicalDataSourceView.cs
- XNodeSchemaApplier.cs
- PackUriHelper.cs
- PropertyChangedEventArgs.cs
- MenuItemBinding.cs
- GeometryConverter.cs
- TransformProviderWrapper.cs
- RedistVersionInfo.cs
- HttpModulesSection.cs
- HttpCachePolicyElement.cs
- Collection.cs
- ControlEvent.cs
- TimelineCollection.cs