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
- DocumentReferenceCollection.cs
- MailAddress.cs
- TextDecorationCollectionConverter.cs
- EntitySqlQueryCacheEntry.cs
- Certificate.cs
- ProviderConnectionPoint.cs
- FullTextState.cs
- XPathDocumentIterator.cs
- UndoEngine.cs
- X509UI.cs
- ProtocolImporter.cs
- ContextMenuService.cs
- NullableBoolConverter.cs
- OdbcConnectionHandle.cs
- DayRenderEvent.cs
- DataServiceHostWrapper.cs
- TableLayoutStyleCollection.cs
- QilCloneVisitor.cs
- FixUp.cs
- BackStopAuthenticationModule.cs
- Int64AnimationBase.cs
- UIElementIsland.cs
- PolicyValidationException.cs
- UIElementHelper.cs
- TextReturnReader.cs
- DrawingContextDrawingContextWalker.cs
- HashStream.cs
- Attributes.cs
- CacheSection.cs
- TableLayoutSettingsTypeConverter.cs
- XmlValueConverter.cs
- AvtEvent.cs
- MobileUserControlDesigner.cs
- BuildManager.cs
- WebPartVerb.cs
- SqlDataSourceSummaryPanel.cs
- InvokePatternIdentifiers.cs
- Directory.cs
- RegexInterpreter.cs
- _SingleItemRequestCache.cs
- WriteTimeStream.cs
- WpfXamlLoader.cs
- GuidTagList.cs
- PrtCap_Base.cs
- ToolboxCategoryItems.cs
- TextTreeTextElementNode.cs
- DetailsViewInsertEventArgs.cs
- Win32Native.cs
- WindowsComboBox.cs
- figurelength.cs
- Attributes.cs
- DataViewManager.cs
- AsymmetricSecurityProtocolFactory.cs
- NamespaceList.cs
- XNodeSchemaApplier.cs
- Automation.cs
- ValidationError.cs
- MsmqBindingMonitor.cs
- WorkflowOperationErrorHandler.cs
- AdRotator.cs
- LoginCancelEventArgs.cs
- OleDbStruct.cs
- TextEditorDragDrop.cs
- HtmlImage.cs
- XmlLinkedNode.cs
- CursorConverter.cs
- ConfigurationLocationCollection.cs
- Descriptor.cs
- DbBuffer.cs
- CreateUserErrorEventArgs.cs
- HwndMouseInputProvider.cs
- CanonicalFormWriter.cs
- ConstructorArgumentAttribute.cs
- CharStorage.cs
- TraceData.cs
- DateTimeOffsetStorage.cs
- EditorZoneBase.cs
- MonitorWrapper.cs
- HttpModuleCollection.cs
- WpfPayload.cs
- AuthorizationBehavior.cs
- VBCodeProvider.cs
- BindingOperations.cs
- log.cs
- ScrollPatternIdentifiers.cs
- WmpBitmapDecoder.cs
- MailHeaderInfo.cs
- ContentHostHelper.cs
- RunClient.cs
- VariableQuery.cs
- ControlCollection.cs
- ButtonBaseAutomationPeer.cs
- xsdvalidator.cs
- PropertyPathConverter.cs
- FilteredSchemaElementLookUpTable.cs
- ClientScriptManagerWrapper.cs
- NativeMethods.cs
- BitmapCodecInfo.cs
- ComEventsHelper.cs
- StreamWriter.cs