# 13-5. 暗号化技術とディジタル署名 ## 暗号化って何? - データの内容を第三者にはわからない形へ変換すること ### どうやって暗号化するの? - 暗号化 - データの内容を第三者にはわからない形へ変換すること - 復号化 - 暗号化したデータを元の形に戻すこと **どの暗号化/復号化アルゴリズムを使用しているかバレると、解読されてしまう!** ### どうやってバレないようにするの? - 鍵を使用する ### 鍵って何? - 暗号化/復号化するときに必要なデータ - アルゴリズムがバレても、鍵がないと解読できない ### 共通鍵暗号方式って何? - 送り手と受け手が**同じ鍵**を用いる暗号化方式 - 鍵は**秘密鍵**にする必要がある ### 公開鍵暗号方式って何? - 送り手と受け手が**異なる鍵**を用いる暗号化方式 - **公開鍵**で暗号化し、**秘密鍵**で復号化する ``` 受け手: 「秘密鍵と公開鍵のペアを用意!」 受け手: 「公開鍵を配布!」 送り手: 「公開鍵を使って暗号化! 送信!」 受け手: 「秘密鍵を使って復号化!」 ``` ## ディジタル署名って何? - 誰が送信したものか - データが途中で改ざんされてないか を確認できるようにしたもの ### どうやって署名するの? - 秘密鍵を使って暗号化し、公開鍵とデータを送る - 公開鍵を使って復号化する (公開鍵暗号方式の逆!) ### どうして改ざんがバレるの? - 秘密鍵が無い限り、データに手を加えることができない - 送り手の公開鍵で復号化できることが、改ざんされていない証明になる ### 実際はもう少し高度! ``` 1. メッセージがある - 「こんにちは」 2. ハッシュ関数を使ってメッセージダイジェストを作る - 「こんにちは」 → 「こんちゃ」 3. メッセージダイジェストを秘密鍵で暗号化する - 「QW234RTGHY」 ←これがディジタル署名 4. ディジタル署名をくっつけてメッセージを送信する - 「こんにちは」 + 「QW234RTGHY」 5. 受信者は、公開鍵を使ってディジタル署名を復号化する - 「QW234RTGHY」 = 「こんちゃ」 6. メッセージ本文をハッシュ化する - 「こんにちは」 → 「こんちゃ」 7. 5と6の両者が同一であれば、改ざんされてないと言える - 「こんちゃ」 「こんちゃ」 ``` ## これだけじゃだめ! - ディジタル署名をつかったとしても、ニセモノが鍵を作った場合、なりすましは回避できない → 鍵の正当性を証明する必要がある ## じゃあどうすればいいの? - **認証局(CA)**が公開鍵の出どころを証明する ------ ## 過去問  ###### tags: `基本情報技術者試験`
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up