Kode er lov? Ikke helt endnu | DK.democraziakmzero.org

Kode er lov? Ikke helt endnu

Kode er lov? Ikke helt endnu

Lukas Abegg er advokat med masteruddannelser i schweiziske og amerikanske lovgivning. Han er i øjeblikket en gæsteforsker ved Humboldt Universitetet i Berlin, hvor han skriver en ph.d.-afhandling om et emne i skæringspunktet mellem lov og teknologi.

I denne udtalelse stykke, Abegg diskuterer smarte udviklingskontrakt inden for rammerne af matematik og hævder, at oprettelse af benchmarks som "kode er lov" kan placere betydelige spændinger på smart kontrakt koncept.

After The DAO eksperiment mislykkedes, en opvarmet politiske debat fulgte om hvordan man kan gå videre med udviklingen af ​​ethereum s blockchain.

Positionerne varierede fra at holde på den uforanderlighed paradigme med "kode er lov" som den vigtigste regel at følge, til en mere menneskelig tilgang for at bede ethereum s minearbejdere og udviklere, hvad der bør træffes foranstaltninger.

Kun lidt tid, men blev brugt på spørgsmålet om, hvad en smart contractis faktisk i stand til at udføre.

Men netop dette spørgsmål, tror jeg, bør være kernen i debatten og den respektive svar er den eneste fornuftige grundlag, som en fornuftig politik for blockchain og smart udviklingskontrakt kan bygges.

Så lad os tage et nærmere kig på mulighederne i smarte kontrakter.

Arten af ​​oplysninger

Funktionen af ​​en smart kontrakt er i sin essens behandling af oplysninger.

Mens begrebet information varierer og ingen universel definition eksisterer, er det nyttigt at starte med den måde, oplysningerne theorydeals med oplysninger, da oplysninger teori er en del af DNA af dagens datalogi.

Det er derfor nødvendigt at opdele oplysninger i syntaktiske informationand semantisk information. Den førstnævnte er reglerne om forholdet mellem symboler og hvor sidstnævnte er den betydning som sådanne symboler (ie: "intent"). Grænsen mellem de to er noget sløret og fortælle dem fra hinanden er undertiden vanskeligt (der, som vi vil se senere, føre til DAOs problemet i første omgang), men en forskel mellem dem klart eksisterer.

Et interessant stykke om det er vanskeligt at opfange "hensigtserklæring" var for nylig WrittenBy Vitalik Buterin.

Syntaktisk oplysninger kan analyseres og måles (som Shannonand Weaverdid i "En Matematisk Theory of Communication") og er åben for matematisk bevis. Semantisk oplysninger er imidlertid, hvad et menneske attributter til et symbol. Det kan udgøre noget en menneskelig hjerne er i stand til at tænke på.

Normalisering semantisk information og gøre den bearbejdes er en ganske vanskelig opgave, for at sige det mildt. Datalogi (især kunstig intelligens forskere) kæmper en stor dealin forsøger at indfange semantisk information, såsom naturligt sprog, og repræsentere dens betydning i software. For at gøre tingene værre, kan semantisk information være alt fra ganske simpelt at meget komplekse.

Snarere enkel og formelle semantisk information, ligesom et patent for eksempel kan allerede behandles af edb-sprog. Tænk en CAD-fil af en patenteret widget på en computer, der lader en 3D-printer udskrive den nøjagtige ting, sagde CAD-filen indeholder.

Mere komplekse semantisk information, ligesom det juridiske begreb "god tro" for eksempel, kan endnu ikke håndteres af datalogi. For at gøre dette, er der stadig behov et stort spring i kunstig intelligens forskning.

Manglende styring

En anden måde at gøre en forskel mellem disse to typer oplysninger ville være at henvise til dem som "tør kode" og "våd kode", et begreb opfundet af kryptograf Nick Szabo.

For at gøre en bemærkning om, hvorfor det er bydende nødvendigt at respektere, at tosidet karakter af oplysninger, kan vi se på den DAO. Den bydende nødvendigt med "at gøre nogen skade" (dvs.: semantisk information) blev kun skrevet på DAO hjemmeside og ikke i sin kode (som, for det meste, kun behandles syntaktiske oplysninger).

Abonnenter på en streng "kode er lov" doktrin hævdede, at DAO hacker derfor kunne holde den drænede æter, da "gøre nogen skade" bydende nødvendigt var kun i hjemmet side specifikationer, men ikke i selve koden og derfor ikke bindende. De tog deres sag yderligere ved at holde fast i den ikke-kløvet ethereum blockchain og skabte et parallelt ethereum miljø, ethereum klassiker, som producerer nogle ganske vanskelig problemer for brugere og udviklere.

Hvis der havde været en ordentlig styrende værktøj, der ville have behandlet semantisk information (ie: sikret alle overholder til "gøre nogen skade" -reglen og forudsat midler til at behandle overtrædere), sådan opdeling ville sandsynligvis ikke være sket.

Matematisk bevis og uforanderlighed

Da Shannon arbejdede på teorien om kommunikation, tog han stor omhu, at hans forskning var begrænset inden for den syntaktiske oplysninger rige. Det tillod ham at matematisk bevise sine resultater.

Det kunne ikke have været gjort, hvis var involveret semantisk information. For Shannon, matematisk bevis var vigtigt for at fremme videnskab.

Kodning en smart kontrakt ikke rigtig fremme videnskab og derfor matematisk bevis er ikke vigtigt, kunne man tro. Men så snart du tilføjer uforanderlighed gennem en blockchain implementering til din kode, er du hæver for rigtigheden af ​​din kode til et utroligt højt niveau, hvis ikke helt uden for rækkevidde (jf: mere detaljeret analyse).

Da din kode er uforanderlig og kan ikke ændres, skal du være helt sikker på din kode har ingen fejl.

Matematisk bevis på din kode, derfor synes lige pludselig en ganske vigtig funktion til at have.

Og dog, Soliditet som bruges på ethereum for intelligent kontrakt implementering, er ikke et sprog, der giver mulighed for matematisk bevis (dvs. Er ikke de refererer gennemsigtig). Det gav mulighed for gennemførelse af semantisk information, eller sætte eksplicit, udviklernes hensigt. Den rekursion-opkald, der førte til DAO hack skulle have været brugt på en bestemt måde, som udviklerne beregnet det.

Naturligvis blev en sådan hensigt ikke fanget ved koden og derfor ikke hindre DAO hacker i at dræne Den DAO.

Som konklusion: uforanderlighed og korrekte kode er ligesom de to pander af en skala. Jo mere "vægt" du lægger på uforanderlighed den mere pleje du nødt til at tage hensyn til rigtigheden af ​​din kode.

Behov for verificerbar kode

Hvis næsten hele din smart kontrakt uforanderligt kører på blockchain (ligesom nogle "kode er lov" entusiaster forestiller det at være den eneste vej at gå), du er mest sandsynligt ikke i stand til at sætte nok "modvægt" til rigtigheden af ​​din kode.

Alle disse fund er langt fra at være nyheder.

Selv udvikleren af ​​Soliditet selv, Dr. Gavin Træ, envisionedin et tidligt stadium af Soliditet undfangelse et sprog, der giver mulighed for matematisk bevis og den nyeste forskning tyder på, at der vil være behov for oversættelse af Soliditet i F * at nå verificerbare kode.

Men det forekommer klart ved nu, at den ønskede tilstand af alegality, hvor der er behov ingen indgreb udefra en smart kontrakt, ikke nås endnu. Og det vil formentlig stadig tage temmelig lang tid at komme dertil, hvis det kan nås på alle.

Påfyldning af tekniske tomrum

Det betyder ikke, dog, at begrebet smarte kontrakter har undladt eller ville være nytteløst. Det behøver blot en arkitektur, der respekterer grænserne for den nuværende teknologi. Og en klog work-around for hullerne i programmeringssprog og kunstig intelligens, der endnu skal udfyldes.

En sådan work-around kan lægge i det juridiske system fra den klassiske meatspace, især et bestemt område kaldet alternativ konfliktløsning (ADR).

Dens formål er at give to eller flere argumenterer parter de formelle midler til at løse deres tvister i privat uden at skulle ty til offentlige statsdrevne domstole. Det giver værktøjer, der giver dig mulighed for at oprette din helt egne regler, definere processer af hvordan til at håndtere konflikter, og / eller vælg dommerne efter eget valg.

Det har også den dejlig bivirkning af at være faktisk klassisk meatspace-juridisk bindende. Det er en formidabel boldbane til at udforske, f.eks: futarchy ideer som forudsigelse marketsor nye værdi attribution begreber som Backfeedfor vælger en mægler. Og det er ikke engang meget vanskeligt at gennemføre sådanne voldgiftsregler i en smart kontrakt.

Bare sørg hver bruger af en smart servicekontrakt accepterer at blive udsat for sådanne voldgiftsregler, ligesom du er udsat for privat udgjorde voldgiftsregler (f.eks: ICANN s UDRP) ved registrering af et domænenavn.

Hvordan en sådan sammenhæng mellem smarte kontrakter og meatspace-juridiske regler kunne se ud kan findes her. (Disse er ikke ADR regler, men aftaleretlige regler. Gennemførelsen ville imidlertid være meget ens).

På vej mod alegality

I første omgang kan det se mærkeligt at bruge gamle koncepter med henblik på at rykke ind et nyt område.

Men hvis man ser på det som støttestrukturer - meget gerne en frisk 3D, trykt vare har, og som stadig kan flyttes væk, når det nye element står i sin egen kapacitet - oddness svinder. Endnu mere, at en sådan måde at bevæge sig fremad måske endda have en heuristisk element i den forstand, at det hjælper at lære mere om nye koncepter og værktøjer for styring, der kan erstatte meatspace-juridiske værktøjer helt i fremtiden.

For at komme fuld cirkel med begyndelsen, bør vi respektere tosidet karakter af information og lad kode proces syntaktiske oplysninger og implementere styringsværktøjer for mennesker til at behandle semantisk information.

Ved hjælp af en styrende værktøj som specifikke voldgiftsregler smarte kontrakt i kombination med den erkendelse, at smarte kontrakter er hverken smarte eller kontrakter, men snarere blot bevisligt henrettet kode (VEC) kan give en måde at teste ny teknologi i en mindre katastrofale måde, end det blev gjort med den DAO og kan også give sikkerhed nødvendig for at gøre smarte kontrakter interessant for virksomhederne.

I hvert fald indtil videnskaben indhenter visionen om "koden er lov" og en sand tilstand af alegalitycan nås.

Relaterade nyheter


Post Ethereum

Blockchain Energy Project vinder konsensus 2018 Hackathon

Post Ethereum

Scratch That: CryptoKitties er ikke helt Ethereums Vision for Apps

Post Ethereum

IBM vs Microsoft: Two Tech Giants, Two Blockchain Visions

Post Ethereum

Blockchain til CPU? Analyserer Golems Ethereum Token Sale

Post Ethereum

Opbygning af fundamentet for et skalerbart eterumfællesskab

Post Ethereum

Inside TrueBit: Ethereums mindre kendte skalerbarhedsindsats

Post Ethereum

Bitcoin startups Eye Ethereum som platforms profil vokser

Post Ethereum

150 Medlemmer: Indisk regering, Mastercard Deltag i Enterprise Ethereum Alliance

Post Ethereum

Eyeing Volume, Asiatiske Udvekslinger Tilføj støtte til Ether Trading

Post Ethereum

Juridisk bindende smarte kontrakter? 10 advokatfirmaer Deltag i Enterprise Ethereum Alliance

Post Ethereum

Rul op for Branded Coins, Roll på Robot Overlords

Post Ethereum

Metropolis i dag: Skiftende planer for Ethereums næste store opgradering