ArhitektÅ«ras Å”izofrēnija Facebook Svari

Pēc diviem gadiem es atgriezos emuārā par ierakstu, kas atŔķiras no parastajām garlaicÄ«gajām lekcijām par Haskelu un matemātiku. Esmu strādājis pie fintech ES pēdējos dažus gadus, un Ŕķiet, ka ir pienācis laiks rakstÄ«t par tēmu, kurai tehnoloÄ£iju mediji ir pievērsuÅ”i maz uzmanÄ«bas.

Facebook nesen izlaida to, ko tā sauc par "jaunu finanÅ”u pakalpojumu platformu" ar nosaukumu Svari. Tā ir pozicionēta kā digitāla norēķinu sistēma, kuras pamatā ir starptautisko valÅ«tu grozs, kas tiek pārvaldÄ«ts ā€œblokķēdēā€ un tiek glabāts naudas fondā, ko pārvalda no Å veices. Projekta mērÄ·i ir ambiciozi un ietver liela mēroga Ä£eopolitiskas sekas.

Š’ Financial Times Šø New York Times Daudz saprātÄ«gu rakstu par nepareizajiem monetārajiem un ekonomiskajiem pieņēmumiem, kas slēpjas aiz ierosinātās finanÅ”u sistēmas. Taču nav pietiekami daudz speciālistu, kas spēj veikt analÄ«zi no tehniskā viedokļa. Ne daudzi cilvēki strādā pie finanÅ”u infrastruktÅ«ras un publiski runā par savu darbu, tāpēc Å”is projekts nesaņem lielu atspoguļojumu tehnoloÄ£iju medijos, lai gan tā iekÅ”puse ir atvērta pasaulei. Es domāju atvērto avotu krātuvēs Svari Šø Kalibra organizācija.

Pasaulei atvērtais ir arhitektoniski Å”izofrēnisks artefakts, kas apgalvo, ka tā ir droÅ”a platforma globālajai maksājumu infrastruktÅ«rai.

Ja iedziļināties koda bāzē, sistēmas faktiskā ievieÅ”ana pilnÄ«bā atŔķiras no izvirzÄ«tā mērÄ·a, turklāt visdÄ«vainākajā veidā. Esmu pārliecināts, ka Å”im projektam ir interesanta korporatÄ«vā vēsture. Tāpēc ir loÄ£iski pieņemt, ka tas tika izstrādāts ar zināmu rÅ«pÄ«bu, taču patiesÄ«bā es redzu patieŔām dÄ«vainu arhitektÅ«ras lēmumu kopumu, kas sagrauj visu sistēmu un pakļauj lietotājus riskam.

NepretendÄ“Å”u uz objektÄ«vu viedokli par Facebook kā uzņēmumu. Tikai daži cilvēki IT nozarē uz viņu raugās ar lÄ«dzjÅ«tÄ«bu. Taču tās paziņojumu un publicētā koda salÄ«dzinājums skaidri parāda, ka norādÄ«tais mērÄ·is ir bÅ«tÄ«bā maldinoÅ”s. ÄŖsāk sakot, Å”is projekts nevienam nedod tiesÄ«bas. ViņŔ paliks pilnÄ«bā uzņēmuma kontrolē, kura reklāmas bizness ir tik ļoti iegrimis skandālos un korupcijā, ka tam neatliek nekas cits kā mēģināt dažādot maksājumus un kredÄ«tvērtējumu, lai izdzÄ«votu. Skaidrs ilgtermiņa mērÄ·is ir darboties kā datu brokerim un starpniekam, lai patērētāji piekļūtu kredÄ«tam, pamatojoties uz viņu personÄ«gajiem sociālo mediju datiem. Å is ir absolÅ«ti Å”ausminoÅ”s un tumÅ”s stāsts, kas nesaņem pelnÄ«to uzmanÄ«bu.

VienÄ«gā Ŕī stāsta glābjoŔā žēlastÄ«ba ir tāda, ka viņu radÄ«tais artefakts ir tik smieklÄ«gi nepiemērots konkrētajam uzdevumam, ka to var uzskatÄ«t tikai par aizdomÄ«gu rÄ«cÄ«bu. Å ajā projektā ir vairākas lielas arhitektÅ«ras kļūdas:

Bizantijas Ä£enerāļu problēmas risināŔana piekļuves kontroles tÄ«klā ir nekonsekvents dizains

Bizantijas Ä£enerāļu problēma ir diezgan Å”aura sadalÄ«to sistēmu izpētes joma. Tas apraksta tÄ«kla sistēmas spēju izturēt nejauÅ”as komponentu atteices, vienlaikus veicot korektÄ«vas darbÄ«bas, kas ir bÅ«tiskas sistēmas darbÄ«bai. ElastÄ«gam tÄ«klam ir jāiztur vairāku veidu uzbrukumi, tostarp restartÄ“Å”ana, pārtraukumi, ļaunprātÄ«ga slodze un ļaunprātÄ«ga balsoÅ”ana vadÄ«bas vēlÄ“Å”anās. Tas ir galvenais lēmums Svaru arhitektÅ«rai, un tas Å”eit ir pilnÄ«gi bezjēdzÄ«gs.

Å Ä«s papildu struktÅ«ras laika sarežģītÄ«bas izmaksas ir atkarÄ«gas no algoritma. Ir daudz literatÅ«ras par Paxos un Raft protokolu variantiem, kas atrisina bizantieÅ”u Ä£enerāļu problēmu, taču visas Ŕīs struktÅ«ras rada papildu izmaksas saziņai. ArhitektÅ«ras Å”izofrēnija Facebook Svari lai saglabātu kvorumu. Svariem viņi izvēlējās algoritmu ar visaugstākajām iespējamām komunikācijas izmaksām ArhitektÅ«ras Å”izofrēnija Facebook Svari vadÄ«bas neveiksmes gadÄ«jumā. Un ir papildu pieskaitāmās izmaksas, ko rada potenciāla vadÄ«tāju pārvēlÄ“Å”ana vairāku veidu tÄ«kla kļūmes gadÄ«jumos.

Sistēmai, kas darbojas stingri regulētu starptautisku korporāciju konsorcijā, kur visiem lietotājiem ir Facebook parakstÄ«ts kods un piekļuvi tÄ«klam kontrolē Facebook, vienkārÅ”i nav jēgas uzskatÄ«t par ļaunprātÄ«giem dalÄ«bniekiem vienprātÄ«bas lÄ«menÄ«. Nav skaidrs, kāpēc Ŕī sistēma pat atrisinātu bizantieÅ”u Ä£enerāļu problēmu, nevis vienkārÅ”i uzturētu konsekventu audita izsekojamÄ«bu, lai pārbaudÄ«tu atbilstÄ«bu. Iespēja, ka Mastercard vai Andressen Horrowitz vadÄ«tais Libra mezgls pēkŔņi sāk palaist ļaunprātÄ«gu kodu, ir dÄ«vains scenārijs, ko plānot, un to labāk risināt, vienkārÅ”i nodroÅ”inot protokola integritāti un netehniskus (t.i., juridiskus) lÄ«dzekļus.

LiecÄ«bas Kongresam norādÄ«ja, ka produkts ir konkurents jauniem starptautiskajiem maksājumu protokoliem, piemēram, WeChat, Alipay un M-Pesa. Tomēr neviena no Ŕīm sistēmām nav paredzēta darbam ar pārbaudÄ«tāju kopām, lai atrisinātu bizantieÅ”u Ä£enerāļu problēmu. Tie ir vienkārÅ”i izstrādāti uz tradicionālo liela joslas platuma kopni, kas veido elektroinstalāciju saskaņā ar fiksētu noteikumu kopumu. Tā ir dabiska pieeja maksājumu sistēmas izstrādē. Labi izstrādāts maksājumu sistēma vienkārÅ”i nesaskarsies ar dubultu tēriņu un dakÅ”u problēmu.

VienprātÄ«bas algoritma pieskaitāmās izmaksas neatrisina nevienu problēmu un tikai ierobežo sistēmas caurlaidspēju bez cita iemesla, kā tikai publiskās blokķēdes kravas kulta dēļ, kas nav paredzēts Å”im lietoÅ”anas gadÄ«jumam.

Svariem nav darījumu privātuma

Saskaņā ar dokumentāciju sistēma ir izstrādāta, ņemot vērā pseidonimitāte, tas ir, protokolā izmantotās adreses tiek iegÅ«tas no publiskajām atslēgām eliptiskajās lÄ«knēs un nesatur metadatus par kontiem. Taču nekur organizācijas pārvaldÄ«bas struktÅ«ras aprakstā vai paŔā protokolā nav norādÄ«ts, kā darÄ«jumos iesaistÄ«tie ekonomiskie dati tiks paslēpti no vērtētājiem. Sistēma ir izstrādāta, lai plaŔā mērogā atkārtotu darÄ«jumus ar dažādām ārējām pusēm, kurām saskaņā ar esoÅ”ajiem Eiropas un ASV banku noslēpuma likumiem nevajadzētu bÅ«t informētiem par ekonomiskajām detaļām.

Datu politikas dažādās valstÄ«s ir grÅ«ti koordinējamas, jo Ä«paÅ”i ņemot vērā atŔķirÄ«gos tiesÄ«bu aktus un noteikumus dažādās jurisdikcijās ar atŔķirÄ«giem kultÅ«ras uzskatiem par datu aizsardzÄ«bu un privātumu. Pats protokols pēc noklusējuma ir pilnÄ«bā atvērts konsorcija dalÄ«bniekiem, kas ir acÄ«mredzams tehnisks trÅ«kums, kas neatbilst prasÄ«bām, kurām tas ir izstrādāts.

Libra HotStuff BFT nespēj sasniegt maksājumu sistēmai nepiecieÅ”amo caurlaidspēju

Apvienotajā Karalistē tādas klÄ«ringa sistēmas kā BAC spēj apstrādāt aptuveni 580 000 000 darÄ«jumu mēnesÄ«. Tajā paŔā laikā ļoti optimizētas sistēmas, piemēram, Visa, var apstrādāt 150 000 000 darÄ«jumu dienā. Veiktspēja mainās atkarÄ«bā no darÄ«juma lieluma, tÄ«kla marÅ”rutÄ“Å”anas, sistēmas slodzes un AML pārbaudes (naudas atmazgāŔanas apkaroÅ”ana, naudas atmazgāŔanas shēmas).

Svari cenÅ”as atrisināt problēmas, kas patiesÄ«bā nav problēmas iekÅ”zemes pārvedumiem, jo ā€‹ā€‹nacionālās valstis pēdējo desmit gadu laikā ir modernizējuÅ”as savu klÄ«ringa infrastruktÅ«ru. MazumtirdzniecÄ«bas patērētājiem Eiropas SavienÄ«bā naudas pārvietoÅ”ana nemaz nav problēma. Tradicionālajā infrastruktÅ«rā to var izdarÄ«t ar standarta viedtālruni dažu sekunžu laikā. Lieliem korporatÄ«vajiem pārskaitÄ«jumiem ir dažādi mehānismi un noteikumi, kas saistÄ«ti ar lielu naudas summu pārvietoÅ”anu.

Nav citu tehnisku iemeslu, kāpēc pārrobežu maksājumus nevarētu apstrādāt uzreiz, izņemot noteikumu un prasÄ«bu atŔķirÄ«bas starp attiecÄ«gajām jurisdikcijām. Ja nepiecieÅ”amie preventÄ«vie pasākumi (klienta izpēte, sankciju pārbaudes u.c.) tiek veiktas vairākas reizes dažādos darÄ«juma ķēdes posmos, tas var izraisÄ«t darÄ«juma aizkavÄ“Å”anos. Tomēr Ŕī kavÄ“Å”anās ir tikai regulējoÅ”o tiesÄ«bu aktu un atbilstÄ«bas, nevis tehnoloÄ£iju funkcija.

Patērētājiem nav iemesla, kāpēc Apvienotās Karalistes darÄ«jums netiktu nokārtots dažu sekunžu laikā. MazumtirdzniecÄ«bas darÄ«jumi ES patieŔām palēninās KYC pārbaude (PazÄ«sti savu klientu) un AML ierobežojumi, ko noteikuÅ”as valdÄ«bas un regulatori, kas vienlÄ«dz attiecas arÄ« uz Libra maksājumiem. Pat ja Facebook pārvarētu ŔķērŔļus pārrobežu pārsÅ«tÄ«Å”anai un privātai datu pārsÅ«tÄ«Å”anai, ierosinātais modelis ir simtiem cilvēkgadu attālumā no globālo darÄ«jumu caurlaidÄ«bas un, iespējams, bÅ«tu jāpārveido no nulles.

Svaru kustības valoda ir nepareiza

Baltajā grāmatā ir izteikti drosmÄ«gi apgalvojumi par jaunu, nepārbaudÄ«tu valodu ar nosaukumu Move. Å ie apgalvojumi ir diezgan apÅ”aubāmi no programmÄ“Å”anas valodas teorijas (PLT) viedokļa.

Move ir jauna programmÄ“Å”anas valoda pielāgotas darÄ«jumu loÄ£ikas un viedo lÄ«gumu ievieÅ”anai Svaru blokķēdē. Tā kā Svaru mērÄ·is ir kādu dienu kalpot miljardiem cilvēku, Move ir izstrādāta, lai droŔība bÅ«tu galvenā prioritāte.

Galvenā Move iezīme ir iespēja definēt patvaļīgus resursu tipus ar lineārās loģikas iedvesmotu semantiku.

Publiskajās blokķēdēs viedie lÄ«gumi saskaras ar publisko tÄ«klu loÄ£iku ar darÄ«juma kontiem, naudas atmazgāŔanu, ārpusbiržas žetonu izsniegÅ”anu un azartspēlēm. Tas viss tiek darÄ«ts satriecoÅ”i vāji izstrādātā valodā ar nosaukumu Solidity, kas no akadēmiskā viedokļa liek PHP autoram izskatÄ«ties pēc ģēnija. Savādi, Ŕķiet, ka jaunajai Facebook valodai nav nekāda sakara ar Ŕīm tehnoloÄ£ijām, jo ā€‹ā€‹patiesÄ«bā tā ir skriptu valoda, kas paredzēta neskaidriem uzņēmuma mērÄ·iem.

Privātajās izplatÄ«tajās virsgrāmatās viedie lÄ«gumi ir viens no tiem terminiem, kurus konsultanti izmanto, Ä«paÅ”i neņemot vērā skaidru definÄ«ciju vai mērÄ·i. Uzņēmumu programmatÅ«ras konsultanti parasti pelna naudu no neskaidrÄ«bas, un viedie lÄ«gumi ir korporatÄ«vā tumsonÄ«bas apoteoze, jo tos var definēt kā burtiski jebko.

Pēc apgalvojumu izteikÅ”anas par tās droŔību mums jāaplÅ«ko valodas semantika. PareizÄ«ba programmÄ“Å”anas valodas teorijā parasti sastāv no diviem dažādiem pierādÄ«jumiem: ā€œprogresaā€ un ā€œsaglabāŔanāsā€, kas nosaka visas valodas vērtÄ“Å”anas noteikumu telpas konsekvenci. Konkrētāk, tipu teorijā funkcija ir "lineāra", ja tā savu argumentu izmanto tieÅ”i vienu reizi, un "afÄ«na", ja tā to izmanto ne vairāk kā vienu reizi. Lineārā tipa sistēma nodroÅ”ina statisku garantiju, ka deklarētā lineārā funkcija ir patiesi lineāra, pieŔķirot tipus visām funkciju apakÅ”izteiksmēm un sekojot lÄ«dzi, kur tiek veikti zvani. Tas ir smalks Ä«paÅ”ums, kas jāpierāda, un to nav viegli ieviest visai programmai. Lineārā maŔīnrakstÄ«Å”ana joprojām ir ļoti akadēmiska studiju joma, ko ietekmē tipa unikalitātes ievieÅ”ana programmā Clean un tipa Ä«paÅ”umtiesÄ«bas ievieÅ”ana Rust. Ir daži provizoriski priekÅ”likumi lineāro tipu pievienoÅ”anai Glāzgovas Haskell kompilatoram.

Move apgalvojums par lineāro tipu izmantoÅ”anu Ŕķiet nepamatota nirÅ”ana kompilatorā, jo tādas tipa pārbaudes loÄ£ikas nav. Cik var spriest, baltajā grāmatā ir citēta Girarda un PÄ«rsa kanoniskā literatÅ«ra, un faktiskajā realizācijā nav nekā lÄ«dzÄ«ga.

Turklāt it kā droŔās valodas formālā semantika nekur neparādās ievieÅ”anā vai dokumentā. Valoda ir pietiekami maza, lai Coq vai Isabelle atrastu pilnÄ«gu pareizas semantikas pierādÄ«jumu. PatiesÄ«bā pilnÄ«gas konvertÄ“Å”anas kompilators ar pierādÄ«jumu pārsÅ«tÄ«Å”anu uz baitkodu ir pilnÄ«gi iespējams ieviest ar pēdējā desmitgadē izgudrotiem mÅ«sdienÄ«giem rÄ«kiem. Mēs zinām, kā to izdarÄ«t, sākot ar Džordža Nekulas un PÄ«tera LÄ« darbi vēl 1996. gadā.

No programmÄ“Å”anas valodas teorijas viedokļa nav iespējams pārbaudÄ«t apgalvojumu, ka Move ir uzticama un droÅ”a valoda, jo Å”ie apgalvojumi ir tÄ«ri roku vicināŔana un mārketings, nevis faktiski pierādÄ«jumi. Å Ä« ir satraucoÅ”a situācija valodas projektam, kuram tiek lÅ«gts apstrādāt darÄ«jumus miljardu dolāru vērtÄ«bā.

Svaru kriptogrāfija ir kļūdaina

DroÅ”u kriptosistēmu izveide ir ļoti sarežģīta inženiertehniska problēma, un vienmēr vislabāk ir pieiet darbam ar bÄ«stamu kodu ar lielu devu veselÄ«gas paranojas. Å ajā jomā ir gÅ«ti lieli sasniegumi, piemēram, Microsoft Everest projekts, kas veido pārbaudāmu droÅ”u TLS kaudze. RÄ«ki jau pastāv, lai izveidotu pārbaudāmus primitÄ«vus. Lai gan tas ir dārgi, tas acÄ«mredzami nepārsniedz Facebook ekonomiskās iespējas. Tomēr komanda nolēma nepiedalÄ«ties projektā, kas tika pasludināts par uzticamu globālās finanÅ”u sistēmas pamatu.

Svaru projekts atkarÄ«gs no vairākām diezgan jaunām bibliotēkām eksperimentālu kriptosistēmas izveidei, kas parādÄ«juŔās tikai pēdējos gados. Nav iespējams pateikt, vai atkarÄ«bas no tālāk norādÄ«tajiem rÄ«kiem ir droÅ”as vai nē, jo neviena no Ŕīm bibliotēkām nav pārbaudÄ«ta un tām nav standarta informācijas atklāŔanas politiku. Jo Ä«paÅ”i attiecÄ«bā uz dažām galvenajām bibliotēkām nav skaidrÄ«bas par aizsardzÄ«bu pret sānu kanālu uzbrukumiem un laika uzbrukumiem.

  1. ed25519-dalek
  2. līkne25519-dalek

Svaru bibliotēka kļūst vēl eksperimentālāka un sniedzas tālāk standarta modelis, izmantojot ļoti jaunas metodes, piemēram, pārbaudāmas nejauŔības funkcijas (VRF), bilineāros pārus un sliekŔņa parakstus. Å Ä«s metodes un bibliotēkas var bÅ«t saprātÄ«gas, taču to visu apvienoÅ”ana vienā sistēmā rada nopietnas bažas par uzbrukuma virsmas laukumu. Visu Å”o jauno rÄ«ku un metožu kombinācija ievērojami palielina droŔības pierādÄ«Å”anas sarežģītÄ«bu.

Jāpieņem, ka visa Ŕī kriptogrāfijas kaudze ir neaizsargāta pret dažādiem uzbrukumiem, lÄ«dz tiek pierādÄ«ts pretējais. Facebook slaveno ā€œMove Fast and Break Thingsā€ modeli nevar piemērot kriptogrāfijas rÄ«kiem, kas apstrādā klientu finanÅ”u datus.

Svariem neizdodas ieviest patērētāju aizsardzības mehānismus

Maksājumu sistēmas atŔķirÄ«ga iezÄ«me ir iespēja atsaukt darÄ«jumu, ja maksājums tiek atcelts tiesas prāvas dēļ vai izraisa nejauÅ”u vai sistēmas kļūmi. Sistēma Libra ir veidota tā, lai tā bÅ«tu "pilnÄ«ga", un tajā nav iekļauts darÄ«juma veids maksājuma atcelÅ”anai. Apvienotajā Karalistē uz visiem maksājumiem no Ā£100 lÄ«dz Ā£30,000 XNUMX attiecas Patēriņa kredÄ«tu likums. Tas nozÄ«mē, ka maksājumu sistēma dala atbildÄ«bu ar pārdevēju, ja rodas problēmas ar iegādāto preci vai ja maksājuma saņēmējs pakalpojumu nesniedz. LÄ«dzÄ«gi noteikumi ir spēkā ES, Āzijā un Ziemeļamerikā.

PaÅ”reizējais Svaru dizains neietver protokolu, lai ievērotu Å”os likumus, un nav skaidra plāna tā izveidei. Vēl sliktāk, no arhitektÅ«ras viedokļa kodola autentificētās datu struktÅ«ras galÄ«gums, kas balstÄ«ts uz Merkle diska stāvokli, neļauj nevienam mehānismam izveidot Ŕādu protokolu, nepārveidojot kodolu.

Pēc Ŕī projekta tehniskās apskates mēs varam secināt, ka tas vienkārÅ”i netiks iekļauts nevienā cienÄ«jamā izplatÄ«to sistēmu izpētes vai finanÅ”u inženierijas žurnālā. Lai mēģinātu mainÄ«t globālo monetāro politiku, ir jāveic milzÄ«gs tehniskais darbs, lai izveidotu uzticamu tÄ«klu un droÅ”u lietotāju datu apstrādi, kam sabiedrÄ«ba un regulatori var uzticēties.

Es neredzu iemeslu uzskatÄ«t, ka Facebook ir paveicis nepiecieÅ”amo darbu savā dizainā, lai pārvarētu Ŕīs tehniskās problēmas vai ka tam ir kādas tehniskas priekÅ”rocÄ«bas salÄ«dzinājumā ar paÅ”reizējo infrastruktÅ«ru. Teikts, ka uzņēmumam ir nepiecieÅ”ama regulējuma elastÄ«ba, lai izpētÄ«tu inovācijas, nav attaisnojums, lai tos neveiktu vispirms.

Avots: www.habr.com

Pievieno komentāru