パフォーマンスが重要でない場合、どのTrueCryptアルゴリズムが最も安全に使用できますか?
- AES
- 蛇
- トリプルDES
- 二匹
- AES-Twofish
- AES-Twofish-Serpent
- 蛇AES
- サーペントツーフィッシュAES
- Twofish-Serpent
パフォーマンスが重要でない場合、どのTrueCryptアルゴリズムが最も安全に使用できますか?
回答:
これらは、AESコンテストの最終ラウンドでの投票の結果です。
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経由でリンクされている、それも読んでください)。
そのため、さまざまな理由で、ラインダールはAESになりました。これは、DES(および3DES)の後継です。
そして、それが今日news.ycombinator.comに現れたという理由だけで、AESの物語:
http://www.moserware.com/2009/09/stick-figure-guide-to-advanced.html
TrueCrypt 7.0aを使用する場合、暗号化の最も安全な方法は次のとおりです。AES-Twofish-Serpentカスケード暗号化とXTSメソッドを使用します。Whirlpoolハッシュアルゴリズムを使用します。(SHA-512は非常に近い2位です...議論の余地があります...私はワールプールに傾いています最も重要なのは、非常に強力なパスワードを使用することです。20〜30文字以上、大文字、小文字、数字、記号。強度テストには、Microsoftのオンラインパスワードチェッカーを使用してください。キーファイルを使用して、パスワードをさらに保護することもできます。
AES-Twofish-SerpentをSerpent-Twofish-AESよりもお勧めします。これは、最も外側の暗号化(AESが解読する必要がある最初のレイヤー)を業界で最も標準にするためです。それは最も試行された真実であり、それらすべての中で最もテストされたものです。さらに、誰かがファイルがAESで暗号化されていると想定した場合、それがTwofishで暗号化されていることを確認する方法はありません... そして、Twofishの後、彼らはすべて最大の獣であるSerpentに遭遇します(AESよりも使用/テストが少なくても、AESよりもはるかに高いセキュリティマージンがあります)
キーファイルを使用する場合は、TrueCryptで3つのキーファイルを作成することをお勧めします。提供するハッシュアルゴリズムごとに1つのキーファイルを作成します。また、いくつかの.jpgファイルといくつかの.mp3ファイルを追加することもできます。ただし、各キーファイルは必ず読み取り専用にしてください。
ただし、これはおそらくやり過ぎです。
カスケードされた暗号(AES-Twofish-Serpentなど)が最も安全です。データは1つのアルゴリズムで暗号化され、その出力は2番目のアルゴリズムで暗号化され、その出力は3番目のアルゴリズムで暗号化されます。TrueCryptのドキュメントによると、各アルゴリズムはパスフレーズから派生した異なるキーを使用します。
これらの暗号の1つ(または2つ)に脆弱性が見つかった場合でも、攻撃者は残りの暗号を破ることができないため、データは引き続き安全である必要があります。
Rijndaelのは、それが最も速く、最も容易には、ハードウェアで実装することだ主な理由AES大会優勝ではない、それはほとんどのだから「安心」TwofishとSerpentは通常、より安全であると考えられていますが、これらはすべて非常に堅実であるため、非常に主観的な主張です。そしてもちろん、複数のアルゴリズムによる暗号化はさらに「安全」になりますが、速度はさらに低下します。
繰り返しますが、それらはすべて堅実ですので、私のアドバイスは、お使いのマシン(通常はAES)で最速のものを使用することです。
複数の暗号をカスケード接続することにはいくつかの危険がありますが、Truecryptはできる限り最善の方法でそれらを処理するようです。最初の暗号の出力に既知の平文を追加せず、それぞれに独立したキーを使用するため、異なるアルゴリズムをチェーン化することでセキュリティが向上します。
しかし、私は3DESを避けようとします。アルゴリズムの選択肢をリストしたTruecryptページを読んだ後、トリプルDESもリストしていないため、最近削除された可能性があります。
キーファイルを使用している場合は、より短いパスワードを使用できます。パフォーマンスヒットを心配していない場合は、AES TwofishとSerpentを使用すると、暗号化された素材を取得しようとする人に大きな頭痛の種を引き起こします。ただし、1つの暗号化されたファイルを取得して、より大きな暗号化されたファイルの内側に配置することもできます。このようにして、攻撃者に外部のコンテナを「許可」させ、コンテナ全体を持っていると思わせることができます。実際には、彼らはまったく何も持っていません。外部ファイルに少し怪しいものを入れてください。しかし、実際に問題を引き起こすものは何もありません。たくさんのポルノ写真がこの法案にうまく合うと思います。ここに誰かが隠したいものがあるので、あなたには正当な理由があります。外側のコンテナは、内側のコンテナが存在することさえ明らかにしません。実際の材料を内側の容器に入れます。さらに良いのは、パスワードが不十分で、キーファイルがない外部コンテナを「弱く」することです。攻撃者に暗号化を破ったと思わせ、肩をすくめて、「くそー、いい人だ、私は権利を失った」と言ってください。
256ビットのバリアントを想定して、それぞれに最適な公開暗号解析(時間の複雑さが高いほど優れていますが、あらゆる種類の注意事項):
疑いもなく、3DESは最も安全性が低いですが、必ずしも安全ではありません(通常の未公開のバックドアの懸念がない限り)。しかし、私はそれを避けます。他のアルゴリズムはすべて、一般に安全であると考えられています。それらのいずれかに意図的に配置されたバックドアの存在を判断するには、Snowdenがさらにドキュメントをリリースする必要があります。正直なところ、トップ3のいずれかにバックドアがあった場合、それは絶対的な爆弾の暴露になります。彼の実績を考えると、個人的にはまだ安全だと思います。
2001年に、米国国立標準技術研究所(NIST)はAdvanced Encryption Standard(AES)を開始し、5つの候補を(複数の候補者会議を通じて)候補リストに追加しました。サーペント暗号はそれらの1つであり、セキュリティの高いクドゥスを獲得しましたが、最終的にはラインダール暗号の次点となりました。これは数年前に行われましたが、電子データの暗号化とパフォーマンスとセキュリティのトレードオフを魅力的に垣間見ることができます。興味深いことに、パフォーマンスが勝ちました!
他の5つの候補と比較して、Serpent暗号の安全係数は3.56で最高でした。これは、次の最適なものが安全係数2.67のTwofish暗号であるという事実を考慮すると非常に良好でした。Rijndael-256の安全係数は1.56でした
https://www.100tb.com/blog/security-performance-serpent-cipher-rijndael/
強引な実行を可能にするAESに対する既知の攻撃はないので(参照:https : //en.wikipedia.org/wiki/Advanced_Encryption_Standard#Known_attacks)あなたのドライブをクラックする千年、AESは行く方法です。TrueCryptの最新バージョンとそのフォークはAES-NIをサポートしています。これは私のCore i7 3770で2.5 GB /秒以上のスループットを提供します。
このドメインによってアドバタイズされたIPアドレスへの接続は、ほとんどのブラウザーでAES暗号化を使用します(ただし、CloudFlareはブラウザーに表示されるキーを保持し、StackExchangeサーバーに送信する前にデータを復号化および再暗号化するため、TrueCryptを使用しないでくださいStackVacryパスワードの/ VeraCrypt / CipherShedパスワード。3文字の代理店がドライブを解読すると、CloudFlareプロキシでパスワードをインターセプトし、仕事に出ないブルートフォースを試みる前に最初にそれを試すからです。
Whirlpoolハッシュはこれらのアルゴリズムで最も強力なので使用することをお勧めします。
暗号化アルゴリズムには、カスケードを使用する必要があります。AES、Twofish、Serpentをお勧めします。AESは非常に弱く(他のアルゴリズムと比較して最も高速ですが)、業界標準であるため、外部層として有効です。Twofishはさらに強力であり、AESレイヤーを解読した後、さらに強力な別のレイヤー(Twofish)があります。蛇は最強であり、このカスケードは効果的です。
いくつかの追加情報:パスワードについては、NSAには非常に迅速に解読できる量子コンピューターがあります。私はNSA(彼らはAESを設計した)を信用しません。少なくとも40文字、小文字と大文字、数字、記号を使用し、辞書の単語や個人情報(生年月日など)を使用しないことをお勧めします。キーファイルを使用できます。敵の危険にさらされている場合は、TrueCryptに組み込まれているもっともらしい拒否機能を使用してください。
Rijndael(現在はAES)が最適なアルゴリズムです。
https://crypto.stackexchange.com/questions/24307/why-is-aes-unbreakableから:
まず、AESが壊れないということではなく、単に現在知られている攻撃のどれもが計算コストを実行可能なポイントまで削減しないということです。AES-128に対する現在の最高の攻撃には2 ^ 126.1の操作が必要です。現在のコンピューターよりも数百万倍も効率的なコンピューター(またはクラスター)があり、熱力学的ランダウアー制限で動作できる場合、増分するのに234ペタジュールかかりますすべてのキー値を介してカウンターします。これはノルウェーの年間電力消費量の約半分です。実際にAESラウンドを計算するには、その数倍のエネルギーが必要です。
ウィキペディアから:
Twofishは、ブロックサイズが128ビットで、キーサイズが最大256ビットの対称キーブロック暗号です。Advanced Encryption Standardコンテストの5つのファイナリストの1つでしたが、標準化には選択されませんでした。Twofishは、以前のブロック暗号Blowfishに関連しています。
Twofishの特徴は、事前に計算されたキー依存Sボックスの使用と、比較的複雑なキースケジュールです。nビットキーの半分は実際の暗号化キーとして使用され、nビットキーの残りの半分は暗号化アルゴリズム(キー依存Sボックス)の変更に使用されます。Twofishは、他のデザインからいくつかの要素を借りています。たとえば、SAFERファミリーの暗号からの疑似アダマール変換(PHT)。Twofishには、DESのようなFeistel構造があります。Twofishは、最大距離分離可能マトリックスも使用します。
ほとんどのソフトウェアプラットフォームでは、Twofishは128ビットキーのRijndael(Advanced Encryption Standardに選択されたアルゴリズム)よりもわずかに低速でしたが、256ビットキーの場合はやや高速です。
ウィキペディアから:
Serpentは対称キーブロック暗号であり、Advanced Encryption Standard(AES)コンテストのファイナリストであり、Rijndaelに次いで2位にランクされました。Serpentは、Ross Anderson、Eli Biham、およびLars Knudsenによって設計されました。
他のAES提出と同様に、Serpentは128ビットのブロックサイズを持ち、128、192、または256ビットのキーサイズをサポートします。[2] 暗号は、4つの32ビットワードのブロックで動作する32ラウンドの置換順列ネットワークです。各ラウンドは、8つの4ビットから4ビットのSボックスの1つを32回並列に適用します。Serpentは、32ビットスライスを使用して、すべての操作を並行して実行できるように設計されました。これにより、並列処理が最大化されますが、DESで実行される大規模な暗号解析作業も使用できます。
Serpentは、セキュリティに対する保守的なアプローチを採用し、大きなセキュリティマージンを選択しました。設計者は、既知のタイプの攻撃に対して16ラウンドで十分であると判断しましたが、暗号解読の将来の発見に対する保険として32ラウンドを指定しました。AESの競争に関する公式のNISTレポートでは、RC6とRijndael(現在のAES)の適切なセキュリティマージンとは対照的に、MARSとTwofishとともに高いセキュリティマージンを持っているとSerpentを分類しました。最終投票では、セルペントはファイナリストの中で最も少ない数の票を獲得しましたが、Rijndaelの方がかなり多くの賛成票を獲得していたため、総合的に2位になりました。
SHAはMDA、Whirpoolなどよりも優れていますが、SHAを破る方法を見つけました。そこにはSHA-2(HMAC)が付属しています。再び、彼らはそれを破る方法を見つけました。そこにはSHA-3(Kakeeまたはこのようなもの)があります。しかし、TrueCrypt、VeraCrypt、CipherShed、またはTrueCryptNextにはSHA-3が存在しません。 ;-)
簡単に検索した後に言いAES 256 bits
ます。
Triple AESとTriple blowfishは避けます。同じアルゴリズムを複数回実行すると、元のアルゴリズムを1回使用するよりもセキュリティが低下する場合があります。