質問

RSA と AES (Rijndael) を実装した Delphi 2010 用の無料の最新暗号化ライブラリを探しています。

それを使用するサンプル コードを作成して公開する予定なので、無料のライブラリが必要です。

TurboPower LockBox の Delphi 2010 バージョンが、 ソングビーマー この両方を実装しているサイトですが、少し古くなっているのが気になります。たとえば、RSA キーのサイズが小さく、長年にわたって新しいセキュリティ機能がありませんでした。

アップデート:LockBox が時代遅れである、または重要な機能が欠けているという認識は間違っていますか?それはまだ本番環境の開発に関連していますか?(特に RSA キーのサイズ)

役に立ちましたか?

解決

RSAアルゴリズムは必ずしも最新ではありませんが、キーサイズは重要です。今でも至る所で定期的に使用されています。セキュリティがさらに必要な場合は、 3072ビットのRSAキー長を使用する必要があります。 2030.これは、計算能力の向上の機能にすぎず、アルゴリズムの弱点ではありません。

SongBeamer の保守を開始する前に、LockBoxを見ていました(Delphi 2007) RSA不安定版-時々クラッシュするか、間違った結果を生成するだけです。ただし、それ以降は修正されている可能性があります。使用する場合は、必要なキーの長さをサポートしていることを確認してから、既知の入力と出力を使用して自動テストを作成します。安定して動作することを確認してください。存在する場合は、必ず使用してください。

Microsoft Crypto APIを使用してRSA暗号化を行うこともできます。 Delphi 2007 のラッパーを作成しましたが、Unicode用に更新していません(知っています) 、恥を知れ)。誰かがUnicodeを簡単に動作するように更新できるかもしれません。

別のオプションは、COM相互運用性などを介して.NET Framework暗号化機能を使用することです。

他のヒント

TurboPower LockBox 3.1.0がリリースされました。サポートしています:

  • Delphi 2007およびDelphi 2010
  • Delphi 2010のユニコード文字列
  • AES、DES、3DES、BlowfishおよびTwofish暗号
  • ブロックチェーンモードの長いリスト
  • MD5およびSHA1ハッシュ
  • RSA暗号化、復号化、署名、検証
  • 可変長RSAキー-範囲に関する制約はほとんどありません。
  • D-Unitテストコード
  • 自動塩漬け
  • IVの適切な管理(DCPcryptとは対照的に)
  • ホワイトボックス、無料のオープンソース
  • 100%可視のネイティブソースコード(DLLなし)

http://sourceforge.net/projects/tplockbox/ および http://lockbox.seanbdurkin.id.au/

こんにちはブルース、私は Delphi 5 からこのライブラリを使用しています。

Delphi 暗号化大要録パート I v.5.2

  • 以前の DEC 3 を完全に書き直し、DEC 5.1 (2006 年にリリース) にアップデート
  • 多くの暗号 (Blowfish、Twofish、3DES、 ラインダール...)
  • 多くのハッシュ (MD2/4/5、SHA1-512、RipeMD128-320...)
  • チェックサム関数 (CRC32、CRC16...)
  • テキスト変換機能(MIME Base 64、XX/UUコーディング...)
  • 安全な乱数関数
  • モードで暗号化を使用 (CTS/CBC/CFB/OFB/ECB...)
  • 完全かつ簡単なオブジェクト指向
  • 高度に最適化された高速コア
  • D2009 で ANSI と Unicode をサポート (以下では WideStrings を使用します)...

フリーウェアであり、ソースコードが付いていますが、残念ながら RSA は実装されていません。

D2010の作業が完了しました

>

TurboPower LockBox データ暗号化 2009年9月4日 ダウンロード

ステータス:正常に動作しているはずです。
このライブラリは、AnsiとUnicodeStringの暗号化をサポートするように拡張されています。
2009/04/09
    * Delphi 2010パッケージ
    *ヒントや警告なしでコンパイルする必要があります

  • Argalatyrによると、 DCPCrypt はDelphi 2009で動作しますが、動作しませんRSAをしない;

  • ChillKat は、DelphiのRSAとAESをサポートしていますが、無料ではありません;

  • Sergey Kirichenkoは無料のRijndael実装を作成しました。こちらからダウンロードできます: http:// rcolonel.tripod.com/dwnload/rc_rnd.zip 。 ファイルの日付は2000年11月なので、新しいDelphiで直接機能するかどうかはわかりません。

  • ここでは、ダウンロード用のDelphiコードを含むzipファイルがありました。 http://ace.ulyssis.student.kuleuven.ac.be/~triade/GInt/bin/RSA.zip が、開発者はおそらく研究を終了し、大学は彼を削除しましたホームページ。 この中国語のWebページで、ファイルの内容を確認できました(検索ページ上のRSA.pasをクリックし、リンクをクリックします。

「歯が長い」とはどういう意味か正確にはわかりません。 (古い?)が、必要なものはすべて揃っているので、私はLockboxに行きます。 2009年の更新を除き、最後の公式変更は2003年に行われました。

サンプルコードの場合、LockBoxは問題ないかもしれませんが、本番環境では使用しません。暗号化は「長く続く」ようになります。アルゴリズムは古くなっています。これまでに発見されなかった欠陥、暗号解析技術の改善、数学的進歩、プロセッサー能力の向上により、一度安全なアルゴリズムと鍵サイズはもはや安全ではなくなりました。 3DES、MD5、SHA-1はすでに十分ではないと考えられています。 AESに対する攻撃が最近公開されました( http://eprint.iacr.org/2009/374)。 RSAキーの最小推奨サイズは1024ビットになりましたが、データを何年も保護する必要がある場合は、2048および3072キーが推奨されます。 Lockboxは、1024ビットまたは less のキーのみを提供します。 適切なブロック暗号モードも選択する必要があります。 LockBox TLbRijndael(AES)クラスはデフォルトで既知の欠陥があるECBを使用し、CBC以外には何も提供しません。 ここ数年で得られた電子セキュリティの重要性と、結果として善人と悪人の両方の研究により、7年前のライブラリは本当に古くなっています。再コンパイルしてUTF-16文字列のサポートを追加するだけでは十分ではありません。 偽のセキュリティは、セキュリティがまったくないよりも悪いことに注意してください。システム管理者に「セキュリティが設定されていません」と言われた場合彼は自分でセキュリティを実装するように働きます(IPSecやVPNなど)。 「はい、RSAとAESがあります!」 AESとRSAの実装が古く、安全ではなくなったとしても、彼は大丈夫だと感じるでしょう。

D2010で試したことはありませんが、 DCPcrypt はD2009で動作するはずです。

Fundamentals Cody Library には両方のAESが実装されていますおよびRSA暗号化。ライブラリは使用していませんが、その品質についてコメントすることはできません。

無料のDelphi AES実装がたくさんあるようです。お気に入りをここに追加してください。

無料のRSA実装ほど多くはないようで、両方を提供するライブラリはほとんどありません。

LockBoxは依然としてかなり合理的なオプションのようです。特に、文字通り解読するのに数年かかる暗号化は必要ないので。

MicrosoftのCrypto APIを直接使用するのが最も実用的なオプションだと思います。

Daniele Tetiは、Delphi 2010用のDataSnapフィルターのコレクションをリリースしました。これには、ハッシュ、暗号、圧縮が含まれます。彼は将来、非対称暗号も実装する可能性があると述べています。

http://www.danieleteti.it/

これはオープンソースですので、気軽に貢献してください。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top