CipherData 构造函数
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
初始化 CipherData 类的新实例。
重载
CipherData() |
初始化 CipherData 类的新实例。 |
CipherData(Byte[]) |
通过使用一个字节数组作为 CipherValue 值来初始化 CipherData 类的新实例。 |
CipherData(CipherReference) |
使用 CipherReference 对象初始化 CipherData 类的新实例。 |
CipherData()
- Source:
- CipherData.cs
- Source:
- CipherData.cs
- Source:
- CipherData.cs
- Source:
- CipherData.cs
- Source:
- CipherData.cs
初始化 CipherData 类的新实例。
public:
CipherData();
public CipherData ();
Public Sub New ()
示例
下面的代码示例演示如何创建 CipherData 类的新实例。 可以在类主题中找到 CipherData 整个示例。
// Create a new CipherData object.
CipherData^ cipher = gcnew CipherData();
// Assign a byte array to be the CipherValue. This is a
// byte array representing encrypted data.
cipher->CipherValue = gcnew array<Byte>(8);
// Create a new CipherData object.
CipherData cd = new CipherData();
// Assign a byte array to be the CipherValue. This is a byte array representing encrypted data.
cd.CipherValue = new byte[8];
' Create a new CipherData object.
Dim cd As New CipherData
' Assign a byte array to the CipherValue.
cd.CipherValue = New Byte(7) {}
注解
此构造函数创建一个 CipherData 对象,该对象表示 <CipherData>
XML 加密中的 元素。 元素 <CipherData>
是 XML 加密中的必需元素。
适用于
CipherData(Byte[])
- Source:
- CipherData.cs
- Source:
- CipherData.cs
- Source:
- CipherData.cs
- Source:
- CipherData.cs
- Source:
- CipherData.cs
通过使用一个字节数组作为 CipherValue 值来初始化 CipherData 类的新实例。
public:
CipherData(cli::array <System::Byte> ^ cipherValue);
public CipherData (byte[] cipherValue);
new System.Security.Cryptography.Xml.CipherData : byte[] -> System.Security.Cryptography.Xml.CipherData
Public Sub New (cipherValue As Byte())
参数
- cipherValue
- Byte[]
要用于 <CipherValue>
元素的加密数据。
例外
cipherValue
参数为 null
。
已设置 CipherValue 属性。
示例
下面的代码示例演示如何创建 CipherData 类的新实例。
// Create a new CipherData object using a byte array to represent encrypted data.
array<Byte>^sampledata = gcnew array<Byte>(8);
CipherData ^ cd = gcnew CipherData( sampledata );
// Create a new CipherData object using a byte array to represent encrypted data.
Byte[] sampledata = new byte[8];
CipherData cd = new CipherData(sampledata);
' Create a new CipherData object using a byte array to represent encrypted data.
Dim sampledata(7) As Byte
Dim cd As New CipherData(sampledata)
注解
此构造函数创建一个 CipherData 对象,该对象表示 <CipherData>
XML 加密中的 元素。 构造函数将 cipherValue
值 CipherValue 作为实际加密数据分配给 属性。
注意
元素 <CipherData>
可以具有 CipherReference 或 CipherValue 子元素,但不能同时具有两者。
CryptographicException如果两者都分配给 对象CipherData,则会引发 。
适用于
CipherData(CipherReference)
- Source:
- CipherData.cs
- Source:
- CipherData.cs
- Source:
- CipherData.cs
- Source:
- CipherData.cs
- Source:
- CipherData.cs
使用 CipherReference 对象初始化 CipherData 类的新实例。
public:
CipherData(System::Security::Cryptography::Xml::CipherReference ^ cipherReference);
public CipherData (System.Security.Cryptography.Xml.CipherReference cipherReference);
new System.Security.Cryptography.Xml.CipherData : System.Security.Cryptography.Xml.CipherReference -> System.Security.Cryptography.Xml.CipherData
Public Sub New (cipherReference As CipherReference)
参数
- cipherReference
- CipherReference
要使用的 CipherReference 对象。
例外
cipherValue
参数为 null
。
已设置 CipherValue 属性。
示例
下面的代码示例演示如何使用CipherReference信息创建 类的新实例CipherData。
#using <System.Xml.dll>
#using <System.Security.dll>
#using <System.dll>
using namespace System;
using namespace System::Security::Cryptography::Xml;
using namespace System::Xml;
using namespace System::IO;
/// This sample used the EncryptedData class to create an encrypted data element
/// and write it to an XML file. It demonstrates the use of CipherReference.
[STAThread]
int main()
{
//Create a URI string.
String^ uri = "http://www.woodgrovebank.com/document.xml";
// Create a Base64 transform. The input content retrieved from the
// URI should be Base64-decoded before other processing.
Transform^ base64 = gcnew XmlDsigBase64Transform;
//Create a transform chain and add the transform to it.
TransformChain^ tc = gcnew TransformChain;
tc->Add( base64 );
//Create <CipherReference> information.
CipherReference ^ reference = gcnew CipherReference( uri,tc );
// Create a new CipherData object using the CipherReference information.
// Note that you cannot assign both a CipherReference and a CipherValue
// to a CipherData object.
CipherData ^ cd = gcnew CipherData( reference );
// Create a new EncryptedData object.
EncryptedData^ ed = gcnew EncryptedData;
//Add an encryption method to the object.
ed->Id = "ED";
ed->EncryptionMethod = gcnew EncryptionMethod( "http://www.w3.org/2001/04/xmlenc#aes128-cbc" );
ed->CipherData = cd;
//Add key information to the object.
KeyInfo^ ki = gcnew KeyInfo;
ki->AddClause( gcnew KeyInfoRetrievalMethod( "#EK","http://www.w3.org/2001/04/xmlenc#EncryptedKey" ) );
ed->KeyInfo = ki;
// Create new XML document and put encrypted data into it.
XmlDocument^ doc = gcnew XmlDocument;
XmlElement^ encryptionPropertyElement = dynamic_cast<XmlElement^>(doc->CreateElement( "EncryptionProperty", EncryptedXml::XmlEncNamespaceUrl ));
EncryptionProperty ^ ep = gcnew EncryptionProperty( encryptionPropertyElement );
ed->AddProperty( ep );
// Output the resulting XML information into a file.
try
{
String^ path = "c:\\test\\MyTest.xml";
File::WriteAllText( path, ed->GetXml()->OuterXml );
}
catch ( IOException^ e )
{
Console::WriteLine( "File IO error. {0}", e );
}
}
using System;
using System.Security.Cryptography.Xml;
using System.Xml;
using System.IO;
/// This sample used the EncryptedData class to create an encrypted data element
/// and write it to an XML file. It demonstrates the use of CipherReference.
namespace EncryptedDataSample
{
class Example
{
[STAThread]
static void Main(string[] args)
{
//Create a URI string.
String uri = "http://www.woodgrovebank.com/document.xml";
// Create a Base64 transform. The input content retrieved from the
// URI should be Base64-decoded before other processing.
Transform base64 = new XmlDsigBase64Transform();
//Create a transform chain and add the transform to it.
TransformChain tc = new TransformChain();
tc.Add(base64);
//Create <CipherReference> information.
CipherReference reference = new CipherReference(uri, tc);
// Create a new CipherData object using the CipherReference information.
// Note that you cannot assign both a CipherReference and a CipherValue
// to a CipherData object.
CipherData cd = new CipherData(reference);
// Create a new EncryptedData object.
EncryptedData ed = new EncryptedData();
//Add an encryption method to the object.
ed.Id = "ED";
ed.EncryptionMethod = new EncryptionMethod("http://www.w3.org/2001/04/xmlenc#aes128-cbc");
ed.CipherData = cd;
//Add key information to the object.
KeyInfo ki = new KeyInfo();
ki.AddClause(new KeyInfoRetrievalMethod("#EK", "http://www.w3.org/2001/04/xmlenc#EncryptedKey"));
ed.KeyInfo = ki;
// Create new XML document and put encrypted data into it.
XmlDocument doc = new XmlDocument();
XmlElement encryptionPropertyElement = (XmlElement)doc.CreateElement("EncryptionProperty", EncryptedXml.XmlEncNamespaceUrl);
EncryptionProperty ep = new EncryptionProperty(encryptionPropertyElement);
ed.AddProperty(ep);
// Output the resulting XML information into a file.
try
{
string path = @"c:\test\MyTest.xml";
File.WriteAllText(path, ed.GetXml().OuterXml);
}
catch (IOException e)
{
Console.WriteLine("File IO error. {0}", e);
}
}
}
}
Imports System.Security.Cryptography.Xml
Imports System.Xml
Imports System.IO
'/ This sample used the EncryptedData class to create a EncryptedData element
'/ and write it to an XML file. It demonstrates the use of CipherReference.
Module Module1
Sub Main()
' Create a URI string.
Dim uri As String = "http://www.woodgrovebank.com/document.xml"
' Create a Base64 transform. The input content retrieved from the
' URI should be Base64-decoded before other processing.
Dim base64 As Transform = New XmlDsigBase64Transform
Dim tc As New TransformChain
tc.Add(base64)
' Create <CipherReference> information.
Dim reference As CipherReference = New CipherReference(uri, tc)
' Create a new CipherData object.
' Note that you cannot assign both a CipherReference and a CipherValue
' to a CipherData object.
Dim cd As CipherData = New CipherData(Reference)
' Create a new EncryptedData object.
Dim ed As New EncryptedData
'Add an encryption method to the object.
ed.Id = "ED"
ed.EncryptionMethod = New EncryptionMethod("http://www.w3.org/2001/04/xmlenc#aes128-cbc")
ed.CipherData = cd
'Add key information to the object.
Dim ki As New KeyInfo
ki.AddClause(New KeyInfoRetrievalMethod("#EK", "http://www.w3.org/2001/04/xmlenc#EncryptedKey"))
ed.KeyInfo = ki
' Create new XML document and put encrypted data into it.
Dim doc As New XmlDocument
Dim encryptionPropertyElement As XmlElement = CType(doc.CreateElement("EncryptionProperty", EncryptedXml.XmlEncNamespaceUrl), XmlElement)
Dim ep As New EncryptionProperty(encryptionPropertyElement)
ed.AddProperty(ep)
' Output the resulting XML information into a file.
Dim path As String = "c:\test\MyTest.xml"
File.WriteAllText(path, ed.GetXml().OuterXml)
End Sub
End Module
注解
此构造函数创建一个 CipherData 对象,该对象表示 <CipherData>
XML 加密中的 元素, cipherReference
并将值分配给 CipherReference 属性。 对象 CipherReference 表示 <CipherReference>
元素,该元素提供加密数据的位置。
注意
CipherData对象可以具有 CipherReference 属性或 CipherValue 属性,但不能同时具有两者。 CryptographicException如果两者都分配给 对象CipherData,则会引发 。