Scopri Di Più su Zen

F* - Verifica formale

Tutte le piattaforme di contratto intelligenti devono affrontare due problemi: esecuzione corretta e consumo delle risorse. Questi sono particolarmente difficili da risolvere su una piattaforma decentralizzata .

Zen prende F* come punto di partenza per la definizione di smart-contract. F*, sviluppato da Microsoft Research, è un linguaggio funzionale finalizzato alla verifica formale. Zen utilizza le potenti tecniche di dimostrazione di F* sia per creare prove di correttezza, sia per dimostrare che i contratti vengono eseguiti in un lasso di tempo limitato. Le prove di correttezza significano che chiunque può scrivere un nuovo contratto, implementando un particolare tipo di risorsa, ad esempio un'opzione di chiamata, e qualsiasi utente o contratto può immediatamente scoprire e utilizzare quell'asset, con la certezza che esso esegue come pretende.

Calcolo Limitato

I limiti di risorse comprovati consentono ai minatori di accettare e addebitare qualsiasi transazione che utilizza un contratto, senza subire il rischio di un attacco denial of service.I limiti di risorse comprovati consentono anche un'ottimizzazione molto significativa: i contratti possono essere compilati in bytecode .NET nel momento in cui vengono creati, rendendo l'esecuzione molto più rapida rispetto a un linguaggio di scripting interpretato.

UTXO e immutabilità

Al livello più basso, lo Zen funziona in modo simile a Bitcoin, con transazioni che sbloccano monete e le bloccano nuovamente a nuove uscite. Questo paradigma, spesso definito paradigma "output di transazione non speso" o "UTXO", significa che ogni transazione, inclusa una transazione generata dal contratto, ha un effetto chiaramente visibile sul consenso della rete, anche prima di eseguire un contratto o verificare le firme delle transazioni. I contratti Zen sono immutabili: una volta creati, non cambiano mai internamente. I contratti che devono memorizzare i dati usano gli output delle transazioni.

Dentro e Fuori la catena

I contratti Zen vengono pagati per rimanere attivi per un determinato periodo di tempo: dopo aver esaurito il pagamento, diventano inattivi e non gravano più sui minatori o sui nodi. Quando vengono riattivati, i contratti appaiono con il loro codice originale esatto, come se non fossero mai stati disattivati. Ciò consente agli utenti di scambiare le risorse emesse dal contratto senza utilizzare i contratti stessi, attivando i contratti solo per il saldo finale.

La combinazione del paradigma UTXO e del set di contratti attivi consente inoltre canali di pagamento protetti da un smart-contract. Gli utenti possono scambiare rapidamente al di fuori della catena, scambiando transazioni firmate che vengono immesse sulla rete Zen stessa in caso di controversia o per chiudere un canale. Anche i contratti molto complessi possono essere tenuti in riserva, mai attivati o pagati a meno che non sorga una controversia.

Oracle e Dati Esterni

I dati al di fuori dei blocchi Zen e Bitcoin consentono accordi nello Zen su eventi e risorse dal mondo esterno. Gli Oracle Zen sono efficienti e ben compensati: gli oracoli usano un impegno di un Merkle Tree per una grande quantità di dati, e quindi possono vendere singoli pezzi di dati, con pagamento comprovato per ogni pezzo.

Consenso unito e integrazione Bitcoin

I minatori Zen minano la blockchain Zen, ma sono anche tenuti a monitorare e convalidare la blockchain Bitcoin. Ogni blocco in Zen può riferirsi a un certo numero di blocchi bitcoin, quindi ne aumentano il consenso.

Non solo questo aumenta il numero di nodi Bitcoin, ma rende anche lo Zen interoperabile con il Bitcoin. Qualsiasi azione su Bitcoin può influenzare gli eventi sullo Zen.

I contratti Zen possono monitorare gli indirizzi Bitcoin e rilasciare automaticamente gli asset di conseguenza. Ma questo significa che gli utenti di Bitcoin possono assumere posizioni Zen, stipulare contratti e fare offerte decentralizzate sicure, senza lasciare il Bitcoin. Un contratto Zen che detiene una garanzia applica i pagamenti appropriati in Bitcoin.

Bitzen

I crediti Bitcoin su Zen, garantiti da garanzie reali, ottengono proprietà speciali. I contratti possono comprendere le quantità di garanzie, l'esistenza di bitcoin effettivi sulla rete Bitcoin e il grado di rischio totale. Si può quindi accettare fonti diverse di credito Bitcoin, adeguando i prezzi al rischio.