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:

Cardano News - Hoskinson e Lucas Rosa sviluppano un nuovo linguaggio di programmazione per Cardano

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.