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
- TableCell.cs
- DesignSurfaceEvent.cs
- VerificationAttribute.cs
- PageBuildProvider.cs
- CancellationToken.cs
- MenuItemBindingCollection.cs
- TraceHwndHost.cs
- SpeechRecognitionEngine.cs
- SettingsBindableAttribute.cs
- CustomErrorsSectionWrapper.cs
- ChameleonKey.cs
- FlowNode.cs
- CellCreator.cs
- CuspData.cs
- KeyConstraint.cs
- SystemIPInterfaceStatistics.cs
- FreeFormDesigner.cs
- fixedPageContentExtractor.cs
- NumberSubstitution.cs
- PageCatalogPart.cs
- DrawListViewItemEventArgs.cs
- BaseResourcesBuildProvider.cs
- PackageRelationshipCollection.cs
- EventMappingSettingsCollection.cs
- CheckBoxBaseAdapter.cs
- EncodingTable.cs
- TextEditorLists.cs
- MenuBindingsEditorForm.cs
- TabControlAutomationPeer.cs
- VirtualPathUtility.cs
- LowerCaseStringConverter.cs
- ImageList.cs
- HwndProxyElementProvider.cs
- DotExpr.cs
- SqlXmlStorage.cs
- WebPartVerbsEventArgs.cs
- assertwrapper.cs
- Misc.cs
- propertyentry.cs
- FontSource.cs
- OleDbInfoMessageEvent.cs
- CreateUserWizardStep.cs
- MessageDesigner.cs
- QueryStringParameter.cs
- EventLogConfiguration.cs
- WizardPanelChangingEventArgs.cs
- SmiEventStream.cs
- EnvelopedSignatureTransform.cs
- DataGridPageChangedEventArgs.cs
- Win32PrintDialog.cs
- CodeIterationStatement.cs
- MemberCollection.cs
- RootProfilePropertySettingsCollection.cs
- validation.cs
- ToolStripInSituService.cs
- _SSPIWrapper.cs
- Atom10FormatterFactory.cs
- RemoteCryptoDecryptRequest.cs
- HMACSHA1.cs
- ExtensionSimplifierMarkupObject.cs
- TraceListener.cs
- CodeSnippetStatement.cs
- DataControlFieldCollection.cs
- CollectionViewGroupInternal.cs
- XmlNotation.cs
- OleAutBinder.cs
- FileDetails.cs
- Token.cs
- QueryResults.cs
- ConfigXmlWhitespace.cs
- TrackingMemoryStreamFactory.cs
- TransformCollection.cs
- EventEntry.cs
- ExtenderControl.cs
- XhtmlBasicPhoneCallAdapter.cs
- EntityDesignerDataSourceView.cs
- QueryContext.cs
- baseshape.cs
- RequiredFieldValidator.cs
- ScrollPattern.cs
- XPathExpr.cs
- ErrorTableItemStyle.cs
- DataGridViewDataErrorEventArgs.cs
- IdentityModelDictionary.cs
- PointConverter.cs
- GenerateHelper.cs
- PersonalizationEntry.cs
- SafeHandles.cs
- Repeater.cs
- TextProperties.cs
- CompositeKey.cs
- SignedInfo.cs
- Currency.cs
- VectorAnimationUsingKeyFrames.cs
- SqlBulkCopy.cs
- HttpCachePolicy.cs
- DataGridAutoFormat.cs
- GradientSpreadMethodValidation.cs
- AutomationElement.cs
- AuthenticationService.cs