暗号における鍵とは、通常はファイルに保存された数字または文字の文字列である情報であり、暗号アルゴリズムを通して処理することで、暗号データを暗号化または復号化することができます。使用される方法に基づいて、鍵のサイズや種類は異なりますが、いずれの場合も、暗号化の強度は維持される鍵のセキュリティに依存します。鍵のセキュリティ強度は、そのアルゴリズム、鍵のサイズ、鍵の生成、および鍵交換のプロセスに依存します
範囲
鍵は、データを平文から暗号文に暗号化するために使用されます。[ 1 ]鍵と暗号化を利用する方法はいくつかあります
対称暗号
対称暗号とは、暗号化と復号化の両方に同じ鍵を使用する方式を指します。[ 2 ]
非対称暗号
非対称暗号では、暗号化と復号に別々の鍵が使用されます。[ 3 ] [ 4 ]これらの鍵はそれぞれ公開鍵と秘密鍵と呼ばれます。[ 5 ]
目的
鍵はシステムの機密性と完全性を保護するため、権限のない第三者から秘密に保つことが重要です。公開鍵暗号では秘密鍵のみを秘密にする必要がありますが、対称鍵暗号では鍵の機密性を維持することが重要です。ケルクホフの原理は、暗号システムのセキュリティ全体が鍵の機密性に依存していると述べています。[ 6 ]
鍵サイズ
鍵サイズとは、アルゴリズムによって定義される鍵のビット数です。このサイズは、暗号アルゴリズムのセキュリティの上限を定義します。 [ 7 ]鍵サイズが大きいほど、ブルートフォース攻撃によって鍵が破られるまでの時間が長くなります。鍵アルゴリズムでは完全な秘密性は実現不可能であるため、現在、研究は計算セキュリティに重点を置いています
かつては、鍵の長さは最低40ビット必要でしたが、技術の進歩に伴い、鍵の解読がますます加速しました。これに対応して、対称鍵の制限が強化され、鍵のサイズもより大きくなりました。
現在、2048ビットRSA [ 8 ]が一般的に使用されており、これは現在のシステムには十分です。しかし、現在のRSA鍵長はすべて、強力な量子コンピュータによって容易に解読されてしまいます。[ 9 ]
公開鍵暗号で使用される鍵は、数学的な構造を持っています。例えば、RSAシステムで使用される公開鍵は、2つの素数の積です。そのため、公開鍵システムでは、同等のセキュリティレベルを実現するために、対称鍵システムよりも長い鍵長が必要です。因数分解と整数離散対数に基づくシステムでは、128ビットの対称鍵暗号と同等のセキュリティを実現するために、3072ビットの鍵長が推奨されています。[ 10 ]
鍵生成
鍵が推測されるのを防ぐには、鍵をランダムに生成し、十分なエントロピーを含める必要があります。ランダム鍵を安全に生成する方法の問題は難しく、さまざまな暗号システムによって様々な方法で解決されてきました。鍵は、予測不可能で偏りのないビット列を生成するシステムであるランダムビットジェネレータ(RBG)の出力を使用して直接生成できます。[ 11 ] RBGは、対称鍵または非対称鍵ペア生成のためのランダム出力を直接生成するために使用できます。あるいは、鍵合意トランザクション中に別の鍵またはパスワードから間接的に鍵を作成することもできます。[ 12 ]
一部のオペレーティングシステムには、ディスクドライブのヘッドの動きなど、予測不可能な動作のタイミングからエントロピーを「収集」するツールが含まれています。少量の鍵素材を生成する場合、普通のサイコロは高品質のランダム性を生み出す優れた情報源となります。
確立スキーム
鍵のセキュリティは、当事者間で鍵がどのように交換されるかに依存します。部外者が鍵を入手できないように、安全な通信チャネルを確立する必要があります。鍵確立スキーム(または鍵交換)は、エンティティ間で暗号化鍵を転送するために使用されます。鍵共有と鍵転送は、エンティティ間でリモートで交換されるために使用される2種類の鍵交換スキームです。鍵共有スキームでは、送信者と受信者の間で情報の暗号化と復号化に使用される秘密鍵が、間接的に送信されるように設定されます。すべての当事者は、各当事者が秘密鍵マテリアルを導出することを可能にする情報(共有秘密)を交換します。鍵転送スキームでは、送信者が選択した暗号化された鍵マテリアルが受信者に転送されます。どちらのスキームでも、対称鍵または非対称鍵のいずれかの技術を使用できます。[ 12 ]
ディフィー・ヘルマン鍵交換とリベスト・シャミール・アドルマン(RSA)は、最も広く使用されている2つの鍵交換アルゴリズムです。[ 13 ] 1976年、ホイットフィールド・ディフィーとマーティン・ヘルマンは、最初の公開鍵アルゴリズムであるディフィー・ヘルマンアルゴリズムを開発しました。ディフィー・ヘルマン鍵交換プロトコルは、二者間で共有鍵を電子的に生成することで、安全でないチャネルを介した鍵交換を可能にします。一方、RSAは非対称鍵システムの一種であり、鍵生成、暗号化、復号化の3つのステップで構成されています。[ 13 ]
鍵確認は、鍵確認の受信者とプロバイダの間で、共有鍵情報が正しく確立されていることを保証するものです。米国国立標準技術研究所(NIST)は、鍵確認を鍵確立スキームに統合し、その実装を検証することを推奨しています。[ 12 ]
管理
鍵管理は、暗号鍵の生成、確立、保管、使用、および交換に関係します。鍵管理システム(KMS)は通常、鍵の確立、保管、および使用という3つのステップで構成されます。鍵の生成、保管、配布、使用、および破棄のセキュリティの基盤は、適切な鍵管理プロトコルに依存します。[ 14 ]
キーとパスワード
パスワードとは、文字、数字、その他の特殊記号を含む一連の文字列を記憶したもので、本人確認に使用されます。多くの場合、個人情報や機密情報を保護したり、暗号鍵を生成したりするために、人間のユーザーまたはパスワード管理ソフトウェアによって生成されます。パスワードはユーザーが記憶できるように作成されることが多く、辞書の単語などの非ランダムな情報が含まれる場合があります。[ 12 ]一方、キーは、パスワードを推測したり完全に置き換えたりすることが困難な暗号アルゴリズムを実装することで、パスワード保護を強化するのに役立ちます。キーはランダムデータまたは疑似ランダムデータに基づいて生成され、多くの場合、人間には判読できません。[ 15 ]
パスワードは、エントロピーが低く、ランダム性があり、人間が読みやすいという性質のため、暗号鍵よりも安全性が低い。しかしながら、ストレージデバイス内の情報を保護するなど、一部のアプリケーションでは、情報セキュリティのための暗号アルゴリズムがアクセスできる唯一の秘密データとなる可能性がある。そのため、鍵導出関数(KDF)と呼ばれる決定論的アルゴリズムは、パスワードを用いて安全な暗号鍵素材を生成することで、パスワードの弱点を補う。生成には、ソルトの追加や鍵ストレッチングなど、様々な手法が用いられる。[ 12 ]
参照
参考文献
- ^パイパー、フレッド(2002)、「暗号化」、ソフトウェア工学百科事典、アメリカ癌協会、doi:10.1002/0471028959.sof070、ISBN 978-0-471-02895-6、 2021年4月9日取得
- ^ 「暗号鍵とは? | 鍵とSSL暗号化」
- ^ 「非対称鍵暗号」 . cs.cornell.edu . 2021年4月2日閲覧。
- ^ Chandra, S.; Paira, S.; Alam, SS; Sanyal, G. (2014). 「対称鍵暗号と非対称鍵暗号の比較調査」. 2014 International Conference on Electronics, Communication and Computational Engineering (ICECCE) . pp. 83– 93. doi : 10.1109/ICECCE.2014.7086640 . ISBN 978-1-4799-5748-4. S2CID 377667 .
- ^ Kumar, MGV; Ragupathy, US (2016年3月). 「暗号における現在の主要な課題と現状に関する調査」. 2016年国際無線通信、信号処理、ネットワーク会議 (WiSPNET) . pp. 205– 210. doi : 10.1109/WiSPNET.2016.7566121 . ISBN 978-1-4673-9338-6 . S2CID 14794991
- ^ Mrdovic, S.; Perunicic, B. (2008年9月). 「侵入検知におけるケルクホフの原理」. Networks 2008 - 第13回国際電気通信ネットワーク戦略・計画シンポジウム. 巻末付録. pp. 1– 8. doi : 10.1109/NETWKS.2008.6231360 . ISBN 978-963-8111-68-5。
- ^ 「キーの長さとは? - Techopediaによる定義」 Techopedia.com 、 2011年11月16日。2021年5月1日閲覧
- ^ Hellman, Martin. 「公開鍵暗号の概要」(PDF) . IEEE Communications Magazine .
- ^ 「暗号解読可能な量子コンピュータに向けて」 MITニュース | マサチューセッツ工科大学2024年8月23日. 2025年5月14日閲覧。
- ^ 「変化の分析 – GoogleがSSLキーサイズを2倍にすると発表」Naked Security . 2013年5月27日. 2023年9月8日時点のオリジナルよりアーカイブ。2021年4月9日閲覧。
- ^ Dang, Quynh (2012年8月). 「承認済みハッシュアルゴリズムを使用するアプリケーションへの推奨事項」(PDF) . 2021年4月2日閲覧。
- ^ a b c d e Turan, MS; Barker, EB; Burr, WE; Chen, L. (2010).パスワードベースの鍵導出に関する推奨事項(PDF) (レポート). doi : 10.6028/NIST.SP.800-132 . S2CID 56801929 .
- ^ a b Yassein, MB; Aljawarneh, S.; Qawasmeh, E.; Mardini, W.; Khamayseh, Y. (2017). 「対称鍵および非対称鍵暗号化アルゴリズムの包括的研究」 2017年国際工学技術会議 (ICET) . pp. 1– 7. doi : 10.1109/ICEngTechnol.2017.8308215 . ISBN 978-1-5386-1949-0. S2CID 3781693 .
- ^ Barker, Elaine (2016年1月). 「鍵管理に関する推奨事項」(PDF) . 2021年4月2日閲覧
- ^ Khillar, Sagar (2020年4月29日). 「暗号化とパスワード保護の違い | Difference Between」 . 2021年4月2日閲覧。