Simplicity — Een nieuwe taal voor blockchains — BPASE '18
Blockstream Research

Simplicity — Een nieuwe taal voor blockchains — BPASE '18

Blockstream

In januari kwamen de cryptocurrency-experts bijeen op Stanford University voor de Blockchain Protocol Analysis and Security Engineering 2018-conferentie (BPASE ‘18) om formele methodes, empirische analyse, en risicomodellering in blockchain-protocollen te bespreken. Een van de presentatoren was Dr. Russell O’Connor van Blockstream. Hij presenteerde zijn Simplicity-programmeertaal die afgelopen herfst was aangekondigd.

Simplicity is een nieuwe low-level language gebaseerd op Sequent Calculus, welke toestaat dat door gebruikers samengestelde smart contracts kunnen worden geëvalueerd op een publieke blockchain. Hoewel sommige bestaande scripting languages problemen hebben met denial-of-service attacks en hacks, is Simplicity gebouwd om de problemen te vermijden en privacy te verbeteren aan de hand van Merklized Abstract Syntax Trees (MAST).

In zijn BPASE-presentatie beschreef O’Connor deze voordelen voordat hij begon aan de uitleg over de kern van Simplicity. Hij beschreef denotational semantics, waar een type system van slechts negen combinators het mogelijk maakt om makkelijk over veiligheid te redeneren met standaard proof assistants. Hij gaf ook een overzicht van de operational semantics, waarin een abstract machine die Simplicity-programma's evalueert hun verbruik van tijd en ruimte definiëren.

O’Connor zei dat er grote uitdagingen zijn voor smart contracts in cryptocurrency, want je moet "miljoenen dollars beheren met een enkel stukje code dat slechts één keer wordt gebruikt in de vijandige omgeving van een publieke blockchain." Hij is van mening dat het ontwikkelen van een taal die formal verification van het begin af aan ondersteunt de beste manier is om het probleem aan te gaan.

Je kunt de gehele BPASE ‘18 Simplicity-seminar online bekijken en de details lezen in de paper van O’Connor, "Simplicity: A New Language for Blockchains".

If you have specific preferences, please, mark the topic(s) you would like to read: