Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / clr / src / BCL / System / Security / Cryptography / DSASignatureDeformatter.cs / 1 / DSASignatureDeformatter.cs
// ==++==
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
// ==--==
//
// DSASignatureDeformatter.cs
//
namespace System.Security.Cryptography {
[System.Runtime.InteropServices.ComVisible(true)]
public class DSASignatureDeformatter : AsymmetricSignatureDeformatter {
DSA _dsaKey; // DSA Key value to do decrypt operation
string _oid;
//
// public constructors
//
public DSASignatureDeformatter() {
// The hash algorithm is always SHA1
_oid = CryptoConfig.MapNameToOID("SHA1");
}
public DSASignatureDeformatter(AsymmetricAlgorithm key) : this() {
if (key == null)
throw new ArgumentNullException("key");
_dsaKey = (DSA) key;
}
//
// public methods
//
public override void SetKey(AsymmetricAlgorithm key) {
if (key == null)
throw new ArgumentNullException("key");
_dsaKey = (DSA) key;
}
public override void SetHashAlgorithm(string strName) {
if (CryptoConfig.MapNameToOID(strName) != _oid)
throw new CryptographicUnexpectedOperationException(Environment.GetResourceString("Cryptography_InvalidOperation"));
}
public override bool VerifySignature(byte[] rgbHash, byte[] rgbSignature) {
if (_dsaKey == null)
throw new CryptographicUnexpectedOperationException(Environment.GetResourceString("Cryptography_MissingKey"));
if (rgbHash == null)
throw new ArgumentNullException("rgbHash");
if (rgbSignature == null)
throw new ArgumentNullException("rgbSignature");
return _dsaKey.VerifySignature(rgbHash, rgbSignature);
}
}
}
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- BooleanAnimationBase.cs
- GeneralTransformGroup.cs
- SettingsSection.cs
- SchemaNamespaceManager.cs
- EventRecordWrittenEventArgs.cs
- GregorianCalendarHelper.cs
- DocumentPaginator.cs
- SqlFileStream.cs
- PrefixQName.cs
- ToolboxComponentsCreatingEventArgs.cs
- BigInt.cs
- TransformConverter.cs
- SqlDeflator.cs
- TaskFormBase.cs
- WebPartConnectionsConfigureVerb.cs
- DataControlButton.cs
- RoleManagerEventArgs.cs
- PeerCollaborationPermission.cs
- Repeater.cs
- IsolationInterop.cs
- ChtmlLinkAdapter.cs
- ProxyAttribute.cs
- EventLogReader.cs
- ColumnWidthChangedEvent.cs
- _FixedSizeReader.cs
- AssociativeAggregationOperator.cs
- SafeEventLogWriteHandle.cs
- CapabilitiesRule.cs
- ChildTable.cs
- ObjectQuery_EntitySqlExtensions.cs
- FileFormatException.cs
- DataSourceHelper.cs
- EditorZoneBase.cs
- TreeBuilder.cs
- XmlSchema.cs
- DownloadProgressEventArgs.cs
- CacheSection.cs
- ButtonChrome.cs
- XPathDocument.cs
- PingReply.cs
- PeerNearMe.cs
- ProviderIncompatibleException.cs
- EventLogInformation.cs
- SoapAttributeAttribute.cs
- SerialReceived.cs
- AuthorizationRule.cs
- InternalBase.cs
- StylusCaptureWithinProperty.cs
- TemplateNameScope.cs
- UIEndRequest.cs
- HelpFileFileNameEditor.cs
- DisplayMemberTemplateSelector.cs
- TryExpression.cs
- TextHidden.cs
- MouseOverProperty.cs
- ControlHelper.cs
- SchemaElement.cs
- ValidationPropertyAttribute.cs
- PageBuildProvider.cs
- Rotation3D.cs
- FixedTextContainer.cs
- SrgsToken.cs
- MetadataItemSerializer.cs
- RequestQueryParser.cs
- SqlStream.cs
- EtwTrace.cs
- RegistryPermission.cs
- XPathAxisIterator.cs
- Activator.cs
- MenuItemCollection.cs
- WindowsGraphics2.cs
- SwitchExpression.cs
- SystemDropShadowChrome.cs
- DataRowComparer.cs
- StylusEditingBehavior.cs
- SafeMarshalContext.cs
- DataBindingExpressionBuilder.cs
- QueryContinueDragEvent.cs
- XamlToRtfParser.cs
- CodeGenerator.cs
- ContractMethodParameterInfo.cs
- UnsafeNativeMethodsCLR.cs
- TaskHelper.cs
- BuildProvider.cs
- TextServicesProperty.cs
- SharedDp.cs
- StackOverflowException.cs
- RtfFormatStack.cs
- MetaForeignKeyColumn.cs
- NumberFunctions.cs
- QueryOpeningEnumerator.cs
- SiteMapDataSource.cs
- XomlCompilerError.cs
- AggregationMinMaxHelpers.cs
- TypeInitializationException.cs
- CodeAccessSecurityEngine.cs
- externdll.cs
- XmlArrayAttribute.cs
- TextRenderer.cs
- DivideByZeroException.cs