Keybaseアカウントを作成し、「簡単な」ID(Twitter、Redditなど)をインポートしました。ここで、PGPキーを取得します。
Keybase(Windows)アプリから特定のテキストにPGP署名し、その署名済みデータ(base64など)を再アップロードする指示を期待していました。代わりに、私が見つけたのはこれです:
# import a key from gpg's key chain
keybase pgp select
#import from stdin and send the public half to Keybase
cat privkey.asc | keybase pgp import
# for more options
keybase pgp help
最初は順番に3つの指示に従うべきだと思っていましたが、次に、それらがあなたができる3つの異なる主なことだと気づきました。
誰かが基本的な言葉で説明できますか(私はPGPと公開鍵/秘密鍵のペアの基本を知っています)、最初の2つのオプションが舞台裏で何を伴うかを説明できますか?
私が持っている特定の質問:
自分で答えを推測することはできますが、それは重要なことなので、聞きたいと思います。
これら3つのいずれかを探しているようです
keybase pgp import -i pubkey.txt
cat pubkey.txt | keybase pgp import
keybase pgp select --no-import
公開鍵の半分をインポートするには、それをキーベースでアドバタイズしますが、秘密鍵にアクセスできないようにします。
cat privkey.asc | keybase pgp import
秘密鍵のコピーがキーベースサーバーに送信され、キーベースpgpコマンドで使用できるようになります。
keybase pgp select
gnuPGキーリングを確認し、キーベースにインポートする既存の秘密キーを選択できるようにします。
疑わしいとき
keybase pgp <option> help
公開鍵をアップロードし、キーベースから秘密の半分を差し控えるオプションは機能していないようです。上記の最初のオプションセットがすべて返されます
- エラー使用できる秘密鍵がありません
私自身、この問題に遭遇したところ、使用する正しい引数が標準のgpg --help
テキストに表示されていないことがわかりました。
⇒ gpg --help | grep export
--export export keys
--send-keys export keys to a keyserver
しかし、そのための(非常に限られた)ヘルプテキストをここで見ることができます:
エクスポート秘密鍵
名前
export-secret-keys —秘密鍵をエクスポートする
export-secret-keys name ...
説明
これはコマンドexportと同じですが、公開鍵の代わりに秘密鍵がエクスポートされます。 秘密鍵は保護されていないため、これは通常あまり有用ではなく、セキュリティリスクです。
秘密鍵をエクスポートし、localキーベースの鍵リングにインポートするには、次のようにします。
gpg --armor --export-secret-keys MYSECRETKEYID | keybase pgp import`
シークレットをキーベースに自動的にプッシュ/同期するためにも(リンクされた他のデバイスでそれを使用できるようにするため)、--Push-secret
を使用できます。
⇒ keybase pgp import --help
..snip..
OPTIONS:
-i, --infile Specify an infile (stdin by default).
--Push-secret Push an encrypted copy of the secret key to the server.
これを自動的に行う完全なコマンドは、次のようになります。
gpg --armor --export-secret-keys MYSECRETKEYID | keybase pgp import --Push-secret`