問題タブ [elliptic-curve]

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 投票する
4 に答える
5337 参照

cryptography - 楕円曲線上の点の数

次の形式の楕円曲線がある場合:

この曲線上の点の数を計算する良いプログラムはありますか?

Schoof および Schoof-Elkies-Atkin (SEA) アルゴリズムについて読んだことがありますが、オープン ソースの実装を探しています。これを行うことができる良いプログラムを知っている人はいますか?

また、a が 1 で b が 0 の場合、j 不変量が 0 であるため、SEA アルゴリズムは使用できません。これは正しいですか?

0 投票する
5 に答える
16275 参照

.net - 楕円曲線暗号の .NET 実装 (ライブラリ)

.NET プラットフォームで使用する楕円曲線暗号の実装を提案できますか?

また、使用したことがあれば、使用すべき推奨カーブを教えていただけますか?

[編集]

@FatCat が述べたように、その実装は .NET Framework 3.5 で利用できますが、それは Windows Vista でのみ利用できます。それを使用する別の方法/ライブラリを提案できますか?

0 投票する
2 に答える
31291 参照

cryptography - OpenSSL ECC を使用したテキスト文字列の暗号化/復号化

OpenSSL の ECC サポートを使用してテキスト文字列を暗号化または復号化するにはどうすればよいですか? OpenSSL API を使用して ECC 秘密/公開キーを生成できますが、それらのキーを使用してプレーン テキストを暗号化する方法がわかりません。

0 投票する
5 に答える
6517 参照

c - ECDSA 署名で使用する OpenSSL ランダム データをフィードするにはどうすればよいですか?

EC キーを使用したデータの署名中に、ランダム シードとして使用する OpenSSL 固有のデータをフィードしたいと考えています。これは、自分のアプリケーションを別の参照アプリケーション (クローズド ソース) と比較するために行っています。このユーティリティは、秘密鍵を含むファイル、署名するデータを含むファイル、およびランダム データを含むファイルをパラメーターとして受け取ります。

私は EC キーの生成とデータの署名を行いましたが、共通点がないため、2 つのアプリケーションを比較することはできません。OpenSSL は、データの署名に使用されるランダム データを (おそらく /dev/random から) 生成するため、実行ごとに異なる署名が得られます。

RAND_clear()と組み合わせて試してみましRAND_add()たが、署名が変化し続けています。ECDSA の概念全体を理解していないか、何か間違っています。

アプリケーションを比較するための 2 つ目のオプションは、公開鍵をインポートし、参照プログラムによって生成された署名を検証することです。これはより良いオプションですが、指定された公開鍵の例 (83 文字の 16 進文字列) をインポートできません。EC_POINT_oct2point()私にnullの結果を与え続けます。

ヘルプ/ポインター/リファレンスは大歓迎です。

0 投票する
2 に答える
1444 参照

java - 楕円曲線暗号の可視化と実装のためのツール

楕円曲線暗号がどのように機能するかを示すプログラムを作成する必要があります。Java Swing を使用して GUI を作成することを検討していましたが、主な問題は、楕円曲線自体をプロットするために使用するツールと、それを Java Swing とどのように統合するかです。

プロットをユーザー インターフェイスに含めて、変更できるようにしたいと考えています。これに役立つツールを提案できますか?

0 投票する
3 に答える
6309 参照

java - Bouncy Castle で、バイトでエンコードされたキーを元の ECPublicKey に戻します

Java では、バイト配列として送信する ECDH 公開鍵があります。

バイト配列を受け取ったら、どうすればそれを公開鍵に戻すことができますか?

私は Bouncy Castle を使用していますが、Java ソリューションも同様に便利です。

ありがとう

0 投票する
2 に答える
24466 参照

c - OpenSSLでECDSAを使用してメッセージに署名する

プログラムでOpenSSLでECDSAを使用する場合、メッセージに署名するための秘密鍵を設定するにはどうすればよいですか?私は次のコードを持っています:

関数get_ec_group_192()は実行によって作成され、openssl ecparam -C -name secp192k1 -genkeyこれもいくつかEC PARAMETERSとを生成しEC PRIVATE KEYます。

私がやろうとしているのはhash、秘密鍵に含まれているメッセージを暗号化して、公開鍵だけがメッセージを復号化できるようにすることです。上記のコードでそれは可能ですか、それとも私はこれを完全に間違っていますか?

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

certificate - ECDSA キーを使用する場合の署名付き x509 の取得

X509 証明書に署名しようとしています。私のルート秘密鍵は ECDSA secp384r1 です。バウンシーキャッスルを使用しています。証明書の署名を生成するときに、使用される署名クラスが ECDSA キーを理解できないようです。

生成するコードは次のとおりです。

これからの出力は次のとおりです。

bouncycastle のソース コードを読んで、この問題を追跡し、次のコード スニペットで再現しました。

出力を生成します:

問題は、私がこの時点で完全に迷っていることです。証明書ジェネレーターに署名付き証明書を提供させる方法がわかりません。私が間違っていることを誰かが知っていますか?

0 投票する
4 に答える
11297 参照

encryption - ECDSAでのCurve25519の使用

私は現在、署名のためのcurve25519の使用を調査しています。元の配布C実装(および2番目のC実装)。

BernsteinはこれにECDSAを使用することを提案していますが、コードが見つかりませんでした。

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

elliptic-curve - Diffie-Hellman 暗号化の楕円曲線バージョンはどのように機能しますか?

楕円曲線 diffie hellman の計算は、ここで定義されている標準的なものとは少し違っているように見えますか?

それとも、g、a、p、および b を選択する特定の方法ですか? とにかく、g、a、p、および b はどのように選択されますか?