249.3.2. キーリングの管理


キーリングを管理するには、コマンドラインツールを使用します。鍵を管理する最も簡単な方法であると見なします。その方法が必要な場合は、http://www.bouncycastle.org/java.html から Java ライブラリーを使用することもできます。

linux にコマンドラインユーティリティーをインストールします。

apt-get install gnupg

キーリングを作成し、セキュアなパスワードを入力します。

gpg --gen-key

他人の公開鍵をインポートして、ファイルを暗号化できるようにする必要がある場合。

gpg --import <filename.key

以下のファイルが存在し、サンプルの実行に使用できます。

ls -l ~/.gnupg/pubring.gpg ~/.gnupg/secring.gpg

[[crypto-PGPDecrypting/VerifyingofMessagesEncrypted/SignedbyDifferentPrivate/PublicKeys]] PGP Decrypting/Verifying of Messages Encrypted/Signed by different # Private/Public Keys

Camel 2.12.2 以降

PGP Data Formater は、異なる公開鍵で暗号化または異なる秘密鍵で署名されたメッセージを復号化および検証できます。唯一の方法として、シークレットキーリング、パブリックキーリングの対応する公開鍵、およびパスフレーズアクセッサーのパスフレーズを指定します。

Map<String, String> userId2Passphrase = new HashMap<String, String>(2);
// add passphrases of several private keys whose corresponding public keys have been used to encrypt the messages
userId2Passphrase.put("UserIdOfKey1","passphrase1"); // you must specify the exact User ID!
userId2Passphrase.put("UserIdOfKey2","passphrase2");
PGPPassphraseAccessor passphraseAccessor = new PGPPassphraseAccessorDefault(userId2Passphrase);

PGPDataFormat pgpVerifyAndDecrypt = new PGPDataFormat();
pgpVerifyAndDecrypt.setPassphraseAccessor(passphraseAccessor);
// the method getSecKeyRing() provides the secret keyring as byte array containing the private keys
pgpVerifyAndDecrypt.setEncryptionKeyRing(getSecKeyRing()); // alternatively you can use setKeyFileName(keyfileName)
// the method getPublicKeyRing() provides the public keyring as byte array containing the public keys
pgpVerifyAndDecrypt.setSignatureKeyRing((getPublicKeyRing());  // alternatively you can use setSignatureKeyFileName(signatgureKeyfileName)
// it is not necessary to specify the encryption or signer  User Id

from("direct:start")
         ...
        .unmarshal(pgpVerifyAndDecrypt) // can decrypt/verify messages encrypted/signed by different private/public keys
        ...
  • この機能は、鍵交換をサポートするのに特に便利です。復号化のために秘密鍵を交換する場合は、古いまたは対応する公開鍵で暗号化される期間メッセージを許可できます。または、送信者が署名側の秘密鍵を交換する必要がある場合は、期間、古い署名者キー、または新しい署名側のキーを受け入れることができます。
  • テクニカル背景: PGP 暗号化データには、データの暗号化に使用した公開鍵のキー ID が含まれます。このキー ID は、データを復号化するためにシークレットキーリングで秘密鍵を見つけるために使用できます。署名を検証する公開鍵を見つけるためにも同じメカニズムを使用します。したがって、アンマーシャリングにはユーザー ID を指定する必要はありません。
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2026 Red Hat
トップに戻る