• ベストアンサー

公開かぎ暗号方式

送信者側の暗号化は送信者の秘密かぎまたは公開かぎですか? また、受信者の複合は受信者の秘密かぎ? 正しくはどうなるのですか?

質問者が選んだベストアンサー

  • ベストアンサー
  • ymmasayan
  • ベストアンサー率30% (2593/8599)
回答No.1

基本と応用の2つがあります。 基本的には、送信者が受信者の公開鍵で暗号化します。 受信者は自分の秘密鍵で復号化します。(本人しか復号か出来ない) 応用編としてはディジタル署名があります。上の方式ではなりすまし(嘘情報を送リ付ける)が防げません。これを防ぐ方法がディジタル署名です。基本の鍵の使い方を逆にします。 基本と応用の2つを組み合わせて使うと(一応)完璧な暗号通信が出来ます。

takosu
質問者

お礼

よくわかりました。まだ沢山わからないことがあります。

その他の回答 (3)

  • Hageoyadi
  • ベストアンサー率40% (3145/7860)
回答No.4

公開鍵暗号方式ですね。 シスアドの試験、がんばってください。 http://www.geocities.co.jp/SiliconValley-Cupertino/2190/index.html ↑のように、電子署名では見かけ上言葉が逆に使われるので注意、です。

takosu
質問者

お礼

非常に助かりました。ありがとうございました。

  • ymmasayan
  • ベストアンサー率30% (2593/8599)
回答No.3

No.1のymmasayanです。 No.2の方の回答には勘違いがあります。 自分の秘密鍵で暗号化して送り、相手が公開鍵で復号化するとすれば、 誰でも読めてしまうことになりますね。これでは暗号になりません。

takosu
質問者

お礼

ありがとう

  • redsky
  • ベストアンサー率18% (66/360)
回答No.2

あなたが公開暗号鍵方式を使ってデータの送受信をしたいと思ったとき、 送信・受信ともあなたの秘密鍵を使います。 相手は、常にあなたの公開鍵を使います。 公開鍵で暗号化したものは秘密鍵でしか復号できません。 秘密鍵で暗号化したものは公開鍵でしか復号できません。 公開鍵関連の説明は、以上の説明で必要十分です。

takosu
質問者

お礼

ありがとう

関連するQ&A

  • 公開鍵暗号方式について

    公開鍵暗号方式について調べてるのですがわからないことがいくつかありますので教えてください。詳細なところまでは必要ありません(というか理解できません。。)ので素人向けに概観をご教授いただければ大変助かります。 共通鍵を使った方式は鍵自体の受け渡しに問題があるので、公開鍵と秘密鍵という一対の鍵を用意し、公開された公開鍵で暗号化し、秘密鍵で複合化する。このとき、例えばRSAなら素因数分解を利用した、「秘密鍵から公開鍵の生成は容易だが公開鍵から秘密鍵を割り出すことは困難」という特性が公開鍵を公開しても安全であるという根拠になっている、と理解してます。 ここまでは納得できるのですが、「公開鍵で暗号化したものは秘密鍵でしか複合できない」という仕組みがまったくイメージできません。 送信側だけを考えると、単に与えられたある値(公開鍵)を使ってそれを暗号化してるだけですよね??それでは第3者に暗号分を盗聴されたら公開鍵とともに解析されて(暗号化のアルゴリズムが同じであれば)いずれバレてしまうような気がするのですが・・ もちろん送信者側が秘密鍵まで知っているのなら、「公開鍵で暗号化して秘密鍵でしか複合できない」ような暗号文を作ることは可能でしょうけど、公開鍵から秘密鍵を知ることはできませんもんね・・?? 以上、お暇なときでけっこうですのでよろしくお願いいたします。

  • 暗号化鍵と複合化鍵

    参考書に公開暗号化鍵は顧客対商店の通信に使用されていると書かれてあり、 H12年春の問題で ディジタル署名は「公開かぎ暗号方式」の応用で、送信側は送信情報の一部を「送信者の秘密かぎ」で作成した著名データと同時に送信し、受信側は「送信者の公開かぎ」で著名データが正しいかをチェックする。 という穴埋め問題があります。答えも入れて書きましたが、例えばgooとユーザーを例にとって考えると、 ここで言う送信側とはユーザーのことで、受信側とはgoo(商店)をあらわすのでしょうか? ユーザーも商店も認証手続きなどあるのでどちらも送信者、受信者になりえるような気がして混乱しています。どなたか教えてください。

  • 公開鍵暗号化方式での鍵の配置について

    上長より、ファイルのやり取りはGPGにて公開鍵方式で実施するとの事で、 技術検証を任されたのですが、そこでいくつか不明な点がある為、 ご教示頂きたく何卒宜しくお願い申し上げます。 公開鍵方式では受信側にて公開鍵、秘密鍵を保持し、送信側が受信側にアクセスして公開鍵を使用して暗号化を実施し、受信側へ送信する・・・とあります。 受信(取得する)側がクライアント、送信(取得される)側がサーバを想定しており、 サーバ側にはある検査結果を検査が終わる度に決まったディレクトリに配置するのですが、 クライアント側から取得するのは1日1回と考えております。 その際、サーバ側においてあるファイルを暗号化した状態で配置しておきたいのですが、 よくある図解では、受信側に公開鍵と秘密鍵を保持しているイメージですが、 作成した公開鍵をサーバに配置して暗号化、復元用に秘密鍵はクライアントに配置と考えておりますが、この考えで正しいでしょうか? ちなみに環境は以下を想定しております。 クライアント = Win7 サーバは = Linux系 言語 = VB.NET また、VB.NETで実現しようと考えているのですが、サンプルプログラムが英語用サイトでもあまり見つける事が出来ませんでしたので、参考サイトもご存知でしたらご教示頂けると非常に助かります。 クライアント(取得側)、サーバ(取得される側)での公開鍵方式をしようしたファイルのやり取りについて、どのような手段が常套手段なのかぜひご教示頂きたく、何卒宜しくお願い申し上げます。

  •                  公開鍵暗号方式について

                     公開鍵暗号方式について 公開鍵暗号の仕組みとメリットについて色々な解説を読んでもさっぱり理解できません。 全くの素人考えですが、「共通鍵暗号は暗号化と復号化の鍵が同じなので機密が保ちにくい」という解説を見ると 「公開鍵暗号で何故暗号化の鍵を公開する必要があるの」「公開鍵暗号で復号化の鍵を相手に知らせる際の外部に漏れるリスクは共通鍵暗号と同じじゃないの」等々の憎まれ口をたたきたくなります。 どなたか、公開鍵暗号の仕組みとメリットについて素人でも理解できる解説をしていただけませんか。

  • 公開鍵暗号方式が理解出来ません。

    公開鍵暗号方式では、公開鍵で暗号化したものは秘密鍵で複合化出来るし、秘密鍵で暗号化したものは公開鍵で複合化出来ると言われています。ということは、特定の公開鍵に対応する秘密鍵は、本人が勝手に決められるものではなくて、公開鍵との間になんらかの関連性があるものでなければならないと思うのですが、違いますでしょうか?でももしそうだとすると誰でも公開鍵に対応する秘密鍵が作れてしまって、全然秘密ではなくなってしまうような気がするのですが。。。ご存知の方ご教授お願いします。

  • 公開鍵暗号方式のしくみ

    公開鍵暗号方式について、ある解説で、 暗号化鍵と暗号化アルゴリズムは公開するが、復号鍵は秘密にしなければならない。とあります。 送る側の暗号化においては、受信側の公開鍵を使うわけですが、暗号化鍵の内容と暗号化アルゴリズムが分かれば、復号の仕方は推測できたりしないのでしょうか。

  • ディジタル署名について

    情報処理技術者の勉強してます。 公開鍵暗号化方式の問題では、受信者の公開鍵で暗号化して受信者は自分の秘密鍵で複合するとあります。 ディジタル署名では、送信者の秘密鍵で暗号化して送信者の公開鍵で複合化とありますが それならばなぜ公開鍵暗号化方式は送信者の秘密鍵で暗号化して送信者の公開鍵で複合化と回答すると間違いなのでしょうか?

  • 共通鍵・公開鍵・秘密鍵の鍵とは?

    共通鍵・公開鍵・秘密鍵の鍵とは要は「123KJNIDlll・・・」などの数字や文字のパスワードのことでしょうか? 例えば、共通鍵暗号方式では、ファイル・テキストなどのパスワードを「123gh」などと設定して、 それを送信者と受信者でパスワードの情報を共有するのでしょうか? 公開鍵暗号方式も同様にファイル・テキストに「123yu」は公開鍵、「456ghjは秘密鍵と設定をするのでしょうか?

  • 公開鍵暗号について

    失礼します。 公開鍵暗号についてです。 Linux系OSカテゴリで質問することではないかもしれませんが、 sshサーバーの設定の際に疑問になったことなのでここで質問させてください。 公開鍵暗号方式について無勉強だったので調べていると、 Wikipediaより、 1.通信を受ける者(受信者)は自分の公開鍵(暗号化のための鍵)P を全世界に公開する。 2.受信者に対して暗号通信をしたい者(送信者)は、公開鍵 P を使ってメッセージを暗号化してから送信する。 3.受信者は、公開鍵 P と対になる秘密鍵(復号のための鍵)S を密かに持っている。この S を使って受信内容を復号し、送信者からのメッセージを読む。 4.暗号通信を不正に傍受しようとする者(傍受者)が、送信者が送信した暗号化されたメッセージを傍受したとする。傍受者は、公開鍵 P は知っているが、秘密鍵 S は受信者だけが知っている情報であるので分からない。P から S を割り出すことは(計算時間的に)極めて難しい。そのため、暗号文を復号することはおよそできない。 とありました。 sshを使ってサーバーにアクセスする場合、秘密鍵はクライアント側が持つことになりますが、 そのとき、サーバーからクライアントへのデータは秘密鍵があるので解読できるのは理解できます。 しかし、その反対はサーバー側に秘密鍵がないので無理なのでは? 不勉強でここで悩んでいます。 どなたかご教授いただけないでしょうか? また、ssh用に作成した秘密鍵は「厳重に保管しておく」とよく書かれていますが、 具体的にどうするのかはっきりしません。 パスワード保護でもすればよいのでしょうか? これについても宜しくお願い致します。

  • PHPでの公開鍵方式について

    現在PHPでウェブ上で、ローカルからファイルをアップロードし、そのファイルを公開鍵暗号方式で暗号化するものを考えているのですが、公開鍵と秘密鍵のペアの生成の仕方、また暗号化の仕方がわかりません。 よろしくお願いします。

    • 締切済み
    • PHP