Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / clr / src / BCL / System / Security / Cryptography / DSASignatureFormatter.cs / 1 / DSASignatureFormatter.cs
// ==++==
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
// ==--==
//
// DSASignatureFormatter.cs
//
namespace System.Security.Cryptography {
[System.Runtime.InteropServices.ComVisible(true)]
public class DSASignatureFormatter : AsymmetricSignatureFormatter {
DSA _dsaKey;
String _oid;
//
// public constructors
//
public DSASignatureFormatter() {
// The hash algorithm is always SHA1
_oid = CryptoConfig.MapNameToOID("SHA1");
}
public DSASignatureFormatter(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 byte[] CreateSignature(byte[] rgbHash) {
if (_oid == null)
throw new CryptographicUnexpectedOperationException(Environment.GetResourceString("Cryptography_MissingOID"));
if (_dsaKey == null)
throw new CryptographicUnexpectedOperationException(Environment.GetResourceString("Cryptography_MissingKey"));
if (rgbHash == null)
throw new ArgumentNullException("rgbHash");
return _dsaKey.CreateSignature(rgbHash);
}
}
}
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- RangeEnumerable.cs
- WindowsGraphicsCacheManager.cs
- OneOfElement.cs
- SafeArrayRankMismatchException.cs
- RemoteWebConfigurationHost.cs
- MTConfigUtil.cs
- Serializer.cs
- WebPartActionVerb.cs
- activationcontext.cs
- UnsafeNativeMethods.cs
- CodeSnippetStatement.cs
- HtmlButton.cs
- NullToBooleanConverter.cs
- ParserStreamGeometryContext.cs
- InlineUIContainer.cs
- OrCondition.cs
- COM2PictureConverter.cs
- HScrollProperties.cs
- RegexFCD.cs
- ExternalCalls.cs
- FormatSettings.cs
- EventMappingSettingsCollection.cs
- SecurityException.cs
- InputLanguage.cs
- SecurityTokenRequirement.cs
- DragCompletedEventArgs.cs
- BooleanKeyFrameCollection.cs
- XXXOnTypeBuilderInstantiation.cs
- DayRenderEvent.cs
- DataGridViewImageColumn.cs
- PersonalizationStateQuery.cs
- DataGridViewTextBoxCell.cs
- AudioSignalProblemOccurredEventArgs.cs
- SystemWebExtensionsSectionGroup.cs
- RootProfilePropertySettingsCollection.cs
- Zone.cs
- SmtpClient.cs
- GenericXmlSecurityToken.cs
- DataGridRowAutomationPeer.cs
- WebPartExportVerb.cs
- ClientScriptManagerWrapper.cs
- DropShadowBitmapEffect.cs
- Marshal.cs
- SqlMethods.cs
- DataGridTableCollection.cs
- RectAnimation.cs
- ValueChangedEventManager.cs
- AnnotationObservableCollection.cs
- ProfileInfo.cs
- URIFormatException.cs
- Marshal.cs
- BufferModesCollection.cs
- TransformerConfigurationWizardBase.cs
- SqlRowUpdatedEvent.cs
- InkPresenter.cs
- WeakEventManager.cs
- URIFormatException.cs
- TlsnegoTokenProvider.cs
- BindingNavigator.cs
- DataViewManagerListItemTypeDescriptor.cs
- CacheVirtualItemsEvent.cs
- GridErrorDlg.cs
- updateconfighost.cs
- SystemUdpStatistics.cs
- DbCommandDefinition.cs
- FullTextState.cs
- ProcessManager.cs
- OverrideMode.cs
- Matrix3D.cs
- TextBoxBase.cs
- EntityViewGenerationAttribute.cs
- RegexNode.cs
- Formatter.cs
- Trustee.cs
- CodeIdentifier.cs
- ListViewGroupItemCollection.cs
- ProgressBar.cs
- AppDomainManager.cs
- DurationConverter.cs
- XmlILAnnotation.cs
- DocumentPageTextView.cs
- Duration.cs
- TraversalRequest.cs
- RepeatInfo.cs
- NetTcpSectionData.cs
- NumberFormatInfo.cs
- Positioning.cs
- EntityConnection.cs
- EventHandlersStore.cs
- XmlByteStreamWriter.cs
- SingleAnimation.cs
- EventArgs.cs
- XNodeSchemaApplier.cs
- DragCompletedEventArgs.cs
- NonClientArea.cs
- PeerUnsafeNativeMethods.cs
- UnsafeNativeMethodsPenimc.cs
- EdmRelationshipRoleAttribute.cs
- LateBoundChannelParameterCollection.cs
- ListChunk.cs