Code:
/ DotNET / DotNET / 8.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
- Parser.cs
- JsonQueryStringConverter.cs
- UniqueSet.cs
- GuidConverter.cs
- HostingEnvironmentWrapper.cs
- TablePattern.cs
- ApplicationInfo.cs
- MultitargetUtil.cs
- Point3DCollectionConverter.cs
- FastEncoder.cs
- ActivityDefaults.cs
- AttachedPropertyBrowsableForChildrenAttribute.cs
- BitmapInitialize.cs
- LayoutTableCell.cs
- SurrogateDataContract.cs
- XpsTokenContext.cs
- XamlFigureLengthSerializer.cs
- TypeReference.cs
- FileIOPermission.cs
- DefaultClaimSet.cs
- CustomAttributeFormatException.cs
- FillErrorEventArgs.cs
- ReferenceConverter.cs
- IntSecurity.cs
- ClientType.cs
- SqlDataSourceEnumerator.cs
- XmlSchemaGroupRef.cs
- HtmlToClrEventProxy.cs
- TableParaClient.cs
- OutputCacheProfile.cs
- XmlSchemaObjectCollection.cs
- ConnectionManagementElementCollection.cs
- StylusShape.cs
- HtmlInputRadioButton.cs
- UnsafePeerToPeerMethods.cs
- MailDefinitionBodyFileNameEditor.cs
- VisualTarget.cs
- WsatAdminException.cs
- TypeInitializationException.cs
- ActivityInterfaces.cs
- SQLCharsStorage.cs
- SoapSchemaImporter.cs
- EditorPartCollection.cs
- BooleanSwitch.cs
- RuleProcessor.cs
- PixelFormat.cs
- MimeMapping.cs
- CancelEventArgs.cs
- RoutedEventValueSerializer.cs
- Page.cs
- MonitoringDescriptionAttribute.cs
- TemplateControlBuildProvider.cs
- DefaultBinder.cs
- HttpCapabilitiesEvaluator.cs
- TypeExtensionConverter.cs
- ControlsConfig.cs
- QuotedPrintableStream.cs
- DrawingContextDrawingContextWalker.cs
- _SSPIWrapper.cs
- TrackingLocationCollection.cs
- RSAPKCS1SignatureFormatter.cs
- TargetControlTypeCache.cs
- GroupStyle.cs
- MatrixIndependentAnimationStorage.cs
- DetailsViewInsertEventArgs.cs
- HtmlHead.cs
- Cursor.cs
- JavascriptXmlWriterWrapper.cs
- SqlComparer.cs
- DynamicMetaObjectBinder.cs
- WindowsGraphics2.cs
- TemplateControlBuildProvider.cs
- GenericTypeParameterBuilder.cs
- RightsManagementEncryptionTransform.cs
- MenuCommands.cs
- AddInPipelineAttributes.cs
- ObjectAnimationUsingKeyFrames.cs
- CodePageUtils.cs
- SudsParser.cs
- TemplateControl.cs
- ProviderCommandInfoUtils.cs
- RotateTransform3D.cs
- MultiAsyncResult.cs
- BindingsCollection.cs
- SortQuery.cs
- _DynamicWinsockMethods.cs
- FamilyMap.cs
- XmlWellformedWriter.cs
- AggregateNode.cs
- InvokeWebService.cs
- Rect3D.cs
- XamlTypeMapper.cs
- WindowsListViewItemStartMenu.cs
- TextTreeUndoUnit.cs
- WinFormsUtils.cs
- InvalidOleVariantTypeException.cs
- SystemPens.cs
- CodeDelegateInvokeExpression.cs
- FixedFindEngine.cs
- ZipIOCentralDirectoryBlock.cs