まとめ
できれば Apache HttpClient を使用して、Android で双方向 SSL 接続 (クライアント証明書を使用) を確立する必要があります。クライアントの証明書にはアクセスできますが、クライアントの秘密鍵には直接アクセスできません。ただし、クライアントの秘密鍵でデータに署名することはできます。
秘密鍵がないと通常のキーストアを作成できないため、SSL ハンドシェイクを無効にして、サーバーから送信されたチャレンジに手動で署名する方法はありますか?
何?鍵はありませんが、それでも署名に使用できますか?
ユーザーの秘密鍵は、専用のハードウェア デバイスに保存されます。ユーザーの公開証明書を提示し、秘密鍵で署名/暗号化するデータを渡すことができます。しかし、それは私に鍵自体を与えません。