Re: Změna certifikátu a Public-Key-Pin

Pavel Kankovsky peak na argo.troja.mff.cuni.cz
Středa Červen 22 20:23:55 CEST 2016


On Wed, 22 Jun 2016, Zdeněk Janiš wrote:

> Dva PINy - z nového a starého certifikátu použity mám.
> Teď jsem ještě experimenoval s pořadím, ale bez efektu.

Nejdřív terminologická poznámka: není to "PIN" (zkratka za Personal 
Identification Number), ale slovo de facto slovo "pin" znamenající 
"špendlík" -- nebo coby sloveso "přišpendlit".

Vtip je v tom, že nový certifikát (nebo v tomto případě jeho hash) musíte 
začít inzerovat s předstihem, dokud se ještě používá ten původní.

Jakmile si prohlížeč "přišpendlí" původní certifikát, tak se mu změna 
nebude líbit a nebude brát ohled na to, co je nově v Public-Key-Pins -- 
za prvé se k tomu asi ani nedostane, protože se zasekne už na navazování 
šifrovaného spojení, a navíc by ten celý mechanismus byl k ničemu, kdyby 
po změně certifikátu se mohl server prohlásit za zcela důvěryhodný jen 
tím, že sdělí, že dřív měl jiný certifikát.

Pokud si však klient "přišpendlí" nový certifikát preventivně, dokud se 
ještě používá starý, tak pak po přechodu na nový nebude překvapený a 
akceptuje ho. (Aspoň tak by se to dle mého chápání mělo chovat.)

> Dva PINy by ale z principu dávaly smysl, kdyby apache posílal jak nový 
> certifikát, tak i starý... Jde to? Nebo to je celé jinak?

Dva certifikáty tak úplně posílat nelze. Nebo lépe řečeno lze, ale asi 
standardně se chovající klient asi výsledný seznam nebude považovat za 
důveryhodný. Navíc v protokolu není mechanismus, kterým by server nějak 
prokázal vazbu mezi nimi (i když by možná šlo za doklad té vazby 
považovat, když proběhne úspěšný handshake).

-- 
Pavel Kankovsky aka Peak                      "Que sais-je?"


Další informace o konferenci Linux