Schizofrenia architettonica Facebook Libra

Dopu à dui anni, aghju tornatu à u blog per un postu chì difiere di e lezioni di solitu di Haskell è di matematica. Aghju travagliatu fintech in l'UE per l'ultimi anni è pare chì u tempu hè ghjuntu per scrive nantu à un tema chì hà ricevutu pocu attenzione da i media tecnulugichi.

Facebook hà liberatu recentemente ciò chì chjama una "nova piattaforma di servizii finanziarii" chjamata Libra. Hè posizionatu cum'è un sistema di settlement digitale basatu annantu à una cesta di valute internaziunali chì sò amministrati nantu à una "blockchain" è almacenati in un pool di soldi gestitu da Svizzera. I scopi di u prugettu sò ambiziosi è implicanu cunsequenze geopolitiche à grande scala.

В Times Financial и New York Times Un saccu di articuli sensibuli nantu à l'assunzioni monetarie è ecunomiche insanità daretu à u sistema finanziariu prupostu. Ma ùn ci sò abbastanza specialisti capaci di analizà da un puntu di vista tecnicu. Pochi persone travaglianu nantu à l'infrastruttura finanziaria è parlanu publicamente di u so travagliu, cusì stu prughjettu ùn riceve micca assai copertura in i media tecnulugichi, anche se i so interni sò aperti à u mondu. Vogliu dì open source in repository Libra и Urganizazione Calibra.

Ciò chì hè apertu à u mondu hè un artefattu architettonicamente schizofrenicu chì pretende esse una piattaforma sicura per l'infrastruttura di pagamentu globale.

Sè vo immerse in a basa di codice, l'implementazione attuale di u sistema diverge cumplitamenti da u scopu dichjaratu, è in i modi più strani. Sò sicuru chì stu prughjettu hà una storia corporativa interessante. Dunque, hè logicu di suppone chì hè statu cuncepitu cù una certa diligenza, ma in realtà vecu un inseme veramente stranu di decisioni architettoniche chì rompenu tuttu u sistema è mette l'utilizatori in risicu.

Ùn finteraghju micca di avè una opinione objetiva nantu à Facebook cum'è cumpagnia. Pocu persone in l'industria di l'IT a guardanu cun simpatia. Ma un paragone di e so dichjarazioni è u codice publicatu mostra chjaramente chì u scopu dichjaratu hè fundamentalmente ingannatu. In cortu, stu prughjettu ùn empowering nimu. Resterà interamente sottu à u cuntrollu di una sucietà chì a so attività di publicità hè cusì impastata di scandalu è di corruzzione chì ùn hà micca altra scelta ma di pruvà à diversificà i so pagamenti è u puntu di creditu per sopravvive. L'obiettivu chjaru à longu andà hè di agisce cum'è un broker di dati è intermediari in l'accessu di i cunsumatori à u creditu basatu annantu à i so dati persunali di e social media. Questa hè una storia assolutamente orribile è scura chì ùn riceve micca l'attenzione chì merita.

L'unica grazia di salvezza di sta storia hè chì l'artefattu chì anu creatu hè cusì hilarantemente inadatta à u compitu in manu chì pò esse vistu solu cum'è un attu di arroganza. Ci sò parechji errori architetturali maiò in stu prughjettu:

Risolviri u Problemi Generali Bizantini in una Rete di Control di Accessu hè un Disegnu Inconsistente

U prublema di i generali bizantini hè un spaziu piuttostu strettu di ricerca di sistemi distribuiti. Descrive l'abilità di un sistema di rete per resiste à i fallimenti di cumpunenti aleatorii mentre piglianu azzioni currettive critiche per u funziunamentu di u sistema. Una reta resiliente deve resiste à parechji tipi di attacchi, cumprese riavvii, interruzioni, carichi maliziusi è votu maliziusi in l'elezzioni di dirigenza. Questa hè a decisione principale per l'architettura Libra, è hè completamente senza significatu quì.

A cumplessità di u tempu di sta struttura addiziale dipende di l'algoritmu. Ci hè una mansa di letteratura nantu à varianti di i protokolli Paxos è Raft chì risolve u prublema di i generali bizantini, ma tutte queste strutture introducenu overhead supplementu per a cumunicazione. Schizofrenia architettonica Facebook Libra per mantene u quorum. Per Libra, anu sceltu un algoritmu cù u costu di cumunicazione più altu pussibule Schizofrenia architettonica Facebook Libra in casu di fallimentu di a dirigenza. È ci hè un overhead supplementu da a potenziale rielezzione di i dirigenti in parechji tippi di avvenimenti di fallimentu di a rete.

Per un sistema chì opera in un cunsorziu di corporazioni multinaziunali altamente regulate, induve tutti l'utilizatori anu u codice firmatu da Facebook è l'accessu à a reta hè cuntrullatu da Facebook, ùn hè micca sensu per cunsiderà i participanti maliziusi à u livellu di cunsensu. Ùn hè micca chjaru perchè stu sistema risolve ancu u prublema di i generali bizantini, piuttostu chè solu mantene una pista di auditu consistente per verificà a conformità. A pussibilità di un node Libra gestitu da Mastercard o Andressen Horrowitz di colpu chì principia à eseguisce un codice maliziusu hè un scenariu stranu per pianificà è hè megliu indirizzatu solu assicurendu l'integrità di u protokollu è i mezi non tecnichi (vale à dì legali).

Testimoniu à u Cungressu fattura u pruduttu cum'è un cuncurrente à novi protokolli di pagamentu internaziunali cum'è WeChat, Alipay è M-Pesa. Tuttavia, nimu di sti sistemi sò disignati à curriri nantu à piscine di validatori per risolve u prublema di generale bizantinu. Sò simpricimenti cuncepiti nantu à un busu tradiziunale di larghezza di banda alta chì face u cablaggio secondu un settore fissu di regule. Questu hè un approcciu naturali per cuncepisce un sistema di pagamentu. Ben cuncepitu u sistema di pagamentu simpricimenti ùn vi scuntrà u prublema di doppia spesa è forks.

U sopratuttu di l'algoritmu di cunsensu ùn risolve micca ogni prublema è limita solu u throughput di u sistema per nisuna raghjone altru ch'è u cultu di carica di u bloccu publicu, chì ùn hè micca pensatu per questu casu d'usu.

Libra ùn hà micca a privacy di transazzione

Sicondu a documentazione, u sistema hè cuncepitu per piglià in contu pseudonimia, vale à dì, l'indirizzi utilizati in u protokollu sò ottenuti da i chjavi publichi nantu à e curve ellittiche è ùn cuntenenu micca metadata nantu à i cunti. In ogni casu, nimu in a descrizzione di a struttura di guvernanza per l'urganizazione o in u protokollu stessu ùn indica cumu e dati ecunomichi implicati in e transazzione seranu oculati da i validatori. U sistema hè pensatu per riplicà e transazzione à grande scala à una serie di partiti esterni chì, sottu à e leggi di segretezza bancaria europee è americane esistenti, ùn deve micca esse privy à i dettagli ecunomichi.

E pulitiche di dati in tutti i paesi sò difficiuli di coordinà, soprattuttu datu leggi è regulamenti disparati in diverse ghjuridizione cù diverse visioni culturali nantu à a prutezzione di dati è a privacy. U protokollu stessu hè per automaticamente apertu à i membri di u cunsorziu, chì hè un difettu tecnicu chjaru chì ùn risponde micca à i requisiti per i quali hè designatu.

Libra HotStuff BFT ùn hè micca capaci di ottene u throughput necessariu per un sistema di pagamentu

In u Regnu Unitu, i sistemi di compensazione cum'è BAC sò capaci di gestisce circa 580 000 000 transazzioni per mese. À u listessu tempu, sistemi altamente ottimizzati cum'è Visa ponu processà 150 000 000 transazzioni per ghjornu. U rendiment varieghja secondu a dimensione di a transazzione, u routing di a rete, a carica di u sistema è I cuntrolli AML (anti-lavaggiu di soldi, schemi di blanchimentu di soldi).

Libra prova di risolve i prublemi chì ùn sò micca veramente prublemi per i trasferimenti domestici, postu chì i stati nazioni anu mudernizatu a so infrastruttura di sbulicità in l'ultima decada. Per i cunsumatori di vendita in l'Unione Europea, u muvimentu di soldi ùn hè micca un prublema. In infrastruttura tradiziunale, questu pò esse fattu cù un smartphone standard in sicondi. Per i grandi trasferimenti corporativi, ci sò diversi miccanismi è regule assuciati à u muvimentu di grandi quantità di soldi.

Ùn ci hè micca un mutivu tecnicu per quessa chì i pagamenti transfrontieri ùn ponu ancu esse processati istantaneamente, salvu e differenze di regule è esigenze trà e ghjuridizione pertinenti. Se e misure preventive necessarie (diligenza di u cliente, cuntrolli di sanzioni, etc.) sò realizati parechje volte in diverse tappe di a catena di transazzione, questu pò esse un ritardu in a transazzione. Tuttavia, stu ritardu hè puramente una funzione di a legislazione regulatoria è u rispettu, micca a tecnulugia.

Per i cunsumatori, ùn ci hè nisuna ragione per quessa chì una transazzione in u Regnu Unitu ùn hè micca chjaru in una materia di sicondi. E transazzioni di vendita in l'UE sò veramente rallentate Verificate KYC (Sapete u vostru Cliente) è e restrizioni AML imposte da i guverni è i regulatori, chì si applicanu ugualmente à i pagamenti Libra. Ancu s'è Facebook era per superà l'ostaculi à i trasferimenti transfrontieri è i trasferimenti di dati privati, u mudellu prupostu hè à centinaie di persone-anni di distanza da u throughput di transazzione glubale è prubabilmente deve esse riprogettatu da zero.

A lingua Libra Move hè sbagliata

U libru biancu face rivendicazioni audaci nantu à una nova lingua senza teste chjamata Move. Sti dichjarazioni sò abbastanza dubbiosi da u puntu di vista di a teoria di lingua di prugrammazione (PLT).

Move hè una nova lingua di prugrammazione per implementà a logica di transazzione persunalizata è cuntratti intelligenti nantu à a blockchain Libra. Perchè Libra hà u scopu di serve un ghjornu miliardi di persone, Move hè cuncepitu cù a sicurità cum'è una priorità maiò.

Una caratteristica chjave di Move hè a capacità di definisce tipi di risorse arbitrarie cù una semantica inspirata da a logica lineare.

In i blockchains publichi, i cuntratti intelligenti facenu a logica di e rete pubbliche cù cunti escrow, lavaggiu di soldi, emissione di token OTC è ghjoculi d'azzardo. Tuttu chistu hè fattu in una lingua stunningly poverly designata chjamata Solidità, chì da un puntu di vista accademicu face chì l'autore di PHP pare un geniu. Curiosamente, a nova lingua di Facebook pare ùn avè nunda di fà cù queste tecnulugii, postu chì hè in realtà una lingua di scripting destinata à scopi oscuri di l'impresa.

In i registri privati ​​distribuiti, i cuntratti intelligenti sò unu di quelli termini lanciati da i cunsultanti senza assai rispettu per una definizione o un scopu chjaru. I cunsultanti di u software di l'impresa sò tipicamente guadagnà soldi da l'ambiguità, è i cuntratti intelligenti sò l'apoteosi di l'oscurantisimu corporativu perchè ponu esse definiti cum'è literalmente qualcosa.

Dopu avè fattu rivindicazione nantu à a so sicurità, ci vole à fighjà a semantica di a lingua. A correttezza in a teoria di a lingua di prugrammazione hè tipicamente custituita da duie prove diverse: "prugressu" è "preservazione", chì determinanu a coherenza di tuttu u spaziu di e regule di valutazione per a lingua. Più specificamente, in a teoria di u tipu, una funzione hè "lineare" s'ellu usa u so argumentu una volta, è "affine" s'ellu si usa più una volta. U sistema di tippu lineare furnisce una garanzia statica chì una funzione lineare dichjarata hè veramente lineare assignendu tipi à tutte e subespressioni di funzione è seguite a traccia di induve sò fatte e chjama. Questa hè una pruprietà sottile per pruvà è ùn hè micca faciule da implementà per un prugramma sanu. A tipografia lineare hè sempre un campu di studiu assai accademicu, influenzatu da l'implementazione di l'unicità di u tipu in Clean è a pruprietà di u tipu in Rust. Ci hè parechje pruposte preliminari per aghjunghje tipi lineari à u Glasgow Haskell Compiler.

A dichjarazione di Move nantu à l'usu di i tipi lineari pare cum'è una immersione ingiustificata in u compilatore, da quì ùn ci hè micca una tale logica di cuntrollu di tipu. In quantu si pò dì, u whitepaper cita a literatura canonica da Girard è Peirce, è ùn ci hè nunda di simile in l'implementazione attuale.

Inoltre, a semantica formale di a lingua suppostamente sicura ùn si prisenta in nulla in l'implementazione o in u documentu. A lingua hè abbastanza chjuca per truvà una prova cumpleta di a semantica curretta in Coq o Isabelle. In realità, un compilatore di cunversione cumpletu end-to-end cun trasferimentu di prova à bytecode hè abbastanza pussibule di implementà cù strumenti muderni inventati in l'ultima decada. Sapemu cumu fà, cuminciendu opere di George Necula è Peter Lee torna in u 1996.

Da una perspettiva di a teoria di u linguaghju di prugrammazione, hè impussibile di pruvà l'affirmazione chì Move hè una lingua affidabile è sicura, postu chì queste rivendicazioni sò in puri movimenti di manu è marketing piuttostu cà evidenza reale. Questa hè una situazione alarmante per un prughjettu di lingua chì hè dumandatu à processà miliardi di dollari di transazzione.

A criptografia di Libra hè difettu

Custruì sistemi di criptu sicuru hè un prublema di ingegneria assai difficiule, è hè sempre megliu avvicinà à travaglià cù codice periculosu cù una bona dosa di paranoia sana. Ci sò grandi scontri in questa zona, cum'è u prughjettu Microsoft Everest, chì custruisce una sicura verificabile. Stack TLS. Strumenti esistenu digià per creà primitivi verificabili. Ancu s'ellu hè caru, ùn hè chjaramente micca fora di e capacità economiche di Facebook. In ogni casu, a squadra hà decisu di ùn participà à u prugettu, chì hè statu annunziatu cum'è un fundamentu affidabile per u sistema finanziariu glubale.

prughjettu libra dipende da parechje biblioteche abbastanza novi per a creazione di criptosistemi sperimentali chì sò apparsu solu in l'ultimi anni. Hè impussibile di dì chì e dependenzii di e seguenti strumenti sò sicuri o micca, postu chì nimu di sti biblioteche sò stati auditati è ùn anu micca pulitiche di divulgazione standard. In particulare, per alcune biblioteche core ùn ci hè micca certezza in quantu à a prutezzione contra l'attacchi di u canali laterali è l'attacchi di timing.

  1. ed25519-dalek
  2. curve25519-dalek

A biblioteca diventa ancu più sperimentale è va oltre mudellu standard, applicà tecnichi assai novi cum'è funzioni aleatorii verificabili (VRF), coppie bilineari è signatures di soglia. Questi metudi è biblioteche ponu esse ragiunate, ma cumminendu tutti in un sistema suscita gravi preoccupazioni per a superficia di attaccu. A cumminazzioni di tutti sti novi arnesi è tecniche aumenta assai a cumplessità di pruvà a sicurità.

Si deve esse presumitu chì tutta sta pila criptografica hè vulnerabile à diversi attacchi finu à pruvucà altrimenti. U famosu mudellu di Facebook "Move Fast and Break Things" ùn pò micca esse appiicatu à l'arnesi criptografici chì processanu i dati finanziarii di i clienti.

Libra ùn riesce à implementà miccanismi di prutezzione di i cunsumatori

Una caratteristica distintiva di u sistema di pagamentu hè a capacità di rinvià una transazzione se u pagamentu hè annullatu da una demanda o porta à un fallimentu accidentale o di u sistema. U sistema Libra hè pensatu per esse "cumpletu" è ùn include micca un tipu di transazzione per annullamentu di pagamentu. In u Regnu Unitu, tutti i pagamenti trà £ 100 è £ 30,000 sò sottumessi à l'Attu di Creditu di u Consumatore. Questu significa chì u sistema di pagamentu sparte a rispunsabilità cù u vinditore in casu di prublema cù u pruduttu acquistatu o se u destinatariu di u pagamentu ùn furnisce micca u serviziu. Regoli simili si applicanu in l'UE, l'Asia è l'America di u Nordu.

U disignu attuale di Libra ùn include micca un protokollu per rispettà queste liggi è ùn hà micca un pianu chjaru per creà unu. Ancu peggiu, da una prospettiva architettonica, a finalità di a struttura di dati autentificata di u kernel, basatu annantu à u statu di l'unità Merkle, ùn permettenu micca micca miccanisimu per creà un tali protokollu senza redesigning u kernel.

Dopu avè realizatu una rivisione tecnica di stu prughjettu, pudemu cuncludi chì simpricimenti ùn passerà micca riunione in alcuna ricerca di sistemi distribuiti rispettati o ghjurnale di ingegneria finanziaria. Per pruvà à cambià a pulitica monetaria glubale, una grande quantità di travagliu tecnicu deve esse fattu per creà una reta affidativa è un prucessu sicuru di dati d'utilizatori chì u publicu è i regulatori ponu fiducia.

Ùn vecu nisuna ragione per crede chì Facebook hà fattu u travagliu necessariu in u so disignu per superà questi prublemi tecnichi o chì hà qualchì vantaghju tecnicu nantu à l'infrastruttura attuale. Dice chì una cumpagnia hà bisognu di flessibilità regulatoria per scopre l'innuvazioni ùn hè micca una scusa per ùn fà micca prima.

Source: www.habr.com

Add a comment