共用方式為


CipherData 建構函式

定義

初始化 CipherData 類別的新執行個體。

多載

CipherData()

初始化 CipherData 類別的新執行個體。

CipherData(Byte[])

使用位元組陣列做為 CipherData 值,初始化 CipherValue 類別的新執行個體。

CipherData(CipherReference)

使用 CipherData 物件初始化 CipherReference 類別的新執行個體。

CipherData()

來源:
CipherData.cs
來源:
CipherData.cs
來源:
CipherData.cs
來源:
CipherData.cs
來源:
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[])

來源:
CipherData.cs
來源:
CipherData.cs
來源:
CipherData.cs
來源:
CipherData.cs
來源:
CipherData.cs

使用位元組陣列做為 CipherData 值,初始化 CipherValue 類別的新執行個體。

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>可以有 或 CipherValue 子專案,但不能同時有CipherReference兩者。 CryptographicException如果兩者都指派給 CipherData 物件,則會擲回 。

適用於

CipherData(CipherReference)

來源:
CipherData.cs
來源:
CipherData.cs
來源:
CipherData.cs
來源:
CipherData.cs
來源:
CipherData.cs

使用 CipherData 物件初始化 CipherReference 類別的新執行個體。

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 屬性已設定。

範例

下列程式代碼範例示範如何使用資訊建立 類別的新實例CipherDataCipherReference

#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 加密中的 專案,並將值指派 cipherReferenceCipherReference 屬性。 物件 CipherReference 代表 <CipherReference> 專案,提供加密數據的位置。

注意

CipherData物件可以有屬性或CipherValue屬性,但不能同時擁有CipherReference兩者。 CryptographicException如果兩者都指派給 CipherData 物件,則會擲回 。

適用於