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
- VarInfo.cs
- PrivateFontCollection.cs
- PermissionSet.cs
- RegexCapture.cs
- EntityCommandExecutionException.cs
- CancelEventArgs.cs
- ConfigurationPermission.cs
- TimeManager.cs
- ResourcePart.cs
- AuthenticationConfig.cs
- filewebrequest.cs
- ServicePointManagerElement.cs
- AuthenticationService.cs
- BasicHttpSecurityElement.cs
- ConfigXmlAttribute.cs
- RayMeshGeometry3DHitTestResult.cs
- GeneralTransform.cs
- DataExchangeServiceBinder.cs
- XmlSchemaImport.cs
- CachedPathData.cs
- SQlBooleanStorage.cs
- DesignerValidationSummaryAdapter.cs
- NestedContainer.cs
- CommandEventArgs.cs
- XmlText.cs
- PointCollectionConverter.cs
- DiscoveryExceptionDictionary.cs
- ActivityCodeDomSerializer.cs
- SecurityTokenProvider.cs
- ListBoxChrome.cs
- SrgsRulesCollection.cs
- HttpApplicationStateBase.cs
- DispatcherSynchronizationContext.cs
- DataGridItemCollection.cs
- TextEditorDragDrop.cs
- XmlSchemaGroupRef.cs
- BooleanAnimationBase.cs
- VerificationException.cs
- ListItemViewControl.cs
- DataGridViewSelectedCellCollection.cs
- recordstate.cs
- BitmapCache.cs
- SerializationObjectManager.cs
- StringDictionaryCodeDomSerializer.cs
- TypeSystemProvider.cs
- EditingCommands.cs
- ExpressionEditor.cs
- BinaryConverter.cs
- ScriptingWebServicesSectionGroup.cs
- MatrixTransform3D.cs
- ManualResetEvent.cs
- HttpApplicationFactory.cs
- VectorCollectionConverter.cs
- ColumnHeader.cs
- DataSourceDescriptorCollection.cs
- ResXDataNode.cs
- QueryableDataSourceEditData.cs
- TreeView.cs
- Privilege.cs
- FileChangesMonitor.cs
- EntityDataSourceColumn.cs
- RoutedUICommand.cs
- StylusButtonEventArgs.cs
- XPathSelectionIterator.cs
- EndEvent.cs
- TimestampInformation.cs
- Roles.cs
- Bezier.cs
- ByteRangeDownloader.cs
- Main.cs
- NavigationWindowAutomationPeer.cs
- EventProviderBase.cs
- BitArray.cs
- Quaternion.cs
- CompatibleComparer.cs
- userdatakeys.cs
- DataGridViewHitTestInfo.cs
- WindowsSpinner.cs
- ActivityDesignerAccessibleObject.cs
- MultiPageTextView.cs
- CodeMemberEvent.cs
- followingsibling.cs
- TextEncodedRawTextWriter.cs
- MarkupObject.cs
- FileDetails.cs
- Msmq4PoisonHandler.cs
- EventWaitHandleSecurity.cs
- WebPartConnectionCollection.cs
- DataGridCommandEventArgs.cs
- NativeRecognizer.cs
- SqlProfileProvider.cs
- WebPartUserCapability.cs
- QuaternionRotation3D.cs
- IsolatedStorageFileStream.cs
- MessagePropertyDescription.cs
- TrackBarRenderer.cs
- GridViewRow.cs
- ObjectTag.cs
- UserControlCodeDomTreeGenerator.cs
- WebPartConnectionsConnectVerb.cs