私はデジタル署名のためにTurboPower LockBoxライブラリを評価しています。私は1024ビットのRSAキーを作成し、それを使って260バイトのテキストに署名しようとしました。テキスト内の1つまたは2つの文字を変更すると、署名はまだ有効です。それは大丈夫ですか?または、おそらく、このライブラリの問題です。 1文字でも変更することは非常に重要です。大きなキーを作成する必要がありますか?私はそれに付属しているデモアプリケーションを使用するライブラリをテストするLockboxデジタル署名コンポーネントの問題
UPDATE
。私は1024のRSA鍵ペアを生成してから、デジタル署名機能を試しました。まず、実際の260ビットのテキストファイルを試してみましたが、その中のいくつかの文字を変更でき、署名がまだ有効であることがわかりました。次に、私はそれをfollowinf文字列に少し狭めました: '8'文字を変更しているとき、それはまだ動作します。私はおそらくそれをさらに絞り込むことができます。
検証を実行するコードは次のとおりです。
Signatory1: TSignatory;
....
var
DocumentStream, SignatureStream: TStream;
....
DocumentStream := TFileStream.Create(edtRSADocumentFile.Text, fmOpenread);
try
SignatureStream := TFileStream.Create(edtRSASignatureFile.Text, fmOpenread);
try
Res := Signatory1.Verify(DocumentStream, SignatureStream)
finally
SignatureStream.Free
end;
finally
DocumentStream.Free;
end;
使用しているLockBoxのバージョンは? "3.0"は一人の書き換えであり、元のコードをほとんど使用せず、その品質はまだ評価されていないようです。または、2.07(最後にTurboPowerによってリリースされたもの)を使用していますか? –
私は最新(2010年10月22日)のバージョン3.1.0.0を使用しています。 – Max
@ldsandon。私は今、古い2003年のバージョンを試して、それは正常に働いた。それで、新しいものにバグがあるようです。私はそれを受け入れることができるようにあなたの答えを投稿できますか? – Max