﻿<?xml version="1.0" encoding="utf-8"?><Type Name="RSAPKCS1KeyExchangeFormatter" FullName="System.Security.Cryptography.RSAPKCS1KeyExchangeFormatter"><TypeSignature Maintainer="auto" Language="C#" Value="public class RSAPKCS1KeyExchangeFormatter : System.Security.Cryptography.AsymmetricKeyExchangeFormatter" /><TypeSignature Language="ILAsm" Value=".class public auto ansi beforefieldinit RSAPKCS1KeyExchangeFormatter extends System.Security.Cryptography.AsymmetricKeyExchangeFormatter" /><AssemblyInfo><AssemblyName>mscorlib</AssemblyName><AssemblyPublicKey>[00 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00]</AssemblyPublicKey><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ThreadSafetyStatement>Gtk# is thread aware, but not thread safe; See the &lt;link location="node:gtk-sharp/programming/threads"&gt;Gtk# Thread Programming&lt;/link&gt; for details.</ThreadSafetyStatement><Base><BaseTypeName>System.Security.Cryptography.AsymmetricKeyExchangeFormatter</BaseTypeName></Base><Interfaces /><Attributes><Attribute><AttributeName>System.Runtime.InteropServices.ComVisible(true)</AttributeName></Attribute></Attributes><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>Key exchange allows a sender to create secret information (such as random data that can be used as a key in a symmetric encryption algorithm) and use encryption to send it to the intended recipient.</para><para>Use <see cref="T:System.Security.Cryptography.RSAPKCS1KeyExchangeDeformatter" /> to receive the key exchange and extract the secret information from it.</para><block subset="none" type="note"><para>We recommend that you do not attempt to create your own key exchange method from the basic functionality provided, because many details of the operation must be performed carefully in order for the key exchange to be successful.</para></block></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Creates the PKCS#1 key exchange data using <see cref="T:System.Security.Cryptography.RSA" />.</para></summary></Docs><Members><Member MemberName=".ctor"><MemberSignature Language="C#" Value="public RSAPKCS1KeyExchangeFormatter ();" /><MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor() cil managed" /><MemberType>Constructor</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue /><Parameters /><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>Use <see cref="M:System.Security.Cryptography.RSAPKCS1KeyExchangeFormatter.SetKey(System.Security.Cryptography.AsymmetricAlgorithm)" /> method to set the key to be used for key exchange before calling <see cref="M:System.Security.Cryptography.RSAPKCS1KeyExchangeFormatter.CreateKeyExchange(System.Byte[])" />.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RSAPKCS1KeyExchangeFormatter" /> class.</para></summary></Docs></Member><Member MemberName=".ctor"><MemberSignature Language="C#" Value="public RSAPKCS1KeyExchangeFormatter (System.Security.Cryptography.AsymmetricAlgorithm key);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(class System.Security.Cryptography.AsymmetricAlgorithm key) cil managed" /><MemberType>Constructor</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue /><Parameters><Parameter Name="key" Type="System.Security.Cryptography.AsymmetricAlgorithm" /></Parameters><Docs><remarks>To be added</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RSAPKCS1KeyExchangeFormatter" /> class with the specified key.</para></summary><param name="key"><attribution license="cc4" from="Microsoft" modified="false" />The instance of the <see cref="T:System.Security.Cryptography.RSA" /> algorithm that holds the public key. </param></Docs></Member><Member MemberName="CreateKeyExchange"><MemberSignature Language="C#" Value="public override byte[] CreateKeyExchange (byte[] rgbData);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig virtual instance unsigned int8[] CreateKeyExchange(unsigned int8[] rgbData) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Byte[]</ReturnType></ReturnValue><Parameters><Parameter Name="rgbData" Type="System.Byte[]" /></Parameters><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>This data can be interpreted only by the holder of the private key corresponding to the public key used to encrypt the data. This helps to ensure that only the intended recipient can access the secret information.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Creates the encrypted key exchange data from the specified input data.</para></summary><returns><attribution license="cc4" from="Microsoft" modified="false" /><para>The encrypted key exchange data to be sent to the intended recipient.</para></returns><param name="rgbData"><attribution license="cc4" from="Microsoft" modified="false" />The secret information to be passed in the key exchange. </param></Docs></Member><Member MemberName="CreateKeyExchange"><MemberSignature Language="C#" Value="public override byte[] CreateKeyExchange (byte[] rgbData, Type symAlgType);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig virtual instance unsigned int8[] CreateKeyExchange(unsigned int8[] rgbData, class System.Type symAlgType) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Byte[]</ReturnType></ReturnValue><Parameters><Parameter Name="rgbData" Type="System.Byte[]" /><Parameter Name="symAlgType" Type="System.Type" /></Parameters><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>This data can be interpreted only by the holder of the private key corresponding to the public key used to encrypt the data. This helps to ensure that only the intended recipient can access the secret information.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Creates the encrypted key exchange data from the specified input data.</para></summary><returns><attribution license="cc4" from="Microsoft" modified="false" /><para>The encrypted key exchange data to be sent to the intended recipient.</para></returns><param name="rgbData"><attribution license="cc4" from="Microsoft" modified="false" />The secret information to be passed in the key exchange. </param><param name="symAlgType"><attribution license="cc4" from="Microsoft" modified="false" />This parameter is not used in the current version. </param></Docs></Member><Member MemberName="Parameters"><MemberSignature Language="C#" Value="public override string Parameters { get; }" /><MemberSignature Language="ILAsm" Value=".property instance string Parameters" /><MemberType>Property</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.String</ReturnType></ReturnValue><Docs><value>To be added.</value><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>The <see cref="P:System.Security.Cryptography.RSAPKCS1KeyExchangeFormatter.Parameters" /> property returns an XML string that contains Uniform Resource Identifiers (URIs) that describe the parameters of the PKCS #1 key exchange operation.  Note that the URIs are not guaranteed to point to active addresses.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Gets the parameters for the PKCS #1 key exchange.</para></summary></Docs></Member><Member MemberName="Rng"><MemberSignature Language="C#" Value="public System.Security.Cryptography.RandomNumberGenerator Rng { get; set; }" /><MemberSignature Language="ILAsm" Value=".property instance class System.Security.Cryptography.RandomNumberGenerator Rng" /><MemberType>Property</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Security.Cryptography.RandomNumberGenerator</ReturnType></ReturnValue><Docs><value>To be added.</value><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>If this property is null, the default random number generator algorithm is used.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Gets or sets the random number generator algorithm to use in the creation of the key exchange.</para></summary></Docs></Member><Member MemberName="SetKey"><MemberSignature Language="C#" Value="public override void SetKey (System.Security.Cryptography.AsymmetricAlgorithm key);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig virtual instance void SetKey(class System.Security.Cryptography.AsymmetricAlgorithm key) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters><Parameter Name="key" Type="System.Security.Cryptography.AsymmetricAlgorithm" /></Parameters><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>You must set the key before calling <see cref="M:System.Security.Cryptography.RSAPKCS1KeyExchangeFormatter.CreateKeyExchange(System.Byte[])" />.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Sets the public key to use for encrypting the key exchange data.</para></summary><param name="key"><attribution license="cc4" from="Microsoft" modified="false" />The instance of the <see cref="T:System.Security.Cryptography.RSA" /> algorithm that holds the public key. </param></Docs></Member></Members></Type>