Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / clr / src / BCL / System / Security / Cryptography / RSAPKCS1SignatureFormatter.cs / 1 / RSAPKCS1SignatureFormatter.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== // // RSAPKCS1SignatureFormatter.cs // namespace System.Security.Cryptography { [System.Runtime.InteropServices.ComVisible(true)] public class RSAPKCS1SignatureFormatter : AsymmetricSignatureFormatter { private RSA _rsaKey; private String _strOID; // // public constructors // public RSAPKCS1SignatureFormatter() {} public RSAPKCS1SignatureFormatter(AsymmetricAlgorithm key) { if (key == null) throw new ArgumentNullException("key"); _rsaKey = (RSA) key; } // // public methods // public override void SetKey(AsymmetricAlgorithm key) { if (key == null) throw new ArgumentNullException("key"); _rsaKey = (RSA) key; } public override void SetHashAlgorithm(String strName) { _strOID = CryptoConfig.MapNameToOID(strName); } public override byte[] CreateSignature(byte[] rgbHash) { if (_strOID == null) throw new CryptographicUnexpectedOperationException(Environment.GetResourceString("Cryptography_MissingOID")); if (_rsaKey == null) throw new CryptographicUnexpectedOperationException(Environment.GetResourceString("Cryptography_MissingKey")); if (rgbHash == null) throw new ArgumentNullException("rgbHash"); // Two cases here -- if we are talking to the CSP version or if we are talking to some other RSA provider. if (_rsaKey is RSACryptoServiceProvider) { return ((RSACryptoServiceProvider) _rsaKey).SignHash(rgbHash, _strOID); } else { byte[] pad = Utils.RsaPkcs1Padding(_rsaKey, CryptoConfig.EncodeOID(_strOID), rgbHash); // Create the signature by applying the private key to the padded buffer we just created. return _rsaKey.DecryptValue(pad); } } } }
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- CertificateElement.cs
- serverconfig.cs
- SafeSecurityHandles.cs
- CodePropertyReferenceExpression.cs
- DataBindingCollection.cs
- Timeline.cs
- ArrangedElementCollection.cs
- OutputScopeManager.cs
- EdgeModeValidation.cs
- HttpPostedFile.cs
- PropertyChangedEventArgs.cs
- AssemblyCache.cs
- DecoderReplacementFallback.cs
- DrawingCollection.cs
- AttachedAnnotationChangedEventArgs.cs
- DrawToolTipEventArgs.cs
- milexports.cs
- SqlGenericUtil.cs
- SectionUpdates.cs
- ConfigurationStrings.cs
- BuildProviderAppliesToAttribute.cs
- KeyFrames.cs
- Misc.cs
- CodeRegionDirective.cs
- Menu.cs
- DBPropSet.cs
- ConfigXmlElement.cs
- ByteStreamGeometryContext.cs
- HotSpotCollection.cs
- DataGridColumnHeaderItemAutomationPeer.cs
- ValidationPropertyAttribute.cs
- RegexGroup.cs
- ArrayElementGridEntry.cs
- Int16KeyFrameCollection.cs
- WindowsEditBoxRange.cs
- InvalidOperationException.cs
- PersonalizationProviderHelper.cs
- DateBoldEvent.cs
- VectorValueSerializer.cs
- RepeaterCommandEventArgs.cs
- DbConnectionPoolGroup.cs
- RootProfilePropertySettingsCollection.cs
- AssertUtility.cs
- EntityDataSourceColumn.cs
- SqlDataSourceSelectingEventArgs.cs
- __TransparentProxy.cs
- HtmlShim.cs
- PrincipalPermission.cs
- SID.cs
- AttachedPropertyMethodSelector.cs
- KeyFrames.cs
- EntityProviderServices.cs
- CapabilitiesSection.cs
- DictionaryEntry.cs
- UdpMessageProperty.cs
- ContentWrapperAttribute.cs
- X509RecipientCertificateServiceElement.cs
- EventLogEntryCollection.cs
- ConfigurationValue.cs
- LinkArea.cs
- AttributeUsageAttribute.cs
- ExpressionStringBuilder.cs
- HttpHeaderCollection.cs
- RequestQueue.cs
- CustomErrorCollection.cs
- RuleSettingsCollection.cs
- SQLDateTimeStorage.cs
- PartManifestEntry.cs
- COM2ExtendedTypeConverter.cs
- DockPanel.cs
- QilIterator.cs
- FilteredDataSetHelper.cs
- ApplicationManager.cs
- IntSumAggregationOperator.cs
- EnumType.cs
- EasingFunctionBase.cs
- SqlDataAdapter.cs
- CompilationSection.cs
- PropertyInformation.cs
- COM2FontConverter.cs
- RegexBoyerMoore.cs
- ExtensionQuery.cs
- SqlTriggerAttribute.cs
- TemplateBuilder.cs
- LeafCellTreeNode.cs
- ToggleProviderWrapper.cs
- XmlQueryOutput.cs
- _NestedSingleAsyncResult.cs
- DataSvcMapFileSerializer.cs
- EditingScope.cs
- ValueChangedEventManager.cs
- SByteStorage.cs
- TextBoxAutoCompleteSourceConverter.cs
- InvalidComObjectException.cs
- DecoderNLS.cs
- PerfCounters.cs
- CollectionChangeEventArgs.cs
- fixedPageContentExtractor.cs
- Console.cs
- FileLogRecord.cs