これは可能ですか?すでに GPG で作成した鍵ペアがありますが、その鍵で署名する方法が見つかりません。これだけのために、keytool などで新しいキーを作成したくありません。今持っている鍵を使いたい。どうすればこれができるか知っている人はいますか?前もって感謝します。
3 に答える
jarsigner が使用できる鍵を GPG が生成するかどうかは非常に疑わしいです。これを行うコンバーターを作成することは可能かもしれませんが、弾丸をかじって新しいキーを生成する方がはるかに簡単です。これを行うコマンドは単純です
keytool -genkey -alias mynickname -validity 20000 -keystore ~/.android/my-keystore
(ps キーのバックアップを作成し、キーストアのパスワードまたはキーのパスワードを忘れないように十分に注意してください。アプリを市場に出した後にパスワードを忘れたり紛失したりする悲しい話があまりにも多くあります。 .)
私もOpenPGPキーだけを管理したいだけです。これが私のやり方です。
openpgp2ssh
まずはmonkeysphereからインストール。
sudo apt install monkeysphere
注:openpgp2ssh
秘密鍵がパスワードで保護されておらず、RSA キーである場合にのみ機能します。そのため、保護を解除する必要がある場合があります。
次に、PGP キーをエクスポートして、openpgp2ssh に渡します。
gpg --list-keys # show your keys with keyid.
gpg --export-secret-subkeys your@email | openpgp2ssh $SubKeyId > id_rsa
openssl rsa -in id_rsa -outform pem > key.pem
openssl req -new -key key.pem -out request.pem
openssl x509 -req -days 9999 -in request.pem -signkey key.pem -out certificate.pem
openssl pkcs8 -topk8 -outform DER -in key.pem -inform PEM -out key.pk8 -nocrypt
jarsigner で署名する必要があります。しかし、実際には、jarsigner は思ったよりも柔軟です。使用したい署名鍵がすでにある場合は、それを gpg からエクスポートして Java キーストアにインポートし、その方法で署名できます。それを試みたい場合は、keytool を試すことができますが 、keytool には多くのオプションがあるため、 Keytool Explorerを入手する方がはるかに簡単です。
Jarsigner は実際には非常に柔軟です。 このドキュメントでは、独自のプロバイダーを作成するプロセスについて説明します。GPG キーストアを使用しているものがまだないことに驚いています。 Yubikey でそれを行う方法がありますが、それが私がこれらすべてを認識している唯一の理由です。署名キーは、yubikey に安全にロックされており、取得できません (はい、どこかに安全なバックアップがあります)。 .