2017-03-29 19 views

答えて

3

C_CreateObjectは、デバイスに外部で生成された既存のデータオブジェクト、証明書、および/またはキーをインポートします。 C_GenerateKeyは、デバイス内に新しい対称鍵(DES/AES/...)を生成します。 C_GenerateKeyPairは、デバイス内に新しい非対称キーペア(RSA/ECC/...)を生成します。

0

PKCS#11は、鍵ペア(公開鍵と秘密鍵)、証明書、秘密鍵をトークン上のオブジェクトとして扱います。また、データを保持するデータオブジェクトもあります。

C_GenerateKeyは、Secret Keyオブジェクトを作成します。

C_GenerateKeyPairは、Public KeyPrivate Keyオブジェクト(公開鍵と秘密鍵を組み合わせてキーペアを構成します)を作成します。

C_GenerateKeyと言うとき、PKCS#11は秘密鍵オブジェクトを生成する必要があり、秘密鍵オブジェクトテンプレートを期待しています。同様に、C_GenerateKeyPairは、公開鍵オブジェクトと秘密鍵オブジェクトを作成しなければならず、それぞれのオブジェクトテンプレートが必要であることを認識しています。

しかし、C_CreateObjectと言うときは、作成するオブジェクトの種類を指定し、適切なオブジェクトテンプレートを渡す必要があります。これは、C_GenerateXXXメソッドの抽象版のように考えてください。

関連する問題