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
- TypeElement.cs
- LookupTables.cs
- EdmItemCollection.OcAssemblyCache.cs
- WMICapabilities.cs
- Journal.cs
- FigureParagraph.cs
- TextBoxDesigner.cs
- ElementProxy.cs
- ChtmlTextWriter.cs
- KeyboardDevice.cs
- ErrorWrapper.cs
- ResourceFallbackManager.cs
- ToolStripStatusLabel.cs
- CounterCreationDataCollection.cs
- FilterEventArgs.cs
- StringValidator.cs
- RPIdentityRequirement.cs
- WebPartDeleteVerb.cs
- EntityConnection.cs
- XmlSerializer.cs
- ByteAnimationUsingKeyFrames.cs
- ProfileEventArgs.cs
- LostFocusEventManager.cs
- BaseUriHelper.cs
- FactoryGenerator.cs
- sqlnorm.cs
- AnnouncementSendsAsyncResult.cs
- XamlFilter.cs
- Compiler.cs
- SchemaComplexType.cs
- ErrorHandlerModule.cs
- documentsequencetextview.cs
- CalloutQueueItem.cs
- EncoderFallback.cs
- FacetChecker.cs
- DateTimeOffsetStorage.cs
- PLINQETWProvider.cs
- RegexCharClass.cs
- Renderer.cs
- ObjectParameterCollection.cs
- odbcmetadatacollectionnames.cs
- CompositeDataBoundControl.cs
- GradientStop.cs
- HttpRequest.cs
- RenameRuleObjectDialog.cs
- SocketManager.cs
- NativeMethods.cs
- RangeEnumerable.cs
- QueryContinueDragEvent.cs
- SyndicationDeserializer.cs
- WaitForChangedResult.cs
- ImagingCache.cs
- TimeoutValidationAttribute.cs
- ResourceManagerWrapper.cs
- returneventsaver.cs
- COM2TypeInfoProcessor.cs
- TemplatedWizardStep.cs
- DocumentApplicationJournalEntry.cs
- MessagePartDescription.cs
- PathParser.cs
- QueryCacheEntry.cs
- TextTreePropertyUndoUnit.cs
- HashRepartitionStream.cs
- _ScatterGatherBuffers.cs
- WindowsIdentity.cs
- QilSortKey.cs
- TypedRowGenerator.cs
- DocumentPageViewAutomationPeer.cs
- SynchronizationLockException.cs
- hresults.cs
- XmlDataSource.cs
- DiscoveryEndpointElement.cs
- cookieexception.cs
- PropertyNames.cs
- XsdDuration.cs
- XpsViewerException.cs
- ReadOnlyPropertyMetadata.cs
- InProcStateClientManager.cs
- StaticSiteMapProvider.cs
- DataMember.cs
- messageonlyhwndwrapper.cs
- validationstate.cs
- MemberAccessException.cs
- DoubleLink.cs
- ReflectionTypeLoadException.cs
- DotExpr.cs
- TimeSpanStorage.cs
- IdnElement.cs
- WSSecurityPolicy12.cs
- DescendantBaseQuery.cs
- DataListItemEventArgs.cs
- LineServicesCallbacks.cs
- SmiEventSink.cs
- LabelLiteral.cs
- PolicyValidator.cs
- SqlDataSourceQueryEditor.cs
- ExpandableObjectConverter.cs
- ScrollChangedEventArgs.cs
- DateTimePicker.cs
- NameTable.cs