公開鍵暗号
公開鍵/秘密鍵のペアになった鍵を用意することで、特定の相手に対して安全に情報を送り届けるための仕組み 情報を送る時は
送りたい相手に鍵のペアを作ってもらい、公開鍵の方を送ってもらう
どうやって送ってもらうかは一旦置いておく
このへんの信用を担保するための仕組みもあったりする
気になるのであれば「公開鍵基盤」でググってみるとよさそう 自分もよくわからない
公開鍵が漏洩すると何かデメリットでもあるのでしょうか?takker.icon
公開鍵が知られたところで、復号できるわけでもない
不正に得た公開鍵で情報を暗号化したところでなんにもならない
サーバーから送られてきた公開鍵が、本当にそのサーバーのものであることが証明される必要があるyosider.icon
もしサーバーになりすました攻撃者の公開鍵だったら、それで暗号化して送った情報が傍受された場合、攻撃者は自分の秘密鍵で復号化することができる たしかにこれはまずいtakker.icon
まとめtakker.icon
公開鍵が漏洩しても大した問題ではない?
公開鍵の信用を担保するのは重要
公開鍵は公開するものです 増井俊之.icon
隠す意味なんてありません
偽造されないように注意するだけ
GitHubだと普通にコピペで送っていますねtakker.icon
あれはHTTPS通信?というやつで一応保護されているのか? そもそもGitHubにログインしてないと送れないですし、偽造した公開鍵なんて何の役にもたたないです 増井俊之.icon
その公開鍵を利用して送りたい情報を暗号化する
この時点でこの公開鍵とペアになった秘密鍵以外では復号することができなくなる
後は相手に暗号化した情報を送る
ここでは前述した性質により信頼できない経路も利用できる
受け取った相手は秘密鍵を利用して暗号化された情報を復号する
ざっと書いてみたんですが合ってますかね?kuuote.icon
公開鍵を相手に送る、というのは普通じゃないと思います 増井俊之.icon
一般に、公開鍵はどーんと公開しておくもので、都度送付したりしないと思う
↑と自分のうろ覚えの知識と合わせて、現状の理解を図解してみましたtakker.icon
間違っていたら指摘ください
自分の認識とは合ってますね(大本が間違っていたらどうしようもないが)kuuote.iconsta.icon
https://gyazo.com/32593ef2bca2261eb94fa922c1a611da
https://gyazo.com/86e2b4ee40813a53637bf39c53a4f274
https://gyazo.com/79854d4469ed3557442abfdafcdbbf1b
https://gyazo.com/6d85fa25732fd6217ba1b4de534469b5
https://gyazo.com/1f32b11f8fa1c71ddc6766d91443a17d
「暗号化」の逆は「復号化」ではなく「復号」が正しいそうですね 増井俊之.icon
その界隈の決めごとのようです
なるほどkuuote.icontakker.icon
opensslコマンドでもssh-keygenでも、秘密鍵から公開鍵を生成できるらしい! 増井俊之.icon $ ssh-keygen -y -f ~/.ssh/id_rsa > id_rsa.pub
$ openssl rsa -in private-key.pem -pubout -out public-key.pem
公開鍵が秘密鍵データ内に書いてあるのだろう
というか、ペアを生成するための情報が秘密鍵データに書いてあるようだ
しかしこれはそういう運用になってるだけで、 一般に「秘密鍵から公開鍵が作れる」というのは間違いだと思うけど
「秘密鍵ファイル」から公開鍵を生成できることが多いと言うなら正しいか
昔書いた記事、たまに思い出したようにTwitterとかで言及されてるnishio.icon