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
- _UriTypeConverter.cs
- ClickablePoint.cs
- SpecularMaterial.cs
- ExportOptions.cs
- MatrixStack.cs
- UriSection.cs
- DataGridViewButtonColumn.cs
- ViewGenerator.cs
- CryptoHelper.cs
- CompositeFontInfo.cs
- ListView.cs
- BitmapFrame.cs
- CodeDirectiveCollection.cs
- CompileLiteralTextParser.cs
- ListViewContainer.cs
- SafeIUnknown.cs
- DataControlCommands.cs
- ServerProtocol.cs
- UndirectedGraph.cs
- FilteredAttributeCollection.cs
- HostedElements.cs
- SystemIPInterfaceStatistics.cs
- TextEvent.cs
- SurrogateChar.cs
- TrustManager.cs
- TextRange.cs
- ToolBar.cs
- SctClaimSerializer.cs
- MenuItemStyleCollection.cs
- PtsHost.cs
- WsdlBuildProvider.cs
- AsyncParams.cs
- SelectionEditingBehavior.cs
- StringValidator.cs
- BitArray.cs
- XmlDocumentViewSchema.cs
- PtsPage.cs
- ExtendedTransformFactory.cs
- CatalogZoneDesigner.cs
- AsyncCompletedEventArgs.cs
- CellTreeSimplifier.cs
- LingerOption.cs
- FlowDocumentFormatter.cs
- Axis.cs
- CryptoProvider.cs
- EntityParameter.cs
- NameValuePermission.cs
- SqlDataAdapter.cs
- SR.cs
- UserControlFileEditor.cs
- HwndHost.cs
- KnownColorTable.cs
- PathGeometry.cs
- StrongNameUtility.cs
- XamlBrushSerializer.cs
- SchemaNames.cs
- AttributeData.cs
- LoginView.cs
- EditorServiceContext.cs
- TreeBuilderBamlTranslator.cs
- HostedElements.cs
- URL.cs
- RequestQueryParser.cs
- XmlChildNodes.cs
- XmlTypeMapping.cs
- SettingsPropertyValueCollection.cs
- CmsUtils.cs
- TextSpanModifier.cs
- WebControlsSection.cs
- WindowsPen.cs
- ItemsChangedEventArgs.cs
- SmiSettersStream.cs
- CodeDomConfigurationHandler.cs
- GlyphTypeface.cs
- MouseWheelEventArgs.cs
- SudsParser.cs
- WebRequestModulesSection.cs
- CacheModeConverter.cs
- DataSpaceManager.cs
- XmlCompatibilityReader.cs
- DataGridViewColumnConverter.cs
- TrackingRecord.cs
- MaskedTextBox.cs
- IndexerReference.cs
- ExceptionHelpers.cs
- PropertyChangeTracker.cs
- Freezable.cs
- EpmContentDeSerializerBase.cs
- ReceiveSecurityHeaderEntry.cs
- PropertyInfoSet.cs
- LockCookie.cs
- FixedSOMSemanticBox.cs
- SessionEndingEventArgs.cs
- TextEditorContextMenu.cs
- QilFactory.cs
- ConfigXmlText.cs
- RowBinding.cs
- UserMapPath.cs
- WebServiceHost.cs
- DocComment.cs