Hi Colm, >> >However, I can't see where it is signing the response with the private key >> >associated with the KDC. This is a requirement for anonymous PKINIT
Yes, you are right. The "Identity" should be used in anonymous PKINIT. But now in client PkinitPreauth, start from line 393, we skip to use the certificateSet which is returned by server, so now the code can't verify the kdc sans, edu and so on. Such as the function cryptoRetrieveX509Sans#PkinitCrypto is marked as TODO. Thanks Jiajia -----Original Message----- From: Colm O hEigeartaigh [mailto:[email protected]] Sent: Thursday, July 21, 2016 7:27 PM To: [email protected] Subject: Anonymous PKINIT signatures Hi all, I'm continuing to look at anonymous PKINIT as implemented in Kerby. I'm a bit puzzled by a few things relating to signatures and would welcome some feedback. Looking at the server PkinitPreauth, it appears that Diffie-Hellman is used to establish a shared secret key with the client. However, I can't see where it is signing the response with the private key associated with the KDC. This is a requirement for anonymous PKINIT, unless I am mistaken? Similarly, on the client side, it's not enough just to verify trust in the Certificate that's presented, it also needs to be using the Certificate to verify some signed data, to make sure that the KDC knows the private key associated with the Certificate... I've updated the code so that the server at least includes the "Identity" Certificate in the response to the client. Thanks, Colm. -- Colm O hEigeartaigh Talend Community Coder http://coders.talend.com
