Hoskinson e Lucas Rosa sviluppano un nuovo linguaggio di programmazione per Cardano
Il linguaggio combinerebbe intenti di transazione con dati corredati di prova tramite prove Groth16, collegando gli esiti desiderati a una computazione verificabile crittograficamente.
By SongMarketCap
Updated:
Charles Hoskinson ha annunciato il 18 ottobre che sta sviluppando personalmente un nuovo linguaggio di programmazione per Cardano. Ha indicato Lucas Rosa, cofondatore di Aiken e architetto degli strumenti di Midnight, come suo collaboratore al progetto.
Il cofondatore di Aiken lavora al fianco di Hoskinson
Rosa, conosciuto online come @rvcas, ha cofondato Aiken e ne ha guidato lo sviluppo per più di due anni e mezzo. Secondo la sua storia di progetto, quel lavoro includeva la progettazione delle funzionalità del linguaggio prima di trasferirne la proprietà e la licenza a Pragma per una gestione a lungo termine.
Aiken è un linguaggio di programmazione e un toolkit di sviluppo per gli smart contract di Cardano. Gli sviluppatori lo usano per definire le regole che stabiliscono se le transazioni possono spendere asset o eseguire altre operazioni controllate dal contratto.
Rosa attualmente indica il suo ruolo come architetto degli strumenti presso Midnight. La sua esperienza comprende compilatori, sistemi distribuiti e infrastrutture applicative.
L’annuncio di Hoskinson indica Rosa come collaboratore senza assegnare a Midnight un ruolo organizzativo.
Come si collegano gli intenti e le prove Groth16
Gli intenti descrivono un risultato che un utente vuole ottenere e le condizioni alle quali esso è accettabile. Un utente potrebbe richiedere lo scambio di ADA con un altro token, specificando un importo minimo da ricevere e una commissione massima. Partecipanti specializzati chiamati solver possono quindi trovare un percorso di esecuzione e costruire transazioni che soddisfino tali condizioni.
I proof-carrying data, o PCD, riguardano informazioni accompagnate da prove crittografiche che attestano la conformità a regole definite. Le prove possono anche coprirne la storia di elaborazione, stabilendo che i passaggi computazionali precedenti hanno rispettato tali regole. Un destinatario può verificare la prova senza ripetere l’intera computazione precedente.
Groth16 fornisce prove a conoscenza zero compatte con una complessità di verifica relativamente bassa. Consente a una parte di dimostrare che una determinata computazione è stata eseguita correttamente senza rivelare gli input privati usati per produrre la prova. Quali dati dell’applicazione rimangano pubblici dipende dal design del sistema circostante.
Combinati, questi concetti potrebbero permettere a un’applicazione di esprimere esiti accettabili e verificare prove che attestino il rispetto delle relative condizioni computazionali. Il meccanismo specifico che li collega nel linguaggio proposto non è stato descritto.
Collegare il linguaggio ai validatori di Cardano
Cardano fornisce già blocchi costitutivi crittografici per applicazioni basate su prove. Plutus V3 include operazioni BLS12-381 che supportano la verifica efficiente di prove a conoscenza zero compatibili. Gli sviluppatori possono usare tali primitive per costruire contratti che verificano prove di computazioni eseguite al di fuori della blockchain.
La verifica consuma risorse di esecuzione e incide sulle commissioni di transazione pagate in ADA. La praticabilità di qualsiasi implementazione dipende quindi dal fatto che sistema di prove, verificatore e carico di lavoro rientrino nei limiti di transazione di Cardano.
Il post di Hoskinson non ha fornito un nome del linguaggio, un repository, una specifica o una data di rilascio. Anche il rapporto con Aiken e Plutus resta non specificato. Il punto di integrazione ancora irrisolto riguarda come un programma scritto nel nuovo linguaggio genererebbe una prova e la renderebbe disponibile a un validatore di Cardano, collegando le condizioni dichiarate dall’utente con il contratto che autorizza il regolamento.