Skizofrenia arsitéktur Facebook Libra

Saatos dua taun, kuring balik deui ka blog pikeun pos anu béda ti ceramah boring dawam ngeunaan Haskell jeung matematika. Kuring parantos ngusahakeun fintech di EU salami sababaraha taun ka pengker sareng sigana waktosna parantos nyerat ngeunaan topik anu nampi sakedik perhatian ti média téknologi.

Facebook nembe ngarilis naon anu disebut "platform jasa finansial anyar" anu disebut Libra. Hal ieu diposisikan salaku sistem padumukan digital dumasar kana karinjang mata uang internasional anu dikokolakeun dina "blockchain" sarta disimpen dina duit pool junun ti Swiss. Tujuan proyék éta ambisius sareng nyababkeun konsékuansi geopolitik skala ageung.

В Financial Times и New York Times Seueur tulisan anu wijaksana ngeunaan asumsi moneter sareng ékonomi anu teu leres di tukangeun sistem kauangan anu diusulkeun. Tapi aya teu cukup spesialis sanggup analisa tina sudut pandang teknis. Henteu seueur jalma anu damel dina infrastruktur kauangan sareng nyarios sacara umum ngeunaan padamelan na, janten proyék ieu henteu nampi seueur liputan dina média téknologi, sanaos jerona kabuka pikeun dunya. Maksad abdi open source dina repositories Libra и Organisasi Calibra.

Anu kabuka pikeun dunya nyaéta artefak schizophrenic arsitéktur kalayan klaim janten platform anu aman pikeun infrastruktur pamayaran global.

Lamun teuleum ka dasar kode, palaksanaan sabenerna sistem sagemblengna diverges ti tujuan nyatakeun, sarta dina cara paling aneh. Kuring yakin yén proyék ieu boga sajarah perusahaan metot. Janten logis pikeun nganggap yén éta dirarancang kalayan sababaraha karajinan, tapi kanyataanana kuring ningali set kaputusan arsitéktur anu anéh anu ngarobih sadayana sistem sareng nempatkeun pangguna dina résiko.

Kuring moal pura-pura gaduh pendapat objektif ngeunaan Facebook salaku perusahaan. Sababaraha jalma di industri IT ningali anjeunna kalayan simpati. Tapi ngabandingkeun pernyataan na jeung kode diterbitkeun jelas nunjukeun yen tujuan nyatakeun nyaeta fundamentally nu nipu. Pondokna, proyék ieu teu empower saha. Anjeunna bakal tetep sapinuhna dikadalikeun ku perusahaan anu bisnis pariwarana kajebak dina skandal sareng korupsi anu teu aya pilihan tapi nyobian ngabédakeun pangmayaran sareng skor kiridit pikeun salamet. Tujuan jangka panjang anu jelas nyaéta pikeun bertindak salaku calo data sareng perantara dina aksés konsumén kana kiridit dumasar kana data média sosial pribadina. Ieu mangrupikeun carita anu pikasieuneun sareng poék anu henteu kéngingkeun perhatian anu pantes.

Hiji-hijina rahmat anu nyalametkeun tina carita ieu nyaéta yén artefak anu diciptakeun ku aranjeunna henteu cocog pikeun tugas anu ngan ukur tiasa ditingali salaku kalakuan hubris. Aya sababaraha kasalahan arsitéktur utama dina proyék ieu:

Ngarengsekeun Masalah Jenderal Bizantium dina Jaringan Kontrol Aksés mangrupikeun Desain anu Teu Konsisten

Masalah jenderal Bizantium mangrupikeun daérah anu rada sempit pikeun panalungtikan sistem anu disebarkeun. Éta ngajelaskeun kamampuan sistem jaringan pikeun nahan kagagalan komponén acak nalika ngalakukeun tindakan koréksi anu penting pikeun operasi sistem. Jaringan anu tahan banting kedah tahan sababaraha jinis serangan, kalebet restart, pareum, beban jahat, sareng voting jahat dina pamilihan kapamimpinan. Ieu mangrupikeun kaputusan utama pikeun arsitéktur Libra, sareng éta henteu aya artina di dieu.

Pajeulitna waktos overhead struktur tambahan ieu gumantung kana algoritma. Aya seueur literatur ngeunaan varian protokol Paxos sareng Raft pikeun ngarengsekeun masalah jenderal Bizantium, tapi sadayana struktur ieu ngenalkeun overhead tambahan pikeun komunikasi. Skizofrenia arsitéktur Facebook Libra pikeun ngajaga kuorum. Pikeun Libra, aranjeunna milih algoritma kalayan biaya komunikasi anu paling luhur Skizofrenia arsitéktur Facebook Libra bisi gagal kapamingpinan. Sareng aya overhead tambahan tina pamilihan ulang poténsial pamimpin dina sababaraha jinis acara gagal jaringan.

Pikeun sistem operasi dina konsorsium korporasi multinasional kacida diatur, dimana sakabeh pamaké boga kode ditandatanganan ku Facebook jeung aksés ka jaringan dikawasa ku Facebook, éta ngan saukur teu make akal pikiran mertimbangkeun pamilon jahat di tingkat konsensus. Henteu écés naha sistem ieu malah bakal ngabéréskeun masalah jenderal Bizantium, tinimbang ngan ukur ngajaga jalan satapak Inok anu konsisten pikeun mariksa patuh. Kamungkinan titik Libra dijalankeun ku Mastercard atanapi Andressen Horrowitz ujug-ujug dimimitian ngajalankeun kode jahat mangrupa skenario ganjil rencana pikeun sarta hadé kajawab ku saukur mastikeun integritas protokol jeung non-teknis (ie légal) hartosna.

Kasaksian ka Kongrés nagih produk éta salaku pesaing pikeun protokol pamayaran internasional anyar sapertos WeChat, Alipay sareng M-Pesa. Sanajan kitu, taya sahiji sistem ieu dirancang pikeun ngajalankeun on validator pools pikeun ngajawab masalah jenderal Bizantium. Éta téh saukur dirancang dina beus-bandwidth tinggi tradisional nu ngajadikeun wiring nurutkeun susunan tetep aturan. Ieu mangrupikeun pendekatan alami pikeun ngarancang sistem pamayaran. Dirancang saé sistem pembayaran saukur moal sapatemon masalah belanja ganda na forks.

Overhead tina algoritma konsensus henteu ngabéréskeun masalah naon waé sareng ngan ukur ngabatesan throughput sistem tanpa alesan lian ti kultus kargo tina blockchain umum, anu henteu dimaksudkeun pikeun kasus panggunaan ieu.

Libra henteu gaduh privasi transaksi

Numutkeun kana dokuméntasi, sistemna dirarancang kalayan dipertimbangkeun ngaran samaran, nyaeta, alamat nu dipaké dina protokol nu dicandak ti konci umum dina kurva elliptic tur teu ngandung metadata ngeunaan rekening. Sanajan kitu, nowhere dina pedaran struktur governance pikeun organisasi atawa dina protokol sorangan nunjukkeun kumaha data ékonomi aub dina transaksi bakal disumputkeun ti validators. Sistem ieu dirancang pikeun ngayakeun réplikasi transaksi dina skala ageung ka sauntuyan pihak luar anu, dina undang-undang rasiah bank Éropa sareng AS anu tos aya, henteu kedah terang kana detil ékonomi.

Kabijakan data di sakuliah nagara hese dikoordinasikeun, khususna dipasihan undang-undang sareng peraturan anu béda-béda dina yurisdiksi anu béda-béda sareng pandangan budaya anu béda dina panyalindungan data sareng privasi. Protokol sorangan sacara standar dibuka lengkep pikeun anggota konsorsium, anu mangrupikeun kakurangan téknis anu jelas anu henteu nyumponan sarat anu dirarancang.

Libra HotStuff BFT henteu tiasa ngahontal throughput anu dipikabutuh pikeun sistem pamayaran

Di Inggris, sistem clearing kawas BAC sanggup nanganan sabudeureun 580 transaksi per bulan. Dina waktos anu sami, sistem anu dioptimalkeun pisan sapertos Visa tiasa ngolah 000 transaksi per dinten. Kinerja beda-beda gumantung kana ukuran transaksi, routing jaringan, beban sistem, sareng Cék AML (anti pencucian uang, skéma pencucian uang).

Libra narékahan pikeun ngabéréskeun masalah anu sanés masalah pikeun transfer domestik, sabab nagara-nagara bangsa parantos ngamodernisasi prasarana bersihanna dina dasawarsa katukang. Pikeun konsumén ritel di Uni Éropa, mindahkeun duit teu masalah pisan. Dina infrastruktur tradisional, ieu tiasa dilakukeun ku smartphone standar dina sababaraha detik. Pikeun mindahkeun perusahaan badag, aya rupa mékanisme jeung aturan pakait sareng mindahkeun jumlah badag duit.

Henteu aya alesan téknis naha pamayaran lintas wates ogé henteu tiasa diolah sacara instan, sanés bédana aturan sareng syarat antara yurisdiksi anu relevan. Lamun ukuran preventif diperlukeun (customer karajinan alatan, cék sanksi, jsb) dipigawé sababaraha kali dina hambalan béda tina ranté urus, ieu bisa ngakibatkeun reureuh dina urus. Sanajan kitu, reureuh ieu murni fungsi tina panerapan pangaturan sarta minuhan, teu téhnologi.

Pikeun konsumén, teu aya alesan kunaon urus UK henteu jelas dina sababaraha detik. Transaksi ritel di EU memang ngalambatkeun cék KYC (Kenal Palanggan anjeun) sareng larangan AML anu ditumpukeun ku pamaréntah sareng régulator, anu sami sareng pamayaran Libra. Sanaos Facebook kedah ngatasi halangan pikeun mindahkeun lintas-wates sareng transfer data pribadi, modél anu diusulkeun nyaéta ratusan jalma-taun jauh tina throughput transaksi global sareng sigana kedah didesain ulang ti mimiti.

Basa Libra Move teu bener

Kertas bodas ngadamel klaim anu wani ngeunaan basa anyar anu teu acan diuji anu disebut Move. Pernyataan ieu rada curiga tina sudut pandang téori basa pemrograman (PLT).

Move mangrupikeun basa pamrograman énggal pikeun ngalaksanakeun logika transaksi khusus sareng kontrak pinter dina blockchain Libra. Kusabab Libra boga tujuan pikeun hiji poé ngawula milyaran jalma, Move dirancang kalayan kaamanan salaku prioritas luhur.

Fitur konci Move nyaéta kamampuan pikeun nangtukeun jinis sumber daya sawenang kalayan semantik anu diideuan ku logika linier.

Dina blockchains umum, kontrak pinter nyanghareupan logika jaringan publik kalawan akun escrow, laundering duit, penerbitan token OTC, sarta judi. Sadaya ieu dilakukeun dina basa anu teu dirancang anu saé anu disebut Solidity, anu tina sudut pandang akademik ngajantenkeun panulis PHP sapertos jenius. Anehna, basa anyar tina Facebook sigana teu aya hubunganana sareng téknologi ieu, sabab éta saleresna mangrupikeun basa skrip anu dimaksudkeun pikeun tujuan perusahaan anu teu jelas.

Dina ledger anu disebarkeun swasta, kontrak pinter mangrupikeun salah sahiji istilah anu dialungkeun ku konsultan tanpa merhatikeun definisi atanapi tujuan anu jelas. Konsultan software perusahaan biasana ngahasilkeun artos tina ambiguitas, sareng kontrak pinter mangrupikeun apotheosis tina obscurantism perusahaan sabab tiasa dihartikeun sacara harfiah naon waé.

Saatos ngadamel klaim ngeunaan kaamananna, urang kedah ningal semantik basa. Correctness dina téori basa programming ilaharna diwangun ku dua proofs béda: "kamajuan" jeung "pelestarian", nu nangtukeun konsistensi sakabéh spasi aturan evaluasi pikeun basa. Leuwih husus, dina téori tipe, hiji fungsi "linier" lamun ngagunakeun argumen na persis sakali, sarta "affine" lamun eta ngagunakeun eta paling sakali. Sistem tipe linier nyadiakeun jaminan statik yén fungsi linier dinyatakeun sabenerna linier ku assigning tipe ka sadaya subexpressions fungsi jeung ngalacak dimana nelepon dijieun. Ieu sipat halus ngabuktikeun sarta henteu gampang pikeun nerapkeun pikeun sakabéh program. Ketik linier masih mangrupa widang akademik pisan ulikan, dipangaruhan ku palaksanaan keunikan tipe dina Clean jeung tipe kapamilikan dina Rust. Aya sababaraha usulan awal pikeun nambahkeun tipe linier kana Glasgow Haskell Compiler.

Pernyataan Move ngeunaan ngagunakeun jinis linier sigana sapertos beuleum anu teu pantes kana kompiler, saprak aya teu aya logika mariksa tipe sapertos kitu. Sajauh hiji bisa ngabejaan, whitepaper nu Citer literatur canonical ti Girard na Peirce, tur aya nanaon sarupa dina palaksanaan sabenerna.

Salaku tambahan, semantik formal tina basa anu dianggap aman henteu aya dina palaksanaan atanapi dokumenna. Basana cukup leutik pikeun mendakan bukti lengkep ngeunaan semantik anu leres dina Coq atanapi Isabelle. Kanyataanana, kompiler konvérsi lengkep tungtung-ka-tungtung kalayan transfer buktina ka bytecode tiasa dilaksanakeun kalayan alat-alat modéren anu diciptakeun dina dasawarsa ka tukang. Urang terang kumaha ngalakukeunana, dimimitian ku karya George Necula jeung Peter Lee deui 1996.

Tina sudut pandang téori basa pamrograman, mustahil pikeun nguji klaim yén Move mangrupikeun basa anu dipercaya sareng aman, sabab klaim-klaim ieu mangrupikeun waving sareng pamasaran murni tinimbang bukti anu sabenerna. Ieu mangrupikeun kaayaan anu pikahariwangeun pikeun proyék basa anu dipénta pikeun ngolah transaksi milyaran dolar.

Kriptografi Libra cacad

Ngawangun kriptosistem anu aman mangrupikeun masalah rékayasa anu sesah, sareng éta langkung saé pikeun pendekatan damel sareng kode bahaya kalayan dosis paranoia anu séhat. Aya terobosan utama di daérah ieu, sapertos proyék Microsoft Everest, anu ngawangun aman anu tiasa diverifikasi tumpukan TLS. Parabot parantos aya pikeun nyiptakeun primitif anu tiasa diverifikasi. Sanajan ieu mahal, éta jelas teu saluareun kamampuhan ékonomi Facebook urang. Sanajan kitu, tim mutuskeun teu ilubiung dina proyék, nu ieu ditagih salaku yayasan dipercaya pikeun sistem finansial global.

proyék libra gumantung kana ti sababaraha perpustakaan anu cukup anyar pikeun nyiptakeun kriptosistem ékspérimén anu ngan ukur muncul dina sababaraha taun ka pengker. Teu mungkin pikeun nyarios naha katergantungan dina alat-alat ieu aman atanapi henteu, sabab teu aya perpustakaan ieu anu diaudit sareng teu gaduh kawijakan panyingkepan standar. Khususna, pikeun sababaraha perpustakaan inti teu aya kapastian ngeunaan panyalindungan ngalawan serangan saluran sisi sareng serangan waktos.

  1. ed25519-dalek
  2. curve25519-dalek

Perpustakaan libra janten langkung ékspérimén sareng langkung seueur modél baku, nerapkeun téknik anyar pisan sapertos fungsi acak anu tiasa diverifikasi (VRF), pasangan bilinear, sareng tanda tangan ambang. Métode sareng perpustakaan ieu tiasa lumayan, tapi ngagabungkeun sadayana kana hiji sistem nyababkeun masalah anu serius ngeunaan aréa permukaan serangan. Kombinasi sadaya alat sareng téknik anyar ieu ningkatkeun pisan pajeulitna pikeun ngabuktikeun kaamanan.

Ieu kudu dianggap yén sakabéh tumpukan cryptographic ieu rentan ka sagala rupa serangan dugi kabuktian sabalikna. Modél 'Move Fast and Break Things' Facebook anu kasohor teu tiasa dilarapkeun kana alat kriptografi anu ngolah data kauangan nasabah.

Libra gagal pikeun nerapkeun mékanisme panyalindungan konsumen

Fitur has tina sistem pamayaran nyaéta kamampuan pikeun ngagulung deui transaksi upami pamayaran dibatalkeun ku gugatan atanapi nyababkeun kagagalan sistem atanapi teu kahaja. Sistem Libra dirancang pikeun "lengkep" sareng henteu kalebet jinis transaksi pikeun pembatalan pamayaran. Di Inggris, sadaya pamayaran antara £100 sareng £30,000 tunduk kana Undang-undang Kredit Konsumen. Ieu ngandung harti yén sistem pembayaran babagi tanggung jawab jeung seller lamun aya masalah jeung produk dibeuli atawa lamun panarima pembayaran teu nyadiakeun layanan nu. Aturan anu sami berlaku di EU, Asia sareng Amérika Kalér.

Desain Libra ayeuna henteu kalebet protokol pikeun matuh hukum ieu sareng henteu gaduh rencana anu jelas pikeun nyiptakeunana. Malah parah, tina sudut pandang arsitéktur, finalitas struktur data anu dioténtikasi kernel, dumasar kana kaayaan drive Merkle, henteu ngamungkinkeun mékanisme pikeun nyiptakeun protokol sapertos kitu tanpa ngadesain ulang kernel.

Saatos ngalaksanakeun tinjauan téknis ngeunaan proyék ieu, urang tiasa nyimpulkeun yén éta ngan saukur moal lulus muster dina panalungtikan sistem anu disebarkeun atanapi jurnal rékayasa finansial. Pikeun nyobaan ngarobah kawijakan moneter global, jumlah badag karya teknis perlu dipigawé pikeun nyieun jaringan dipercaya jeung ngolah aman data pamaké nu bisa dipercaya ku masarakat jeung régulator.

Abdi henteu ningali alesan pikeun yakin yén Facebook parantos ngalaksanakeun padamelan anu diperyogikeun dina desainna pikeun ngatasi masalah téknis ieu atanapi yén éta ngagaduhan kaunggulan téknis pikeun infrastruktur ayeuna. Nyebutkeun yén perusahaan peryogi kalenturan pangaturan pikeun ngajalajah inovasi sanés alesan pikeun henteu ngalakukeunana heula.

sumber: www.habr.com

Tambahkeun komentar