Месенджер 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

Додати коментар або відгук