GnuPGを使ってPGP鍵を扱う方法 - TechRepublic

GnuPGを使ってPGP鍵を扱う方法 - TechRepublic

暗号化はあらゆる企業にとって最優先事項です。暗号化の基礎をもう一度おさらいしたい方のために、PGPキーの作成方法から解説します。PGPキーを使えば、ファイルやフォルダを暗号化できます。PGPキーがないと、連絡先から暗号化されたメールを送信することはできません。

PGP鍵の作成手順を詳しく説明します。その後、自分の公開鍵をエクスポートし、他の人の公開鍵をインポートする方法を説明します。

このプロセスは、使用するプラットフォームとPGPに使用するツールによって異なります。このチュートリアルでは、Elementary OS FreyaとGnuPGコマンドラインを使用します。Windowsでこのツールを使用する場合は、Gpg4winをインストールしてGnuPGと同じ機能をご利用ください。

参照:暗号化ポリシー (Tech Pro Research)

インストール

GnuPGは既にマシンにインストールされているはずです。インストールされていない場合は、次のコマンドでインストールできます。

sudo apt-get gnupg をインストール

キーペアの生成

キー ペアを生成する必要があります。これにより、秘密キーと公開キーが作成されます。

  • 秘密鍵は、あなたの公開鍵を持つ人からあなたに送信されたメールやファイルを復号化します。秘密鍵は秘密にしておく必要があります。
  • 公開鍵は、他のユーザーがあなたへのメッセージを暗号化できるようにするために、他のユーザーと共有する鍵です。

キーペアを生成するには、コマンドラインから作業します。ターミナルウィンドウを開き、次のコマンドを実行してください。

gpg –gen-key

プロセスが起動し、いくつかの質問が表示されます。最初のインタラクティブ出力は次のようになります。

ご希望のキーの種類を選択してください:
(1) RSA および RSA (デフォルト)
(2) DSA および Elgamal
(3) DSA (署名のみ)
(4) RSA (署名のみ)
選択してください。

ここではデフォルトのままにして、1 を押します。

次に、キーサイズを選択する必要があります。

RSA鍵の長さは1024~4096ビットです。
必要な鍵サイズはどれですか?(2048)

Enterキーを押してデフォルト (2048) を選択します。

次の質問では、キーの有効期間を定義します。日数、週数、月数、または年数で値を選択するか、キーに有効期限を設定しないように設定できます。

キーの有効期間を指定してください。0
= キーは期限切れではありません
<n> = キーは n 日後に期限切れになります
<n>w = キーは n 週間後に期限切れになります
<n>m = キーは n か月後に期限切れになります
<n>y = キーは n 年後に期限切れになりますキーの有効期間は? (0)

キーに有効期限はありません。これは正しいですか? (y/N)

キーに関連付けるユーザー情報を入力する必要があります。

キーを識別するにはユーザーIDが必要です。ソフトウェアは、実名、コメント、メールアドレスから
「Heinrich Heine (Der Dichter) <[email protected]>」という形式でユーザーIDを作成します。

本名:
メールアドレス:
コメント:

入力内容を確認し、鍵のパスフレーズを入力してください。パスフレーズは強力で、覚えやすいものにしてください。入力後、GnuPGがエントロピーを用いて鍵を生成できるように、作業に戻ってください。GnuPGがコマンドプロンプトに戻ったら、次のステップに進むことができます。

公開鍵のエクスポート

鍵ペアを有効にするには、公開鍵を他の人が利用できるようにする必要があります。公開鍵をエクスポートし、暗号化されたメールやファイルを送信する必要がある人に渡してください。以下のコマンドで鍵をエクスポートしてください。

gpg –armor –export EMAIL_ADDRESS > public_key.asc (EMAIL_ADDRESS はキーに関連付けられた実際のメールアドレスです)

あなただけが閲覧できるように電子メールやファイルを暗号化する必要がある人に配布できる公開鍵ファイルが作成されます。

他の人が使えるように、公開鍵をkeys.gnupg.net公開鍵サーバーにアップロードすることもできます。以下の手順に従ってください。

  1. ターミナルウィンドウを開きます。
  2. gpg –list-keysコマンドを発行します。
  3. エクスポートするキーに関連付けられている 8 桁の文字列 (プライマリ ID) を検索します。
  4. コマンドgpg –send-keys PRIMARY_ID を発行します(PRIMARY_ID はそのキーの実際の ID です)。

キーはキー サーバーにアップロードされ、一般に公開されます。

ユーザーがあなたの公開鍵を取得すると、それを自分のシステムにインポートして暗号化されたメッセージを送信できます。メッセージやファイルの暗号化に使用された公開鍵はあなたの秘密鍵と関連付けられているため、あなたはそれらのメッセージを復号化できます。秘密鍵がなければ、復号化することはできません(だからこそ、秘密鍵を保護する必要があるのです)。

他のユーザーの秘密鍵をインポートする

暗号化されたメッセージを送信するには、他のユーザーの秘密鍵をインポートする必要があります。インポートするユーザーは公開鍵を送信する必要があります。ユーザーの公開鍵を受け取ったら、保存してインポートしてください。インポートはコマンドラインからも実行できます。手順は以下のとおりです。

  1. ターミナルウィンドウを開きます。
  2. 保存されたユーザー キーが格納されているディレクトリに変更します。
  3. コマンドgpg –import PUBLIC_KEYを発行します(PUBLIC_KEY はインポートする公開鍵のファイル名です)。

これで、インポートしたキーに関連付けられたユーザーに暗号化された電子メール/ファイルを送信できるようになります。

思ったより簡単ですよね?

GnuPGを使用すると、コマンドラインからでも暗号化プロセスがシンプルになります。もちろん、グラフィカルインターフェースを好む方のためにGUIも用意されています(Gpg4winにはWindows側に独自のGUIが付属しており、最近のLinuxデスクトップのほとんどにも独自のGUIが付属しています)。

私の推測では、PGP キーの使用は、この暗号化チュートリアルを始めたときに考えていたよりも簡単です。

Tagged: