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
- BulletDecorator.cs
- NativeStructs.cs
- SemanticAnalyzer.cs
- MarkupProperty.cs
- EntityWithChangeTrackerStrategy.cs
- SqlCrossApplyToCrossJoin.cs
- Vector.cs
- AsymmetricSignatureFormatter.cs
- TableStyle.cs
- QuinticEase.cs
- ConstraintStruct.cs
- TraceContextRecord.cs
- GrammarBuilderRuleRef.cs
- BulletedList.cs
- CachedFontFace.cs
- SystemUnicastIPAddressInformation.cs
- RepeatEnumerable.cs
- CapacityStreamGeometryContext.cs
- SeekStoryboard.cs
- WorkflowInlining.cs
- RepeatInfo.cs
- SamlEvidence.cs
- ObjectListItemCollection.cs
- TableAdapterManagerGenerator.cs
- OleDbEnumerator.cs
- CqlErrorHelper.cs
- DataSvcMapFile.cs
- PointAnimation.cs
- ServiceReference.cs
- DataGridViewImageCell.cs
- SqlNotificationRequest.cs
- WebControlAdapter.cs
- AmbientLight.cs
- DataGridLinkButton.cs
- PartialTrustVisibleAssemblyCollection.cs
- CurrencyWrapper.cs
- SimpleBitVector32.cs
- XmlNamespaceManager.cs
- NodeLabelEditEvent.cs
- TreeWalkHelper.cs
- ToolStripGripRenderEventArgs.cs
- RegexCharClass.cs
- ImageListImageEditor.cs
- ColorMatrix.cs
- DataGridRowsPresenter.cs
- ListManagerBindingsCollection.cs
- SecurityDocument.cs
- PackageStore.cs
- BitmapEffectGeneralTransform.cs
- RandomNumberGenerator.cs
- DesignTimeXamlWriter.cs
- BaseServiceProvider.cs
- HandlerFactoryWrapper.cs
- Gdiplus.cs
- ListViewTableCell.cs
- AnnotationService.cs
- TypeSystemHelpers.cs
- DescendentsWalkerBase.cs
- X509Utils.cs
- SamlAdvice.cs
- DeviceContext2.cs
- HtmlInputImage.cs
- FixedTextContainer.cs
- __TransparentProxy.cs
- OleDbConnectionPoolGroupProviderInfo.cs
- SqlDelegatedTransaction.cs
- OdbcReferenceCollection.cs
- FilterQueryOptionExpression.cs
- FactoryGenerator.cs
- ObjectPersistData.cs
- OptimizerPatterns.cs
- ChangesetResponse.cs
- ContextStaticAttribute.cs
- WebPartTransformer.cs
- ApplicationInfo.cs
- SchemaTableColumn.cs
- MaxValueConverter.cs
- Stopwatch.cs
- XPathNodePointer.cs
- QueryResult.cs
- Visual3D.cs
- LiteralControl.cs
- DataGridViewRow.cs
- SystemColorTracker.cs
- DataReaderContainer.cs
- SafeCoTaskMem.cs
- Simplifier.cs
- DynamicEndpointElement.cs
- CollectionViewGroupInternal.cs
- GenericUriParser.cs
- ExpandedWrapper.cs
- Simplifier.cs
- CodeBlockBuilder.cs
- RoutedEventValueSerializer.cs
- SemaphoreFullException.cs
- XmlQueryRuntime.cs
- FixedDocument.cs
- X509WindowsSecurityToken.cs
- BrowserDefinition.cs
- Int32EqualityComparer.cs