Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / untmp / whidbey / QFE / 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); } } } } // 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
- TypeForwardedFromAttribute.cs
- SQLBoolean.cs
- HostingEnvironmentWrapper.cs
- SizeIndependentAnimationStorage.cs
- SizeConverter.cs
- DbConnectionFactory.cs
- VirtualDirectoryMapping.cs
- ImageClickEventArgs.cs
- TemplateXamlTreeBuilder.cs
- ConnectionManagementSection.cs
- xmlfixedPageInfo.cs
- MultiBinding.cs
- DataTableMapping.cs
- UseLicense.cs
- FormView.cs
- SafeWaitHandle.cs
- HtmlHead.cs
- ChannelSinkStacks.cs
- objectquery_tresulttype.cs
- ItemCollection.cs
- HttpWebResponse.cs
- PointConverter.cs
- DataTemplateKey.cs
- BuildDependencySet.cs
- MenuItem.cs
- Matrix.cs
- AdapterDictionary.cs
- ResourceManagerWrapper.cs
- DataGridViewComboBoxCell.cs
- DateTimeValueSerializerContext.cs
- SafeBitVector32.cs
- MimeTypeMapper.cs
- SqlResolver.cs
- TextViewBase.cs
- ItemChangedEventArgs.cs
- TerminatorSinks.cs
- ReflectionPermission.cs
- IncomingWebRequestContext.cs
- ContentElementAutomationPeer.cs
- BamlResourceSerializer.cs
- KerberosTokenFactoryCredential.cs
- WebPartTracker.cs
- propertytag.cs
- BamlRecords.cs
- DiscoveryDocument.cs
- SimpleMailWebEventProvider.cs
- Blend.cs
- Point3DAnimationUsingKeyFrames.cs
- SoapParser.cs
- WinEventTracker.cs
- DBConcurrencyException.cs
- RegexStringValidator.cs
- WindowsIdentity.cs
- ExpressionConverter.cs
- AlphabeticalEnumConverter.cs
- ColumnResult.cs
- XmlIgnoreAttribute.cs
- ServiceSettingsResponseInfo.cs
- CodeCatchClause.cs
- SafeFileMappingHandle.cs
- SwitchAttribute.cs
- SafeThemeHandle.cs
- NonBatchDirectoryCompiler.cs
- ExecutionPropertyManager.cs
- ReturnEventArgs.cs
- PartialArray.cs
- OleDbRowUpdatingEvent.cs
- ProfileBuildProvider.cs
- RuntimeCompatibilityAttribute.cs
- FlagsAttribute.cs
- TextHidden.cs
- BackStopAuthenticationModule.cs
- ManagedWndProcTracker.cs
- SystemColorTracker.cs
- StoreAnnotationsMap.cs
- DataGridRow.cs
- DataObjectAttribute.cs
- RelatedImageListAttribute.cs
- StateManagedCollection.cs
- PrintPageEvent.cs
- PagePropertiesChangingEventArgs.cs
- FixUpCollection.cs
- MemoryRecordBuffer.cs
- FloatMinMaxAggregationOperator.cs
- GcHandle.cs
- PropertySourceInfo.cs
- SplitContainer.cs
- StrokeSerializer.cs
- DesignerVerb.cs
- Compilation.cs
- WebHttpSecurityModeHelper.cs
- DataGrid.cs
- LocalFileSettingsProvider.cs
- DispatcherEventArgs.cs
- DbConnectionClosed.cs
- TraceEventCache.cs
- MsmqVerifier.cs
- HybridWebProxyFinder.cs
- SqlOuterApplyReducer.cs
- ListenerElementsCollection.cs