パフォーマンスに問題がない場合、どのTrueCryptアルゴリズムを使用するのが最も安全でしょうか?
- AES
- Serpent
- Triple DES
- Twofish
- AES-Twofish
- AES-Twofish-Serpent
- Serpent-AES
- Serpent-Twofish-AES
- Twofish-Serpent
86 Amir Rezaei 2010-11-06
これらは AES-contest の最終ラウンドでの投票結果です.
Rijndael 86-10 = 76
Serpent 59-7 = 52
Twofish 31-21 = 10
RC6 23-37 = -14
MARS 13-83 = -70
(http://csrc.nist.gov/archive/aes/round2/comments/20000523-msmid-2.pdf、truecrypt serpentを経由してリンクされているので、そちらも読んでみてください)
ということで、いろいろな理由でRijndaelはDES(と3DES)の後継であるAESになりました
と、今日、news.ycombinator.comに出てきたからといって、AESの話
38 akira 2010-11-06
TrueCrypt 7.0a を使用すると、最も安全な暗号化方法は、XTS 方式の AES-Twofish-Serpent カスケード暗号化を使用することです。Whirlpool ハッシュアルゴリズムを使用します。(SHA-512は僅差の2位ですが、議論の余地はあります。私はWhirlpoolに傾いています。なぜならば、SHA-512はすでに、侵害された古いSHA-1をベースにしているという懸念から、後継機が開発されているからです)。最も重要なのは、非常に強力なパスワードを使用することです。20~30文字以上、大文字、小文字、数字、記号。強度テストには、Microsoft のオンラインパスワードチェッカーを使用してください。また、Keyfilesを使ってパスワードをさらに安全にすることもできます
私はSerpent-Twofish-AESよりもAES-Twofish-Serpentの方をお勧めします。この暗号化は、業界で最も標準的なものにしたいからです。さらに、あるファイルがAESで暗号化されていると仮定した場合、それがTwofishで暗号化されていることを確認する方法はありません。そして、Twofishの後にはまたSerpentが登場しますが、これは最大の獣です(AESよりも使用されていない/テストされていないにもかかわらず、AESよりもはるかに高いセキュリティマージンを持っています)
もしKeyfilesを使うのであれば、TrueCryptに3つのキーファイルを作成してもらうことをお勧めします。彼らが提供するハッシュアルゴリズムごとに一つのキーファイルを作成します。また、いくつかの.jpgや.mp3ファイルを追加することもできます。ただし、それぞれのキーファイルは読み取り専用にしておくといいでしょう
でもこれはやりすぎかもしれません
64 Charles Hepburn II 2011-08-16
カスケード暗号(AES-Twofish-Serpentなど)が最も安全です。あなたのデータは1つのアルゴリズムで暗号化され、そこからの出力は2番目のアルゴリズムで暗号化され、その出力は3番目のアルゴリズムで暗号化されます。TrueCrypt のドキュメントによると、各アルゴリズムは異なる鍵を使用しており、それぞれがパスフレーズから派生したものです
これらの暗号のうち1つ(または2つ)に脆弱性が見つかったとしても、攻撃者は残りの暗号を破ることができないため、データは安全であるはずです
15 Chris Acheson 2011-07-13
RijndaelがAESコンテストで優勝したのは、主にハードウェアへの実装が最も速くて簡単だからであって、最も “安全 “だからではありません。TwofishやSerpentは通常、より安全だと考えられていますが、どれも非常に強固なものなので、非常に主観的な主張になってしまいます。もちろん、複数のアルゴリズムで暗号化すれば、さらに「安全」になりますが、速度はさらに低下します
繰り返しになりますが、どれも堅実なものなので、私のアドバイスとしては、お使いのマシンで一番速い方(通常はAES)を選ぶといいでしょう
6 BlueRaja – Danny Pflughoeft 2012-02-09
AES-ツーフィッシュ-サーペントか、サーペント-ツーフィッシュ-AESのどちらか。しかし、通常のAESで十分です
5 Fantius 2011-07-13
アルゴリズムを連結すると、一方を他方に追従させるために使用されるアルゴリズムのために、セキュリティが弱くなる可能性があると読んだことがあります
さらに、複合暗号のいずれかを使用した場合、効率と速度は大きな打撃を受けるでしょう
私はRijndael (AES)かSerpentをお勧めしますが、安全性を確保したいのであれば、最も重要な要素は鍵です
1 funkotron 2010-11-06
複数の暗号を一緒にカスケード接続することにはいくつかの危険性がありますが、Truecrypt は可能な限りそれに対処しているようです。Truecrypt は最初の暗号の出力に既知の平文を追加せず、それぞれに独立した鍵を使用するので、異なるアルゴリズムを一緒に連結することでセキュリティを向上させることができます
しかし、私は3DESは避けた方がいいと思います。アルゴリズムの選択肢をリストアップしたTruecryptのページを読むと、トリプルDESのリストすらないので、最近削除されたのかもしれません
1 pipTheGeek 2010-11-06
もしあなたがキーファイルを使用しているのであれば、より短いパスワードを使用することも考えられますし、もしあなたがパフォーマンスのヒットを心配していないのであれば、AES Twofish と Serpent を使用することは、暗号化された素材に侵入しようとしている人に多くの頭痛の種を引き起こすことになります。しかし、一つの暗号化されたファイルを取り、それをより大きな暗号化されたファイルの中に配置することもできることを見落とさないでください。この方法では、攻撃者が外側のコンテナを見て、彼らがコンテナ全体を持っていると思うように「許可」することができます。実際には、彼らは何も持っていないのです。外側のファイルに少し怪しげなものを入れるのは自由だが、実際に問題を起こすようなことは何もない。エロ写真のスレがうまくこの法案に当てはまると思う、ここには 誰かが隠したいと思う何かがある、そのようなものとして、あなたには いい理由がある。外側の容器は、内側の容器が存在することさえ明らかにしない。内側の容器の中にあなたの実際の材料を配置します。さらに良いのは、不十分なパスワードとキーファイルを使わずに、外側のコンテナを「弱い」ものにすることです。攻撃者に暗号化を破られたと思わせて、肩をすくめて「くそ、お前は優秀だ
0 Gene Abshire 2013-03-27
256ビットのバリアント(より高い時間の複雑さがより良いですが、すべての種類の注意事項)を想定して、それぞれのための最高の公開暗号解析
- Rijndael: 2^254.4時間の複雑さ(ここでは問題にならない関連キー攻撃を無視)
- サーペント。32の12ラウンド、2^228.8の時間的複雑さ(ただし、2^118の既知の平文が必要)
- ツーフィッシュ:6ラウンド16(ただし2^51の選ばれた平文が必要)
- 3DES。2^118 (2^32 の既知の平文を使用します。3DES は 168 ビットを使用するので、ブルートフォースは 2^256 ではなく 2^168 になります)
間違いなく、3DES は最も安全ではありませんが、だからと言って必ずしも安全ではありません (通常の未発表のバックドアの懸念を除けば)。しかし、私はそれを避けることにしています。他のすべてのアルゴリズムは一般的に安全だと考えられています。意図的に配置されたバックドアの存在を判断するには、スノーデン氏がより多くの文書を公開する必要があります。正直言って、トップ3のどれかに バックドアがあったとしたら それは絶対的な爆弾発言になるだろう彼の実績を考えると、個人的にはそれらがまだ安全であると仮定して満足しています
0 Bob Aman 2014-01-01
2001 年、米国標準技術研究所 (NIST) は先進暗号化標準 (AES) を立ち上げ、対抗するアルゴリズムを持つ 5 つの候補を (複数の候補会議を通じて) 最終候補に絞り込みました。Serpent 暗号はそのうちの 1 つで、高い安全性を評価されましたが、最終的には Rijndael 暗号の次点となりました。これは数年前のことですが、電子データの暗号化と性能とセキュリティの間のトレードオフについて魅力的に垣間見ることができます。興味深いことに、性能が勝ったのです
他の5つの候補と比較してみると、Serpent暗号が最も高い安全率3.56で、次がTwofish暗号で安全率2.67であることを考えるとかなり良い結果となりました。Rijndael-256 は 1.56 の安全率でした
0 skan 2016-10-14
ブルートフォースを可能にするような AES に対する攻撃は知られていないので (ref: https://en.wikipedia.org/wiki/Advanced_Encryption_Standard#Known_attacks)、3 文字の機関が次の千年紀に向けて全計算能力をドライブのクラックに割くことを期待しているのでなければ、AES を利用するのがよいでしょう。TrueCryptの最後のバージョンとそのフォークはAES-NIをサポートしており、私のCore i7 3770では2.5 GB/秒以上のスループットを提供しています
このドメインが広告している IP アドレスへの接続は、ほとんどのブラウザで AES 暗号化を使用しています(ただし、CloudFlare はブラウザが見ることができるキーを保持し、データを StackExchange サーバーに送信する前に復号化して再暗号化します)。だからStackExchangeのパスワードにTrueCrypt/VeraCrypt/CipherShedのパスワードを使うのはやめておきましょう。)
-1 William 2016-01-08
これらのアルゴリズムではWhirlpoolハッシュが最強なのでおすすめです
暗号化アルゴリズムについては、カスケードを使用する必要があります。私はAES、Twofish、Serpentをお勧めします。AESはかなり弱く(他のアルゴリズムと比較しても最速ですが)、業界標準なのでアウターレイヤーとして有効です。Twofishはさらに強力で、AES層を復号化した後、さらに強力な別の層(Twofish)が存在することになります。Serpentが最強であり、このカスケードが効果的であることが証明されています
追加情報ですパスワードについては、NSAは量子コンピュータを持っていて、非常に迅速に復号化することができます。私はNSAを信用していません(彼らはAESを設計しました)。私は最低40文字、小文字と大文字、数字、記号、辞書の単語や個人情報(生年月日など)を使わないことをお勧めします。敵対者からのリスクがある場合は、TrueCryptに組み込まれているもっともらしい反証機能を利用しましょう
-2 UndefeatedWarrior786 2013-12-11
AES
Rijndael(現在のTHE AES)は最高のアルゴリズムです
https://crypto.stackexchange.com/questions/24307/why-is-aes-unbreakableより
第一に、AESは破れないとは言われていません。ただ、現在知られている攻撃のどれも、実行可能なほど計算コストを下げられないというだけです。もし、現在のどのコンピュータよりも数百万倍効率が良く、熱力学的ランダウアー限界で動作するコンピュータ(またはクラスタ)があったとしたら、キーの値ごとにカウンタをインクリメントするだけで234ペタジュールが必要になるでしょう。これはノルウェーの年間電力消費量の約半分に相当する。実際にAESラウンドを計算するには、その数倍のエネルギーが必要です
Twofish
Twofish は、ブロックサイズが 128 ビット、鍵サイズが 256 ビットまでの対称鍵ブロック暗号です。Advanced Encryption Standardコンテストのファイナリスト5人のうちの1人だったが、標準化には選ばれなかった。Twofishはそれ以前のブロック暗号Blowfishと関連している
Twofishの特徴は、あらかじめ計算された鍵依存Sボックスを使用していることと、比較的複雑な鍵スケジュールを採用していることです。nビットの鍵の半分が実際の暗号化鍵として使用され、残りの半分は暗号化アルゴリズムを変更するために使用されます(鍵依存Sボックス)。Twofishは他のデザインからいくつかの要素を借用しています。例えば、SAFER暗号ファミリの擬似ハダマード変換(PHT)などです。TwofishはDESのようなFeistel構造を採用しています。また、Twofish は最大距離分離可能行列を採用しています
ほとんどのソフトウェアプラットフォームにおいて、Twofishは128ビットの鍵ではRijndael(Advanced Encryption Standardで選択されたアルゴリズム)よりも若干遅いが、256ビットの鍵ではやや速い
Serpent
Serpent は対称鍵ブロック暗号で、Advanced Encryption Standard (AES) コンテストの最終選考に残っており、Rijndael に次いで 2 位にランクされています。Serpent は Ross Anderson、Eli Biham、Lars Knudsen によって設計されました
他のAESの提出物と同様に、Serpentは128ビットのブロックサイズを持ち、128、192、または256ビットの鍵サイズをサポートしています[2]。各ラウンドでは、8つの4ビットから4ビットのSボックスのうちの1つを32回並列に適用します。Serpentは、32ビットスライスを使用して、すべての操作を並列に実行できるように設計されています。これにより、並列性が最大化されますが、DESで行われている広範な暗号解析作業を利用することも可能になります
設計者は、既知の攻撃に対しては16ラウンドで十分であると考えていますが、将来の暗号解読の発見に備えて32ラウンドのセキュリティマージンを設定しています。AES競争に関するNISTの公式レポートでは、RC6やRijndael(現在のAES)の十分なセキュリティマージンとは対照的に、SerpentはMARSやTwofishと並んで高いセキュリティマージンを持っていると分類されています。最終的な投票では、Serpentは最終候補の中で最も反対票が少なかったのですが、Rijndaelの方がかなり多くの賛成票を得ていたため、総合的には2位となりました
SHAはMDA、Whirpoolなどよりもはるかに優れています。しかし、彼らはSHAを破る方法を見つけた。そこにSHA-2 (HMAC)が来る。ここでも彼らはそれを破る方法を見つけた。そこにSHA-3(Kakeeか何か)が来る。しかし、TrueCrypt、VeraCrypt、CipherShedまたはTrueCryptNextではSHA-3.—————————Sourceが存在しません。私の記憶の中の任意の場所 😉
AES-Twofish-Serpent + SHA-512 = TrueCryptなどに最適なアルゴリズムとハッシュ
-2 Gigabyte 2016-03-27
ざっと検索したらAES 256 bits
と出てきました
私はトリプルAESとトリプルフグは避けたいと思います。同じアルゴリズムを複数回実行すると、元のアルゴリズムを一度だけ使用した場合よりもセキュリティが低下する可能性があります
-3 gulbrandr 2010-11-06