Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / clr / src / BCL / System / Security / Cryptography / HMACSHA512.cs / 1305376 / 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)) {} [System.Security.SecuritySafeCritical] // auto-generated public HMACSHA512 (byte[] key) { 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. /// 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.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ObjectFullSpanRewriter.cs
- ValidationErrorCollection.cs
- ApplicationGesture.cs
- SqlClientMetaDataCollectionNames.cs
- XmlTextWriter.cs
- ColumnTypeConverter.cs
- _DomainName.cs
- ClientUrlResolverWrapper.cs
- TemplateComponentConnector.cs
- ProxyWebPartConnectionCollection.cs
- TextBoxBase.cs
- ProfileProvider.cs
- XsdBuildProvider.cs
- SafeFileMapViewHandle.cs
- XmlCharType.cs
- BooleanAnimationBase.cs
- PenLineCapValidation.cs
- FilterableAttribute.cs
- QilDataSource.cs
- CategoryValueConverter.cs
- FileNotFoundException.cs
- EDesignUtil.cs
- TagMapInfo.cs
- TrackBar.cs
- DrawingCollection.cs
- IdentityHolder.cs
- Geometry.cs
- Win32NamedPipes.cs
- sqlmetadatafactory.cs
- AtomMaterializerLog.cs
- SecUtil.cs
- LinqDataSourceView.cs
- BaseTreeIterator.cs
- DataRow.cs
- DataColumnMapping.cs
- FormViewUpdateEventArgs.cs
- BlurEffect.cs
- IteratorFilter.cs
- DocobjHost.cs
- CaseInsensitiveOrdinalStringComparer.cs
- SizeChangedInfo.cs
- ZipIOLocalFileDataDescriptor.cs
- ParameterInfo.cs
- AsyncPostBackTrigger.cs
- SecurityHeaderLayout.cs
- Model3D.cs
- WebPageTraceListener.cs
- DataFormats.cs
- WebEvents.cs
- LinkArea.cs
- ConfigurationProviderException.cs
- COSERVERINFO.cs
- AttributeCollection.cs
- RuntimeIdentifierPropertyAttribute.cs
- ProviderConnectionPointCollection.cs
- TargetConverter.cs
- AssemblyBuilder.cs
- SchemaLookupTable.cs
- NavigationService.cs
- HostedTransportConfigurationManager.cs
- WebReferenceCollection.cs
- StylusButton.cs
- Char.cs
- AsymmetricKeyExchangeFormatter.cs
- TreeWalker.cs
- SettingsSection.cs
- sqlpipe.cs
- ContentPosition.cs
- RepeatButtonAutomationPeer.cs
- DefaultHttpHandler.cs
- SafeNativeMethods.cs
- PackageRelationshipCollection.cs
- BaseProcessor.cs
- Schema.cs
- StringBuilder.cs
- OdbcError.cs
- DataGridPagerStyle.cs
- EntityReference.cs
- ToolStripContextMenu.cs
- AnnotationComponentChooser.cs
- ListSurrogate.cs
- ListControlConvertEventArgs.cs
- ObjectDataSourceWizardForm.cs
- DataFormats.cs
- Win32NamedPipes.cs
- XPathDocumentBuilder.cs
- ConcurrentStack.cs
- UserPreferenceChangedEventArgs.cs
- UrlPropertyAttribute.cs
- DbConnectionHelper.cs
- BamlRecordReader.cs
- WebConfigurationHost.cs
- SolidColorBrush.cs
- MappingException.cs
- SafeRightsManagementPubHandle.cs
- SqlDataSourceEnumerator.cs
- OleDbEnumerator.cs
- RawStylusInputReport.cs
- ParallelEnumerableWrapper.cs
- FileSystemEventArgs.cs