Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / clr / src / BCL / System / Security / Cryptography / SignatureDescription.cs / 1 / SignatureDescription.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== // // SignatureDescription.cs // namespace System.Security.Cryptography { using System.Security.Util; [System.Runtime.InteropServices.ComVisible(true)] public class SignatureDescription { private String _strKey; private String _strDigest; private String _strFormatter; private String _strDeformatter; // // public constructors // public SignatureDescription() { } public SignatureDescription(SecurityElement el) { if (el == null) throw new ArgumentNullException("el"); _strKey = el.SearchForTextOfTag("Key"); _strDigest = el.SearchForTextOfTag("Digest"); _strFormatter = el.SearchForTextOfTag("Formatter"); _strDeformatter = el.SearchForTextOfTag("Deformatter"); } // // property methods // public String KeyAlgorithm { get { return _strKey; } set { _strKey = value; } } public String DigestAlgorithm { get { return _strDigest; } set { _strDigest = value; } } public String FormatterAlgorithm { get { return _strFormatter; } set { _strFormatter = value; } } public String DeformatterAlgorithm { get {return _strDeformatter; } set {_strDeformatter = value; } } // // public methods // public virtual AsymmetricSignatureDeformatter CreateDeformatter(AsymmetricAlgorithm key) { AsymmetricSignatureDeformatter item; item = (AsymmetricSignatureDeformatter) CryptoConfig.CreateFromName(_strDeformatter); item.SetKey(key); return item; } public virtual AsymmetricSignatureFormatter CreateFormatter(AsymmetricAlgorithm key) { AsymmetricSignatureFormatter item; item = (AsymmetricSignatureFormatter) CryptoConfig.CreateFromName(_strFormatter); item.SetKey(key); return item; } public virtual HashAlgorithm CreateDigest() { return (HashAlgorithm) CryptoConfig.CreateFromName(_strDigest); } } internal class RSAPKCS1SHA1SignatureDescription : SignatureDescription { public RSAPKCS1SHA1SignatureDescription() { KeyAlgorithm = "System.Security.Cryptography.RSACryptoServiceProvider"; DigestAlgorithm = "System.Security.Cryptography.SHA1CryptoServiceProvider"; FormatterAlgorithm = "System.Security.Cryptography.RSAPKCS1SignatureFormatter"; DeformatterAlgorithm = "System.Security.Cryptography.RSAPKCS1SignatureDeformatter"; } public override AsymmetricSignatureDeformatter CreateDeformatter(AsymmetricAlgorithm key) { AsymmetricSignatureDeformatter item = (AsymmetricSignatureDeformatter) CryptoConfig.CreateFromName(DeformatterAlgorithm); item.SetKey(key); item.SetHashAlgorithm("SHA1"); return item; } } internal class DSASignatureDescription : SignatureDescription { public DSASignatureDescription() { KeyAlgorithm = "System.Security.Cryptography.DSACryptoServiceProvider"; DigestAlgorithm = "System.Security.Cryptography.SHA1CryptoServiceProvider"; FormatterAlgorithm = "System.Security.Cryptography.DSASignatureFormatter"; DeformatterAlgorithm = "System.Security.Cryptography.DSASignatureDeformatter"; } } }
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ToolStripPanelCell.cs
- CharEnumerator.cs
- IdentifierCreationService.cs
- NonBatchDirectoryCompiler.cs
- TextTreeInsertUndoUnit.cs
- RepeatBehavior.cs
- Rect3D.cs
- DrawingContextWalker.cs
- _SpnDictionary.cs
- SerializationHelper.cs
- DatatypeImplementation.cs
- TemplateNameScope.cs
- ObjectDataSourceMethodEventArgs.cs
- FactoryMaker.cs
- StreamingContext.cs
- ProfileEventArgs.cs
- SmiTypedGetterSetter.cs
- Decorator.cs
- DuplexSecurityProtocolFactory.cs
- PreProcessor.cs
- PropertyValueChangedEvent.cs
- XmlComplianceUtil.cs
- ScaleTransform.cs
- StorageAssociationSetMapping.cs
- base64Transforms.cs
- XmlDigitalSignatureProcessor.cs
- EntityDataReader.cs
- _UriSyntax.cs
- AdRotator.cs
- Rfc2898DeriveBytes.cs
- UInt16Converter.cs
- ListenerConfig.cs
- HierarchicalDataSourceConverter.cs
- Documentation.cs
- DefaultTextStore.cs
- DataGridRow.cs
- WinInetCache.cs
- HttpConfigurationSystem.cs
- ExpressionConverter.cs
- AttributeInfo.cs
- ContractNamespaceAttribute.cs
- CodeCommentStatement.cs
- MemoryMappedFileSecurity.cs
- ServiceDebugBehavior.cs
- FlowLayout.cs
- TextEncodedRawTextWriter.cs
- activationcontext.cs
- Compensate.cs
- IntegerValidatorAttribute.cs
- BooleanExpr.cs
- InputScopeConverter.cs
- IProvider.cs
- ApplyTemplatesAction.cs
- MetafileEditor.cs
- SqlPersonalizationProvider.cs
- PtsHelper.cs
- ArrayTypeMismatchException.cs
- SQLInt64Storage.cs
- ApplicationTrust.cs
- ActivationService.cs
- MethodSignatureGenerator.cs
- ParallelSeparator.xaml.cs
- OuterGlowBitmapEffect.cs
- IgnoreSectionHandler.cs
- DesignerMetadata.cs
- NonParentingControl.cs
- OracleException.cs
- CorePropertiesFilter.cs
- AssemblyCollection.cs
- DrawListViewSubItemEventArgs.cs
- RawMouseInputReport.cs
- ReadOnlyPropertyMetadata.cs
- Comparer.cs
- Parser.cs
- CharUnicodeInfo.cs
- HtmlInputText.cs
- WebPartPersonalization.cs
- SqlIdentifier.cs
- TextTreeInsertUndoUnit.cs
- XmlValidatingReader.cs
- ParameterExpression.cs
- ZipIOExtraFieldElement.cs
- PeerNameRecordCollection.cs
- DbMetaDataCollectionNames.cs
- EventEntry.cs
- AssemblySettingAttributes.cs
- RuleAction.cs
- DataGridRowHeader.cs
- ComplexObject.cs
- BrowserCapabilitiesCompiler.cs
- UndoEngine.cs
- FormatterServices.cs
- ClosableStream.cs
- XmlSchemaAnnotated.cs
- OleDbParameterCollection.cs
- PolicyUnit.cs
- TypeResolvingOptions.cs
- XDeferredAxisSource.cs
- Ref.cs
- Int16Storage.cs