Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / clr / src / BCL / System / Security / Cryptography / DSASignatureFormatter.cs / 1305376 / DSASignatureFormatter.cs
using System.Diagnostics.Contracts; // ==++== // // 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"); Contract.EndContractBlock(); _dsaKey = (DSA) key; } // // public methods // public override void SetKey(AsymmetricAlgorithm key) { if (key == null) throw new ArgumentNullException("key"); Contract.EndContractBlock(); _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 (rgbHash == null) throw new ArgumentNullException("rgbHash"); Contract.EndContractBlock(); if (_oid == null) throw new CryptographicUnexpectedOperationException(Environment.GetResourceString("Cryptography_MissingOID")); if (_dsaKey == null) throw new CryptographicUnexpectedOperationException(Environment.GetResourceString("Cryptography_MissingKey")); return _dsaKey.CreateSignature(rgbHash); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. using System.Diagnostics.Contracts; // ==++== // // 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"); Contract.EndContractBlock(); _dsaKey = (DSA) key; } // // public methods // public override void SetKey(AsymmetricAlgorithm key) { if (key == null) throw new ArgumentNullException("key"); Contract.EndContractBlock(); _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 (rgbHash == null) throw new ArgumentNullException("rgbHash"); Contract.EndContractBlock(); if (_oid == null) throw new CryptographicUnexpectedOperationException(Environment.GetResourceString("Cryptography_MissingOID")); if (_dsaKey == null) throw new CryptographicUnexpectedOperationException(Environment.GetResourceString("Cryptography_MissingKey")); return _dsaKey.CreateSignature(rgbHash); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- CatalogPartDesigner.cs
- Literal.cs
- ComboBoxAutomationPeer.cs
- BaseServiceProvider.cs
- PointConverter.cs
- MimeFormatter.cs
- ButtonFlatAdapter.cs
- ScalarOps.cs
- SymbolUsageManager.cs
- FolderNameEditor.cs
- DbConnectionPoolCounters.cs
- HtmlUtf8RawTextWriter.cs
- LazyTextWriterCreator.cs
- DynamicRouteExpression.cs
- FixedSOMContainer.cs
- SHA512.cs
- IteratorAsyncResult.cs
- EntityContainer.cs
- SvcFileManager.cs
- TaiwanLunisolarCalendar.cs
- FixedFlowMap.cs
- SingleAnimationUsingKeyFrames.cs
- EventBuilder.cs
- MimeMapping.cs
- SharedPerformanceCounter.cs
- BulletDecorator.cs
- Int32Converter.cs
- X509CertificateValidator.cs
- IdentitySection.cs
- UrlMappingsModule.cs
- EmptyQuery.cs
- Rotation3DKeyFrameCollection.cs
- InternalControlCollection.cs
- FamilyTypeface.cs
- Scripts.cs
- KeyFrames.cs
- XPathBinder.cs
- SessionEndedEventArgs.cs
- TimeoutConverter.cs
- VisualStyleElement.cs
- PropertyInformation.cs
- cookie.cs
- ListenDesigner.cs
- SimpleMailWebEventProvider.cs
- ClientRolePrincipal.cs
- Int64.cs
- EventSinkActivityDesigner.cs
- BuildManagerHost.cs
- ServiceHandle.cs
- OutKeywords.cs
- ParameterCollection.cs
- SafeTimerHandle.cs
- IisTraceWebEventProvider.cs
- _IPv6Address.cs
- UniqueEventHelper.cs
- SchemaAttDef.cs
- WindowsAuthenticationEventArgs.cs
- ImportDesigner.xaml.cs
- CompiledQuery.cs
- X509CertificateCollection.cs
- DataGridViewHeaderCell.cs
- OverloadGroupAttribute.cs
- PrinterSettings.cs
- ErrorInfoXmlDocument.cs
- UmAlQuraCalendar.cs
- NetworkInterface.cs
- CopyNamespacesAction.cs
- FormViewDeleteEventArgs.cs
- ObjectDataSource.cs
- SystemMulticastIPAddressInformation.cs
- Grid.cs
- HttpListenerPrefixCollection.cs
- AddToCollection.cs
- HttpRequestCacheValidator.cs
- MouseActionValueSerializer.cs
- ResourceBinder.cs
- Site.cs
- BrowserCapabilitiesCompiler.cs
- WaitHandleCannotBeOpenedException.cs
- WorkflowInstanceProvider.cs
- SerTrace.cs
- UserPreferenceChangingEventArgs.cs
- ExceptionValidationRule.cs
- PositiveTimeSpanValidatorAttribute.cs
- CreateRefExpr.cs
- DesignerActionItemCollection.cs
- MsmqIntegrationSecurity.cs
- XmlIgnoreAttribute.cs
- ColorContextHelper.cs
- Section.cs
- DateTime.cs
- TextCompositionManager.cs
- MembershipValidatePasswordEventArgs.cs
- CatalogPart.cs
- TypeHelper.cs
- CachingHintValidation.cs
- ContextMenuStrip.cs
- DataGridViewRowsAddedEventArgs.cs
- SafeRegistryHandle.cs
- recordstatefactory.cs