Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / clr / src / BCL / System / Security / Cryptography / RijndaelManaged.cs / 1 / RijndaelManaged.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== // // RijndaelManaged.cs // namespace System.Security.Cryptography { [System.Runtime.InteropServices.ComVisible(true)] public sealed class RijndaelManaged : Rijndael { public RijndaelManaged () { if (Utils.FipsAlgorithmPolicy == 1) throw new InvalidOperationException(Environment.GetResourceString("Cryptography_NonCompliantFIPSAlgorithm")); } public override ICryptoTransform CreateEncryptor (byte[] rgbKey, byte[] rgbIV) { return NewEncryptor (rgbKey, ModeValue, rgbIV, FeedbackSizeValue, RijndaelManagedTransformMode.Encrypt); } public override ICryptoTransform CreateDecryptor (byte[] rgbKey, byte[] rgbIV) { return NewEncryptor (rgbKey, ModeValue, rgbIV, FeedbackSizeValue, RijndaelManagedTransformMode.Decrypt); } public override void GenerateKey () { KeyValue = new byte[KeySizeValue/8]; Utils.StaticRandomNumberGenerator.GetBytes(KeyValue); } public override void GenerateIV () { IVValue = new byte[BlockSizeValue/8]; Utils.StaticRandomNumberGenerator.GetBytes(IVValue); } private ICryptoTransform NewEncryptor (byte[] rgbKey, CipherMode mode, byte[] rgbIV, int feedbackSize, RijndaelManagedTransformMode encryptMode) { // Build the key if one does not already exist if (rgbKey == null) { rgbKey = new byte[KeySizeValue/8]; Utils.StaticRandomNumberGenerator.GetBytes(rgbKey); } // If not ECB mode, make sure we have an IV if (mode != CipherMode.ECB) { if (rgbIV == null) { rgbIV = new byte[BlockSizeValue/8]; Utils.StaticRandomNumberGenerator.GetBytes(rgbIV); } } // Create the encryptor/decryptor object return new RijndaelManagedTransform (rgbKey, mode, rgbIV, BlockSizeValue, feedbackSize, PaddingValue, encryptMode); } } }
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- WpfPayload.cs
- RootBuilder.cs
- FunctionQuery.cs
- EpmSyndicationContentSerializer.cs
- ConstNode.cs
- NCryptSafeHandles.cs
- BitmapMetadata.cs
- XmlSchemaException.cs
- BinarySecretKeyIdentifierClause.cs
- LocalizableResourceBuilder.cs
- TableRowGroup.cs
- KeyInterop.cs
- RequestQueryProcessor.cs
- BinaryReader.cs
- SuppressIldasmAttribute.cs
- ToolboxCategory.cs
- OraclePermissionAttribute.cs
- StringKeyFrameCollection.cs
- RegexRunnerFactory.cs
- AccessViolationException.cs
- EpmContentSerializerBase.cs
- designeractionlistschangedeventargs.cs
- _NetRes.cs
- SQLDecimal.cs
- RequiredFieldValidator.cs
- SpeechSeg.cs
- XsltOutput.cs
- ComContractElementCollection.cs
- GridView.cs
- shaper.cs
- SafeThreadHandle.cs
- LinkedDataMemberFieldEditor.cs
- ListViewPagedDataSource.cs
- GradientStopCollection.cs
- ModelPropertyCollectionImpl.cs
- QuaternionConverter.cs
- KeyPressEvent.cs
- backend.cs
- XmlSequenceWriter.cs
- EventManager.cs
- UsernameTokenFactoryCredential.cs
- StrongNameIdentityPermission.cs
- ResourceDisplayNameAttribute.cs
- ConfigurationLocation.cs
- BaseTreeIterator.cs
- RedistVersionInfo.cs
- SrgsElement.cs
- SubtreeProcessor.cs
- SamlAuthorizationDecisionClaimResource.cs
- KeyboardDevice.cs
- Timer.cs
- Graph.cs
- ByteStreamGeometryContext.cs
- CodeTypeDeclaration.cs
- ADMembershipUser.cs
- AssemblyInfo.cs
- CacheOutputQuery.cs
- ThreadAbortException.cs
- D3DImage.cs
- WsdlContractConversionContext.cs
- WeakEventManager.cs
- RangeValuePattern.cs
- SizeF.cs
- InternalCache.cs
- TemplateLookupAction.cs
- NumberFunctions.cs
- RsaSecurityKey.cs
- XmlSerializerNamespaces.cs
- RegexCaptureCollection.cs
- PropertyManager.cs
- autovalidator.cs
- CoreSwitches.cs
- FixedSOMPage.cs
- SafeSecurityHandles.cs
- TaskbarItemInfo.cs
- EndPoint.cs
- DateTimeStorage.cs
- InstanceLockQueryResult.cs
- SourceInterpreter.cs
- HelpEvent.cs
- ReadWriteSpinLock.cs
- CodeIndexerExpression.cs
- ConfigXmlCDataSection.cs
- PropertyTabAttribute.cs
- DataGridRowsPresenter.cs
- Tokenizer.cs
- XmlArrayAttribute.cs
- XslCompiledTransform.cs
- SecureConversationVersion.cs
- ArraySubsetEnumerator.cs
- CommandLibraryHelper.cs
- WebConfigurationHostFileChange.cs
- ScalarRestriction.cs
- OracleNumber.cs
- HierarchicalDataTemplate.cs
- SemanticBasicElement.cs
- ListViewItemSelectionChangedEvent.cs
- XmlWriterTraceListener.cs
- CachedTypeface.cs
- WebServiceParameterData.cs