Mengambil uang melalui web menggunakan Bitcoin - seperti yang dirancang

Kembali pada tahun 2009, Bitcoin menggunakan fitur yang memungkinkan untuk pertukaran informasi IP-ke-IP. Dompet 2009 tidak lebih dari bukti konsep, dan banyak aspek terbaik Bitcoin telah dinonaktifkan karena mereka yang mengembangkan perangkat lunak gagal memahaminya.

Minggu lalu, saya membahas bagaimana kunci dapat digunakan dalam kartu pintar, sementara privasi dipertahankan dengan menggunakan model identitas Bitcoin dari firewall. Untuk minggu yang akan datang, saya akan menunjukkan kedua metode yang memungkinkan server web untuk secara aman menerima pembayaran dalam bitcoin secara naif dan metode yang memungkinkan fiat dan token lainnya untuk dipertukarkan sambil mempertahankan tingkat privasi absolut.

Sertifikat PKI - prosesnya

Tersebut - bukan penambangan - adalah aspek peer-to-peer dari Bitcoin, dan itu adalah salah satu hal pertama yang dihapus oleh pengembang Core.

Pada tahun 2009, banyak pekerjaan masih diperlukan.

Pada 2009, sistem itu belum lengkap. Beberapa metode yang mungkin perlu diuji, dan metode yang digunakan pada klien 2009 meninggalkan banyak yang harus diinginkan. Kemudian lagi, itu hanyalah bukti konsep.

Untuk memperbaiki masalah tersebut, kita perlu mulai dengan memahami bahwa node dan dompet terpisah. Node adalah penambang, dan dompet adalah apa yang digunakan oleh pengguna untuk memungkinkan transaksi P2P. Dalam posting hari ini, saya akan menjelaskan bagaimana sertifikat web berbasis ECDSA, sertifikat server SSL / TLS yang memungkinkan Anda menjelajahi internet dengan aman, dapat menjadi dasar dari sistem pembayaran pedagang - sistem yang tetap aman dan pribadi, dan namun juga dibuat sedemikian rupa sehingga hanya mengirim pembayaran ke alamat tertentu satu kali.

Dengan kata lain, itu tidak pernah menggunakan kembali kunci.

Ada dua cara untuk mengirim uang. Jika penerima online, Anda
dapat memasukkan alamat IP mereka dan itu akan terhubung, dapatkan publik baru
kunci dan kirim transaksi dengan komentar. Jika penerima
tidak online, dimungkinkan untuk mengirim ke alamat Bitcoin mereka, yang mana
adalah hash kunci publik mereka yang mereka berikan kepada Anda. Mereka akan menerimanya
transaksi pada saat mereka terhubung dan mendapatkan blok itu
di. Metode ini memiliki kelemahan yaitu tidak ada informasi komentar
dikirim, dan sedikit privasi mungkin hilang jika alamat tersebut digunakan
beberapa kali, tetapi ini merupakan alternatif yang berguna jika kedua pengguna tidak bisa
online pada saat yang sama atau penerima tidak dapat menerima yang masuk
koneksi.

Sertifikat adalah sesuatu yang dapat digunakan di S / MIME dan HTTPS.

Jika kami mengambil kunci yang terkait dengan sertifikat yang terdaftar di CA, kami dapat membuat catatan publik dari semua koin yang dikirim ke pedagang dan pada saat yang sama mempertahankan privasi.

Kita akan mulai dengan Alice, seorang konsumen, dan Bob, seorang pedagang web dengan sertifikat web berbasis ECDSA untuk situsnya HTTPS://www.bob.com.

Alice memiliki kunci utama Bitcoin. Kunci master tidak digunakan untuk mengirim atau menerima bitcoin, dan dapat menjadi metode untuk membuat kunci identitas (dan bahkan bisa menggunakan kartu pintar). Itulah kunci yang akan kita sebut P (Alice).

Situs web Bob (saya akan menyerahkannya kepada orang lain untuk memikirkan betapa sederhananya untuk memperluas mekanisme ke email dengan S-MIME) memiliki kunci utama P (Bob).

Alice memiliki satu set koin (yaitu, referensi UTXO) yang dapat sepenuhnya tidak terkait dengan P (Alice) dan yang tidak memiliki hubungan dengan kunci utamanya sama sekali. Kami akan menyebutnya P (A-1-i); di sini, (i) merujuk nomor koin yang digunakan.

Alice dapat membuat rahasia umum (s1) menggunakan proses yang didokumentasikan dalam dokumen berikut:

MENENTUKAN RAHASIA UMUM UNTUK PERTUKARAN INFORMASI YANG AMAN DAN KUNCI KRIPTOGRAPHIK HIERARKIS, DETERMINISTIK

Untuk menggunakan mekanisme semacam itu (salah satu dari banyak contoh), Alice pergi ke toko web Bob, dan sekarang berupaya membayar. Alice dapat menghitung rahasia bersama dengan Bob. Agar lebih aman, Alice dapat menggunakan ID sesi web yang dia bagikan dengan Bob, nomor faktur, atau apa pun. Ini dapat digunakan dalam nilai berbasis HMAC untuk menambah keamanan dan privasi lebih lanjut, tetapi untuk hari ini, saya akan menggunakan hash sederhana untuk membuat proses lebih mudah dipahami.

Alice dan Bob keduanya dapat menghitung nilai S, yang dikaitkan dengan kunci yang digunakan Alice dan Bob di web. Alice dapat memiliki kunci identitas dan otentikasi yang tidak terhubung secara publik dengan pembeliannya, tetapi mengamankan semua komunikasinya dengan Bob.

Alice mengirim pesan kepada Bob yang dienkripsi dalam transaksi Bitcoin. Transaksi dapat diselesaikan menggunakan proses offline atau online. Jika Bob online, ia dapat menyimpan nilai dari Alice sebagai bagian dari checkout web.

Jika Bob tidak online dan memiliki situs yang agak sederhana, ia dapat menggunakan blockchain untuk mencatat informasi tentang pembayaran dan memeriksanya.

Alice mengirim Bob transaksi ke P (Bob). Bob tidak menggunakan alamat seperti itu, jadi pembayarannya kecil; tanpa batas debu, satu satoshi belaka akan cukup. Alice mengirim pesan untuk pembayaran ke alamat P (Bob), dan Bob tidak menggunakannya untuk dana. Kita dapat mengatakan, Bob ONLY akan menghabiskan dari alamat (yang terkait dengan kunci publik P (Bob)) ketika sertifikat ditandai sebagai kedaluwarsa. Proses bertindak sebagai bentuk "daftar pencabutan" yang didistribusikan di mana Bob dapat mengendalikan kuncinya sendiri. Terlebih lagi, jika kunci dan sertifikat Bob pernah diserang dan transaksi debu di sini dihabiskan oleh penyerang, itu bertindak sebagai peringatan otomatis. Bob dapat menyimpan sejumlah kecil dana di akun sebagai cara untuk memungkinkan peretas menganggap itu adalah alamat yang valid untuk digunakan (misalnya $ 2.000) yang hanya akan hilang, jika akun diretas, tetapi itu juga memperingatkan semua pelanggan Bob untuk serangan itu.

Bob dapat menjadikan akun lebih pribadi menggunakan subkunci - lihat Gambar. 9 dalam paten:

Gbr. 9 dari paten 42

Bob bahkan dapat memiliki proses di mana nomor faktur dikaitkan dengan subkunci.

Alice sekarang mengirim ke alamat yang terkait dengan P (Bob) - dan dalam skrip atau sebagai nilai OP_RETURN termasuk nilai yang telah dienkripsi (seperti dengan menggunakan algoritma enkripsi AES). Dengan menggunakan metode yang disebutkan di atas, Bob dapat menghitung (S). Data dalam pesan kepada Bob yang dikirim dengan satu satoshi (ditambah biaya penambangan) berisi semua yang perlu diketahui Bob untuk mengetahui ke mana Alice telah mengirim pembayaran. Bob menggunakan kunci simetris (S) untuk mendekripsi data dalam pesan:

  • Enkripsi (S) [M]

yang memberi Bob pesan dari Alice, M.

  • Dekripsi (S) [M]

Bob sekarang dapat menghitung alamat kunci dari kunci yang diturunkan:

  • P (Bob-Paid) = P (Bob) + HMAC (M ~ S) xG
  • Kunci pesan adalah P (Pesan Bersama) = HMAC (M ~ S) xG

HANYA Bob dan Alice akan mengetahui HMAC rahasia baru (M ~ S).

Alice dapat membuktikan bahwa dia telah mengirim pembayaran kepada Bob. Bob dapat menemukan uang dari Alice dan memverifikasi transaksi.

Pada saat yang sama, tidak ada pihak luar yang dapat menentukan alamat bahwa Alice mengirim pembayarannya dari - P (A-1-i) ke Bob at P (Bob-Paid).

Sebagai Bob memiliki catatan pada blockchain di P (Bob), dan memiliki jejak audit lengkap dari semua alamat pembayaran yang telah diterimanya. Catatan dapat dihubungkan dengan faktur, pesanan pembelian, dan banyak lagi, memungkinkan Bob untuk membangun jejak audit lengkap dari semua bursa dan yang tidak dapat dihapus, diubah, atau dimanipulasi. Metode ini memenuhi semua masalah akuntansi legislatif yang disyaratkan untuk Bob, dan ia dapat memiliki alamat split di mana PPN dan pajak penjualan lainnya dikirimkan kepada pemerintah saat ia dibayar. Dengan kata lain, Bob tidak perlu mengalami audit yang mahal, dan otoritas pajak dapat segera dibayar tanpa penundaan.

Token dan Bitcoin

Menggunakan protokol seperti Tokenized atau salah satu dari berbagai yang nChain telah mengajukan paten, Alice dan Bob juga dapat bertukar fiat yang telah terpatok. Ini berarti bahwa Alice dapat membayar Bob menggunakan token GBP yang dikeluarkan oleh bank di Inggris. Token semacam itu ditransmisikan menggunakan proses yang tercantum di atas, memungkinkan Alice dan Bob untuk secara aman dan aman bertransaksi menggunakan uang digital dalam mata uang pilihan lokal mereka, sementara masih menggunakan Bitcoin sebagai "pipa ledeng" untuk pertukaran.

Menautkan metanet

Dengan demikian, bahkan jika Bob menjalankan situs web offline - yaitu, sistem sederhana tanpa database back-end - catatan yang diterima terhadap kunci P (Bob) sekarang dapat bertindak sebagai bentuk penyimpanan data yang tidak dapat diubah.

Pesan yang dienkripsi Alice ke Bob bisa menjadi urutan lengkap.

Itu dapat diselesaikan menggunakan jenis pesan EDI yang ada. Tidak seperti EDI, metode ini aman, aman, dan pribadi.

Lebih baik, catatan itu tidak berubah. Tidak ada tempat untuk penipuan akuntansi. Anda dapat membalikkan transaksi, tetapi untuk itu diperlukan pengembalian dana ke sumber asalnya.

Alice dan Bob dapat merekam seluruh proses komersial.

Bob dapat menyimpan serangkaian alamat hierarki yang mencatat semua tahapan pesanan - mulai dari penagihan dan pembayaran hingga pengiriman dan pengiriman. Jika Bob sekarang memiliki kunci sub-master untuk setiap klien (lihat paten di atas dan Gbr. 9), ia juga dapat membuat subkunci terpisah, yang diketahui oleh dirinya sendiri, klien, dan otoritas pajak untuk tujuan audit, tetapi tidak ada. yang lain, memungkinkan dia untuk mempertahankan tingkat privasi absolut, di mana klien dan pemasok lain bahkan tidak tahu berapa banyak transaksi yang dia lakukan. Selain itu, ia dapat membuat pembayaran dengan cara yang memungkinkannya mengisolasi karyawan internal dan membuat mereka hanya mengetahui informasi yang terkait dengan departemen mereka sendiri.

Meskipun kunci yang ditautkan CA tidak disentuh, akun dapat dikirim ke alamat lama. Kunci sub-CA dapat dikaitkan dengan tahun akuntansi dan juga menggulung setiap periode pajak. Anda menutup sertifikat, mengumpulkan pembayaran yang dilakukan sebagai debu, dan pada saat yang sama, menutup buku yang siap untuk tahun akuntansi baru.

Pesan EDI

EDI adalah skema penyandian yang ada untuk perdagangan.

Kita dapat melihat format pesan ANSI dan EDIFACT pada gambar di bawah ini:

ANSI vs EDIFACT

Dalam sistem kami, kami menggunakan kunci enkripsi untuk data dalam pesan (bukan pembayaran) sebagai "pesan grup." Tidak perlu untuk pesan interchange. Tersebut akan menjadi perantara, dan dalam Bitcoin, kami telah menghilangkan kebutuhannya.

EDI standar

Model baru untuk perdagangan adalah model di mana semua catatan tidak dapat diubah, tidak dapat hilang, dan memungkinkan Alice dan Bob untuk berdagang secara pribadi.

Pertukaran Data Bitcoin

Dan, alat untuk memetakan EDI ke transaksi Bitcoin hanya akan terlihat seperti alat EDI seperti sekarang ini.

Bahkan tertanam ke dalam transaksi Bitcoin, format XML EDI terenkripsi dapat dengan mudah diekstraksi dan ditampilkan atau dicetak sebagai faktur atau pesanan lain:

Faktur yang ditampilkan

Dalam dunia EDI yang ada, klien dibebankan menggunakan model yang beroperasi dalam rentang harga berdasarkan volume yang diantisipasi dari Karakter Kilo-Karakter (KC) atau dokumen. Ada juga biaya tersembunyi seperti panjang rekaman minimum dengan banyak penyedia menentukan panjang rekaman 128 hingga 512 karakter. Hasilnya adalah jika Anda mengirim 12 dokumen dengan 12 karakter, Anda akan dikenai biaya hingga 5.120 karakter, meskipun hanya mengirim 144 karakter.

Untuk pedagang dengan volume besar transaksi kecil, mereka dapat menambahkan jumlah besar ke tagihan bulanan Anda.

Hal seperti itu bukan masalah dengan Bitcoin.

Meskipun ukuran pesan maksimum yang diijinkan untuk pesan NACCS EDI adalah 500.000 byte, kenyataannya adalah bahwa EDI dan pesan terkait lainnya umumnya dalam urutan 150 byte. Pengiriman sistem faktur dan akuntansi yang permanen, aman, aman untuk fraksi satu sen per faktur - bandingkan dengan 2 hingga 3 dolar untuk beberapa solusi EDI dan bahkan $ 0,20 untuk transaksi Visa sederhana, dan ... sekarang saatnya untuk mulai memikirkan kembali bagaimana Anda melakukan bisnis.

Dalam model seperti itu, tidak ada alamat Bitcoin yang perlu digunakan lebih dari sekali, dan pembayaran dan faktur ditautkan secara pribadi - yang bahkan dapat menjadi nama samaran, karena ID tidak harus dalam sertifikat pengguna.