問題タブ [dsa]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
82 参照

dsa - DSA 秘密鍵を byte[] に変換する方法は?

javaでDSA秘密鍵を文字列またはバイト[]として変換する方法はありますか?

0 投票する
1 に答える
474 参照

openssl - openSSL を使用して KeyInfo から DSA キーをロードする方法

openSSL を使用して XML デジタル署名を検証しようとしています。実際に EVP_VerifyFinal を使用すると、エラーコード 0D07209B (ASN1_get_object:too long) が表示されます。彼は私が証明書から KeyInfo をロードする方法です:

PDSA をロードするための私の (疑似コード) メソッド:

この後に BN_bn2hex を使用すると、次の値が得られます。

、署名の検証:

署名を検証する方法は次のとおりです。

final が次のエラーを返すことを確認します。

したがって、証明書または署名値を間違ってロードしています。仕様によると、署名値は「署名値は、値 r と s をその順序でオクテット エンコーディングした結果、2 つのオクテット ストリームを連結した base64 エンコーディングで構成されています」ですが、どこにも見つかりません。 DSA署名の署名値のためにEVP_VerifyInitに渡す必要があるopenSSLドキュメント。私が知る限り、同じ形式を指定しているように見える RFC 3279 を指す電子メール アーカイブで 1 つの参照を見つけました (Dss-Sig-Value ::= SEQUENCE { r INTEGER, s INTEGER }

0 投票する
0 に答える
347 参照

python - SAGE で (異なる mod を使用して) 整数の 2 つのリング間で演算を実行する

DSA (DSS) を使用して、Sage でテスト メッセージにデジタル署名しようとしています。コードを実行すると、次のようになります。

問題のある行は次のとおりu_2 = mod(r*w,q)です。ここでの問題は、私が乗算rしていることと、wどこにあると思います:

ただし、これらは両方mod qです。それらに対して乗算を実行できないのはなぜですか? 私がしなければならないある種のキャストはありますか?

完全な (まだ小さい) セージ シートへのリンクは次のとおりです: http://i.imgur.com/dX7PKHi.png

0 投票する
0 に答える
260 参照

encryption - X.509 証明書での dsaEncryption の意味は何ですか?

DSA キーを使用して署名証明書を作成しましたが、次のフィールドがあり、興味をそそられました。

公開鍵アルゴリズム: dsaEncryption

私の知る限り、DSAは暗号化には適していません。じゃあこれは何の略?ElGamal暗号化か何か?仕様などを1時間以上調べましたが、まだわかりません。

このような証明書が openssl 関数 EVP_PKEY_encrypt_old() に供給された場合、それが機能する (失敗しない) ことは特に興味深いことです。私が見つけたソース コードでは、RSA 暗号化のみを処理しているため、これは興味深いものでした。

ここで何が起こっているのですか?

どんな助けでも感謝します。

0 投票する
1 に答える
495 参照

c++ - 式 ab + cde + * * をスタックを使用して式ツリーに変換するプログラムを作成します。

説明 このタスクの実行方法がわかりません....しかし、ツリーを作成して値を入力したところです..誰かこのタスクを実行するのを手伝ってくれませんか...スタックもノードタイプであり、プッシュする必要がありますab+ のような演算子の値なので、a をノードとしてプッシュし、次に b をノードとしてプッシュし、+ が来るとツリーを作成し、a と b がそのリーフ ノードになります。

。コード

.メインクラス: