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
- ChildDocumentBlock.cs
- WinFormsSecurity.cs
- TemplateContainer.cs
- RawStylusInputReport.cs
- IItemContainerGenerator.cs
- DbModificationCommandTree.cs
- ListBoxItemWrapperAutomationPeer.cs
- InstancePersistence.cs
- CompareValidator.cs
- DesignerVerbCollection.cs
- LogLogRecordEnumerator.cs
- SqlGenerator.cs
- Composition.cs
- SettingsPropertyNotFoundException.cs
- InternalResources.cs
- ResourceExpressionEditor.cs
- TimeEnumHelper.cs
- StatusBarPanel.cs
- DesignerDataTable.cs
- TreeNodeCollectionEditor.cs
- RegisteredScript.cs
- WindowsFont.cs
- Effect.cs
- FormatSettings.cs
- SiteMapNodeCollection.cs
- DbConnectionStringBuilder.cs
- mediaclock.cs
- ManualResetEvent.cs
- ResizeBehavior.cs
- FormsAuthenticationUser.cs
- ConnectionOrientedTransportChannelFactory.cs
- UserPersonalizationStateInfo.cs
- InputMethod.cs
- BitStream.cs
- ColorPalette.cs
- SocketException.cs
- BaseProcessor.cs
- MenuItemStyleCollection.cs
- PropertyChangedEventManager.cs
- XPathBinder.cs
- DebugHandleTracker.cs
- ValidatedControlConverter.cs
- DataFieldConverter.cs
- DateTimeOffsetStorage.cs
- DeferredBinaryDeserializerExtension.cs
- Parameter.cs
- EventWaitHandle.cs
- SortedSet.cs
- GeneralTransform3DGroup.cs
- codemethodreferenceexpression.cs
- WebPartMenu.cs
- HostedHttpTransportManager.cs
- BaseTemplatedMobileComponentEditor.cs
- SuspendDesigner.cs
- FixedSOMTable.cs
- AddingNewEventArgs.cs
- SiteMapDataSourceView.cs
- FilterException.cs
- QuaternionKeyFrameCollection.cs
- TraversalRequest.cs
- QilFunction.cs
- AVElementHelper.cs
- ListBindingConverter.cs
- SelfIssuedAuthProofToken.cs
- TargetException.cs
- ImageInfo.cs
- SetIterators.cs
- LeftCellWrapper.cs
- IIS7UserPrincipal.cs
- SecurityKeyType.cs
- Utils.cs
- DocumentApplicationState.cs
- EntityConnectionStringBuilder.cs
- NativeMethods.cs
- ObjectStateFormatter.cs
- SkipStoryboardToFill.cs
- UIAgentMonitorHandle.cs
- RepeaterItem.cs
- CookielessHelper.cs
- XmlElement.cs
- Queue.cs
- ExpandSegment.cs
- X509Utils.cs
- XamlSerializationHelper.cs
- FormatterServices.cs
- XsdSchemaFileEditor.cs
- PackWebRequest.cs
- WindowsGraphics2.cs
- ConstraintCollection.cs
- PenThreadWorker.cs
- DataGridViewRowsAddedEventArgs.cs
- AnchoredBlock.cs
- PropertiesTab.cs
- PrintDocument.cs
- DBProviderConfigurationHandler.cs
- xmlglyphRunInfo.cs
- ValidationEventArgs.cs
- DataColumnCollection.cs
- ListViewCommandEventArgs.cs
- SettingsPropertyValueCollection.cs