1

EC_POINT_point2oct(ecGroup,EC_KEY_get0_public_key(key),POINT_CONVERSION_COMPRESSED,_pub._key,sizeof(_pub._key),0)

DER、PKCS*、または ASN.1 のような高レベルのものではありません。(そうでしょうか?) 私は、EC 圧縮ポイントを含む生の BN を推測しています。

この結果が他の言語 (たとえば、BouncyCastle の EC クラスを使用する Java) に移植できるものであるかどうかについて、私は興味があります。

4

2 に答える 2

2

ANSI X9.62 形式である可能性が高く、これは非常に標準的です。たとえば、TLS ハンドシェイクで EC ポイントをエンコードするために使用されています。

特に、BouncyCastle の EC クラスはそれらを読み取ることができ、非圧縮、圧縮、およびハイブリッド エンコーディング (基本的にすべて) をサポートします。軽量 API では、org.bouncycastle.math.ec.ECCurve のインスタンスがある場合、エンコーディングで ECCurve.decodePoint を呼び出して、曲線上の ECPoint を取得できます。その後、ECPoint インスタンスを使用して公開/秘密鍵を作成できます。

JCE 経由で BC (または他のほとんどのプロバイダーだと思います) を使用している場合は、その API 経由でも簡単にデコードできると確信しています。

于 2013-08-02T12:46:49.317 に答える