Programmering og Bitcoins – sådan udvikles Bitcoin applikationer

Bitcoin mangler infrastruktur og applikationer. Til det skal der bruges softwareudviklere, grafikere, webdesignere og folk med lignende baggrunde, som kan udvikle de næste top Bitcoin apps. Denne artikel hjælper med at komme i gang med Bitcoin programmering. Før man har en chance for det, kræver det dog en forståelse af hvordan Bitcoin er opbygget.

Når man arbejder med programmering som har noget at gøre med Bitcoin, så er der 2 ting der går igen:

  • Du arbejder med moderne API’er. API’erne hos de store Bitcoin virksomheder har moderne og solide API’er, ofte hvor kommunikation foregår i JSON. Selve Bitcoin serveren kommunikerer også igennem JSON-kald
  • Der arbejdes med penge, hvilket gør der er et meget højt krav til sikkerhed

Sådan programmeres Bitcoin applikationer

Når der udvikles en ny applikation som på en eller anden måde skal bruge Bitcoin, så skal der være en kontakt med blockchain. Ved at have kontakt med blockchain, kan man f.eks. se alle transaktioner i netværket og lave ny transaktioner.

For at kunne kommunikere med blockchain, skal der være en Bitcoin-qt server kørende på en server man har adgang til. Bitcoin-qt er den officielle Bitcoin klient, som kan hentes her.

Det er ikke et krav at have en Bitcoin-qt server kørende selv, da der er offentligt tilgængelige API’er som man kan bruge. Man har derfor 2 valgmuligheder:

  • Køre en Bitcoin-qt server selv
  • Bruge andre virksomheders API’er

Nedenfor er en hurtig sammenligning af fordele/ulemper:

Fleksibilitet Opsætning Sikkerhed
Køre Bitcoin-qt selv

x

x

Eksternt API

x

x

 

Ved at køre Bitcoin-qt selv, så har man flere muligheder. Man har adgang til alle oplysninger som stilles til rådighed i blockchain, og man arbejder uden mellemled. Lige meget hvordan man vender og drejer den, så vil det give støre fleksibilitet.

Opsætningen er langt nemmere ved at bruge andres API’er. Her er der ikke et krav om at have en Bitcoin-qt server kørende, samt dokumentationen af eksterne API’er som regel er væsentligt bedre. Derudover er det nemmere at finde kode at tage udgangspunkt i.

Bitcoin-qt er mere sikkert fordi man ikke skal stole på et mellemled. Der er aldrig en virksomhed som ens Bitcoins skal igennem, og man har fuld kontrol over hele flowet. Ved et eksternt API vil der dog være en masse behjælpelige sikkerhedstjek, som vil formegentlig vil reagere hvis man bliver hacket.

Programmere mod egen Bitcoin-qt server

Dette er et stort emne, og vi vil anbefale du læser vores artikel: Programmering og opsætning af Bitcoin-qt server.

Bitcoin API’er til at sende og modtage betalinger

Vi anbefaler disse 2 API’er:

Du finder en lang og detaljeret side om Bitcoin payments here skrevet af Lars Holdgaard.

Krav om sikkerhed

Historisk set har der været rigtig mange uheldige sikkerhedsbrud på Bitcoin websites. Der er blevet tabt rigtig mange Bitcoins, og især løsninger hvor folk har haft Bitcoin stående, har gjort ondt på en masse mennesker pga. dårlig sikkerhed.

Har man direkte kontakt med en Bitcoin server, så skal man være klar over at hvis en hacker opdager et hul i ens system, så kan denne hacker stjæle hver en Bitcoin serveren har adgang til. Er man en virksomhed som opbevarer andres Bitcoins, så er det et kæmpe problem, fordi man juridisk set kan stå meget skidt hvis ens sikkerhed ikke var god nok.

Som udvikler skal man derfor være klar over at sikkerhed er ekstremt vigtigt. Er der et hul i ens software, så er der folk som vil forsøge at udnytte det.

Rådet fra Dansk Bitcoinforening til softwareudviklere som ikke har erfaring indenfor yderst sikre løsninger: Laver du en applikation, så lad være med at lave automatiske betalinger til andre hvis du kan undgå det. Hvis applikationen kan leve ved manuelle betalinger, vil det spare for en masse problemer som kan komme til at koste dig og dine kunder en formue.