問題タブ [java-15]

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

java - JDK 15 の Ed25519、バイト配列から公開鍵を解析して検証する

Ed25519 は (JDK で) 長い間存在していないため、使用方法に関するリソースはほとんどありません。

彼らの例は非常にきれいで便利ですが、キーの解析に関して何が間違っているのかを理解するのに苦労しています.

それらの公開鍵は、iDevice によって送信されたパケットから読み取られています。

(ただ、それはバイトの配列だとしましょう)

キーがどのようにエンコードされているかを検索して理解するために最善を尽くした結果、このメッセージに出くわしました。

つまり、取得yしたい場合isXOddは、何らかの作業を行う必要があります。 (私の理解が正しければ)

以下はそのコードですが、検証はまだ失敗しています。

BigIntegerが使用できるように配列を逆にしてビッグエンディアンに戻すことで、正しく実行したと思います。

私の質問は次のとおりです。

  1. これは、バイト配列から公開鍵を解析する正しい方法ですか?
  2. もしそうなら、検証プロセスに失敗する理由は何でしょうか?

そしてデータ(操作前)(すべて16進数):

そして、操作後の公開鍵:

ありがとうございました。少しでもお役に立てれば幸いです。これは、後で Ed25519 の実装がそれほど新しくないときに、この問題に出くわす多くの人を助けるでしょう。