HOME»応用情報技術者試験掲示板»SSH rsa公開鍵に英字が含まれている理由
投稿する

SSH rsa公開鍵に英字が含まれている理由 [4137]

 八王子さん(No.1) 
RSAは素数同士の計算を使うことから、鍵も数字の羅列だと思っていたのですが、これに英字が含まれているのは何故ですか?

小文字大文字も区別されているように見え、16進数のようにも見受けられませんでした。これを文字コードで2進数に置き換え、それを10進数にしたのが数字として使われるとかですか…?

※理解を深めたい質問なので問題と関係なく申し訳ないです。
2023.04.07 01:53
わたしもさん(No.2) 
わたしも知りたいですが、本当にそれは鍵だったでしょうか?
どこにのっていたか知りたいです
2023.04.07 02:34
pixさん(No.3) 
AP シルバーマイスター
秘密鍵、公開鍵は数字(数値)の羅列であっています。
厳密には秘密鍵はいろいろな情報が付与されたデータの構造体になっています。
秘密鍵には対になる公開鍵も格納されています。
構造体のフォーマットは「OpenSSH Private Key Format」検索すればでてきます。

秘密鍵、公開鍵はバイナリデータです。バイナリデータのままではデータの
やり取りが不便なためテキストファイルに変換されます。
この時に使用される変換方法がbase64です。
base64は数字・アルファベット・記号という人間の目で読めるテキストファイル
形式です。

秘密鍵はさらにPEMという形式で保存されます。
2023.04.07 07:38
GinSanaさん(No.4) 
AP プラチナマイスター
たぶん、こんな感じの公開鍵のようなもんでしょうかね。
qiita.com/angel_p_57/items/0530218a1dae82eb5dce

自分が昔RSAでやったときに積n(後述のRSA_BS_Inferno.shでいうところのecho n)が、hex変換してBASE64まで変換してなかったから普段意識してなかったけど、opensslとかはそこまでやるのを忘れてました。
github.com/GinSanaduki/RSA_In_Bourne_Shell_and_GAWK
2023.04.07 07:41
 八王子さん(No.5) 
Ginsanaさんありがとうございます!まさにこれです!
Pixさんもありがとうございます。なるほどbace64でエンコードされていたのか…納得です。
2023.04.07 11:13
返信投稿用フォームスパム防止のためにスレッド作成日から30日経過したスレッドへの投稿はできません。
© 2010-2024 応用情報技術者試験ドットコム All Rights Reserved.

Pagetop