StrongNameKeyPair 类

定义

封装对公钥或私钥对的访问,该公钥或私钥对用于为强名称程序集创建签名。Encapsulates access to a public or private key pair used to sign strong name assemblies.

public ref class StrongNameKeyPair : System::Runtime::Serialization::IDeserializationCallback, System::Runtime::Serialization::ISerializable
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public class StrongNameKeyPair : System.Runtime.Serialization.IDeserializationCallback, System.Runtime.Serialization.ISerializable
type StrongNameKeyPair = class
    interface ISerializable
    interface IDeserializationCallback
Public Class StrongNameKeyPair
Implements IDeserializationCallback, ISerializable
继承
StrongNameKeyPair
属性
实现

示例

下面的代码示例演示如何打开公司密钥文件 (通过运行sn.exe (强名称工具)-k开关来生成, 请从文件中读取公钥, 并在控制台窗口中显示密钥。The following code example shows how to open a Company.keys file (produced by running the Sn.exe (Strong Name Tool) with the -k switch), read the public key from the file, and display the key in the console window.

using namespace System;
using namespace System::IO;
using namespace System::Reflection;

ref class snkX
{
public:
    static void Main()
    {
        // Open a file that contains a public key value. The line below  
        // assumes that the Strong Name tool (SN.exe) was executed from 
        // a command prompt as follows:
        //       SN.exe -k C:\Company.keys
        FileStream^ fs = File::Open("C:\\Company.keys", FileMode::Open);

        // Construct a StrongNameKeyPair object. This object should obtain
        // the public key from the Company.keys file.
        StrongNameKeyPair^ k = gcnew StrongNameKeyPair(fs);

        // Display the bytes that make up the public key.
        Console::WriteLine(BitConverter::ToString(k->PublicKey));

        // Close the file.
        fs->Close();
    }
};

int main()
{
    snkX::Main();
}

// Output will vary by user.
// 
//  00-24-00-00-04-80-00-00-94-69-89-78-BB-F1-F2-71-00-00-00-34-26-
//  69-89-78-BB-F1-F2-71-00-F1-FA-F2-F9-4A-A8-5E-82-55-AB-49-4D-A6-
//  ED-AB-5F-CE-DE-59-49-8D-63-01-B0-E1-BF-43-07-FA-55-D4-36-75-EE-
//  8B-83-32-39-B7-02-DE-3D-81-29-7B-E8-EA-F0-2E-78-94-96-F1-73-79-
//  69-89-78-BB-F1-F2-71-0E-4E-F4-5D-DD-A4-7F-11-54-DF-65-DE-89-23-
//  91-AD-53-E1-C0-DA-9E-0C-88-BE-AA-7B-39-20-9C-9B-55-34-26-3B-1A-
//  53-41-31-00-04-00-00-01-00-01-00-9D-F1-EA-14-4C-88-34-26-3B-1A-
//  2D-D7-A0-AB-F6-7E-B7-24-7F-87-DF-3E-97
using System;
using System.IO;
using System.Reflection;

class snkX
{

    public static void Main()
    {
        // Open a file that contains a public key value. The line below  
        // assumes that the Strong Name tool (SN.exe) was executed from 
        // a command prompt as follows:
        //       SN.exe -k C:\Company.keys
        FileStream fs = File.Open("C:\\Company.keys", FileMode.Open);

        // Construct a StrongNameKeyPair object. This object should obtain
        // the public key from the Company.keys file.
        StrongNameKeyPair k = new StrongNameKeyPair(fs);

        // Display the bytes that make up the public key.
        Console.WriteLine(BitConverter.ToString(k.PublicKey));

        // Close the file.
        fs.Close();
    }
}

// Output will vary by user.
// 
//  00-24-00-00-04-80-00-00-94-69-89-78-BB-F1-F2-71-00-00-00-34-26-
//  69-89-78-BB-F1-F2-71-00-F1-FA-F2-F9-4A-A8-5E-82-55-AB-49-4D-A6-
//  ED-AB-5F-CE-DE-59-49-8D-63-01-B0-E1-BF-43-07-FA-55-D4-36-75-EE-
//  8B-83-32-39-B7-02-DE-3D-81-29-7B-E8-EA-F0-2E-78-94-96-F1-73-79-
//  69-89-78-BB-F1-F2-71-0E-4E-F4-5D-DD-A4-7F-11-54-DF-65-DE-89-23-
//  91-AD-53-E1-C0-DA-9E-0C-88-BE-AA-7B-39-20-9C-9B-55-34-26-3B-1A-
//  53-41-31-00-04-00-00-01-00-01-00-9D-F1-EA-14-4C-88-34-26-3B-1A-
//  2D-D7-A0-AB-F6-7E-B7-24-7F-87-DF-3E-97
Imports System.Reflection
Imports System.IO

Module Module1

    Sub Main()
        ' Open a file that contains a public key value. The line below  
        ' assumes that the Strong Name tool (SN.exe) was executed from 
        ' a command prompt as follows:
        '       SN.exe -k C:\Company.keys
        Dim fs As FileStream = File.Open("C:\Company.keys", FileMode.Open)

        ' Construct a StrongNameKeyPair object. This object should obtain 
        ' the public key from the Company.keys file.
        Dim k As Reflection.StrongNameKeyPair = _
            New Reflection.StrongNameKeyPair(fs)

        ' Display the bytes that make up the public key.
        Console.WriteLine(BitConverter.ToString(k.PublicKey))

        ' Close the file.
        fs.Close()
    End Sub
End Module

' Output will vary by user.
' 
'  00-24-00-00-04-80-00-00-94-69-89-78-BB-F1-F2-71-00-00-00-34-26-
'  69-89-78-BB-F1-F2-71-00-F1-FA-F2-F9-4A-A8-5E-82-55-AB-49-4D-A6-
'  ED-AB-5F-CE-DE-59-49-8D-63-01-B0-E1-BF-43-07-FA-55-D4-36-75-EE-
'  8B-83-32-39-B7-02-DE-3D-81-29-7B-E8-EA-F0-2E-78-94-96-F1-73-79-
'  69-89-78-BB-F1-F2-71-0E-4E-F4-5D-DD-A4-7F-11-54-DF-65-DE-89-23-
'  91-AD-53-E1-C0-DA-9E-0C-88-BE-AA-7B-39-20-9C-9B-55-34-26-3B-1A-
'  53-41-31-00-04-00-00-01-00-01-00-9D-F1-EA-14-4C-88-34-26-3B-1A-
'  2D-D7-A0-AB-F6-7E-B7-24-7F-87-DF-3E-97

构造函数

StrongNameKeyPair(Byte[])

初始化 StrongNameKeyPair 类的新实例,同时从 byte 数组生成密钥对。Initializes a new instance of the StrongNameKeyPair class, building the key pair from a byte array.

StrongNameKeyPair(FileStream)

初始化 StrongNameKeyPair 类的新实例,同时从 FileStream 生成密钥对。Initializes a new instance of the StrongNameKeyPair class, building the key pair from a FileStream.

StrongNameKeyPair(SerializationInfo, StreamingContext)

初始化 StrongNameKeyPair 类的新实例,从序列化数据生成密钥对。Initializes a new instance of the StrongNameKeyPair class, building the key pair from serialized data.

StrongNameKeyPair(String)

初始化 StrongNameKeyPair 类的新实例,同时从 String 生成密钥对。Initializes a new instance of the StrongNameKeyPair class, building the key pair from a String.

属性

PublicKey

获取密钥对的公钥或公钥标记的公共部分。Gets the public part of the public key or public key token of the key pair.

方法

Equals(Object)

确定指定的对象是否等于当前对象。Determines whether the specified object is equal to the current object.

(继承自 Object)
GetHashCode()

用作默认哈希函数。Serves as the default hash function.

(继承自 Object)
GetType()

获取当前实例的 TypeGets the Type of the current instance.

(继承自 Object)
MemberwiseClone()

创建当前 Object 的浅表副本。Creates a shallow copy of the current Object.

(继承自 Object)
ToString()

返回一个表示当前对象的 string。Returns a string that represents the current object.

(继承自 Object)

显式界面实现

IDeserializationCallback.OnDeserialization(Object)

在整个对象图形已经反序列化时运行。Runs when the entire object graph has been deserialized.

ISerializable.GetObjectData(SerializationInfo, StreamingContext)

用重新实例化当前 SerializationInfo 对象所需的所有数据设置 StrongNameKeyPair 对象。Sets the SerializationInfo object with all the data required to reinstantiate the current StrongNameKeyPair object.

适用于

另请参阅