Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / untmp / whidbey / QFE / ndp / clr / src / BCL / System / Security / Cryptography / RSAPKCS1KeyExchangeDeformatter.cs / 1 / RSAPKCS1KeyExchangeDeformatter.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== namespace System.Security.Cryptography { [System.Runtime.InteropServices.ComVisible(true)] public class RSAPKCS1KeyExchangeDeformatter : AsymmetricKeyExchangeDeformatter { RSA _rsaKey; RandomNumberGenerator RngValue; // Constructors public RSAPKCS1KeyExchangeDeformatter() {} public RSAPKCS1KeyExchangeDeformatter(AsymmetricAlgorithm key) { if (key == null) throw new ArgumentNullException("key"); _rsaKey = (RSA) key; } // // public properties // public RandomNumberGenerator RNG { get { return RngValue; } set { RngValue = value; } } public override String Parameters { get { return null; } set { ;} } // // public methods // public override byte[] DecryptKeyExchange(byte[] rgbIn) { if (_rsaKey == null) throw new CryptographicUnexpectedOperationException(Environment.GetResourceString("Cryptography_MissingKey")); byte[] rgbOut; if (_rsaKey is RSACryptoServiceProvider) { rgbOut = ((RSACryptoServiceProvider) _rsaKey).Decrypt(rgbIn, false); } else { int i; byte[] rgb; rgb = _rsaKey.DecryptValue(rgbIn); // // Expected format is: // 00 || 02 || PS || 00 || D // where PS does not contain any zeros. // for (i = 2; i= rgb.Length) throw new CryptographicUnexpectedOperationException(Environment.GetResourceString("Cryptography_PKCS1Decoding")); i++; // Skip over the zero rgbOut = new byte[rgb.Length - i]; Buffer.InternalBlockCopy(rgb, i, rgbOut, 0, rgbOut.Length); } return rgbOut; } public override void SetKey(AsymmetricAlgorithm key) { if (key == null) throw new ArgumentNullException("key"); _rsaKey = (RSA) key; } } } // 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
- EditingScopeUndoUnit.cs
- DataGridViewCheckBoxCell.cs
- ScriptingScriptResourceHandlerSection.cs
- PropertyEmitter.cs
- Point3DCollectionValueSerializer.cs
- XmlDownloadManager.cs
- x509store.cs
- RealProxy.cs
- SafePointer.cs
- FormViewUpdatedEventArgs.cs
- documentsequencetextcontainer.cs
- DropDownList.cs
- OleDbMetaDataFactory.cs
- SplitterDesigner.cs
- VirtualDirectoryMapping.cs
- HttpConfigurationSystem.cs
- TreeViewItem.cs
- HijriCalendar.cs
- HostVisual.cs
- EntityCollection.cs
- XPathMultyIterator.cs
- OutOfMemoryException.cs
- XmlCustomFormatter.cs
- SimpleApplicationHost.cs
- PathFigureCollection.cs
- InternalSafeNativeMethods.cs
- SiteMembershipCondition.cs
- WorkItem.cs
- SqlLiftIndependentRowExpressions.cs
- TableCell.cs
- DataBoundLiteralControl.cs
- TextRangeEditTables.cs
- SafeCryptoHandles.cs
- DrawToolTipEventArgs.cs
- SafeHandle.cs
- VBCodeProvider.cs
- ConfigurationPropertyAttribute.cs
- PageStatePersister.cs
- BufferedStream.cs
- ObjectStateEntry.cs
- GridViewRowPresenterBase.cs
- BuildDependencySet.cs
- HtmlAnchor.cs
- XmlMapping.cs
- HiddenFieldPageStatePersister.cs
- lengthconverter.cs
- DataRowView.cs
- SqlDependencyListener.cs
- FilterEventArgs.cs
- ArithmeticException.cs
- ComponentEditorPage.cs
- PackagingUtilities.cs
- JoinGraph.cs
- SchemaImporterExtension.cs
- AssertFilter.cs
- ToggleButton.cs
- ClientSession.cs
- HttpValueCollection.cs
- SqlDataSourceFilteringEventArgs.cs
- ServiceMoniker.cs
- HotSpot.cs
- CollectionViewSource.cs
- FrameworkPropertyMetadata.cs
- IProducerConsumerCollection.cs
- EtwTrace.cs
- ListBox.cs
- AuthenticationService.cs
- ActivationArguments.cs
- CollectionDataContractAttribute.cs
- ExceptionTrace.cs
- DataServiceResponse.cs
- ICollection.cs
- ThreadAbortException.cs
- GlyphRunDrawing.cs
- AlternateView.cs
- ProcessStartInfo.cs
- FrameSecurityDescriptor.cs
- AppSettingsExpressionBuilder.cs
- TreeNodeCollection.cs
- SourceLineInfo.cs
- EdmComplexPropertyAttribute.cs
- XPathNavigatorKeyComparer.cs
- ResourcePermissionBase.cs
- TemplatePropertyEntry.cs
- VectorCollection.cs
- FormViewUpdatedEventArgs.cs
- EdmScalarPropertyAttribute.cs
- SystemResourceHost.cs
- ExceptionRoutedEventArgs.cs
- TextRangeBase.cs
- DrawItemEvent.cs
- NegotiateStream.cs
- ApplicationDirectoryMembershipCondition.cs
- RangeBaseAutomationPeer.cs
- LabelAutomationPeer.cs
- ClipboardProcessor.cs
- StylusShape.cs
- ParagraphVisual.cs
- DropDownList.cs
- CodeIdentifiers.cs