Як у рэальным жыцці, так і ў лічбавым свеце, мы часта хочам нешта даказаць іншым. Перад уваходам у офісны будынак супрацоўнікі звычайна прадастаўляюць пасведчанне асобы пэўнага тыпу.
Калі карыстальнікі спрабуюць увайсці ў такія праграмы, як Facebook або Twitter, гэтыя службы павінны спачатку папрасіць карыстальніка ўвайсці з дапамогай пароля, а час ад часу аднаразовы пароль (OTP) адпраўляецца на іх мабільную прыладу.
Адваротным бокам прадастаўлення доказаў з'яўляецца тое, што мы часта выдаем іншыя віды інфармацыі. Прадастаўленне пароля вэб-сайту па-ранейшаму азначае, што сам вэб-сайт захоўвае копію хэшаванага пароля на сваіх серверах. Калі нехта ўзламае сканер ідэнтыфікацый супрацоўнікаў офіснага будынка, ён можа атрымаць прыватныя ключы ўсіх.
Доказы без ведаў або ZKP забяспечваюць спосаб праверкі асобы або транзакцыі без неабходнасці прадастаўлення дадатковай інфармацыі. З-за прымянення ў крыптаграфіі ZKP былі адаптаваны блокчейны для стварэння бяспечных і маштабуемых пратаколаў праверкі.
Што такое доказы з нулявым веданнем?
Доказы з нулявым веданнем справы былі ўпершыню прапанаваны даследчыкамі Масачусецкага тэхналагічнага інстытута Сільвіо Мікалі, Чарльзам Рэкафам і Шафі Голдвасерам у 1985 годзе ў іх артыкуле «Складанасць ведаў інтэрактыўных сістэм доказаў»
У гэтым артыкуле была ўведзена канцэпцыя складанасці ведаў. Гэта адносіцца да аб'ёму ведаў пра доказ, перададзеных ад таго, хто даказвае, да таго, хто правярае. Доказы з нулявым веданнем справы маюць на мэце дазволіць баку даказаць іншаму баку, што пэўная заява адпавядае рэчаіснасці, без неабходнасці раскрываць іншую інфармацыю.
ZKP могуць быць выкарыстаны ў якасці бяспечнай альтэрнатывы бягучым сістэмам аўтэнтыфікацыі, а таксама могуць быць дададзены ў пратаколы блокчейна, каб захаваць прыватнасць транзакцый.
Як працуюць ЗКП?
Рэальны прыклад
Каб праілюстраваць, як працуюць доказы з нулявым веданнем справы, давайце паглядзім на абстрактны прыклад ZKP.
Дапусцім, у вас ёсць сябар, які чырвона-зялёны дальтонік. У вас з сабой два аднолькавых шара, якія адрозніваюцца толькі колерам: адзін чырвоны, а другі зялёны. Для вашага сябра яны выглядаюць аднолькава, але, як чалавек без дальтонізму, вы можаце лёгка іх адрозніць.
Ці можна даказаць свайму сябру, што яны рознага колеру, не паказваючы, які шар чырвоны, а які зялёны?
На самай справе ёсць спосаб даказаць гэта, не раскрываючы колеры шароў. Па-першае, вы павінны дазволіць вашаму сябру пакласці абодва мячы за спіну і сказаць яму, каб ён паказаў любы мяч і схаваў яго зноў. Затым вы кажаце свайму сябру, што ў яго ёсць выбар: паказаць той жа мяч яшчэ раз або памяняць яго іншым.
Кожны раз, калі паказваецца новы мяч, вы можаце сказаць яму, памяняў ён мяч ці не. Калі вы працягваеце адгадваць правільны выклік, становіцца ўсё больш і больш верагодна, што шары рознага колеру. Цяпер ваш сябар павінен пераканацца, што шары рознага колеру, не кажучы яму, якія шары якога колеру.
Практычнае прымяненне
Большасць практычных прыкладаў доказаў з нулявымі ведамі дзеляцца на два тыпы.
Па-першае, ЗКП можна выкарыстоўваць пры распрацоўцы пратаколаў. Мы можам гарантаваць, што розныя бакі не могуць падмануць або скарыстацца пратаколам. Па-другое, ЗКП можна выкарыстоўваць для ідэнтыфікацыі.
Напрыклад, мы можам выкарыстоўваць ZKP для бяспечнага ўваходу ў вэб-прыкладанне без неабходнасці раскрываць сам пароль.
Давайце разгледзім некалькі прыкладаў таго, як мы можам выкарыстоўваць доказы без ведаў.
Электроннае галасаванне
Адным з часта абмяркоўваемых прымяненняў ZKP з'яўляецца іх магчымая роля ў онлайн-галасаванні. Скажам, у нас набліжаецца рэферэндум, на якім карыстальнікі змогуць прагаласаваць па прапанаванай палітыцы. Кожны выбаршчык, які мае права голасу, мае права прагаласаваць 1 або 0 у бюлетэні.
З дапамогай ЗКП выбаршчыкі могуць пацвердзіць сваё права прагаласаваць, не раскрываючы сваю асобу. Гэта гарантуе, што кожнае галасаванне будзе сапраўды ананімным. Дадатковы ZKP таксама будзе выкарыстоўвацца, каб даказаць, што голас канкрэтнага карыстальніка з'яўляецца часткай канчатковага падліку галасоў.
Што тычыцца самога змесціва бюлетэняў, сістэма галасавання можа таксама стварыць доказ з нулявым веданнем аб тым, што кожны бюлетэнь змяшчае 1 або 0. Гэта робіцца без неабходнасці ведаць змест самога бюлетэня.
Канфідэнцыяльнасць блокчейна
Блокчейны, такія як Bitcoin і Ethereum, першапачаткова не падтрымліваюць прыватныя транзакцыі. Пакуль ваш біткойн-кашалёк з'яўляецца агульнадаступным, кожны можа перайсці да аглядальніка блокаў, напрыклад Blockstream каб убачыць усе транзакцыі, часткай якіх з'яўляецца кашалёк.
У той жа час выкарыстанне такіх паслуг, як банк, або плацежных службаў, такіх як Cash App або Venmo, дае вам магчымасць здзяйсняць транзакцыі ў прыватным парадку. Гэта зручнасць, аднак, адбываецца за кошт раскрыцця вашай інфармацыі цэнтралізаванай службе.
Мы можам аб'яднаць ананімнасць з дэцэнтралізацыяй, дадаўшы ZKP у пратакол блокчейна. Такія крыптавалюты, як ZCash, выкарыстоўваюць ZKP для стварэння прыватных транзакцый, якія дазваляюць уладальнікам манет захоўваць сваю ананімнасць. Некаторыя з гэтых крыптавалют выкарыстоўваюць тып ZKP, вядомы як zk-SNARK.
Гэтыя ZKP не патрабуюць узаемадзеяння паміж праверам і праверкай.
Зводныя пакеты без ведаў
ZK-rollups - гэта маштабаванае рашэнне, якое дазваляе правяраць транзакцыі па-за ланцужком імгненна і з мінімальнымі зборамі за газ. Гэта спосаб аб'яднаць вялікую колькасць транзакцый 2-га ўзроўню і перадаць іх у пратакол 1-га ўзроўню.
Акрамя забеспячэння прыватнасці, ZKP дазваляе маштабаваць складаныя сістэмы. Пратаколы блокчэйна могуць выкарыстоўваць ZKP, каб даказаць, што карыстальнікі разлічыліся па правільных транзакцыях, маюць адпаведны баланс і гэтак далей. Гэтыя бяспечныя, але маштабуемыя рашэнні магчымыя толькі праз матэматычныя доказы, зробленыя па-за ланцужком у ZKP.
Такія пратаколы, як Loopring, выкарыстоўваюць доказы з нулявым веданнем, каб дапамагчы апрацоўваць транзакцыі па-за ланцугом без неабходнасці пагаршаць бяспеку.
Перавагі доказаў без ведаў
- ZKP замяняюць менш надзейныя формы аўтэнтыфікацыі, такія як PIN-коды або ідэнтыфікацыйныя карты
- ZKPS павялічвае маштабаванасць блокчейнов
- Рэалізацыя ZKP патрабуе простых метадаў шыфравання
- Выкарыстанне ZKPS можа зрабіць сістэмы больш бяспечнымі, не патрабуючы захоўвання непатрэбнай інфармацыі ў сістэме.
заключэнне
Канфідэнцыяльнасць дадзеных ужо з'яўляецца сур'ёзнай праблемай як у цэнтралізаваных, так і ў дэцэнтралізаваных сістэмах. Доказы без ведаў дазваляюць розным бакам даказваць або пацвярджаць транзакцыі і ідэнтычнасці без неабходнасці раскрываць гэтыя транзакцыі або ідэнтычнасці.
Па меры таго як тэхналогія блокчейн становіцца больш шырока выкарыстоўванай, прыняцце ZKP для бяспечнай праверкі стане ключом да праблем маштабаванасці.
Пакінуць каментар