Архитектуралык шизофрения Facebook Libra

Эки жыл өткөндөн кийин, мен Хаскелл жана математика жөнүндө адаттагы кызыксыз лекциялардан айырмаланган пост үчүн блогго кайтып келдим. Мен акыркы бир нече жылдан бери ЕБде финтех боюнча иштеп жатам жана технологиялык медиа аз көңүл бурган тема жөнүндө жазууга убакыт келди окшойт.

Жакында Facebook Libra деп аталган "жаңы каржылык кызматтар платформасын" чыгарды. Ал "блокчейнде" башкарылуучу жана Швейцариядан башкарылган акча бассейнинде сакталган эл аралык валюталардын корзинасына негизделген санариптик эсептешүү системасы катары жайгашкан. Долбоордун максаттары амбициялуу жана масштабдуу геосаясий кесепеттерге алып келет.

В Financial Times и New York Times Сунушталган каржы тутумунун артындагы туура эмес акча-кредиттик жана экономикалык божомолдор жөнүндө көптөгөн акылга сыярлык макалалар. Бирок техникалык жактан талдоо жүргүзүүгө жөндөмдүү адистер жетишсиз. Финансылык инфраструктурада көп адамдар иштешпейт жана алардын иши жөнүндө ачык айтышат, ошондуктан бул долбоор технологиялык маалымат каражаттарында көп чагылдырылбайт, бирок анын ички дүйнөсү ачык. Мен репозиторийлердеги ачык булак дегеним Libra и Calibra уюму.

Дүйнөгө ачык болгон нерсе - бул глобалдык төлөм инфраструктурасы үчүн коопсуз платформа боло турган архитектуралык шизофрениялык артефакт.

Эгер сиз коддук базага кирсеңиз, системанын иш жүзүндө аткарылышы айтылган максаттан жана эң таң калыштуу жолдор менен толугу менен айырмаланат. Бул долбоордун кызыктуу корпоративдик тарыхы бар экенине ишенем. Ошентип, ал кандайдыр бир тырышчаактык менен иштелип чыккан деп ойлошубуз логикалык, бирок чындыгында мен бүт системаны бузуп, колдонуучуларды тобокелге салган таң калыштуу архитектуралык чечимдерди көрүп жатам.

Мен компания катары Фейсбук тууралуу объективдүү пикирим бар деп көрүнбөйм. IT тармагында ага боор ооруган адамдар аз. Бирок анын билдирүүлөрү менен жарыяланган кодексти салыштыруу айтылган максат түп-тамырынан бери алдамчы экенин ачык көрсөтүп турат. Кыскасы, бул долбоор эч кимге мүмкүнчүлүк бербейт. Ал толугу менен жарнак бизнеси жаңжалга жана коррупцияга баткан компаниянын көзөмөлүндө кала берет, ошондуктан ал аман калуу үчүн төлөмдөрдү жана кредиттик баллды диверсификациялоого аракет кылуудан башка аргасы жок. Так узак мөөнөттүү максат - жеке социалдык медиа маалыматтарынын негизинде керектөөчүлөрдүн кредитке жетүүдө маалымат брокери жана ортомчу катары иш алып баруу. Бул абдан коркунучтуу жана караңгы окуя, ага татыктуу көңүл бурулбайт.

Бул окуянын бирден-бир куткаруучу ырайымы - алар жараткан артефакт ушунчалык күлкүлүү түрдө тапшырмага ылайыксыз болгондуктан, аны текебердик катары гана көрүүгө болот. Бул долбоордо бир нече негизги архитектуралык каталар бар:

Мүмкүнчүлүктөрдү башкаруу тармагында Византиялык генералдардын көйгөйүн чечүү – дал келбеген долбоор

Византия генералдарынын көйгөйү бөлүштүрүлгөн системаларды изилдөөнүн бир кыйла тар чөйрөсү. Бул системанын иштеши үчүн маанилүү түзөтүүчү иш-аракеттерди кабыл алууда, тармак тутумунун кокус компоненттердин бузулууларына туруштук берүү жөндөмүн сүрөттөйт. Туруктуу тармак бир нече чабуулдарга туруштук бериши керек, анын ичинде кайра баштоо, өчүрүүлөр, зыяндуу жүктөөлөр жана лидерликти шайлоодо зыяндуу добуш берүү. Бул Тараза архитектурасы үчүн негизги чечим болуп саналат жана бул таптакыр маанисиз.

Бул кошумча структуранын убакыт татаалдыгы алгоритмге көз каранды. Византия генералдарынын маселесин чечүүчү Paxos жана Raft протоколдорунун варианттары боюнча көптөгөн адабияттар бар, бирок бул түзүмдөрдүн бардыгы байланыш үчүн кошумча чыгымдарды киргизет. Архитектуралык шизофрения Facebook Libra кворумду сактоо. Таразалар үчүн алар эң жогорку байланыш баасы менен алгоритмди тандашкан Архитектуралык шизофрения Facebook Libra жетекчи-ликке жетишпеген учурда. Тармактын бузулууларынын бир нече түрлөрү боюнча лидерлерди кайра шайлоодон кошумча чыгымдар бар.

Бардык колдонуучулар Facebook тарабынан кол коюлган кодго ээ болгон жана тармакка кирүү Facebook тарабынан көзөмөлдөнгөн жогорку деңгээлде жөнгө салынган көп улуттуу корпорациялардын консорциумунун алкагында иштеген система үчүн зыяндуу катышуучуларды консенсус деңгээлинде кароонун мааниси жок. Эмне үчүн бул система шайкештикти текшерүү үчүн ырааттуу аудит изи менен жүрүүнүн ордуна, византиялык генералдардын көйгөйүн чече турганы белгисиз. Mastercard же Andressen Horrowitz тарабынан башкарылган Libra түйүнүн күтүлбөгөн жерден зыяндуу кодду иштете башташы мүмкүн - пландоо үчүн кызыктай сценарий жана жөн гана протоколдун бүтүндүгүн жана техникалык эмес (б.а. юридикалык) каражаттарды камсыз кылуу менен жакшыраак чечилет.

Конгресске берилген көрсөтмөлөр продуктуну WeChat, Alipay жана M-Pesa сыяктуу жаңы эл аралык төлөм протоколдоруна атаандаш катары көрсөткөн. Бирок, бул системалардын бири да Византия генералдарынын көйгөйүн чечүү үчүн валидатор бассейндеринде иштөө үчүн иштелип чыккан. Алар жөн гана эрежелердин белгиленген топтомуна ылайык зымдарды өткөрүүчү салттуу жогорку өткөрмө автобуста иштелип чыккан. Бул төлөм системасын иштеп чыгуу үчүн табигый ыкма болуп саналат. Жакшы иштелип чыккан төлөм системасы эки эселенген чыгымдар жана айрылардын көйгөйүнө туш болбойт.

Консенсус алгоритминин ашыкча чыгымы эч кандай көйгөйдү чечпейт жана бул колдонууга арналбаган коомдук блокчейндин жүк культунан башка эч кандай себепсиз системанын өткөрүү жөндөмдүүлүгүн чектейт.

Libra транзакциянын купуялуулугуна ээ эмес

Документке ылайык, система эске алуу менен иштелип чыккан псевдонимдүүлүк, башкача айтканда, протоколдо колдонулган даректер эллиптикалык ийри сызыктардагы ачык ачкычтардан алынат жана эсептер жөнүндө метаберилиштерди камтыбайт. Бирок, уюм үчүн башкаруу структурасынын сыпаттамасынын эч бир жеринде же протоколдун өзүндө транзакцияларга катышкан экономикалык маалыматтар валидаторлордон кантип жашырыла турганы көрсөтүлгөн эмес. Система Европанын жана АКШнын банктык сырды сактоо боюнча колдонуудагы мыйзамдарына ылайык, экономикалык деталдарды билбеши керек болгон тышкы тараптарга кеңири масштабдагы транзакцияларды кайталоо үчүн иштелип чыккан.

Өлкөлөр боюнча маалымат саясатын координациялоо кыйын, айрыкча маалыматтарды коргоо жана купуялуулук боюнча ар кандай маданий көз караштары бар ар кандай юрисдикциялардагы ар башка мыйзамдарды жана эрежелерди эске алуу менен. Протоколдун өзү демейки боюнча консорциумдун мүчөлөрү үчүн толугу менен ачык, бул ал иштелип чыккан талаптарга жооп бербеген ачык-айкын техникалык кемчилик.

Libra HotStuff BFT төлөм системасы үчүн талап кылынган өткөрүү жөндөмдүүлүгүнө жете албайт

Улуу Британияда BAC сыяктуу клирингдик системалар айына 580 000 000 транзакцияларды жүргүзүүгө жөндөмдүү. Ошол эле учурда, Visa сыяктуу жогорку оптималдаштырылган системалар күнүнө 150 000 000 транзакцияны иштете алат. Өндүрүмдүүлүк транзакциянын өлчөмүнө, тармактын багыттоосуна, системанын жүгүнө жана ж AML текшерет (кылмыштуу кирешелерди адалдоого, арам акчаны адалдоого каршы схемалар).

Таразалар ички трансферттер үчүн чындап эле көйгөй болбогон көйгөйлөрдү чечүүгө аракет кылууда, анткени улуттук мамлекеттер акыркы он жылдын ичинде клирингдик инфраструктурасын модернизациялашты. Европа Биримдигиндеги чекене керектөөчүлөр үчүн акчаны жылдыруу такыр эле көйгөй эмес. Салттуу инфраструктурада муну стандарттуу смартфон менен секунданын ичинде жасоого болот. Ири корпоративдик которуулар үчүн чоң суммадагы акчаны которуу менен байланышкан ар кандай механизмдер жана эрежелер бар.

Тийиштүү юрисдикциялардын ортосундагы эрежелердеги жана талаптардагы айырмачылыктардан башка, трансчек аралык төлөмдөрдү заматта иштетүүгө мүмкүн болбогон эч кандай техникалык себеп жок. Эгерде зарыл болгон алдын алуу чаралары (кардарларды тийиштүү текшерүү, санкцияларды текшерүү, ж. Бирок, бул кечигүү технологиянын эмес, жөнгө салуучу мыйзамдардын жана шайкештиктин функциясы.

Керектөөчүлөр үчүн Улуу Британиядагы транзакция бир нече секунданын ичинде тазаланбай калышына эч кандай себеп жок. ЕБде чекене транзакциялар чындап эле басаңдап баратат KYC текшерүү (Кордарыңызды билиңиз) жана AML чектөөлөрү өкмөттөр жана жөнгө салуучулар тарабынан коюлган, алар Libra төлөмдөрүнө бирдей колдонулат. Фейсбук трансчегаралык жана жеке маалыматтарды өткөрүп берүүдөгү тоскоолдуктарды жеңе турган болсо да, сунушталган модель дүйнөлүк транзакция өткөрүү мүмкүнчүлүгүнөн жүздөгөн жылдар алыс жана нөлдөн баштап кайра иштелип чыгышы керек болот.

Libra Move тили туура эмес

Ак кагазда Move деп аталган жаңы, текшерилбеген тил жөнүндө тайманбастык менен дооматтар айтылат. Бул билдирүүлөр программалоо тилинин теориясынын (PLT) көз карашынан алганда өтө күмөндүү.

Move бул Libra блокчейниндеги транзакциялардын логикасын жана акылдуу келишимдерди ишке ашыруу үчүн жаңы программалоо тили. Libra бир күнү миллиарддаган адамдарга кызмат кылууну максат кылгандыктан, Move биринчи кезекте коопсуздукту эске алуу менен иштелип чыккан.

Move'дун негизги өзгөчөлүгү сызыктуу логикадан шыктанган семантика менен ыктыярдуу ресурс түрлөрүн аныктоо мүмкүнчүлүгү болуп саналат.

Коомдук блокчейндерде акылдуу келишимдер эскроу эсептери, акчаны адалдоо, OTC токендерин чыгаруу жана кумар оюндары менен коомдук тармактардын логикасына туш болушат. Мунун баары укмуштуудай начар иштелип чыккан Solidity тилинде жасалат, бул академиялык көз караштан алганда PHP авторун генийдей кылып көрсөтөт. Кызык жери, Фейсбуктун жаңы тили бул технологиялар менен эч кандай байланышы жоктой сезилет, анткени бул иш жүзүндө түшүнүксүз ишкана максаттары үчүн арналган скрипт тили.

Жеке бөлүштүрүлгөн китептерде акылдуу контракттар так аныктама же максатка көп маани бербестен консультанттар тарабынан ыргытылган терминдердин бири болуп саналат. Ишкана программалык камсыздоо боюнча консультанттар, адатта, түшүнүксүздүктөн акча табышат жана акылдуу келишимдер корпоративдик караңгылыктын апотеозу болуп саналат, анткени аларды түзмө-түз каалаган нерсе катары аныктоого болот.

Анын коопсуздугу боюнча дооматтарды айткандан кийин, биз тилдин семантикасын карашыбыз керек. Программалоо тилинин теориясындагы тууралык адатта эки башка далилден турат: тил үчүн баалоо эрежелеринин бүт мейкиндигинин ырааттуулугун аныктаган “прогресс” жана “сактоо”. Тагыраак айтканда, тип теориясында функция аргументин так бир жолу колдонсо "сызыктуу", ал эми эң көп дегенде бир жолу колдонсо "аффиндик" болот. Сызыктуу типтеги система бардык функциянын ички туюнтмаларына типтерди ыйгаруу жана чалуулардын кайда аткарылганына көз салуу менен жарыяланган сызыктуу функциянын чындап сызыктуу экендигине статикалык кепилдикти камсыз кылат. Бул далилдөө үчүн тымызын касиет жана бүтүндөй программаны ишке ашыруу оңой эмес. Сызыктуу терүү дагы эле абдан академиялык изилдөө тармагы болуп саналат, ал таза типтеги уникалдуулукту ишке ашыруунун таасири астында жана Руста типке ээлик кылат. Глазго Хаскелл компиляторуна сызыктуу типтерди кошуу үчүн кээ бир алдын ала сунуштар бар.

Move'дун сызыктуу түрлөрүн колдонуу жөнүндө билдирүүсү компиляторго негизсиз сүңгүп жаткандай сезилет, анткени ал жерде Мындай текшерүү логикасы жок. Белгилүү болгондой, ак кагазда Жирард менен Пирстен канондук адабияттар келтирилген жана иш жүзүндө ишке ашырууда окшош эч нерсе жок.

Кошумчалай кетсек, коопсуз тилдин формалдуу семантикасы ишке ашырууда да, документте да жок. Кок же Изабелде туура семантиканын толук далилин табуу үчүн тил жетиштүү. Чындыгында, байт-кодго далил өткөрүү менен аягына чейин толук конвертациялоочу компиляторду акыркы он жылда ойлоп табылган заманбап инструменттер менен ишке ашыруу толук мүмкүн. Биз аны кантип жасоону билебиз, баштап Джордж Некуланын жана Питер Линин эмгектери кайра 1996-жылы.

Программалоо тилинин теориясынын көз карашынан алганда, Move ишенимдүү жана коопсуз тил деген дооматты сынап көрүү мүмкүн эмес, анткени бул дооматтар чыныгы далилдер эмес, таза кол булгалоо жана маркетинг болуп саналат. Бул миллиарддаган долларлык транзакцияларды иштетүүнү талап кылган тил долбоору үчүн кооптуу жагдай.

Libra криптографиясы кемчиликтүү

Коопсуз криптосистемаларды куруу - бул өтө татаал инженердик маселе жана ден-соолукка пайдалуу паранойиянын жакшы дозасы менен кооптуу код менен иштөөгө ар дайым эң жакшы. Бул чөйрөдө текшериле турган коопсуздукту куруп жаткан Microsoft Everest долбоору сыяктуу чоң жетишкендиктер бар. TLS стек. Текшерилүүчү примитивдерди түзүү үчүн куралдар мурунтан эле бар. Бул кымбат болсо да, Facebookтун экономикалык мүмкүнчүлүктөрүнөн тышкары эмес. Бирок, команда дүйнөлүк каржы системасынын ишенимдүү пайдубалы деп жарыяланган долбоорго катышпоону чечти.

тараза долбоору Бул көз каранды акыркы бир нече жылда гана пайда болгон эксперименталдык криптосистемаларды түзүү үчүн бир нече жаңы китепканалардан. Төмөнкү инструменттер боюнча көз карандылык коопсуз же коопсуз эмес деп айтуу мүмкүн эмес, анткени бул китепканалардын бири да текшерилбеген жана стандарттуу ачыктоо саясаты жок. Атап айтканда, кээ бир негизги китепканалар үчүн каптал-канал чабуулдарынан жана убакыт чабуулдарынан коргоо боюнча эч кандай ишеним жок.

  1. ed25519-dalek
  2. curve25519-далек

Libra китепканасы ого бетер эксперименталдык болуп, чегинен чыгып кетет стандарттуу модель, текшерилүүчү кокус функциялар (VRFs), билинардык жуптар жана босого кол тамгалар сыяктуу абдан жаңы ыкмаларды колдонуу. Бул ыкмалар жана китепканалар акылга сыярлык болушу мүмкүн, бирок алардын бардыгын бир системага бириктирүү чабуулдун бетинин аянтына байланыштуу олуттуу кооптонууну жаратат. Бардык бул жаңы инструменттердин жана ыкмалардын айкалышы коопсуздукту далилдөөнүн татаалдыгын бир топ жогорулатат.

Бул толугу менен криптографиялык стек башкасы далилденмейинче, ар кандай чабуулдарга алсыз деп божомолдоого болот. Фейсбуктун атактуу "Fast and Break Things" моделин кардарлардын финансылык маалыматтарын иштеткен криптографиялык куралдарга колдонууга болбойт.

Таразалар керектөөчүлөрдүн укугун коргоо механизмдерин ишке ашыра албайт

Төлөм системасынын айырмалоочу өзгөчөлүгү, эгерде төлөм соттук териштирүүлөр менен жокко чыгарылса же кокусунан же системанын бузулушуна алып келсе, транзакцияны артка кайтаруу мүмкүнчүлүгү. Libra системасы "толук" болуп иштелип чыккан жана төлөмдү жокко чыгаруу үчүн транзакциянын түрүн камтыбайт. Улуу Британияда £ 100 жана £ 30,000 ортосундагы бардык төлөмдөр Керектөө кредити мыйзамына ылайык жүргүзүлөт. Бул төлөм системасы сатылып алынган продукт менен көйгөй жаралса же төлөмдү алуучу кызматты көрсөтпөсө, сатуучу менен жоопкерчиликти бөлүшөт дегенди билдирет. Окшош эрежелер ЕБде, Азияда жана Түндүк Америкада колдонулат.

Таразанын учурдагы дизайны бул мыйзамдарды сактоо үчүн протоколду камтыбайт жана аны түзүүнүн так планы жок. Андан да жаманы, архитектуралык көз караштан алганда, Merkle дискинин абалына негизделген ядронун аутентификацияланган маалымат структурасынын акыркылыгы, ядрону кайра конструкциялоосуз мындай протоколду түзүүгө эч кандай механизмге жол бербейт.

Бул долбоордун техникалык кароосунан өткөндөн кийин, ал жөн гана кандайдыр бир кадыр-барктуу бөлүштүрүлгөн системаларды изилдөө же каржылык инженерия журналында чогултулбайт деп жыйынтык чыгарсак болот. Дүйнөлүк акча-кредит саясатын өзгөртүүгө аракет кылуу үчүн, коомчулук жана жөнгө салуучу органдар ишене турган ишенимдүү тармакты түзүү жана колдонуучунун маалыматтарын коопсуз иштетүү үчүн чоң көлөмдөгү техникалык иштерди аткаруу керек.

Мен Facebook бул техникалык көйгөйлөрдү жоюу үчүн өзүнүн дизайнында керектүү иштерди жасады же учурдагы инфраструктурага караганда кандайдыр бир техникалык артыкчылыктарга ээ деп ишенүүгө эч кандай негиз көрбөйм. Компания инновацияларды изилдөө үчүн жөнгө салуучу ийкемдүүлүккө муктаж деп айтуу, аларды биринчи аткарбоо үчүн шылтоо эмес.

Source: www.habr.com

Комментарий кошуу