Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Core / System / Security / Cryptography / SHA384CryptoServiceProvider.cs / 1305376 / SHA384CryptoServiceProvider.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== using System; using System.Diagnostics.Contracts; namespace System.Security.Cryptography { ////// Wrapper around the CAPI implementation of the SHA-384 hashing algorithm /// [System.Security.Permissions.HostProtection(MayLeakOnAbort = true)] public sealed class SHA384CryptoServiceProvider : SHA384 { private CapiHashAlgorithm m_hashAlgorithm; //// [System.Security.SecurityCritical] public SHA384CryptoServiceProvider() { Contract.Ensures(m_hashAlgorithm != null); m_hashAlgorithm = new CapiHashAlgorithm(CapiNative.ProviderNames.MicrosoftEnhancedRsaAes, CapiNative.ProviderType.RsaAes, CapiNative.AlgorithmId.Sha384); } //// // [System.Security.SecurityCritical] protected override void Dispose(bool disposing) { try { if (disposing) { m_hashAlgorithm.Dispose(); } } finally { base.Dispose(disposing); } } ///// /// Reset the hash algorithm to begin hashing a new set of data /// //// [System.Security.SecurityCritical] public override void Initialize() { Contract.Assert(m_hashAlgorithm != null); m_hashAlgorithm.Initialize(); } ///// /// Hash a block of data /// //// [System.Security.SecurityCritical] protected override void HashCore(byte[] array, int ibStart, int cbSize) { Contract.Assert(m_hashAlgorithm != null); m_hashAlgorithm.HashCore(array, ibStart, cbSize); } ///// /// Complete the hash, returning its value /// //// [System.Security.SecurityCritical] protected override byte[] HashFinal() { Contract.Assert(m_hashAlgorithm != null); return m_hashAlgorithm.HashFinal(); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== using System; using System.Diagnostics.Contracts; namespace System.Security.Cryptography { ///// /// Wrapper around the CAPI implementation of the SHA-384 hashing algorithm /// [System.Security.Permissions.HostProtection(MayLeakOnAbort = true)] public sealed class SHA384CryptoServiceProvider : SHA384 { private CapiHashAlgorithm m_hashAlgorithm; //// [System.Security.SecurityCritical] public SHA384CryptoServiceProvider() { Contract.Ensures(m_hashAlgorithm != null); m_hashAlgorithm = new CapiHashAlgorithm(CapiNative.ProviderNames.MicrosoftEnhancedRsaAes, CapiNative.ProviderType.RsaAes, CapiNative.AlgorithmId.Sha384); } //// // [System.Security.SecurityCritical] protected override void Dispose(bool disposing) { try { if (disposing) { m_hashAlgorithm.Dispose(); } } finally { base.Dispose(disposing); } } ///// /// Reset the hash algorithm to begin hashing a new set of data /// //// [System.Security.SecurityCritical] public override void Initialize() { Contract.Assert(m_hashAlgorithm != null); m_hashAlgorithm.Initialize(); } ///// /// Hash a block of data /// //// [System.Security.SecurityCritical] protected override void HashCore(byte[] array, int ibStart, int cbSize) { Contract.Assert(m_hashAlgorithm != null); m_hashAlgorithm.HashCore(array, ibStart, cbSize); } ///// /// Complete the hash, returning its value /// //// [System.Security.SecurityCritical] protected override byte[] HashFinal() { Contract.Assert(m_hashAlgorithm != null); return m_hashAlgorithm.HashFinal(); } } } // 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
- SpotLight.cs
- HtmlLink.cs
- UnSafeCharBuffer.cs
- ListDataHelper.cs
- XhtmlConformanceSection.cs
- DeviceFilterEditorDialog.cs
- LoopExpression.cs
- EnumerableRowCollection.cs
- IdentityModelDictionary.cs
- CodeExpressionCollection.cs
- ObjectContext.cs
- HwndSourceParameters.cs
- XPathItem.cs
- PersonalizationEntry.cs
- Stylesheet.cs
- RadialGradientBrush.cs
- FactoryMaker.cs
- DocumentPaginator.cs
- RegexRunner.cs
- ConditionalWeakTable.cs
- ColumnResizeAdorner.cs
- WindowsNonControl.cs
- CacheEntry.cs
- HtmlTableRow.cs
- HashMembershipCondition.cs
- PerspectiveCamera.cs
- XmlIlVisitor.cs
- RandomNumberGenerator.cs
- SqlConnectionHelper.cs
- ExpressionBindings.cs
- DrawingCollection.cs
- CompilationRelaxations.cs
- ObjectCacheHost.cs
- CompositeDispatchFormatter.cs
- ScriptingProfileServiceSection.cs
- Image.cs
- ProcessHostConfigUtils.cs
- TimeSpanMinutesConverter.cs
- EmptyEnumerator.cs
- XmlAttributeCollection.cs
- NamedPermissionSet.cs
- HandoffBehavior.cs
- Choices.cs
- newinstructionaction.cs
- FormsIdentity.cs
- SyndicationPerson.cs
- ProcessHostMapPath.cs
- CommentEmitter.cs
- MenuAdapter.cs
- WhitespaceRule.cs
- HierarchicalDataBoundControlAdapter.cs
- ProviderBase.cs
- TableRow.cs
- PrintPreviewGraphics.cs
- WebResourceUtil.cs
- Span.cs
- GradientStopCollection.cs
- ConfigurationSectionCollection.cs
- MarkupProperty.cs
- documentation.cs
- ListViewItemSelectionChangedEvent.cs
- ThumbButtonInfoCollection.cs
- OperationGenerator.cs
- ComponentDesigner.cs
- StringKeyFrameCollection.cs
- ModelMemberCollection.cs
- WindowShowOrOpenTracker.cs
- CompiledXpathExpr.cs
- ParameterModifier.cs
- Helper.cs
- CustomActivityDesigner.cs
- CSharpCodeProvider.cs
- Slider.cs
- _ListenerRequestStream.cs
- Floater.cs
- ObjectDataSourceMethodEventArgs.cs
- SemanticResolver.cs
- ClientSideProviderDescription.cs
- WebServiceHost.cs
- CryptoConfig.cs
- DataGridViewHeaderCell.cs
- EntityWithKeyStrategy.cs
- WinEventHandler.cs
- LocatorPartList.cs
- Pen.cs
- WeakReferenceKey.cs
- LogExtent.cs
- NotCondition.cs
- BlurBitmapEffect.cs
- DeviceFilterDictionary.cs
- IgnoreFlushAndCloseStream.cs
- BitmapFrame.cs
- Vector3DCollection.cs
- BindingList.cs
- DataRow.cs
- ListBox.cs
- EventEntry.cs
- ZipIOExtraFieldZip64Element.cs
- OneToOneMappingSerializer.cs
- NameValuePair.cs