あなたのタスクは、GOSTに従って動作し、「Crypto-COMを介してのみ」動作するリモートサービスと統合することであり、OpenSSLをgostで使用したいですか? Signal-COMフォーラムで、「Crypto-COM形式のキーをOpenSSL-guest互換形式に変換できない」というメッセージが山ほど表示されていますか? 実際、変換は可能です。
tl; dr: http : //gostcrypto.com/demo-sc-keys.html
既存のキーをプロプライエタリ形式からオーソドックス形式に変換する方法は?
私は妄想ではありません
http://gostcrypto.com/demo-sc-keys.htmlにアクセスし、「mk.db3」、「masks.db3」、「kek.opq」、「rand.opq」などのコンテナファイルと秘密キーファイルを指定します。 「Keys \ 00000001.key」と入力し、「Export PrivateKey」ボタンをクリックします。
gostcrypto.comの現在のバージョンでは、キーは完全にPEM互換ではありません。 64文字を超える長さを使用します。
-----BEGIN PRIVATE KEY----- MEYCAQAwHQYGKoUDAgITMBMGByqFAwICIwEGCCqFAwcBAQICBCIEIG0GEmE3dhrHzm1KfFDpKBWEmMydwcmP0hNKvXXbEbLO -----END PRIVATE KEY-----
PEM互換にするには、64文字の後に新しい行を追加するだけです。
-----BEGIN PRIVATE KEY----- MEYCAQAwHQYGKoUDAgITMBMGByqFAwICIwEGCCqFAwcBAQICBCIEIG0GEmE3dhrH zm1KfFDpKBWEmMydwcmP0hNKvXXbEbLO -----END PRIVATE KEY-----
私は妄想している、またはCLIバージョンが欲しい
この記事の公開時点では、gostcryptoはノード固定ではなく、プールリクエストでそのノード固定が試行されています。 PEM互換形式へのエクスポート用のcliユーティリティもあります。
それを置いて、キーをエクスポートしようとします:
sudo npm install -g https://github.com/garex/nodejs-gost-crypto/archive/nodefy.tar.gz cd /tmp wget https://www.contact-sys.com/files/redactor/files/TestContactKey.zip unzip TestContactKey.zip -d TestContactKey gost-export-signalcom-key --pse TestContactKey --key Keys/00000001.key
その結果、STDOUTになります。
-----BEGIN PRIVATE KEY----- MEYCAQAwHQYGKoUDAgITMBMGByqFAwICIwEGCCqFAwcBAQICBCIEIG0GEmE3dhrH zm1KfFDpKBWEmMydwcmP0hNKvXXbEbLO -----END PRIVATE KEY-----
そしてSTDERRでは:
OK: Private SignalCom key successfully exported in STDOUT in "PEM" format.