DSAKeyValue 생성자
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
DSAKeyValue 클래스의 새 인스턴스를 초기화합니다.
오버로드
DSAKeyValue() |
무작위로 생성된 새로운 DSAKeyValue 공개 키를 사용하여 DSA 클래스의 새 인스턴스를 초기화합니다. |
DSAKeyValue(DSA) |
지정된 DSAKeyValue 공개 키를 사용하여 DSA 클래스의 새 인스턴스를 초기화합니다. |
DSAKeyValue()
- Source:
- DSAKeyValue.cs
- Source:
- DSAKeyValue.cs
- Source:
- DSAKeyValue.cs
- Source:
- DSAKeyValue.cs
- Source:
- DSAKeyValue.cs
무작위로 생성된 새로운 DSAKeyValue 공개 키를 사용하여 DSA 클래스의 새 인스턴스를 초기화합니다.
public:
DSAKeyValue();
[System.Runtime.Versioning.UnsupportedOSPlatform("ios")]
[System.Runtime.Versioning.UnsupportedOSPlatform("tvos")]
public DSAKeyValue ();
public DSAKeyValue ();
Public Sub New ()
- 특성
설명
새 DSA 키를 만들 때 이 생성자는 클래스에 정의된 대로 의 DSA 기본 구현을 CryptoConfig 사용합니다.
적용 대상
DSAKeyValue(DSA)
- Source:
- DSAKeyValue.cs
- Source:
- DSAKeyValue.cs
- Source:
- DSAKeyValue.cs
- Source:
- DSAKeyValue.cs
- Source:
- DSAKeyValue.cs
지정된 DSAKeyValue 공개 키를 사용하여 DSA 클래스의 새 인스턴스를 초기화합니다.
public:
DSAKeyValue(System::Security::Cryptography::DSA ^ key);
public DSAKeyValue (System.Security.Cryptography.DSA key);
new System.Security.Cryptography.Xml.DSAKeyValue : System.Security.Cryptography.DSA -> System.Security.Cryptography.Xml.DSAKeyValue
Public Sub New (key As DSA)
매개 변수
예제
다음 코드 예제에서는 XML 암호화에서 클래스를 DSAKeyValue 사용 하는 방법을 보여 줍니다.
// Sign an XML file and save the signature in a new file.
void SignDetachedResource( String^ URIString, String^ XmlSigFileName, DSA^ DSAKey )
{
// Create a SignedXml Object*.
SignedXml^ signedXml = gcnew SignedXml;
// Assign the DSA key to the SignedXml object.
signedXml->SigningKey = DSAKey;
// Create a reference to be signed.
Reference^ reference = gcnew Reference;
// Add the passed URI to the reference object.
reference->Uri = URIString;
// Add the reference to the SignedXml object.
signedXml->AddReference( reference );
// Add a DSAKeyValue to the KeyInfo (optional; helps recipient find key to validate).
KeyInfo^ keyInfo = gcnew KeyInfo;
keyInfo->AddClause( gcnew DSAKeyValue( safe_cast<DSA^>(DSAKey) ) );
signedXml->KeyInfo = keyInfo;
// Compute the signature.
signedXml->ComputeSignature();
// Get the XML representation of the signature and save
// it to an XmlElement object.
XmlElement^ xmlDigitalSignature = signedXml->GetXml();
// Save the signed XML document to a file specified
// using the passed string.
XmlTextWriter^ xmltw = gcnew XmlTextWriter( XmlSigFileName,gcnew UTF8Encoding( false ) );
xmlDigitalSignature->WriteTo( xmltw );
xmltw->Close();
}
// Sign an XML file and save the signature in a new file.
public static void SignDetachedResource(string URIString, string XmlSigFileName, DSA DSAKey)
{
// Create a SignedXml object.
SignedXml signedXml = new SignedXml();
// Assign the DSA key to the SignedXml object.
signedXml.SigningKey = DSAKey;
// Create a reference to be signed.
Reference reference = new Reference();
// Add the passed URI to the reference object.
reference.Uri = URIString;
// Add the reference to the SignedXml object.
signedXml.AddReference(reference);
// Add a DSAKeyValue to the KeyInfo (optional; helps recipient find key to validate).
KeyInfo keyInfo = new KeyInfo();
keyInfo.AddClause(new DSAKeyValue((DSA)DSAKey));
signedXml.KeyInfo = keyInfo;
// Compute the signature.
signedXml.ComputeSignature();
// Get the XML representation of the signature and save
// it to an XmlElement object.
XmlElement xmlDigitalSignature = signedXml.GetXml();
// Save the signed XML document to a file specified
// using the passed string.
XmlTextWriter xmltw = new XmlTextWriter(XmlSigFileName, new UTF8Encoding(false));
xmlDigitalSignature.WriteTo(xmltw);
xmltw.Close();
}
' Sign an XML file and save the signature in a new file.
Public Shared Sub SignDetachedResource(URIString As String, XmlSigFileName As String, DSAKey As DSA)
' Create a SignedXml object.
Dim signedXml As New SignedXml()
' Assign the DSA key to the SignedXml object.
signedXml.SigningKey = DSAKey
' Create a reference to be signed.
Dim reference As New Reference()
' Add the passed URI to the reference object.
reference.Uri = URIString
' Add the reference to the SignedXml object.
signedXml.AddReference(reference)
' Add a DSAKeyValue to the KeyInfo (optional; helps recipient find key to validate).
Dim keyInfo As New KeyInfo()
keyInfo.AddClause(New DSAKeyValue(CType(DSAKey, DSA)))
signedXml.KeyInfo = keyInfo
' Compute the signature.
signedXml.ComputeSignature()
' Get the XML representation of the signature and save
' it to an XmlElement object.
Dim xmlDigitalSignature As XmlElement = signedXml.GetXml()
' Save the signed XML document to a file specified
' using the passed string.
Dim xmltw As New XmlTextWriter(XmlSigFileName, New UTF8Encoding(False))
xmlDigitalSignature.WriteTo(xmltw)
xmltw.Close()
End Sub
// Sign an XML file and save the signature in a new file.
void SignXmlFile( String^ FileName, String^ SignedFileName, DSA^ DSAKey )
{
// Create a new XML document.
XmlDocument^ doc = gcnew XmlDocument;
// Format the document to ignore white spaces.
doc->PreserveWhitespace = false;
// Load the passed XML file using its name.
doc->Load( gcnew XmlTextReader( FileName ) );
// Create a SignedXml object.
SignedXml^ signedXml = gcnew SignedXml( doc );
// Add the DSA key to the SignedXml document.
signedXml->SigningKey = DSAKey;
// Create a reference to be signed.
Reference^ reference = gcnew Reference;
reference->Uri = "";
// Add a transformation to the reference.
Transform^ trns = gcnew XmlDsigC14NTransform;
reference->AddTransform( trns );
// Add an enveloped transformation to the reference.
XmlDsigEnvelopedSignatureTransform^ env = gcnew XmlDsigEnvelopedSignatureTransform;
reference->AddTransform( env );
// Add the reference to the SignedXml object.
signedXml->AddReference( reference );
// Add a DSAKeyValue to the KeyInfo (optional; helps recipient find key to validate).
KeyInfo^ keyInfo = gcnew KeyInfo;
keyInfo->AddClause( gcnew DSAKeyValue( safe_cast<DSA^>(DSAKey) ) );
signedXml->KeyInfo = keyInfo;
// Compute the signature.
signedXml->ComputeSignature();
// Get the XML representation of the signature and save
// it to an XmlElement object.
XmlElement^ xmlDigitalSignature = signedXml->GetXml();
// Append the element to the XML document.
doc->DocumentElement->AppendChild( doc->ImportNode( xmlDigitalSignature, true ) );
if ( (doc->FirstChild)->GetType() == XmlDeclaration::typeid )
{
doc->RemoveChild( doc->FirstChild );
}
// Save the signed XML document to a file specified
// using the passed string.
XmlTextWriter^ xmltw = gcnew XmlTextWriter( SignedFileName,gcnew UTF8Encoding( false ) );
doc->WriteTo( xmltw );
xmltw->Close();
}
// Sign an XML file and save the signature in a new file.
public static void SignXmlFile(string FileName, string SignedFileName, DSA DSAKey)
{
// Create a new XML document.
XmlDocument doc = new XmlDocument();
// Format the document to ignore white spaces.
doc.PreserveWhitespace = false;
// Load the passed XML file using it's name.
doc.Load(new XmlTextReader(FileName));
// Create a SignedXml object.
SignedXml signedXml = new SignedXml(doc);
// Add the DSA key to the SignedXml document.
signedXml.SigningKey = DSAKey;
// Create a reference to be signed.
Reference reference = new Reference();
reference.Uri = "";
// Add a transformation to the reference.
Transform trns = new XmlDsigC14NTransform();
reference.AddTransform(trns);
// Add an enveloped transformation to the reference.
XmlDsigEnvelopedSignatureTransform env = new XmlDsigEnvelopedSignatureTransform();
reference.AddTransform(env);
// Add the reference to the SignedXml object.
signedXml.AddReference(reference);
// Add a DSAKeyValue to the KeyInfo (optional; helps recipient find key to validate).
KeyInfo keyInfo = new KeyInfo();
keyInfo.AddClause(new DSAKeyValue((DSA)DSAKey));
signedXml.KeyInfo = keyInfo;
// Compute the signature.
signedXml.ComputeSignature();
// Get the XML representation of the signature and save
// it to an XmlElement object.
XmlElement xmlDigitalSignature = signedXml.GetXml();
// Append the element to the XML document.
doc.DocumentElement.AppendChild(doc.ImportNode(xmlDigitalSignature, true));
if (doc.FirstChild is XmlDeclaration)
{
doc.RemoveChild(doc.FirstChild);
}
// Save the signed XML document to a file specified
// using the passed string.
XmlTextWriter xmltw = new XmlTextWriter(SignedFileName, new UTF8Encoding(false));
doc.WriteTo(xmltw);
xmltw.Close();
}
' Sign an XML file and save the signature in a new file.
Public Shared Sub SignXmlFile(FileName As String, SignedFileName As String, DSAKey As DSA)
' Create a new XML document.
Dim doc As New XmlDocument()
' Format the document to ignore white spaces.
doc.PreserveWhitespace = False
' Load the passed XML file using it's name.
doc.Load(New XmlTextReader(FileName))
' Create a SignedXml object.
Dim signedXml As New SignedXml(doc)
' Add the DSA key to the SignedXml document.
signedXml.SigningKey = DSAKey
' Create a reference to be signed.
Dim reference As New Reference()
reference.Uri = ""
' Add a transformation to the reference.
Dim trns = New XmlDsigC14NTransform()
reference.AddTransform(trns)
' Add an enveloped transformation to the reference.
Dim env As New XmlDsigEnvelopedSignatureTransform()
reference.AddTransform(env)
' Add the reference to the SignedXml object.
signedXml.AddReference(reference)
' Add a DSAKeyValue to the KeyInfo (optional; helps recipient find key to validate).
Dim keyInfo As New KeyInfo()
keyInfo.AddClause(New DSAKeyValue(CType(DSAKey, DSA)))
signedXml.KeyInfo = keyInfo
' Compute the signature.
signedXml.ComputeSignature()
' Get the XML representation of the signature and save
' it to an XmlElement object.
Dim xmlDigitalSignature As XmlElement = signedXml.GetXml()
' Append the element to the XML document.
doc.DocumentElement.AppendChild(doc.ImportNode(xmlDigitalSignature, True))
If TypeOf doc.FirstChild Is XmlDeclaration Then
doc.RemoveChild(doc.FirstChild)
End If
' Save the signed XML document to a file specified
' using the passed string.
Dim xmltw As New XmlTextWriter(SignedFileName, New UTF8Encoding(False))
doc.WriteTo(xmltw)
xmltw.Close()
End Sub
적용 대상
GitHub에서 Microsoft와 공동 작업
이 콘텐츠의 원본은 GitHub에서 찾을 수 있으며, 여기서 문제와 끌어오기 요청을 만들고 검토할 수도 있습니다. 자세한 내용은 참여자 가이드를 참조하세요.
.NET