TLS 상호 클라이언트 인증이 필요한 서버에 액세스 할 브라우저 응용 프로그램을 만들려고합니다. 응용 프로그램은 PKCS # 11 인터페이스를 통해 클라이언트 인증서와 키를 제공 할 수 있어야합니다.PKCS # 11을 사용한 상호 클라이언트 인증
Android 용 상호 참조에 대한 다양한 기사를 살펴보면 PKCS # 11 요구 사항이 Android 키 체인을 사용하여/개인 키를 직접 액세스 할 수 없기 때문에 Android의 기본 키 저장소에 인증서를 추가하지 않는다고 생각합니다.
개인 키를 사용하여 데이터에 서명 할 수 있도록 PKCS # 11 인터페이스가 작동합니다.
대신 PKCS # 11 인터페이스를 사용할 수 있도록 안드로이드에 대한 키 서명 데이터를 가로채는 방법이 있습니까? 현재 내 유일한 옵션은 실제로 이것을 달성하기 위해 자체 TLS 스택을 구현하는 것입니다.
매우 흥미 롭습니다. JB에 "non-native"키를 사용하는 방법이 있다는 것을 의미합니까? 너무 나쁘지 만이 버전의 장치가 없습니다. 포인터가 있습니까? –
@martin 'non-native'란 무엇을 의미합니까? 기본 키 마스터 구현은 소프트웨어 (OpenSSL)에서 수행되며, 하드웨어가 암호화 연산을 지원하는 경우이를 사용하는 모듈이 있습니다. –
Windows의 CryptoAPI와 마찬가지로 "Android 키 체인에 존재하며 Android 플랫폼 호출에서 사용하는"기본 언어입니다. 내 말은, 안드로이드를위한 CSP/Minidriver를 만드는 방법은 네트워크 서버, 스마트 카드 또는 다른 이상한 토큰에있는 키를 사용할 수 있다는 것입니다. –