Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / untmp / whidbey / QFE / ndp / clr / src / BCL / System / Security / Cryptography / HMACSHA512.cs / 2 / HMACSHA512.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== // // HMACSHA512.cs // namespace System.Security.Cryptography { [System.Runtime.InteropServices.ComVisible(true)] public class HMACSHA512 : HMAC { private bool m_useLegacyBlockSize = Utils._ProduceLegacyHmacValues(); // // public constructors // public HMACSHA512 () : this (Utils.GenerateRandom(128)) {} public HMACSHA512 (byte[] key) { Utils._ShowLegacyHmacWarning(); m_hashName = "SHA512"; m_hash1 = new SHA512Managed(); m_hash2 = new SHA512Managed(); HashSizeValue = 512; BlockSizeValue = BlockSize; base.InitializeKey(key); } private int BlockSize { get { return m_useLegacyBlockSize ? 64 : 128; } } ////// In Whidbey we incorrectly used a block size of 64 bytes for HMAC-SHA-384 and HMAC-SHA-512, /// rather than using the correct value of 128 bytes. Setting this to true causes us to fall /// back to the Whidbey mode which produces incorrect HMAC values. /// /// This value should be set only once, before hashing has begun, since we need to reset the key /// buffer for the block size change to take effect. /// /// The default vaue is off, however this can be toggled for the application by setting the /// legacyHMACMode config switch. /// /// We will also produce a warning when using either of these classes which is output to the /// debugger and event log unless the showLegacyHMACWarning config setting is disabled. This /// warning is generated for the first time either class is constructed. /// public bool ProduceLegacyHmacValues { get { return m_useLegacyBlockSize; } set { m_useLegacyBlockSize = value; BlockSizeValue = BlockSize; InitializeKey(KeyValue); } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- EdgeModeValidation.cs
- Lazy.cs
- basecomparevalidator.cs
- Rotation3DAnimation.cs
- SqlDataSourceCache.cs
- WindowsListViewItem.cs
- nulltextnavigator.cs
- _AuthenticationState.cs
- XPathNodeIterator.cs
- DriveNotFoundException.cs
- EnvironmentPermission.cs
- ElementUtil.cs
- CommandHelpers.cs
- DateTimeFormatInfo.cs
- ColorConverter.cs
- BridgeDataReader.cs
- Row.cs
- ProviderConnectionPointCollection.cs
- GlobalizationAssembly.cs
- SelectionItemPattern.cs
- TreeNodeStyle.cs
- ArrayConverter.cs
- DotExpr.cs
- Logging.cs
- GetCardDetailsRequest.cs
- WeakEventManager.cs
- ListSortDescription.cs
- MenuItemAutomationPeer.cs
- ArrayList.cs
- MethodSet.cs
- ProcessStartInfo.cs
- PropertyPathWorker.cs
- StreamingContext.cs
- FastPropertyAccessor.cs
- MILUtilities.cs
- TrustManagerPromptUI.cs
- DataListItem.cs
- XmlILModule.cs
- DiscardableAttribute.cs
- TdsParameterSetter.cs
- LineVisual.cs
- LineInfo.cs
- SocketPermission.cs
- CommonServiceBehaviorElement.cs
- EntityDataSourceDesignerHelper.cs
- StoragePropertyMapping.cs
- SplitterPanel.cs
- EditableLabelControl.cs
- SQLByte.cs
- ISAPIWorkerRequest.cs
- ListViewInsertedEventArgs.cs
- HtmlTextArea.cs
- Content.cs
- XmlILOptimizerVisitor.cs
- FormsAuthenticationConfiguration.cs
- SystemColorTracker.cs
- OutputWindow.cs
- ContentPathSegment.cs
- Context.cs
- HyperLinkStyle.cs
- XsdCachingReader.cs
- PrinterSettings.cs
- ActivationService.cs
- LayoutInformation.cs
- Parameter.cs
- AppPool.cs
- ConstraintEnumerator.cs
- ObjectRef.cs
- ScaleTransform3D.cs
- DirectoryObjectSecurity.cs
- HtmlElementErrorEventArgs.cs
- LookupBindingPropertiesAttribute.cs
- FormatterServicesNoSerializableCheck.cs
- RadioButton.cs
- TemplatedWizardStep.cs
- HtmlInputImage.cs
- ListControl.cs
- FixedStringLookup.cs
- DispatchProxy.cs
- ReachUIElementCollectionSerializerAsync.cs
- CroppedBitmap.cs
- DescendentsWalker.cs
- LocalValueEnumerator.cs
- SoapHeader.cs
- InputGestureCollection.cs
- LinearKeyFrames.cs
- DefaultTextStoreTextComposition.cs
- ToolBar.cs
- EventLogHandle.cs
- BevelBitmapEffect.cs
- IssuanceLicense.cs
- KeyProperty.cs
- ContextMenuStripActionList.cs
- PackageProperties.cs
- StringUtil.cs
- DataGridViewTopRowAccessibleObject.cs
- EDesignUtil.cs
- Encoding.cs
- XamlSerializerUtil.cs
- DataObjectFieldAttribute.cs