Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Core / System / Security / Cryptography / SHA384Cng.cs / 1305376 / SHA384Cng.cs
// ==++==
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
// ==--==
using System;
using System.Diagnostics.Contracts;
namespace System.Security.Cryptography {
///
/// Wrapper around the BCrypt implementation of the SHA-384 hashing algorithm
///
[System.Security.Permissions.HostProtection(MayLeakOnAbort = true)]
public sealed class SHA384Cng : SHA384 {
private BCryptHashAlgorithm m_hashAlgorithm;
//
//
//
[System.Security.SecurityCritical]
public SHA384Cng() {
Contract.Ensures(m_hashAlgorithm != null);
m_hashAlgorithm = new BCryptHashAlgorithm(CngAlgorithm.Sha384,
BCryptNative.ProviderName.MicrosoftPrimitiveProvider);
}
//
//
//
[System.Security.SecurityCritical]
protected override void Dispose(bool disposing) {
try {
if (disposing) {
m_hashAlgorithm.Dispose();
}
}
finally {
base.Dispose(disposing);
}
}
//
//
//
[System.Security.SecurityCritical]
public override void Initialize() {
Contract.Assert(m_hashAlgorithm != null);
m_hashAlgorithm.Initialize();
}
//
//
//
[System.Security.SecurityCritical]
protected override void HashCore(byte[] array, int ibStart, int cbSize) {
Contract.Assert(m_hashAlgorithm != null);
m_hashAlgorithm.HashCore(array, ibStart, cbSize);
}
//
//
//
[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 BCrypt implementation of the SHA-384 hashing algorithm
///
[System.Security.Permissions.HostProtection(MayLeakOnAbort = true)]
public sealed class SHA384Cng : SHA384 {
private BCryptHashAlgorithm m_hashAlgorithm;
//
//
//
[System.Security.SecurityCritical]
public SHA384Cng() {
Contract.Ensures(m_hashAlgorithm != null);
m_hashAlgorithm = new BCryptHashAlgorithm(CngAlgorithm.Sha384,
BCryptNative.ProviderName.MicrosoftPrimitiveProvider);
}
//
//
//
[System.Security.SecurityCritical]
protected override void Dispose(bool disposing) {
try {
if (disposing) {
m_hashAlgorithm.Dispose();
}
}
finally {
base.Dispose(disposing);
}
}
//
//
//
[System.Security.SecurityCritical]
public override void Initialize() {
Contract.Assert(m_hashAlgorithm != null);
m_hashAlgorithm.Initialize();
}
//
//
//
[System.Security.SecurityCritical]
protected override void HashCore(byte[] array, int ibStart, int cbSize) {
Contract.Assert(m_hashAlgorithm != null);
m_hashAlgorithm.HashCore(array, ibStart, cbSize);
}
//
//
//
[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
- TypedDataSourceCodeGenerator.cs
- X509ThumbprintKeyIdentifierClause.cs
- HttpFileCollection.cs
- SystemResourceKey.cs
- BooleanToVisibilityConverter.cs
- autovalidator.cs
- FixedStringLookup.cs
- CompiledIdentityConstraint.cs
- Bidi.cs
- FormViewDeleteEventArgs.cs
- MultipleViewPattern.cs
- PackagingUtilities.cs
- MetadataCollection.cs
- TreeIterators.cs
- TypeExtensionConverter.cs
- URLAttribute.cs
- GeometryGroup.cs
- TextFindEngine.cs
- ThaiBuddhistCalendar.cs
- AxisAngleRotation3D.cs
- XamlParser.cs
- SymLanguageType.cs
- SBCSCodePageEncoding.cs
- HMACSHA512.cs
- OleDbPermission.cs
- InvalidOleVariantTypeException.cs
- DeclaredTypeElement.cs
- ScaleTransform.cs
- Pts.cs
- XmlDeclaration.cs
- PeerTransportListenAddressValidatorAttribute.cs
- DataBoundControlAdapter.cs
- SafeIUnknown.cs
- XmlConvert.cs
- TextFindEngine.cs
- PreProcessInputEventArgs.cs
- DefaultValueConverter.cs
- FixedDocumentPaginator.cs
- PKCS1MaskGenerationMethod.cs
- XmlSerializerOperationGenerator.cs
- DBCommand.cs
- FlowLayoutPanel.cs
- TextPatternIdentifiers.cs
- UIntPtr.cs
- SchemaConstraints.cs
- Stack.cs
- SettingsContext.cs
- URLString.cs
- BindingExpressionUncommonField.cs
- securitymgrsite.cs
- SqlRowUpdatingEvent.cs
- Point.cs
- DesignerTransaction.cs
- SqlUnionizer.cs
- CompiledXpathExpr.cs
- VariantWrapper.cs
- CustomAttributeBuilder.cs
- GraphicsState.cs
- DataGridViewRowHeaderCell.cs
- CookieParameter.cs
- COM2ExtendedTypeConverter.cs
- manifestimages.cs
- PrintPreviewControl.cs
- XmlWriterSettings.cs
- GenerateHelper.cs
- ObjectContextServiceProvider.cs
- AttributeCollection.cs
- SessionSymmetricMessageSecurityProtocolFactory.cs
- SafeThemeHandle.cs
- Normalization.cs
- QueryAccessibilityHelpEvent.cs
- SerializationSectionGroup.cs
- PropertyPathWorker.cs
- AnnotationResource.cs
- HttpCacheVary.cs
- CfgSemanticTag.cs
- altserialization.cs
- PointF.cs
- XmlDataCollection.cs
- Condition.cs
- DataGridViewCellCollection.cs
- HttpConfigurationSystem.cs
- SerializationEventsCache.cs
- RSAOAEPKeyExchangeDeformatter.cs
- ForEachAction.cs
- SchemaAttDef.cs
- ActivityExecutionContextCollection.cs
- TransformConverter.cs
- SimpleParser.cs
- FormsAuthenticationConfiguration.cs
- LiteralTextContainerControlBuilder.cs
- EdmSchemaError.cs
- BitmapData.cs
- XmlQueryCardinality.cs
- HybridObjectCache.cs
- SelectionWordBreaker.cs
- SectionVisual.cs
- ParallelRangeManager.cs
- ContextStaticAttribute.cs
- StrongNameKeyPair.cs