DSA署名アルゴリズムを実装しようとしていますが、問題が発生し続けています。私はjava.security
MessageDigest
クラスを使用しています。コードは次のとおりです。
MessageDigest md;
md = MessageDigest.getInstance("SHA-1");
md.update(text.getBytes());
return new BigInteger(md.digest());
テキストはランダムな文字列オブジェクトです。問題は、このコードがハッシュの負の値を与えることです。これはアルゴリズムによって受け入れられません。私は何か間違ったことをしていますか?前もって感謝します。
PSちなみに、BigIntegersを使用せずにDSAを実装しようとしましたが、これは可能ですか?LとNの値が1024と160未満であることがわからないため、どの値を使用する必要があり、どのハッシュ関数を使用する必要があるのかわかりません。これらの質問に対する答えを聞いて非常に感謝します。