Месенджэр Signal аднавіў публікацыю сервернага кода і інтэграваў крыптавалюце

Арганізацыя Signal Technology Foundation, якая развівае сістэму абароненых камунікацый Signal, аднавіла публікацыю кода серверных частак мэсэнджэра. Код праекта першапачаткова быў адкрыты пад ліцэнзіяй AGPLv3, але публікацыя змен у публічным рэпазітары без тлумачэння прычын была спынена 22 красавіка мінулага года. Абнаўленне рэпазітара спынілася пасля аб'явы аб намеры інтэграваць у Signal сістэму плацяжоў.

На днях пачалося тэставанне ўбудаванай у Signal сістэмы плацяжоў, заснаванай на ўласнай криптовалюте MobileCoin (MOB), распрацаванай Моксы Марлінспайкам (Moxie Marlinspike), аўтарам пратаколу Signal. Прыкладна ў гэты ж час у рэпазітары былі апублікаваны назапашаныя за год змены серверных кампанентаў, у тым ліку якія ўключаюць рэалізацыю сістэмы плацяжоў.

Месенджэр Signal аднавіў публікацыю сервернага кода і інтэграваў крыптавалюце

Криптовалюта MobileCoin спраектавана для пабудовы сеткі мабільных плацяжоў, якая забяспечвае канфідэнцыяльнасць карыстальнікаў. Дадзеныя карыстальнікаў застаюцца толькі ў іх руках і распрацоўшчыкі Signal або адміністратары элементаў інфраструктуры не маюць магчымасць атрымаць доступ да грошай, дадзеных аб балансе карыстальніка і гісторыі транзакцый. Плацёжная сетка не мае адзінага пункта кантролю і засноўваецца на ідэі долевага валодання, сутнасць якой у тым, усе сродкі сеткі ўтвараюцца як сукупнасць індывідуальных доляй, якімі можна абменьвацца. Агульны памер сродкаў у сетцы фіксаваны і складае 250 мільёнаў MOB.

У аснове MobileCoin ляжыць блокчэйн, у якім захоўваецца гісторыя ўсіх паспяховых плацяжоў. Для пацверджання валоданнем сродкаў неабходна наяўнасць двух ключоў - ключ для перадачы сродкаў і ключ для прагляду стану. Для большасці карыстачоў паказаныя ключы можна выняць з агульнага базавага ключа. Для атрымання плацяжу карыстач павінен падаць адпраўніку два адчыненых ключа, якія адпавядаюць наяўным зачыненым ключам, выкарыстоўваным для адпраўкі і пацверджання валоданнем сродкаў. Транзакцыі фармуюцца на кампутары ці смартфоне карыстача, пасля чаго перадаюцца на адзін з вузлоў, мелых статут валідатара, для апрацоўкі ў ізаляваным анклаве. Валідатары правяраюць транзакцыю і па ланцужку (peer to peer) дзеляцца інфармацыяй аб транзакцыі з іншымі вузламі з сеткі MobileCoin.

Дадзеныя могуць быць перададзены толькі вузлам криптографичкески пацвердзіў выкарыстанне ў анклаве немадыфікаванага кода MobileCoin. Кожны ізаляваны анклаў рэплікуе канчатковы аўтамат (state machine), які дадае сапраўдныя транзакцыі ў блокчейн, выкарыстоўваючы для пацверджання плацяжоў алгарытм дасягнення кансэнсусу (MobileCoin Consensus Protocol). Вузлы таксама могуць браць на сябе ролю поўных валідатараў, якія дадаткова фарміруюць і размяшчаюць у сетках дастаўкі кантэнту публічную копію вылічанага блокчэйна. У выніковым блокчейне адсутнічаюць звесткі, якія дазваляюць ідэнтыфікаваць карыстальніка без ведання яго ключоў. У блокчейне прысутнічаюць толькі ідэнтыфікатары, вылічаныя на аснове ключоў карыстача, зашыфраваныя дадзеныя аб сродках і метададзеныя для кантролю цэласнасці.

Для забеспячэння цэласнасці і абароны ад скажэння дадзеных заднім лікам ужываецца дрэвападобная структура "дрэва Меркла" (Merkle Tree), у якой кожная галінка верыфікуе ўсе ніжэйлеглыя галінкі і вузлы дзякуючы сумеснаму (дрэвападобнаму) хэшаванню. Маючы канчатковы хэш, карыстач можа пераканацца ў карэктнасці ўсёй гісторыі аперацый, а таксама ў карэктнасці мінулых станаў БД (каранёвы праверачны хэш новага стану базы вылічаецца з улікам мінулага стану).

Акрамя валідатараў у сетцы таксама маюцца назіральныя вузлы (Watcher), якія займаюцца верыфікацыяй лічбавых подпісаў, якія валідатары прымацоўваюць да кожнага блока ў блокчейне. Назіраючыя вузлы ўвесь час адсочваюць цэласнасць дэцэнтралізаванай сеткі, падтрымліваюць уласныя лакальныя копіі блокчейна і падаюць API для прыкладанняў-кашалькоў і кліентаў, якія займаюцца абменам. Валідатар і назіральны вузел можа запусціць любы жадаючы, для гэтага распаўсюджваюцца адпаведныя сэрвісы, выявы анклава для Intel SGX і дэман mobilecoind.

Стваральнік Signal растлумачыў ідэю інтэграцыі криптовалюты ў мэсанджар жаданнем падаць карыстачам простую ў выкарыстанні сістэму плацяжоў, якая ахоўвае канфідэнцыяльнасць, аналагічна таму, як мэсанджар Signal забяспечвае бяспеку зносін. Брус Шнайер, вядомы эксперт у галіне крыптаграфіі і кампутарнай бяспекі, раскрытыкаваў дзеянні распрацоўшчыкаў Signal. Шнайер лічыць, што складванне ўсіх яйкаў у адзін кошык не лепшае рашэнне, і справа зусім не ў тым, што гэта прыводзіць да разадзьмутыя і ўскладненні праграмы, і нават не ў сумнеўнасці ўжывання блокчейна, і не ў спробе прывязаць Signal да адной криптовалюте.

Ключавая праблема, на думку Шнайера, у тым, што даданне сістэмы плацяжоў у дадатак для скразнога шыфравання стварае дадатковыя пагрозы, звязаныя з павышэннем цікавасці розных спецслужбаў і дзяржаўных рэгулятараў. Абароненыя камунікацыі і абароненыя транзакцыі можна было рэалізаваць асобнымі праграмамі. Прыкладанні з рэалізацый надзейнага скразнога шыфравання і так знаходзяцца пад ударам і дадаткова падвышаць градус супрацьстаяння небяспечна - калі функцыянальнасць аб'яднаная, уздзеянне на плацежную сістэму пацягне за сабой і функцыянальнасць скразнога шыфравання. Калі памрэ адна частка, то памрэ і ўся сістэма.

Крыніца: opennet.ru

Дадаць каментар