Să vorbim despre o superputere a Starknet: Sierra. Când construiești un blockchain bazat pe ZK, cu o VM bazată pe ZK pentru calcul general (așa cum Cairo este pentru Starknet), vei întâmpina o problemă: Cum faci ca VM-ul să fie atât sigur pentru blockchain, cât și prietenos cu ZK? Problema este una de non-determinism. O să explic: zkVM-urile devin mult mai eficiente dacă secvențiatorul/proverul poate "ghici" anumite intrări și să le completeze magic. Problema este că acest lucru deschide spațiu pentru diverse atacuri: un utilizator malițios poate trimite o transmisie care nu poate fi ghicită ușor, iar un secvențiator/demonstrator malițios poate decide să nu ghicească valoarea corectă, pentru a răni un utilizator. Care este soluția? - O opțiune este eliminarea non-determinismului. Dar acest lucru afectează eficiența. - O altă opțiune este utilizarea metodelor de tip game theoretic pentru a permite altor secvențiatoare să pedepsească atacatorii, în timp ce un secvențiator este să includă tranzacții bune. - O a treia opțiune este construirea unei reprezentări intermediare sigure (pe care o numim: Sierra). Sierra permite exact tipul potrivit de non-determinism, într-un mod în care toate presupunerile pot fi completate. Pe parcurs, această unealtă permite rezolvarea altor lucruri interesante, cum ar fi adăugarea dozării gazelor ca parte a procesului de compilare. Rezumat: Sub capota Cairo, cel mai bun limbaj pentru contracte inteligente, există o bijuterie, o superputere, care permite rularea ZK bazată pe blockchain sigură și eficientă. Doar pe Starknet, tehnologia viitorului de azi.