Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / clr / src / BCL / System / Security / Cryptography / RSAOAEPKeyExchangeFormatter.cs / 1 / RSAOAEPKeyExchangeFormatter.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== namespace System.Security.Cryptography { [System.Runtime.InteropServices.ComVisible(true)] public class RSAOAEPKeyExchangeFormatter : AsymmetricKeyExchangeFormatter { private byte[] ParameterValue; private RSA _rsaKey; private RandomNumberGenerator RngValue; // // public constructors // public RSAOAEPKeyExchangeFormatter() {} public RSAOAEPKeyExchangeFormatter(AsymmetricAlgorithm key) { if (key == null) throw new ArgumentNullException("key"); _rsaKey = (RSA) key; } // // public properties // ///public byte[] Parameter { get { if (ParameterValue != null) return (byte[]) ParameterValue.Clone(); return null; } set { if (value != null) ParameterValue = (byte[]) value.Clone(); else ParameterValue = null; } } /// public override String Parameters { get { return null; } } public RandomNumberGenerator Rng { get { return RngValue; } set { RngValue = value; } } // // public methods // public override void SetKey(AsymmetricAlgorithm key) { if (key == null) throw new ArgumentNullException("key"); _rsaKey = (RSA) key; } public override byte[] CreateKeyExchange(byte[] rgbData) { if (_rsaKey == null) throw new CryptographicUnexpectedOperationException(Environment.GetResourceString("Cryptography_MissingKey")); if (_rsaKey is RSACryptoServiceProvider) { return ((RSACryptoServiceProvider) _rsaKey).Encrypt(rgbData, true); } else { return Utils.RsaOaepEncrypt(_rsaKey, SHA1.Create(), new PKCS1MaskGenerationMethod(), RandomNumberGenerator.Create(), rgbData); } } public override byte[] CreateKeyExchange(byte[] rgbData, Type symAlgType) { return CreateKeyExchange(rgbData); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== namespace System.Security.Cryptography { [System.Runtime.InteropServices.ComVisible(true)] public class RSAOAEPKeyExchangeFormatter : AsymmetricKeyExchangeFormatter { private byte[] ParameterValue; private RSA _rsaKey; private RandomNumberGenerator RngValue; // // public constructors // public RSAOAEPKeyExchangeFormatter() {} public RSAOAEPKeyExchangeFormatter(AsymmetricAlgorithm key) { if (key == null) throw new ArgumentNullException("key"); _rsaKey = (RSA) key; } // // public properties // /// public byte[] Parameter { get { if (ParameterValue != null) return (byte[]) ParameterValue.Clone(); return null; } set { if (value != null) ParameterValue = (byte[]) value.Clone(); else ParameterValue = null; } } /// public override String Parameters { get { return null; } } public RandomNumberGenerator Rng { get { return RngValue; } set { RngValue = value; } } // // public methods // public override void SetKey(AsymmetricAlgorithm key) { if (key == null) throw new ArgumentNullException("key"); _rsaKey = (RSA) key; } public override byte[] CreateKeyExchange(byte[] rgbData) { if (_rsaKey == null) throw new CryptographicUnexpectedOperationException(Environment.GetResourceString("Cryptography_MissingKey")); if (_rsaKey is RSACryptoServiceProvider) { return ((RSACryptoServiceProvider) _rsaKey).Encrypt(rgbData, true); } else { return Utils.RsaOaepEncrypt(_rsaKey, SHA1.Create(), new PKCS1MaskGenerationMethod(), RandomNumberGenerator.Create(), rgbData); } } public override byte[] CreateKeyExchange(byte[] rgbData, Type symAlgType) { return CreateKeyExchange(rgbData); } } } // 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
- DetailsViewModeEventArgs.cs
- WebPartDisplayModeCancelEventArgs.cs
- WmlLiteralTextAdapter.cs
- TextParagraph.cs
- PropertyItemInternal.cs
- PersonalizableTypeEntry.cs
- DeviceContexts.cs
- Soap12ServerProtocol.cs
- ModifiableIteratorCollection.cs
- ControlPaint.cs
- DataServiceExpressionVisitor.cs
- ProcessThreadCollection.cs
- InfoCardBaseException.cs
- FormattedTextSymbols.cs
- RoutedEventArgs.cs
- FileDialogCustomPlacesCollection.cs
- TextPointer.cs
- SynchronizedInputPattern.cs
- TemplatedMailWebEventProvider.cs
- SafeFileHandle.cs
- AcceleratedTokenAuthenticator.cs
- CustomAttributeBuilder.cs
- ToolStripContainer.cs
- ExpressionDumper.cs
- ExpressionValueEditor.cs
- Manipulation.cs
- StylusEditingBehavior.cs
- VirtualizedContainerService.cs
- FileEnumerator.cs
- ErrorTableItemStyle.cs
- XPathSingletonIterator.cs
- GeometryValueSerializer.cs
- TranslateTransform.cs
- ToolTipService.cs
- EntityViewGenerationAttribute.cs
- RequestCachePolicyConverter.cs
- RoutedUICommand.cs
- SettingsBase.cs
- ToolStripPanel.cs
- FileFormatException.cs
- Socket.cs
- CursorInteropHelper.cs
- ToolBarPanel.cs
- XmlSchemaSimpleTypeRestriction.cs
- ToolStripGrip.cs
- AuthorizationRule.cs
- ColumnMapVisitor.cs
- SmiMetaDataProperty.cs
- ColorConverter.cs
- FixedTextContainer.cs
- DataSourceControl.cs
- ProtectedProviderSettings.cs
- SecurityTokenException.cs
- WebServiceTypeData.cs
- SymmetricAlgorithm.cs
- CompatibleComparer.cs
- RuntimeConfig.cs
- IndexedGlyphRun.cs
- DataGridLinkButton.cs
- Stroke2.cs
- TableLayoutSettings.cs
- PassportAuthenticationEventArgs.cs
- SiteMembershipCondition.cs
- MetadataItemSerializer.cs
- QuaternionRotation3D.cs
- SchemaImporterExtensionElementCollection.cs
- InvalidTimeZoneException.cs
- DBCommand.cs
- DesignerLoader.cs
- ItemCollection.cs
- HotSpot.cs
- CompositeTypefaceMetrics.cs
- SplitterPanel.cs
- FormViewDeleteEventArgs.cs
- NameValuePermission.cs
- DataGridViewMethods.cs
- CallContext.cs
- GZipDecoder.cs
- RawKeyboardInputReport.cs
- SQLBytesStorage.cs
- NameValueCollection.cs
- MediaElement.cs
- XmlSchemaInferenceException.cs
- WindowCollection.cs
- ManagementBaseObject.cs
- SqlNodeTypeOperators.cs
- Mouse.cs
- FilterException.cs
- XPathSelectionIterator.cs
- TableCell.cs
- RuntimeCompatibilityAttribute.cs
- HierarchicalDataSourceControl.cs
- RegisteredArrayDeclaration.cs
- CodeTypeDeclarationCollection.cs
- DataGridRowClipboardEventArgs.cs
- FontSizeConverter.cs
- RepeatBehavior.cs
- Point4DConverter.cs
- SamlEvidence.cs
- ObjectDataSourceView.cs