我正在编写一个Chrome应用程序,需要使用SSL套接字进行客户端身份验证。我之前在Java中使用相同的信任库和密钥库完成了这个任务。
以下是我在Chrome(Mac和Chromebook)上的操作:
以下是我在Chrome(Mac和Chromebook)上的操作:
向系统添加客户端密钥(p12)和CA(一个根CA,一个中间CA)。
在Chrome应用程序中尝试使用传统的
socket
API和新的sockets.tcp
API。始终收到错误
ERR_SSL_CLIENT_AUTH_CERT_NEEDED
。但我认为我已经在系统中拥有正确的客户端证书和CA。
chrome.socket.create('tcp',{},function(createInfo){
mySocketId = createInfo.socketId;
chrome.socket.connect(mySocketId,'host', 12345, function(connectResult){
chrome.socket.secure(mySocketId,{},function(secureResult){
console.log('secureResult '+secureResult);
});
});
});
我的问题是:
- Chrome API是否支持证书的客户端验证?
- 如果支持,我该如何向Chrome提供证书?