Мало распоређивање посеже за отисцима прстију јер сертификациони орган изгледа као инфраструктура за коју нико нема времена. Инстинкт је разуман, али кратак пут који људи уместо тога бирају—копирање једне тајне податковног канала на оба краја—није. peer-fingerprint поставка чува TLS структуру нетакнутом: свака страна и даље држи свој приватни кључ и сертификат, и свака страна и даље проверава другу. Мења се то где је провера усидрена: од поузданог издаваоца до кратке листе причвршћених дигеста. Пошто дигест обухвата цео сертификат, а не име, обнављање постаје операција која заиста одузима време.

На шта се отисак заиста обавезује

Отисак сертификата је дигест целог DER-кодираног сертификата, не његовог јавног кључа и не имена његовог субјекта. Зато два сертификата са истим именима и истим кључем, али различитим датумима важности имају различите отиске. То чини причвршћивање прецизним, и то такође чини обнављање ометајућим. Причвршћивање не може значити поверење у кључ уопште, јер именује један артефакт у једном тренутку његовог живота. Свако може знати дигест, и само знање не доказује ништа.

openssl x509 -in server.crt -noout -fingerprint -sha256
openssl x509 -in client-07.crt -noout -fingerprint -sha256

Поседовање одговарајућег приватног кључа је оно што доказује да партнер држи тај сертификат, а дигест је начин на који друга страна одлучује да ли је тај сертификат уопште очекивала. То раздвајање је разлог зашто овај дизајн није стари поредак са заједничком тајном: заједнички кључ аутентификује свакога ко зна исте бајтове, док причвршћивање аутентификује један сертификат. Други уређај добија сопствени унос уместо копије исте тајне, што је мала разлика у датотекама и велика у обиму штете.

Мапа је узајамна, не симетрична

Сваки крај има потребу за две ствари: својим приватним кључем са сертификатом, и изјавом о томе које партнерске сертификате ће прихватити. Код клијента та изјава је дигест серверског сертификата; код сервера то је листа дигеста регистрованих клијената. Званичан пример за малу поставку за Community 2.6 приказује распоред са peer-fingerprint, и вреди га прочитати пре него што изаберете овај модел поверења за стварно распоређивање. Два смера нису једна обрнута листа, и они не отказују у истом тренутку.

Verification directionWhat is pinnedWhat never leaves that endpointHow a wrong pin shows up
Client checks the serverOne digest, for the server certificateThe server private keyThe client aborts during the TLS handshake
Server checks the clientA digest per enrolled clientEach client private keyThe server rejects the peer before a tunnel exists

Додавање уређаја уређује листу дозвољених на серверу, без копирања приватног материјала постојећег клијента и без премештања серверског кључа било где. Два смера такође отказују независно, што је корисно при дијагнози: која страна затвори руковање, та страна није имала испуњено очекивање. Ако клијент одбије сервер, дигест се не поклапа са представљеним сертификатом. Ако сервер одбије клијента, дигест тог клијента недостаје на листи, или клијент представља други сертификат од регистрованог.

Регистрација: како се придружује нови уређај

Генеришите кључ и сертификат новог уређаја тамо где ће живети приватни кључ, затим преместите само јавни артефакт ка страни која треба да га причврсти. Преносите очекивани дигест каналом коме већ верујете, и упоредите цео сертификат уместо имена које изгледа познато. Дигест копиран са истог непровереног преузимања као сертификат доказује само да се две датотеке слажу једна с другом. То је провера конзистентности, а не идентитета, и то је најтиши начин на који овај дизајн слаби.

На серверу, додавање дигеста је измена конфигурације која пролази кроз уобичајени менаџер и након које следи поновно повезивање. Потврдите да се нови уређај повезује и да се уређај чији је дигест уклоњен више не повезује. Тест који покрива само позитиван случај оставља листу дозвољених непровереном, и баш у том стању ћете бити за шест месеци.

Обнављање је скупи тренутак

Сваки сертификат истиче, и нови сертификат има нови дигест чак и када кључ и имена остану исти. Под издаваоцем је обнављање транспарентно за партнере који верују том издаваоцу; под причвршћивањем то је догађај регистрације за сваког партнера који причвршћује сертификат.

Планирајте редослед пре датума истека, а не после њега. Дистрибуирајте нови дигест странама које га проверавају, примените измену, и тек онда замените сертификат на крају. Тај редослед не оставља прозор у коме се две стране не слажу који је сертификат актуелан. Држите и саму листу под прегледом, јер причвршћена листа скупља уносе за уређаје повучене пре месеци. Сваки застарео унос је идентитет који се још увек аутентификује ако његов кључ преживи, па је уклањање једног безбедносна радња, а не домаћи посао.

Шта мапа поверења не одлучује

Аутентификација је један слој, и причвршћена мапа не говори ништа о пулу адреса, гурнутим рутама, MTU путање или политици заштитног зида. Они остају одвојена конфигурација са одвојеним режимима отказа. Тунел који се аутентификује и не пропушта никакав саобраћај је друго истраживање од оног који се никада не подиже.

Мапа се такође не скалира бесконачно, и PKI заснована на издаваоцу је место где завршавају већа распоређивања. Та склоност је о пословању, а не о криптографији, јер је додавање и повлачење идентитета кроз један орган јефтиније од уређивања листе на сваком партнеру како флота расте. Тамо где клијентска имплементација не подржава опцију, одговор је компатибилан модел поверења који тај клијент документује, или подржана замена. Потискивање упозорења о провери не додаје ту подршку, и цела вредност дизајна је у томе што се провера и даље дешава.

Повезани чланци