Paimkite pinigus per internetą naudodami „Bitcoin“ - taip, kaip jie buvo sukurti

Dar 2009 m. „Bitcoin“ naudojo funkciją, leidžiančią keistis informacija nuo vieno prie kito. 2009 m. Piniginė buvo ne tik koncepcijos įrodymas, ir daugelis geriausių „Bitcoin“ aspektų buvo išjungti, nes programinės įrangos kūrėjai nesugebėjo to suprasti.

Praėjusią savaitę diskutavau, kaip raktą būtų galima naudoti intelektualiojoje kortelėje, o privatumas buvo išlaikytas naudojant „Bitcoin“ ugniasienės tapatybės modelį. Ateinančiai savaitei parodysiu ir metodą, leidžiantį interneto serveriui naiviai saugiai priimti mokėjimus bitcoin, ir metodą, leidžiantį keistis „fiat“ ir kitomis žetonomis išlaikant absoliutų privatumo lygį.

PKI sertifikatai - procesas

Toks - ne kasyba - yra lygiavertis „Bitcoin“ aspektas, ir tai yra vienas iš pirmųjų dalykų, kurį pašalino „Core“ kūrėjai.

2009 m. Dar reikėjo atlikti daug darbo.

2009 m. Sistema dar nebuvo baigta kurti. Reikėjo išbandyti keletą galimų metodų, o 2009 m. Klientui naudojamas metodas paliko daug norimo. Ir vėl tai buvo tik koncepcijos įrodymas.

Norėdami išspręsti tokias problemas, turime pradėti nuo supratimo, kad mazgai ir piniginės yra atskiri. Mazgai yra išminuotojai, o piniginės yra tai, ką vartotojas naudoja, kad sudarytų P2P operaciją. Šiandienos įraše paaiškinsiu, kaip ECDSA pagrįstas žiniatinklio sertifikatas, SSL / TLS-serverio sertifikatas, leidžiantis saugiai naršyti internete, gali būti prekybininkų mokėjimo sistemos pagrindas - sistema, kuri išlieka saugi ir privati, ir tačiau taip pat yra sukonstruotas taip, kad mokėjimą tam tikru adresu siunčia tik vieną kartą.

Kitaip tariant, ji niekada nenaudoja raktų.

Yra du būdai, kaip siųsti pinigus. Jei gavėjas yra prisijungęs, jūs
gali įvesti savo IP adresą ir jis prisijungs, sulauks naujos visuomenės
raktą ir atsiųskite operaciją su komentarais. Jei gavėjas yra
ne internetu, galima siųsti į jų „Bitcoin“ adresą, kuris
yra jų viešojo rakto maišas, kurį jie jums suteikia. Jie gaus
operacija kitą kartą, kai jie prisijungs ir gaus blokuoti
Šis metodas turi trūkumų, kad nėra komentarų
yra išsiųstas, ir, jei bus naudojamas adresas, gali būti prarasta šiek tiek privatumo
kelis kartus, tačiau tai yra naudinga alternatyva, jei abu vartotojai to padaryti negali
tuo pačiu metu būti prisijungę arba gavėjas negali priimti gaunamų pranešimų
jungtys.

Sertifikatą galima naudoti tiek S / MIME, tiek HTTPS.

Jei paimsime raktą, kuris yra susijęs su CA įregistruotu sertifikatu, galime sukurti viešą visų prekybininkui siunčiamų monetų įrašą ir tuo pačiu išsaugoti privatumą.

Pradėsime nuo vartotojos Alisos ir interneto prekybininko Bobo, turinčio ECDSA pagrįstą žiniatinklio sertifikatą savo svetainei HTTPS://www.bob.com.

Alisa turi „Bitcoin“ pagrindinį raktą. Pagrindinis raktas nenaudojamas bitcoin siuntimui ar gavimui, jis gali būti metodas tapatybės raktui sukurti (ir gali būti net intelektualiojoje kortelėje). Tai yra raktas, kurį mes vadinsime P (Alisa).

„Bobo“ svetainėje (paliksiu kitiems pamąstyti, kaip paprasta išplėsti šio mechanizmo el. Laišką su S-MIME) yra pagrindinis raktas P („Bobas“).

Alisa turi monetų rinkinį (tai yra UTXO nuorodos), kurie gali būti visiškai nesusiję su P (Alisa) ir visiškai nesusiję su jos pagrindiniu raktu. Mes tai vadinsime P (A-1-i); čia (i) nurodo naudojamos monetos numerį.

Alisa gali sukurti bendrą paslaptį (-es), naudodama šiame dokumente aprašytą procesą:

NUSTATYTI BENDRĄ SLAPTĄ, KURIAMAS ATSAKOMAS APIE INFORMACIJĄ, IR HIERARCHINIAI, DETERMINISTINIAI KRIPTOGRAFINIAI RAKTAI

Norėdami naudoti tokį mechanizmą (vieną iš daugelio pavyzdžių), Alisa eina į „Bobo“ internetinę parduotuvę ir dabar siekia susimokėti. Alisa gali apskaičiuoti bendrą paslaptį su Bobu. Norėdami būti saugesnė, Alisa gali naudoti žiniatinklio sesijos ID, kurį ji dalijasi su Bobu, sąskaitos faktūros numerį ar bet ką kitą. Jis gali būti naudojamas HMAC pagrindu sukurta verte, kad padidintų saugumą ir privatumą, tačiau šiandien aš pasinaudosiu paprasta maiša, kad procesas būtų suprantamesnis.

Abu Alisa ir Bobas gali apskaičiuoti reikšmę S, susietą su raktais, kuriuos Alisa ir Bobas naudoja internete. Alisa gali turėti tapatybės ir autentifikavimo raktą, kuris nėra viešai susijęs su jos pirkiniais, tačiau apsaugo visus jos ryšius su Bobu.

Alisa siunčia Bobui pranešimą, užšifruotą vykdant „Bitcoin“ operaciją. Operacija gali būti atlikta neprisijungus arba prisijungus. Jei Bobas prisijungęs, jis gali saugoti Alisos neturimo daikto vertę kaip žiniatinklio patikros dalį.

Jei Bobas nėra prisijungęs ir turi gana paprastą svetainę, jis gali naudoti „blockchain“, kad įrašytų informaciją apie mokėjimą ir jį patikrintų.

Alisa siunčia Bobui sandorį P (Bobui). Bobas nenaudoja tokio adreso, todėl mokestis yra nedidelis; be dulkių ribos, užteks vienintelio satoshi. Alisa siunčia pranešimą apie mokėjimą P (Bobo) adresu, o Bobas jo nenaudoja lėšoms. Galima sakyti, TIK Bobas išleis iš adreso (to, kuris susijęs su viešuoju P (Bobo) raktu), kai pažymėjimas pažymimas kaip pasibaigęs. Procesas veikia kaip paskirstyto atšaukimų sąrašo forma, kur Bobas gali valdyti savo raktą. Be to, jei kada nors užpuolamas Bobo raktas ir pažymėjimas, o dulkių operacijas čia išleidžia užpuolikas, tai veikia kaip automatinis perspėjimas. „Bobas“ sąskaitoje galėjo laikyti nedidelę lėšų sumą, kad įsilaužėliai galvotų, jog tai galiojantis naudojimo adresas (pvz., 2 000 USD), kuri būtų prarasta tik įsilaužus į sąskaitą, tačiau taip pat įspėtų visus „Bobo“ klientus į ataką.

Bobas gali padaryti sąskaitą labiau privačią naudodamas antrinį raktą - žr. Patento 9 pav.

9 pav. Iš 42 patento

Bobas netgi galėtų turėti procesą, kuriame sąskaitos faktūros numeris būtų susietas su raktu.

Alisa dabar siunčia adresu, susietu su P (Bobu) - ir scenarijuje arba kaip OP_RETURN reikšmę įtraukia užšifruotą vertę (pvz., Naudojant AES šifravimo algoritmą). Taikydamas aukščiau aprašytą metodą, Bobas gali apskaičiuoti (S). Viename „Satoshi“ išsiųstame pranešime Bobui (pridėjus mokesčius už kasybą) yra visi duomenys, kuriuos Bobas turi žinoti, kad surastų vietą, kur Alisa atsiuntė mokėjimą. Bobas naudoja simetrinį raktą (S), kad iššifruotų pranešimo duomenis:

  • Šifruoti (S) [M]

kuris Bobui perduoda žinią iš Alisos, M.

  • Iššifruoti (S) [M]

Dabar Bobas gali apskaičiuoti rakto adresą iš gauto rakto:

  • P (Bobas-Paidas) = ​​P (Bobas) + HMAC (M ~ S) xG
  • Pranešimo klavišas yra P (Shared Message) = HMAC (M ~ S) xG

TIK Bobas ir Alisa žinos naująjį slaptą HMAC (M ~ S).

Alisa gali įrodyti, kad ji išsiuntė mokėjimą Bobui. Bobas gali rasti pinigus iš Alisos ir patikrinti operaciją.

Tuo pačiu metu jokia pašalinė šalis negali nustatyti adreso, kuriuo Alisa išsiuntė mokėjimą iš - P (A-1-i) Bobui į P (Bobas-Paidas).

Kadangi Bobas turi įrašą blokinėje grandinėje P (Bobas) ir turi išsamią visų gautų mokėjimo adresų seką. Įrašą galima susieti su sąskaitomis faktūromis, pirkimo užsakymais ir dar daugiau - tai leidžia Bobui sukonstruoti išsamų visų mainų audito pėdsaką, kurio negalima ištrinti, pakeisti ar manipuliuoti. Šis metodas įvykdo visus būtinus įstatyminius apskaitos klausimus, susijusius su Bobu, ir jis gali turėti atskirą adresą, kur PVM ir kiti pardavimo mokesčiai bus siunčiami vyriausybei, kai tik jis yra sumokėtas. Kitaip tariant, Bobui nereikia patirti brangių auditų, o mokesčių administratoriui galima sumokėti nedelsiant ir nedelsiant.

Žetonai ir Bitcoin

Naudodamiesi tokiu protokolu, kaip „Tokenized“ arba vienu iš daugelio, kuriems „nChain“ yra pateikę patentus, Alisa ir Bobas taip pat gali keistis pažymėtomis „fiat“. Tai reiškia, kad Alisa galėjo sumokėti Bobui naudodama GBP žetoną, kurį išleido JK bankas. Toks ženklas perduodamas naudojant aukščiau išvardytą procesą, leidžiant Alisai ir Bobui saugiai ir saugiai vykdyti sandorius, naudojant skaitmeninius grynuosius pinigus savo pasirinkta vietine valiuta, kartu naudojant „Bitcoin“ kaip mainų „santechniką“.

Metanet jungimas

Iš esmės, net jei Bobas naudoja neprisijungus veikiančią svetainę - ty paprastą sistemą be atsarginės duomenų bazės -, įrašai, gauti prieš „P“ („Bob“) raktą, dabar gali veikti kaip nekintama duomenų saugykla.

Pranešimas, kurį Alisa užšifruoja Bobui, gali būti visas užsakymas.

Tai gali būti baigta naudojant esamus EDI pranešimų tipus. Skirtingai nuo EDI, metodas yra saugus, patikimas ir privatus.

Geriau, kad įrašas nekintamas. Nėra vietos apskaitos apgaulėms. Galite atšaukti operacijas, tačiau tam reikia grąžinti lėšas iš kilmės šaltinio.

Alisa ir Bobas gali įrašyti visą komercinį procesą.

Bobas gali turėti daugybę hierarchinių adresų, kurie registruoja visus užsakymo etapus - nuo sąskaitų faktūrų išrašymo ir apmokėjimo iki siuntimo ir pristatymo. Jei Bobas turi kiekvieno kliento antrinį raktą (žr. Aukščiau pateiktą patentą ir 9 pav.), Jis taip pat gali sukonstruoti atskirą antrinį raktą, kuris yra žinomas jam pačiam, klientui ir mokesčių inspekcijai, tačiau ne kiti, leisdami jam išlaikyti absoliutų privatumo lygį, kai kiti klientai ir tiekėjai net nežino, kiek operacijų jis daro. Be to, jis gali išmokas apskaičiuoti tokiu būdu, kuris leistų izoliuoti vidinius darbuotojus ir reikalauti, kad jie žinotų tik informaciją, susijusią su savo skyriais.

Kol neliečiamas su CA susijęs raktas, sąskaitos gali būti siunčiamos senu adresu. Sub-CA raktas gali būti susietas su ataskaitiniais metais ir taip pat įtraukiamas į kiekvieną mokestinį laikotarpį. Jūs uždarote pažymėjimą, surenkate visus mokėjimus, padarytus kaip dulkės, ir tuo pačiu uždarote knygas, paruoštas naujiems ataskaitiniams metams.

EDI žinutė

EDI yra egzistuojanti kodavimo schema komercijai.

ANSI ir EDIFACT pranešimų formatus galime pamatyti žemiau esančiame paveikslėlyje:

ANSI vs EDIFACT

Savo sistemoje šifravimo raktą duomenims pranešime (o ne mokėjimą) naudojame kaip „grupinį pranešimą“. Mainų pranešimo nereikia. Toks būtų vidutinis žmogus, o „Bitcoin“ mes pašalinome jo poreikį.

Standartinis EDI

Naujasis komercijos modelis yra tas, kuriame visi įrašai yra nekintami, jų negalima prarasti ir jie leidžia Alisai ir Bobui prekiauti privačiai.

Bitcoin duomenų mainai

Priemonės, skirtos EDI susieti su „Bitcoin“ operacija, paprasčiausiai atrodytų kaip EDI įrankiai, kokie jie yra šiandien.

Netgi įdėtą į „Bitcoin“ operaciją, užšifruotą EDI XML formatą buvo galima tiesiog išgauti ir parodyti arba atsispausdinti kaip bet kurią kitą sąskaitą faktūrą ar užsakymą:

Parodyta sąskaita faktūra

Dabartiniame EDI pasaulyje klientams mokama naudojant modelius, veikiančius kainų intervale, atsižvelgiant į numatomą „Kilo“ simbolių (KC) kiekį ar dokumentus. Taip pat yra paslėptų mokesčių, tokių kaip minimalus įrašo ilgis. Daugelis teikėjų nurodo įrašo ilgį nuo 128 iki 512 simbolių. Rezultatas yra tas, kad jei jūs siųstumėte 12 dokumentų, sudarytų iš 12 ženklų, jums būtų mokama iki 5120 ženklų, net jei siunčiate tik 144 simbolius.

Prekybininkams, turintiems daug mažų operacijų, jie gali pridėti nemažą sumą prie jūsų mėnesio mokesčio.

Toks dalykas nėra „Bitcoin“ problema.

Nors didžiausias leistinas NACCS EDI pranešimų dydis yra 500 000 baitų, realybė yra tokia, kad EDI ir kiti susiję pranešimai paprastai sudaro 150 baitų. Nekeičiamos, privačios, saugios sąskaitų faktūrų išrašymo ir apskaitos sistemos siuntimas, kai trupmenos centai iš vienos sąskaitos faktūros padidėja - palyginkite tai atlikdami nuo 2 iki 3 dolerių už kai kuriuos EDI sprendimus ir net iki 0,20 USD už paprastą „Visa“ operaciją ir… laikas pradėti pergalvoti kaip tu darai verslą.

Tokiame modelyje daugiau nei vieną kartą nereikia naudoti jokio „Bitcoin“ adreso, o mokėjimai ir sąskaitos faktūros yra susietos privačiai - tai gali būti net slapyvardis, nes ID neturi būti vartotojo pažymėjime.