Esplorando l'eco di @boundless_xyz, ho scoperto un caso d'uso interessante nelle applicazioni di @RiscZero R0VM: ZK Proof of Exploit - zkPoEx. Tra tutti i bug, i più critici sono quelli che esistono in prodotti attivi. Nel crypto, poiché le vulnerabilità critiche portano immediatamente a sfruttamenti di fondi, il valore monetario dei bug attivi è molto alto. Tipicamente, quando vengono trovati tali bug, piattaforme di bug bounty come @immunefi o @HackenProof fungono da intermediari per verificare l'autenticità e la gravità del bug e per gestire la negoziazione del bounty. Questa struttura ha un problema: i dettagli del bug devono essere divulgati prima che il whitehat riceva il bounty. Dal punto di vista del progetto, dopo aver ricevuto il rapporto sul bug e averlo esaminato, potrebbero correggerlo e poi affermare che è "fuori portata" o declassarne la gravità. In casi estremi, gli intermediari potrebbero vedere la vulnerabilità e sfruttarla per primi. zkPoEx, attraverso RiscZero's R0VM, consente di dimostrare l'esistenza di una vulnerabilità con una prova ZK senza rivelare i dettagli del bug. Poiché può dimostrare che esiste un bug che soddisfa determinate condizioni, i trovatori di bug possono aspettarsi risposte più cooperative dai progetti, come chiedere un pagamento parziale in anticipo. Per spiegare in modo più dettagliato, il reporter utilizza calldata/contratto di sfruttamento come input privato e lo stato al momento dell'attacco come input pubblico per modificare i valori di stato del contratto target all'interno di R0VM. Dopo l'esecuzione, la ricevuta tx e la prova generata dal Prover R0VM possono verificare se l'attacco ha soddisfatto condizioni specifiche, come le variazioni di saldo. Personalmente penso che questo metodo sia piuttosto utile per segnalare vulnerabilità attive, ma non ho ancora visto casi in cui i bug siano stati segnalati utilizzando questo approccio. Sembra che sia perché i progetti debbano fornire le condizioni in anticipo... Se un tale sistema è davvero difficile da implementare nella pratica, mi piacerebbe sapere quali sarebbero le sfide.
671