Какво прави доказателството с нулево знание
Обикновено да докажете нещо означава да покажете доказателството — да въведете парола или да предадете документ за самоличност. Това може да разкрие повече, отколкото другата страна трябва да знае.
Доказателството с нулево знание е криптографски метод, който променя това. Един човек — доказващият — показва на друг — проверяващия — че точно твърдение е вярно, без да разкрива тайната зад него. Проверяващият получава нужния отговор, например че отговаряте на възрастово изискване, но не и рождената ви дата, адрес или номер на документ.
Това не е неясно обещание за поверителност. Доказателството трябва да е създадено за едно конкретно твърдение, а добре проектираните системи правят измамата изключително малко вероятна.
Примерът с пещерата
Представете си пещера с две пътеки, които се свързват зад заключена врата. Тя се отваря само с тайна дума. Твърдите, че я знаете, но не искате да я изричате на глас.
Влизате по произволна пътека, а приятел чака отвън. После той извиква по коя пътека иска да се върнете. Ако знаете думата, можете да отворите вътрешната врата и да излезете откъдето поиска. Ако само отгатвате, шансът да сте от желаната страна е 50 процента.
Повторете много пъти с нов непредвидим избор. След десет успешни кръга измамникът би имал приблизително един шанс от 1000. Приятелят получава силно доказателство, че знаете думата, без никога да я чуе.
От историята с пещерата до истинския софтуер
Истинските доказателства използват математика, не пещера, но целта за поверителност е същата. Те могат да покажат, че транзакция спазва правилата, без да разкриват всички подробности. Едно малко доказателство може да замени и голям набор проверки, което ускорява проверяването в някои системи.
Дигиталните удостоверения са друго практично приложение. Вместо да изпращате целия си документ на всяка услуга, добре създадено удостоверение може да отговори само на поставения въпрос: „Навършил ли е този човек 18?“ или „Има ли тази квалификация?“
Подробностите имат значение. Доказателството пази само информацията, която е създадено да скрие. Приложението около него пак може да събира данни, да ви разпознава или да взема лоши решения за сигурността другаде.
Доказателство и шифроване с нулево знание
Изразът „нулево знание“ се използва и при облачно съхранение, но там означава друго. Шифроване с нулево знание означава, че доставчикът не може да чете файловете ви, защото няма ключовете за дешифроване.
Доказателството с нулево знание отговаря на въпрос, без да разкрива тайната зад отговора. Шифроването с нулево знание прави съхранените файлове нечетими за доставчика. И двете могат да подобрят поверителността, но не са взаимозаменяеми.
Практическият урок за поверителността
Доказателствата с нулево знание напомнят да споделяте само минималната информация за задачата. Те не дават анонимност и не защитават всяка част на приложението. Услугата пак може да знае, че сте се свързали и кога, както и други данни извън доказателството.
Sealby не се нуждае от доказателства с нулево знание, защото няма акаунт или сървър, който да иска доказване. Файловете се шифроват на вашия iPhone. За ежедневната поверителност практичният въпрос е прост: какво действително трябва да знае услугата и може ли да мине с по-малко?