公開鍵を錠前と喩えるのをお勧めしない理由

タイトルのまま
13
angel (as ㌵㌤の猫) @angel_p_57

@herishiro @yagi_ 「公開鍵が錠前」 それ、誤解の第一歩なので止めた方が良いかと。 しかもnginxで、となると、敢えて喩えるなら秘密鍵は「はんこ」相当、公開鍵は確認用の「印影サンプル」ですね。デジタル署名用なので。 ※もう1種類あるけど、そっちは喩えようがない。

2021-11-18 00:44:04

注: nginxはメジャーなWebサーバソフトウェアの1つです。つまり、ここで出てくる「公開鍵」というのはHTTPS(SSL/TLS)で使うもの、なのでSSL証明書に入っている公開鍵のことと思われます。

angel (as ㌵㌤の猫) @angel_p_57

@herishiro @yagi_ 「鍵」って、「必要/重要なもの」だから「鍵」なのであって、「開け閉め」だからではないです。

2021-11-18 00:46:41
八木の野郎 @yagi_

@angel_p_57 @herishiro なるほど、それってnginxでの秘密鍵/公開鍵の利用の話ですか?それとも公開鍵暗号方式全般の話として?

2021-11-18 00:48:47
angel (as ㌵㌤の猫) @angel_p_57

@yagi_ @herishiro 両方ですね。 「公開鍵で暗号化して秘密鍵で復号する」という場面に限って…でも、お勧めはできないですね。 ※そもそも「喩える」のが間違い、と言って良いかと。デジタル署名は別として。

2021-11-18 00:54:00
angel (as ㌵㌤の猫) @angel_p_57

@yagi_ @herishiro 蛇足ながら @herishiro さん向けになりますか。「(公開)鍵」という用語を何かに喩えない方が良いのは大きく4つ理由があります。

2021-11-18 02:00:39
angel (as ㌵㌤の猫) @angel_p_57

@yagi_ @herishiro 1つ目は、「現実に丁度類似したものがある」場合にしか喩えが役に立たないから。 現実にない、新しい概念を身に着けたい時に、無理矢理合ってないものを当てはめると逆効果になります。

2021-11-18 02:00:58
angel (as ㌵㌤の猫) @angel_p_57

@yagi_ @herishiro 錠前でなくて「開ける鍵と閉める鍵が違います」的な説明をする人もいますけど。現実にそんな扉や錠前ない…というか、あっても使わないですよね。なのでこれも五十歩百歩です。

2021-11-18 02:01:51
angel (as ㌵㌤の猫) @angel_p_57

@yagi_ @herishiro 2つ目は「喩え自体のデキが悪い」から。 錠前を持ち出すんだと、結局共通鍵暗号を「1つの鍵で開けたり閉めたりする錠前」的に喩えるのがセットになって、錠前=システムなのが、公開鍵暗号だと錠前=鍵の一方と。役割がブレブレですよね。

2021-11-18 02:02:16
angel (as ㌵㌤の猫) @angel_p_57

@yagi_ @herishiro 結局、理解の助けにするために喩えを使うはずなのに、理解を歪めて現実に無理矢理こじつけることになって本末転倒なんです。

2021-11-18 02:02:39
angel (as ㌵㌤の猫) @angel_p_57

@yagi_ @herishiro 3つ目は「視野が狭くなる」から。 テストだと「公開鍵で暗号化して…」って必ず出ますけど、今現実にその用途で使う場面そんなないです。私も使ってません。 一方で公開鍵・秘密鍵はデジタル署名にも出てくる用語で、錠前なんか全くイメージにあってません。

2021-11-18 02:03:16
angel (as ㌵㌤の猫) @angel_p_57

@yagi_ @herishiro 変に「錠前」というイメージを持ってしまうと、他のイメージを持てなくなりますし、逆に実際の技術を歪めて捉えることにも繋がります。nginxでの使われ方しかり。あとよくあるのはSSHなんかもそうです。

2021-11-18 02:03:38
angel (as ㌵㌤の猫) @angel_p_57

@yagi_ @herishiro 4つ目は「主役でない『鍵』に囚われてシステム本体を見失う」から。 これは現実の、扉を開け閉めする「鍵」でもそうですが、「鍵」自体に機能があるわけではなくて。 某ゲームなんかだと「『最後の鍵」があればどんな扉でも開けられる」みたいに、鍵自身が凄い機能を持ってるように見えますが。

2021-11-18 02:05:04
angel (as ㌵㌤の猫) @angel_p_57

@yagi_ @herishiro あくまで「特定の人にしか操作できません」という「システム」があって、その影の存在として「鍵」がある。主役じゃないんですよね。だから、扉の鍵ですら形状が🗝だったり💳だったり実装次第でころころ変わる。

2021-11-18 02:05:44
angel (as ㌵㌤の猫) @angel_p_57

@yagi_ @herishiro 「鍵って何?」というのを強く意識しすぎると、本命の「システム」自体を見落として、理解としてはさっぱりになります。だから、鍵のことは軽く、あっさりの方が良いんです。

2021-11-18 02:06:08
angel (as ㌵㌤の猫) @angel_p_57

@yagi_ @herishiro ということで。喩えって結構難しいところですね。 なお、「『デジタル署名』は別」というのは、こちらは名前からして「喩え」の産物だからです。なので名前の背景にある喩えを受け入れるのは有用かと思います。

2021-11-18 02:06:51