Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / untmp / whidbey / QFE / 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- Command.cs
- TextSchema.cs
- PublisherMembershipCondition.cs
- Wrapper.cs
- OdbcParameter.cs
- MailAddressCollection.cs
- HostingEnvironment.cs
- RegexCaptureCollection.cs
- DrawingState.cs
- Metadata.cs
- SemanticResultKey.cs
- RoleGroupCollection.cs
- _NtlmClient.cs
- HijriCalendar.cs
- HttpCachePolicyBase.cs
- FormViewInsertEventArgs.cs
- UInt32Converter.cs
- ThousandthOfEmRealPoints.cs
- DirectionalLight.cs
- GridViewRowPresenterBase.cs
- BaseDataList.cs
- RadioButtonStandardAdapter.cs
- IsolatedStorageFileStream.cs
- LeaseManager.cs
- AutoSizeToolBoxItem.cs
- BufferedStream.cs
- SessionEndingEventArgs.cs
- TabPage.cs
- DataGridViewComponentPropertyGridSite.cs
- SystemResources.cs
- CodeNamespaceImport.cs
- DebugView.cs
- ColumnTypeConverter.cs
- DecimalAnimationBase.cs
- DependencyObject.cs
- MediaSystem.cs
- RemotingServices.cs
- ListItemParagraph.cs
- Form.cs
- MsmqIntegrationBinding.cs
- WebControlsSection.cs
- GACMembershipCondition.cs
- ColumnCollection.cs
- ToggleButton.cs
- DbReferenceCollection.cs
- GenericFlowSwitchHelper.cs
- DataContractFormatAttribute.cs
- ListItemViewAttribute.cs
- PrintController.cs
- JoinTreeNode.cs
- FormsAuthenticationEventArgs.cs
- Trace.cs
- BinaryMethodMessage.cs
- ProfileGroupSettingsCollection.cs
- TranslateTransform.cs
- DockPatternIdentifiers.cs
- DataExpression.cs
- fixedPageContentExtractor.cs
- RegexCharClass.cs
- ConfigurationSchemaErrors.cs
- UnmanagedMemoryStreamWrapper.cs
- mediapermission.cs
- PixelFormatConverter.cs
- ItemCheckedEvent.cs
- EncryptedData.cs
- SpellerStatusTable.cs
- FormViewPagerRow.cs
- RegistrationServices.cs
- unsafenativemethodsother.cs
- EventSinkHelperWriter.cs
- Scheduler.cs
- EditorBrowsableAttribute.cs
- XDeferredAxisSource.cs
- AttributeEmitter.cs
- LogExtentCollection.cs
- __Error.cs
- InputScopeNameConverter.cs
- FixedBufferAttribute.cs
- LayoutManager.cs
- SignerInfo.cs
- ObjectRef.cs
- FormsAuthenticationEventArgs.cs
- ContentHostHelper.cs
- GridViewRowCollection.cs
- PauseStoryboard.cs
- NotCondition.cs
- ConditionalAttribute.cs
- InlinedAggregationOperatorEnumerator.cs
- MenuItemBindingCollection.cs
- DrawingGroup.cs
- ZipIOModeEnforcingStream.cs
- RelationshipFixer.cs
- ExceptionRoutedEventArgs.cs
- MetadataArtifactLoaderCompositeFile.cs
- Material.cs
- AsyncOperationManager.cs
- SQLResource.cs
- EnterpriseServicesHelper.cs
- TypeConverterValueSerializer.cs
- MsmqIntegrationProcessProtocolHandler.cs