How does Chrome browser read from smart card for client certificate authentication?

567 views
Skip to first unread message

ajee cai

unread,
Jul 31, 2018, 1:59:52 AM7/31/18
to Chromium-discuss
Hi, 

I am just thinking about what happens underneath when I select a client certificate from chrome popup for smart card case.

From openssl command line, it seems client certificate authentication is done by "openssl s_client -cert cert_name -key key_name ...." which actually calls "set_cert_key_stuff(ctx, cert, key, chain, build_chain)", then all things done. While for smart card, the private key could not be read out. I use APDU trace to find out, the browser seems to pass some data to smart card and then smart card sign this data with its private key and pass back to browser, then browser fills its client verify message. 

So here my question is: How does Chrome talk with smart card exchanging this signature information, is there any OS API to call for smart card? I don't think it is done by lower layer APDU, it must be some abstract layer, is there for both Linux and Windows? And could somebody point out which part of Chrome code handing this logic? 


Thanks a lot. 


Radu Coriu

unread,
Jan 20, 2019, 10:10:07 AM1/20/19
to Chromium-discuss
I would also be interested in this
Reply all
Reply to author
Forward
0 new messages