ssh-keygenの使い方
概要
- sshで使用する公開鍵と秘密鍵を作成するソフトウェア
- githubで秘密鍵を登録して使用したり、他のサービスでも使用できる
アルゴリズムの特徴
- RSA
- 大きな素数から作られた数字が素因数分解するのが難しいという事実に基づく
- ED25519
-
/楕円曲線暗号/
- 離散対数問題になる
- RSA暗号より計算量が軽いらしい
-
/楕円曲線暗号/
秘密鍵と公開鍵の作成
RSAの作成
$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (<home path>/.ssh/id_rsa):
Enter passphrase (empty for no passphrase): # 入力するとパスワードが必須になる
Enter same passphrase again: # 入力するとパスワードが必須になる
Your identification has been saved in <home path>/.ssh/id_rsa
Your public key has been saved in <home path>/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:krbM0upueBPo3zNsXbYk7spNZGPNd/lBIPYzXhgaIQ0 <user name>@debian
The key's randomart image is:
+---[RSA 3072]----+
| Eo=.o |
| o.= + |
| . = o |
| . o . =. |
| . + S o ..o. |
| . .= *..+. . ..|
| . ..o=o.= . .|
| o +==oo . |
| *=o+=o |
+----[SHA256]-----+
ED25519の作成
$ ssh-keygen -t ed25519
秘密鍵から公開鍵を作成する
pubフォーマットの場合
$ ssh-keygen -y -f <private-key-path> > <public-key-path>
pemフォーマットの場合
$ openssl rsa -in <private-key-path> -pubout > <public-key-path>