PEM (.pem,.key,.crt,.cer)

予備知識

    • 一般的なMIMEタイプ:application/x-pem-file
    • 暗号関連データ用のコンテナ形式.
    • 一般に公開鍵,秘密鍵,セキュリティ証明書の交換と保管に使用される.
    • PEMはPrivacy-Enhanced Mailの頭字語である.
    • テキスト式.
    • データをBase64符号化形式で保存する.
    • PEMは1993 IETF標準に基づく.
    • PEMはインターネット標準勧告RFC 7468に記述されている.

ImportとExport

  • Import["file.pem"]はPEMファイルをインポートし,ファイル内のオブジェクトのリストを返す.
  • Import["file.pem"]{obj1,obj2,}という形の式を返す.ここで objiPrivateKeyPublicKeySecurityCertificateImportedObjectのいずれかである.
  • Import["file.pem",elem]はPEMファイルから指定の要素をインポートする.
  • Import["file.pem",{{elem1,elem2,}}]は複数の要素をインポートする.
  • インポート形式はImport["file","PEM"]またはImport["file",{"PEM",elem,}]で指定できる.
  • この形式にもっともよく使われるファイル拡張子は.pem,.cer,.crt,および.keyである.
  • 一般的な全情報は,Importを参照のこと.
  • ImportStringはPEM形式をサポートする.
  • 一般的な情報は,以下の関数ページを参照のこと.
  • Importファイルからインポートする
    CloudImportクラウドオブジェクトからインポートする
    ImportString文字列からファイルからインポートする
    ImportByteArrayバイト配列からインポートする

Import要素

  • 一般的なImport要素:
  • "Elements" ファイル中の有効な要素とオプションのリスト
    "Summary"ファイルの概要
    "Rules"使用可能なすべての要素の規則のリスト
  • 構造要素:
  • "ObjectTypes"ファイル内の符号化されたオブジェクトのタイプ
    "ObjectTypeLabels"見出し行のオブジェクトの名前
    "PrivateKey"PrivateKeyオブジェクトのリスト
    "PublicKey"PublicKeyオブジェクトのリスト
    "SecurityCertificate"SecurityCertificateオブジェクトのリスト
    "Summary"特性の概要
  • データ表現要素:
  • "Data"キー,証明書,その他のPEMオブジェクトのリスト
  • ImportはPEM形式にデフォルトで"Data"要素を使用する.

例題

すべて開くすべて閉じる

  (2)

PEMファイルに保存されたRSA公開鍵をインポートする:

証明書と秘密鍵を含むPEMファイルをインポートする:

ファイルの概要を得る:

スコープ  (5)

ファイルで利用できる全ての要素を示す:

Importはデフォルトでファイル内のすべてのPEMオブジェクトのリストを返す:

特定のタイプのオブジェクトをインポートする:

ImportPrivateKeyPublicKeySecurityCertificate以外の内容データのタイプについてImportedObjectを返す:

複数の要素を同時にインポートする:

Import要素  (7)

"Data"  (1)

ファイル内のすべてのオブジェクトからデータを取得する:

"ObjectTypeLabels"  (1)

ファイル内のすべてのオブジェクトのデータタイプ名を取得する:

"ObjectTypes"  (1)

ファイル内に存在するPEMオブジェクトとその順序を確認する:

"PrivateKey"  (1)

ファイル内のPrivateKeyオブジェクトのリストをインポートする:

指定のファイルに含まれていない場合は,Importは空のリストを返す:

"PublicKey"  (1)

ファイル内のPublicKeyオブジェクトのリストをインポートする:

指定のファイルに含まれていない場合は,Importは空のリストを返す:

"SecurityCertificate"  (1)

ファイル内のSecurityCertificateオブジェクトのリストをインポートする:

指定のファイルに含まれていない場合は,Importは空のリストを返す:

"Summary"  (1)

概要を取得する:

アプリケーション  (1)

ファイルから楕円曲線秘密鍵をインポートする:

対応する公開鍵を計算する:

公開鍵にデジタルで署名する:

公開鍵で署名を検証する: