X509Certificate.GetPublicKey 方法
定义
将 X.509v3 证书的公钥作为字节数组返回。Returns the public key for the X.509v3 certificate as an array of bytes.
public:
virtual cli::array <System::Byte> ^ GetPublicKey();
public virtual byte[] GetPublicKey ();
abstract member GetPublicKey : unit -> byte[]
override this.GetPublicKey : unit -> byte[]
Public Overridable Function GetPublicKey () As Byte()
返回
- Byte[]
字节数组形式的 X.509 证书的公钥。The public key for the X.509 certificate as an array of bytes.
例外
证书上下文无效。The certificate context is invalid.
示例
下面的示例使用 GetPublicKey 方法将证书的公钥作为字节数组返回,并将其显示在控制台中。The following example uses the GetPublicKey method to return a certificate's public key as an array of bytes and displays it to the console.
using namespace System;
using namespace System::Security::Cryptography::X509Certificates;
int main()
{
// The path to the certificate.
String^ Certificate = "Certificate.cer";
// Load the certificate into an X509Certificate object.
X509Certificate^ cert = X509Certificate::CreateFromCertFile( Certificate );
// Get the value.
array<Byte>^results = cert->GetPublicKey();
// Display the value to the console.
System::Collections::IEnumerator^ enum0 = results->GetEnumerator();
while ( enum0->MoveNext() )
{
Byte b = safe_cast<Byte>(enum0->Current);
Console::Write( b );
}
}
using System;
using System.Security.Cryptography.X509Certificates;
public class X509
{
public static void Main()
{
// The path to the certificate.
string Certificate = "Certificate.cer";
// Load the certificate into an X509Certificate object.
X509Certificate cert = X509Certificate.CreateFromCertFile(Certificate);
// Get the value.
byte[] results = cert.GetPublicKey();
// Display the value to the console.
foreach(byte b in results)
{
Console.Write(b);
}
}
}
Imports System.Security.Cryptography.X509Certificates
Public Class X509
Public Shared Sub Main()
' The path to the certificate.
Dim Certificate As String = "Certificate.cer"
' Load the certificate into an X509Certificate object.
Dim cert As X509Certificate = X509Certificate.CreateFromCertFile(Certificate)
' Get the value.
Dim results As Byte() = cert.GetPublicKey()
' Display the value to the console.
Dim b As Byte
For Each b In results
Console.Write(b)
Next b
End Sub
End Class
注解
此值对应于 subjectPublicKey 证书中 SubjectPublicKeyInfo 数据的字段内容。This value corresponds to the contents of the subjectPublicKey field of the SubjectPublicKeyInfo data within the certificate.