問題タブ [fido-u2f]

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 に答える
169 参照

digital-signature - U2F 登録署名の検証が失敗する

私の U2F トークンの 1 つで、NIST P-256 ECDSA 署名の検証が U2F_REGISTER 応答で失敗します。

私はこのプロトコルの説明に従って作業しています: https://fidoalliance.org/specs/fido-u2f-v1.0-nfc-bt-amendment-20150514/fido-u2f-raw-message-formats.html

の SHA-256 ハッシュを計算し00 (1 byte) + application (32 bytes) + challenge (32 bytes) + keyhandle (64 bytes this time) + user_public_key (1 + 32 + 32 bytes)ます。

それから私は電話しますecdsa.Verify(user_public_key, hash, r, s)

私が持っている U2F トークンの 1 つでは、ecdsa.Verify は true (良い) を返しますが、別のもの (上記のバイトを参照) では false を返します。上記の例で何が間違っていますか?

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

android - com.google.android.gms.fido.u2f.api で使用する Android アプリの有効な facetID を取得する

Android FIDO U2F API の appID に関して 2 つの質問があります。

アプリを直接識別する facetID を使用することは可能ですか、それとも有効な facetID を含む JSON を指す HTTPS URL である必要がありますか? facetID を appID として直接使用することはできないのではないかと思います (公式の FIDO 仕様では許可されているはずですが)。

私の他の質問は、私のアプリを識別する facetID に関するものです。公式のFIDO 仕様では、Android アプリの facetID を次のように定義しています。

Android [ANDROID] の場合、FacetID は、APK 署名証明書 [APK-Signing] の Base64 エンコーディング SHA-1 ハッシュから派生した URI である必要があります。

Google サンプルの実際の例を見ると、使用されている facetID に別のものが含まれているようです。

問題の facetID (間違いなく base64 ではありません):

問題のfacetIDを含むJSONを次に示します。

API が base64 でエンコードされたハッシュを想定していない場合、どのような形式を想定していますか (また、それをどのように生成しますか)?