Låt oss prata libbitcoin

LÅT OSS PRATA OM ALKOHOL.. (November 2018).

Anonim

Bitcoins protokoll är öppen källkod. Så är dess berättelse. Historien och koden utvecklas. Vi bidrar alla. Varje drar i en riktning. Teman framträder: engagera eller koppla ur med regulatorer, bygga för anonymitet eller genomskinlighet, omfamna eller minska agoristiska inledningar. Det finns inget sätt, bara enskilda referensramar. Bitcoin är större än summan av dessa argument. I slutändan kommer det att formas i vår kollektiva bild. En bra entreprenör sitter, ler, nickar och fokuserar på minskade transaktionsavgifter. En libertarian har högare idealer. Många bär två hattar. När allt kommer omkring, var många företag idag en gång på display vid evenemang som Porcfest. De som blev kär i Bitcoin som libertarianer, tillvarar dagligen som entreprenörer. Det finns fortfarande ett stort antal i ekosystemet. Över tiden kanske detta kommer att förändras. Det finns de som tror att det kommer. Amir Taaki är mindre kompromisslös. Han bär bara en hatt. Han är tillägnad denna teknik för sitt större löfte. Det finns ingen lögn i honom. Detta återspeglas i hans arbete: Libbitcoin. Det finns mycket ljud i rymden. Det kan drunkna musiken av det som spelar roll, som protokollimplementeringar. Libbitcoin är ett sådant genomförande. Betalningsbearbetning, snygg gränssnitt, kongresshörningar och finansiella övervakningskommittéer är alla irrelevanta utan en solid teknisk grund. Möjligheten att prata om detta ämne med Amir är något jag trivs. Det är bra att komma tillbaka till grunderna. Amir, vad är ett protokollimplement?

Protokoll dikterar hur två parter formellt interagerar med varandra. Med Bitcoin betyder det hur mjukvaran som ligger bakom nätverket talar till andra noder. I en värld av diversifierad Bitcoin-programvara, för att dessa noder ska förstå varandra behöver de tala ett gemensamt språk. Detta gemensamma språk är Bitcoin-protokollet, vilket satts av Satoshi. Ett genomförande är bara en individuell realisering av Bitcoin, som skrivits av en viss grupp av kodare. De kan välja att skriva koden på ett tiotal olika sätt som appellerar till sin föredragna stil (kod är konst). Och var och en av de olika implementationerna kan inte agera annorlunda. Ett protokollimplementering är ett genomförande av Bitcoin som implementerar protokollet som definierat av nätverket.
Så, vad är Libbitcoin?
Libbitcoin är ett asynkront C ++ verktygslåda bibliotek för Bitcoin. Det första engagemanget på Git var i maj 2011. Jag har en stark motvilja mot ramar, som jag ser som program som redan är skrivna och innehåller några stubbar för dig att fylla i. De är en plats att hänga din hatt på. Istället föredrar jag verktyget, som är en flexibel samling av klasser och funktioner som kan monteras i olika program.
Och vad är några av dess unika egenskaper?
Libbitcoin är asynkron, som arbetar kring begreppet threadpools. Operationer tar en slutföringshanterare som returnerar en std:: error_code som indikerar framgång och argument (beroende på vilken operation som används) för returvärden.Jag är också stor tro på UNIX-filosofin att bygga tegelstenar, och "sämre är bättre" vilket betonar enkelheten i implementeringen över gränssnittet. En enkel implementering är viktig för att systemets programvara ska förbli ren och fokuserad i dess funktion utan biverkningar.
Varför är det viktigt att ett system som Bitcoin har många implementeringar?
Det är viktigt att ha ett diversifierat ekosystem med öppen programvara kring Bitcoin. Det finns två stora anledningar till: Bitcoins hälsa och upprätthålla vårt oberoende. En Bitcoin, som kör samma kod överallt, är en Bitcoin mottaglig för samma brister och buggar. Om alla kör samma Bitcoin-programvara har någon attack vektor möjlighet att bränna hela nätverket över natten. Det starkaste operativsystemet är Linux eftersom det finns så många olika versioner av Linux, och inget enda sätt att attackera Linux. Linux är en organism med varierad och hälsosam genetik. Den andra risken är att ett monokultur omgivet av proprietära verktyg i händerna på ett fåtal kommer att ligga under press från tillsynsmyndigheter eller företagsintressen som försöker samla denna teknik för sina egna ändamål. Människor kommer att börja kompromissa med Satoshis principer på små sätt och öppna vägen mot mer och mer korruption av Bitcoin. Det är inte tillräckligt att Bitcoin ensam är öppen källkod, eftersom det finns många svåra beslut där valet mellan A och B inte alltid är klart. Ibland förstår bara ett väldigt fåtal de djupa konsekvenserna och avvägningarna av vissa utvecklingsval. Ibland är beslutet en liten eller obetydlig. Men om våra intentioner inte är rena (eller är korrumperade av tryck) är det lätt att ta de miljon små beslut som morph Bitcoin in i "Govcoin" eller "Corpcoin".
Men jag trodde Bitcoin hade en "referensimplementation"?
Det finns ingen referensimplementering. Detta är en självklar titel till ett projekt av människor som vill etablera och cementera sin officiella status och legitimitet. Den verkliga referensimplementationen är programvaran folk använder. Vi befinner oss i samma båt, så den som har användarna har befogenhet att diktera beslut. Om användarna väljer att använda programvara som förespråkar regeringens eller företags intressen, röstar användarna för utvecklingsbeslut som gynnar regeringens eller företags intressen. Om användarna använder och distribuerar programvara i kritisk infrastruktur som främjar svart marknad, p2p-handel och småföretag så röstar de och driver Bitcoins konsensus mot ett Bitcoin för folket. I slutändan är det alla olika mafier. Och du har makt att välja.
Hur stor är ett problem att implementera protokollet för Bitcoins framgång?
Det handlar inte bara om konsensus som överenskommits av nätverket. det handlar också om funktionerna och där utvecklarens energier går. Det finns funktioner i Bitcoin som hotar Bitcoins användare, som triangulera Bitcoin-transaktioner, loggar nätverksinformation i stora övervakningsdatabaser eller adresserar svartlistor (som föreslagits av Agent Hearn).Om vi ​​inte har ett tryck på utvecklingen som aktivt utvecklar teknik för att frigöra människor, kommer människor att tvingas förlita sig på teknik som missbrukar dem.
Finns det planer på att anpassa Libbitcoin för alla mynt?
Ja, jag planerar att stödja Litecoin och Dogecoin.
Vad ser du som framtiden för Libbitcoin? Var hoppas du ta det?
Jag har stort fokus på blockchain skalbarhet, och mitt mål är att riva ut LevelDB och ersätta det med egna databaser. Det finns mycket mer juice som kan pressas ur blockchain genom att skapa egna databaser. Du kan göra flera antaganden om blockchain-operation som ger stora prestationsvinster och några fina funktioner.
Dark Wallet har som mål att ha Coinjoin som standard. Vad är Coinjoin och hur går det?
CoinJoin är förmågan att oskiljaktigt gå med i min Bitcoin-transaktion med en annan persons. En annan term är "trustless mixing". CoinJoin skyddar avsändarens sekretess. DarkWallet har CoinJoin redan fungerande, och det kommer att finnas tillgängligt vid utgåva i sändningsdialogrutan (aktiverad som standard). Stealth adresser är den andra sidan av ekvationen, skyddar mottagarens integritet. Jag kan publicera en enda stealth adress och bara jag kommer att känna till de betalningar som tillhör den stealth adressen (trots att transaktionerna är offentliga). Ingen kommer att kunna återställa transaktionshistoriken för en smygadress trots att den är offentlig. CoinJoin + Stealth = Bitcoin anonymitet
Bitcoin är en öppen arkitektur där vi alla sätter in våra värderingar. Besluten från de som arbetar med Bitcoin på kärnnivå kommer med tiden att påverka Bitcoin som vi hamnar i. Det finns en renhet med syfte att Libbitcoin som överskrider lusten efter materiell vinst. Det är Zen: en miljon dollar kod, skrivet i noggrann detalj, över tre år, utan ekonomisk kompensation, vid stort personligt offer, över Europa. Det finns en slags poesi i det. Liksom Bitcoin själv, hoppar det av hopp. Libbitcoin söker inte godkännande eller tyst godkännande från det nuvarande ekonomiska paradigmet. Libbitcoin-kodbiblioteket är noga med att påminna oss om Satoshis ursprungliga budskap, kvar i Bitcoins generationsblock. Vid början smidd i det oföränderliga blocket, orden "// Tiderna 03 / Jan / 2009 Kansler på randen av andra räddningsaktion för banker" . Budskapet ger en spök inblick i Satoshi sinnen, eftersom han minskade genesis-blocket på den ödesdigra dagen 2009. Hur ironiskt kommer meddelandet att bli? Svaret kommer med tiden. Men oavsett var Bitcoin tas, kan ingen någonsin ta bort tidstämpeln. Det är också en konstig poesi.