CipherData.CipherReference Özellik
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
öğesini alır veya ayarlar <CipherReference>
.
public:
property System::Security::Cryptography::Xml::CipherReference ^ CipherReference { System::Security::Cryptography::Xml::CipherReference ^ get(); void set(System::Security::Cryptography::Xml::CipherReference ^ value); };
public System.Security.Cryptography.Xml.CipherReference CipherReference { get; set; }
public System.Security.Cryptography.Xml.CipherReference? CipherReference { get; set; }
member this.CipherReference : System.Security.Cryptography.Xml.CipherReference with get, set
Public Property CipherReference As CipherReference
Özellik Değeri
Bir CipherReference nesnesi.
Özel durumlar
CipherReference özelliği olarak null
ayarlandı.
CipherReference Özellik birden çok kez ayarlandı.
Örnekler
Aşağıdaki kod örneği, bilgileri kullanarak CipherReference sınıfın CipherData yeni bir örneğinin nasıl oluşturulacağını gösterir.
#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
Açıklamalar
<CipherReference>
öğesi, işlendiğinde şifrelenmiş verileri veren bir kaynak tanımlar. Bu öğe hakkında daha fazla bilgi için bkz CipherReference. .
Not
Bir CipherData nesnenin bir özelliği veya CipherValue özelliği olabilirCipherReference, ancak her ikisi birden olmayabilir. Her CryptographicException ikisi de bir CipherData nesneye atanmışsa oluşturulur.