Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / 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"; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // ==++== // // 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"; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- EndpointConfigContainer.cs
- CloseSequenceResponse.cs
- LinqDataSourceValidationException.cs
- SimplePropertyEntry.cs
- InvokePattern.cs
- DataControlPagerLinkButton.cs
- ConfigurationManagerInternalFactory.cs
- MsmqInputSessionChannel.cs
- DateTimeFormat.cs
- RoleManagerEventArgs.cs
- XmlHierarchicalEnumerable.cs
- TextElement.cs
- MetadataSerializer.cs
- CapabilitiesUse.cs
- WebScriptMetadataFormatter.cs
- _NegoStream.cs
- OptimisticConcurrencyException.cs
- SafeEventHandle.cs
- WindowCollection.cs
- XPathNodeInfoAtom.cs
- HttpClientCertificate.cs
- Psha1DerivedKeyGenerator.cs
- TextOutput.cs
- SoapFault.cs
- TdsParser.cs
- DesignerWithHeader.cs
- ResponseStream.cs
- PeerEndPoint.cs
- XmlNodeReader.cs
- StsCommunicationException.cs
- List.cs
- DerivedKeySecurityToken.cs
- MetabaseSettings.cs
- FormViewRow.cs
- SHA1.cs
- EditorZoneAutoFormat.cs
- OneWayBindingElementImporter.cs
- WebEventTraceProvider.cs
- WebServiceData.cs
- WebPartVerbsEventArgs.cs
- WebBrowser.cs
- ConfigurationLockCollection.cs
- ActivityDesignerHelper.cs
- Attributes.cs
- TableDesigner.cs
- Trustee.cs
- ArrayConverter.cs
- SqlFunctionAttribute.cs
- Menu.cs
- StreamHelper.cs
- _BufferOffsetSize.cs
- DataGridViewHeaderCell.cs
- RuleAction.cs
- XmlToDatasetMap.cs
- BamlLocalizer.cs
- Properties.cs
- BinaryParser.cs
- HttpHeaderCollection.cs
- TransactionManager.cs
- PriorityRange.cs
- EntityAdapter.cs
- SeverityFilter.cs
- DesignerView.Commands.cs
- OneWayChannelFactory.cs
- SmiConnection.cs
- Cursor.cs
- AdornerPresentationContext.cs
- CodeTypeMemberCollection.cs
- ListControlConvertEventArgs.cs
- FlowDecisionLabelFeature.cs
- EntityViewGenerator.cs
- DataTableClearEvent.cs
- HelpEvent.cs
- BitmapFrameDecode.cs
- AlternationConverter.cs
- ProxyWebPartConnectionCollection.cs
- ChangeToolStripParentVerb.cs
- SourceElementsCollection.cs
- CommandEventArgs.cs
- DataGridViewCellParsingEventArgs.cs
- MetadataException.cs
- SynchronizationContext.cs
- WebPartDisplayModeEventArgs.cs
- PerspectiveCamera.cs
- updateconfighost.cs
- WebPartConnectionsCancelVerb.cs
- DataGridViewLinkColumn.cs
- ProtocolViolationException.cs
- Activity.cs
- Imaging.cs
- MappingItemCollection.cs
- KeyedHashAlgorithm.cs
- Cursors.cs
- XmlDocument.cs
- MaterialCollection.cs
- UxThemeWrapper.cs
- LassoHelper.cs
- WindowsListViewItemStartMenu.cs
- OleStrCAMarshaler.cs
- StateRuntime.cs