Mikä on Zero Knowledge Proof (ZKP)?
Zero Knowledge Proof eli ZKP on tapa todistaa jokin asia todeksi paljastamatta sen taustalla olevia tietoja. Voit esimerkiksi todistaa tietäväsi salasanan kirjoittamatta sitä tai vahvistaa olevasi yli 21-vuotias näyttämättä syntymäaikaasi. Kuulostaa taikuudelta, mutta perustuu matematiikkaan.
ZKP:t salaavat kaiken, joten niitä käytetään kyseenalaiseen toimintaan. Ei aivan. ZKP todistaa tietyn, määrittelemäsi väitteen, ja todentaja voi tarkistaa sen perusteellisesti näkemättä salaisuuksiasi.
Näin Zero Knowledge Proof (ZKP) toimii
Käydään asia nopeasti läpi yksinkertaisen esimerkin avulla. Haluat todistaa, että sinulla on kauppaa varten riittävästi varoja paljastamatta saldoasi.
- Vaihe 1: Valitset väitteen, kuten saldoni on vähintään X, ja sitoudut piilotettuihin tietoihisi satunnaisuutta käyttäen.
- Vaihe 2: Muodostat todisteen piilotetuista tiedoista ja julkisista tiedoista niin, että matemaattinen tarkistus menee läpi.
- Vaihe 3: Lähetät todentajalle todisteen, et salaisuutta.
- Vaihe 4: Todentaja suorittaa tarkistuksen, joka joko hyväksyy tai hylkää todisteen. Saldoasi ei kurkita.
- Vaihe 5: Jos todiste hyväksytään, kuka tahansa voi tarkistaa sen myöhemmin uudelleen ilman, että sinun tarvitsee osallistua.
Taustalla hyödynnetään kehittynyttä kryptografiaa. Jep, matematiikka pitää huolen todisteista.
Miksi Zero Knowledge Proof (ZKP) on tärkeä
Miksi tällä on väliä? Tässä kolme nopeaa näkökulmaa.
- Hyöty: Todista tarvittavat asiat ja pidä loput omana tietonasi. Vähemmän tietovuotoja, pienempi riski.
- Näkökulma: Dataa minimoivat sovellukset tuntuvat nykyaikaisilta, vähän kuin Rolex kohtaisi Reddit-keskustelut. Jaa vain välttämättömät tiedot.
- Merkitys: ZK:ta käytetään rollupeissa, yksityisissä siirroissa ja henkilöllisyyden tarkistuksissa kaikissa vakavasti otettavissa lohkoketjuissa.
Kun kuulet sovelluksen käyttävän ZK:ta, kysy kaksi asiaa: mitä tarkalleen ottaen todistetaan, ja tarvittiinko luotettua alustusta? Jos tietojen hallinta on sinulle tärkeää, ZK toimii hyvin yhdessä myös todisteen ulkopuolisten vahvojen yksityisyydensuojan käytäntöjen kanssa.
Zero Knowledge Proof (ZKP) -todisteiden keskeiset ominaisuudet
Mikä tekee niistä erityisiä? Selkokielellä näin.
- Yksityinen: Todentajat saavat tietää väitteen olevan tosi, mutta eivät salaisuuttasi.
- Tiivis: Todisteet voivat olla pieniä ja nopeita tarkistaa jopa ketjussa.
- Nopea: Todentaminen on kevyempää kuin koko laskutoimituksen suorittaminen uudelleen.
- Yhdisteltävä: Voit yhdistää todisteita tai niputtaa monta tarkistusta yhteen.
- Skaalautuva: Tämä parantaa skaalautuvuutta, sillä raskas työ siirretään pois todentajilta oikeellisuudesta tinkimättä.
Muunnelmat
Eri tyypit sopivat erilaisiin käyttötarkoituksiin.
- SNARKit: Lyhyet todisteet ja nopea todentaminen; vaativat yleensä luotetun alustuksen.
- STARKit: Eivät vaadi luotettua alustusta, todisteet ovat suurempia, ja ne soveltuvat hyvin kvanttilaskennan jälkeiseen tutkimukseen.
- Bulletproofs: Sopivat hyvin vaihteluvälien tarkistamiseen, ja niitä käytetään usein yksityisten summien kanssa.
- Sigma: Perinteinen vuorovaikutteinen malli, jota opetetaan monilla kursseilla.
ZKP ei yksinään suojaa sovellustasi. Jos väitteesi on liian heikko tai alustuksesi huolimaton, todiste voi olla oikea mutta silti hyödytön. Suunnittele väite huolellisesti.
Esimerkki
Kaupunki järjestää äänestyksen, jossa äänestäjät todistavat olevansa äänioikeutettuja ja sen, etteivät ole vielä äänestäneet, samalla kun heidän henkilöllisyytensä pysyy piilossa julkisesta ääntenlaskennasta.
Hauska fakta
Klassisessa ZK-tempussa käytetään kahta samanlaista eriväristä palloa ja sokkotestiä havainnollistamaan, että voit erottaa ne toisistaan paljastamatta, kumpi on kumpi. Nörttiä, mutta toimii.
Yhteenveto
Yhdellä virkkeellä: Zero Knowledge Proof eli ZKP on todiste ilman turhaa tietojen paljastamista – voit sanoa: pystyn todistamaan sen näyttämättä sitä.
.