Фантазия ИИ на тему децентрализованного доверия
Фантазия ИИ на тему децентрализованного доверия

Данная публикация - это приглашение к обсуждению концепции децентрализованных систем. Здесь только изучение интереса, обсуждение целесообразности и реализуемости. 

Чтобы не грузить читателей абстракциями, попробую описать гипотетическую децентрализованную сеть через несколько прикладных задач.

Задача 1.

Вы потеряли ключ от ваших личных данных - кошелька, хранилища информации, мессенджера, аккаунтов соцсетей и т.д.

Необходимо вернуть доступ к данным.

Задача 2.

Технология Deepfake достигла совершенства, и вам надо отличить реального человека от мошенников или ботов для собственной безопасности.

Задача 3.

Вам надо провести голосование и выбрать представителя вашей какой-то группы, например, президента Галактики.

Задача 4. 

Надо защитить свои накопления и транзакции от проблемы “51%”, существующей в сетях блокчейн.

Задача 5.

Вы знаете некоторого человека без документов, нуждающегося в помощи. Вы хотите помочь ему социализироваться. 

Задача 6. 

Информация, хранящаяся в самых значимых блокчейн-сетях, разрослась до неимоверных размеров. Каждая мелкая транзакция копируется на миллиард равнозначных узлов децентрализованной сети. Вы хотите сэкономить вычислительные ресурсы и хранилища, и тем самым помочь планете в сохранении ресурсов и экологии.

Задача 7.

Человек декларирует волеизъявление и хочет защитить его от посягательств злоумышленников, и даже от собственной слабости. Например, завещает крупное наследство или дает свидетельские показания.

Задача 8. 

Технологии вранья в СМИ достигли невообразимых вершин “мастерства”. Вы хотите получить [более-менее] достоверную информацию из публичных источников с учетом ваших личных критериев доверия. То есть вы хотите минимизировать внешнее влияние на ваше мировоззрение.

Попробуем решить эти задачи. По сути всё перечисленное, несмотря на разноплановость, сводится к проблеме доверия и безопасной аутентификации. 

Способ реализации децентрализованной сети доверия:

У каждого человека есть некоторое количество друзей и родных, которым он в разной степени доверяет. Суть решения - локально децентрализованная авторизация.

Алгоритм реализации: 

  1. Человек при помощи мобильного приложения создает контейнер-сейф с персональными данными и набором разнородных цифровых ключей - для документов, сертификатов, аккаунтов, кошельков и прочего. 

  2. Сейф шифруется с помощью сильного мастер-ключа.

  3. На основе хэша определенного набора персональных данных (например ФИО + д.р., гражданство + место рождения + uid) создается ваш уникальный идентификатор личности.

  4. Создается набор N (например, 20) частей произвольного ключа. Эти части ключа раздаются тем людям, которым вы доверяете в соответствии с личной степенью доверия.

  5. Выбирается уровень защиты K <= N так, чтобы при соединении K ключей, можно было получить мастер-ключ от вашего персонального контейнера-сейфа. Например, можно поместить копии мастер-пароля в множество ([выборка K из N]) контейнеров, каждый из которых будет защищен паролем, состоящим из i-й выборки частей ключа.

  6. Аналогично выбираются более слабые наборы ключей  1 <= K3 < K2 < K < N для операций, менее значимых, чем доступ к мастер-ключу. Например, для коммуникации в соцсетях, или для микротранзакций, или для предоставления доступа к некоторым личным данным.

  7. Выбираются сервисы, которым вы лично доверяете. Генерируете токены доверия, которые можно верифицировать из вашего аккаунта. Эти токены отправляются сервисам от вашего имени.

  8. Ваш основной сейф в зашифрованном виде копируется на ближайшие к вам узлы: на компьютеры доверенных пользователей и на доверенные сервисы хранения данных. Количество копий выбирается по принципу гарантированной сохранности данных (сотни копий в разных сегментах интернета). Но при этом не создается такая база, как у bitcoin или других популярных блочейнов.

  9. В сети доверия регистрируются различные сервисы, имеющие уникальные адреса. Каждый из сервисов сохраняет цепочку/блокчейн из поступающих на него транзакций от пользователей. По сути, каждый их таких сервисов является полноценным блокчейном со смарт-контрактами. Например, сервис выдачи паспортов, сервис гуманитарной помощи бездомным города N, сервис регистрации интеллектуальной собственности, сервис виртуального банкинга и т.д. Все сервисы между собой могут выстраиваться в иерархию. Каждый сервис имеет правила использования и членства, заложенные в смарт-контрактах. К примеру, добавление нового пользователя должно быть одобрено через уровень доверия больше 50% от существующих пользователей, либо через проверку реального гражданства/места жительства.

Решение задачи 1. 

Надо вернуть доступ к своим данным при утере пароля.

Вы запрашиваете у своих доверенных людей K частей своего мастер-ключа либо при физической встрече, либо другим надежным способом на ваше усмотрение. И восстанавливаете свой мастер-ключ.

Решение задачи 2. 

Надо удостовериться в подлинности собеседника при цифровом общении. Вы подключаете к вашему мессенджеру плагин, проверяющий степень доверия собеседнику через сеть доверия. Рекурсивно запрашиваются ближайшие доверенные узлы, от них дальше к их доверенным узлам, и далее до заданной глубины.

Решение задачи 3. 

Инициатор голосования выбирает сервис (блокчейн), которому доверяет, выбирает типовой смарт-контракт “голосование”, и отправляет запрос всем избирателям. В случае коллизии, если выборы инициированы одновременно на нескольких сервисах, то сервис с меньшим уровнем суммарного доверия всех его пользователей либо принимает результаты более авторитетного сервиса, либо изолируется и работает автономно, обслуживая только своих постоянных пользователей. Эта процедура проводится также через голосование всех пользователей данного сервиса.

Решение задачи 4. 

Все ваши транзакции сохраняются внутри вашего собственного “облака” - внутри сети пользователей и сервисов, которым вы доверяете, плюс рекурсивно на тех, ресурсах, кому доверяют ваши доверенные.

Решение задачи 5. 

Вы дарите человеку без документов смартфон, регистрируете его в сети доверия по имени, которое он назовет. Например, «Федя с Фонтанки». Регистрируете его на ближайшем подходящем сервисе: цифровом паспортном столе или в сервисе лиц без места жительства/гражданства. Дальше всё зависит от того, какую сеть личного доверия сможет собрать этот человек с вашей помощью или самостоятельно. А потом он подключается к социальным и гуманитарным сервисам, которые также оценивают его по сети доверия, или просто собирает подаяние цифровым способом. Через сеть доверия будет проще отсеивать мошенников.

Решение задачи 6. 

Децентрализованная сеть, состоящая из относительно независимых сегментов будет оптимальнее единого блокчейна. Информация, касающаяся локальных транзакций в Новой Зеландии не будет загружать тысячи серверов в Канаде и Нидерландах. Взаимодействие между сегментами будет происходить только по необходимости. При этом сегменты с большим количеством мошенничества, будут постепенно отторгаться и маргинализироваться, теряя рейтинг у более надежных сегментов.

Решение задачи 7. 

Человек публикует свое волеизъявление в специализированных сервисах в любом удобном для формате: видеообращение, сканы документов или смарт-контракт и подписывает это своим персональным ключом.   

Решение задачи 8. 

Аналогично верификации сообщений в мессенджере, ваше новостное приложение ранжирует и/или фильтрует поступающие новости от разных серверов в зависимости от уровня вашего доверия и доверия вашей ближнего доверенного множества. То есть, если вы изначально расставили высокие уровни доверия к научным журналам и нобелевским лауреатам, то всякий шлак от астрологов и хиромантов будет отфильтровываться.

Добавлю, что во всем многообразии различных цифровых децентрализованных систем я не нашел такую, которая бы позволяла распределенно сохранить ключи в физическом мире вне цифровой системы. То есть акцент на том, чтобы управление оставить в руках человека, но при этом максимально защитить через децентрализацию. 

Итак, предлагаю обсудить реалистичность подобной децентрализованной сети доверия, сложности реализации, ее плюсы и минусы, а также перспективы включения ИИ в подобную сеть (в качестве кого?).

Комментарии (24)


  1. murkin-kot
    27.04.2024 13:43
    +3

    Вы подключаете к вашему мессенджеру плагин, проверяющий степень доверия собеседнику через сеть доверия

    На этом пункте всё ломается.

    Кто напишет плагин? Кто будет хостить сеть доверия? Кто будет перехватывать трафик сети? Кто будет подменять в своих интересах все необходимые ему данные?

    В существующей ситуации, когда есть власть, обладающая всеми необходимыми ресурсами для контроля всех узлов сети, начиная с контроля компьютеров/смартфонов большинства пользователей, любая хитрая сеть не стоит ничего.

    Кроме того, привычки населения таковы, что в предложенной сети будут участвовать лишь единицы. Но чем меньше участников - тем меньше усилий требуется от власти для обретения полного контроля.

    Реальное решение затронутой проблемы одно - организация общества на существенно других принципах. Пока во всех существующих странах главными являются заинтересованные в удовлетворении исключительно личных потребностей люди - никакие сети доверия им не страшны, поскольку за ваши деньги (в виде налогов) они купят все необходимые средства контроля.


    1. VSV Автор
      27.04.2024 13:43

      Кто напишет плагин? /

      Если разработчики мессенджера будут заинтересованы в подобном функционале, то они и напишут.

      Кто будет хостить сеть доверия?

      Все желающие. Каждый провайдер сможет привлечь к своим серверам доверяющих ему пользователей


  1. vlad4kr7
    27.04.2024 13:43
    +3

    У каждого человека есть некоторое количество друзей и родных, которым он в разной степени доверяет. 

    Сколько из них смогут надежно хранить свою часть ключа, в цифровом или физическом воплощении? Доверие не меняется со временем? Оценка охвата людей? т.е. это у всех пользователей должна быть своя группа, которая будет хранить часть доступа к мастер-ключу. На сколько это концепция реальна?

    По поводу доверия - погуглите: Web of trust. посмотрите правильный подход в Zero trust.


  1. VSV Автор
    27.04.2024 13:43

    Как раз таки физическое воплощение ключа хранить не сложно. Особенно, если осознавать, что данная распечатка - это важный документ. У меня лежат документы 1904-1945 годов моей прабабушки.Это более 100 лет. Для цифровых документов - это недостижимая высота. В случае, когда группа доверия распределена по разным странам и социальным группам, безопасность будет на высоком уровне.

    Если доверие поменялось со временем, то можно предусмотреть изменение сети доверия с помощью мастер-ключа.

    Описанная концепция не противоречит Web of trust, а дополняет его офлайновым "физическим воплощением", тем самым решая проблему потери ключей. Zero trust в данной децентрализованной сети - это соблюдение условия K=N. То есть восстановление мастер-ключа возможно только при участии всех членов группы.


    1. vlad4kr7
      27.04.2024 13:43

      я-бы не торопился называть распределенной сетью - распределение доступа к восстановлению мастер ключа. Проще сделать хардверные копии ключей.

      Zero trust, это не K=N, а К = 0, извините.


      1. VSV Автор
        27.04.2024 13:43
        +1

        Хардверная копия ключа означает, что каждый, кто получит эту копию, получит доступ ко всем вашим данным. И наоборот, утрата всех копий лишит вас возможности доступа.

        Распределенная сеть - это не сам доступ к ключу, а всё открытое множество сервисов, которые его используют. И в этой сети каждая транзакция верифицируется и оценивается через сеть доверенных узлов и связанных с ними рекурсивно.


        1. vlad4kr7
          27.04.2024 13:43

          "хардверные ключи", я имею в виду, типа yubikey.

          Существующие сервисы, gmail, например уже используют такие ключи. ОАuth авторизация позволяет использовать гугл логин. Вроде удовлетворяет вашему определению Распределенной сети, а смысл?


          1. VSV Автор
            27.04.2024 13:43
            +1

            Я не совсем разобрался, как восстановить утерянный yubikey.

            И не ясно, как yubikey может оценить степень доверия к какому либо сервису или человеку.


            1. vlad4kr7
              27.04.2024 13:43

              Хранить копии ybikey в защищенном месте, или механизм восстановления по распечатанным одноразовым ключам.

              Не ясно про степени доверия в вашей схеме при использовании сервисов распределенной сети. У вас вообще про степени доверия нет. Мы либо доверяем, и даем на хранение часть пароля (ключи от квартиры, где деньги лежат), или не доверяем.


              1. VSV Автор
                27.04.2024 13:43
                +1

                Степень доверия - это система оценки достоверности информации (транзакции) через те узлы сети, которым вы доверяете. Представьте это, как совет директоров, который принимает ответственные решения через голосование. Например, вы планируете сделку с пользователем А, о котором ничего не знаете. Через дерево связей со своими доверенными узлами (рекурсивно) вы можете получить какое-то числовое значение уровня доверия к А. И эта оценка будет индивидуально между вами и А. Она не будет зависеть от серверов с миллиардами пользователей. Эта оценка будет вычислена рекурсивно через ближайшие ваши доверенные узлы сети.


                1. vlad4kr7
                  27.04.2024 13:43

                  Вычислена на основании чего? Я могу не доверять человеку красить забор, но он отличный сварщик! Он мог быть хорошим вчера, но сломался в пятницу. Другой чел, может разбираться в истории, но не в бизнесе.

                  Мне не интересна оценка доверенности людей, которым я не доверяю (косвенно, но не обязательно рекурсивно, не обязательно ближайшие).

                  • вот это вот все будет основой протокола распределенной сети для моего расчета рейтинга конкретного агента по конкретной задаче.

                  ни кому из них не доверю части приватных ключей, для их восстановления, которое к распределенной сети вообще не относится.


                  1. VSV Автор
                    27.04.2024 13:43
                    +1

                    Я никак не детализировал оценку степени доверия, и не говорил, что она должна обязательно быть скалярная (абстрактная, без привязки к сфере применения). Я всего лишь указываю, что имеет смысл придумать подобные системы, или, как минимум, обсудить их целесообразность.


                    1. vlad4kr7
                      27.04.2024 13:43
                      +1

                      мое имхо: рейтинг нужен!

                      меня интересует рейтинг который я (мой алгоритм) рассчитал:

                      1. для конкретной сферы деятельности (не скалярный!) чел. может быть хорошим собутыльником, но работать на стройке я бы его не позвал, и наоборот.

                      2. рейтинг основан на конкретной работе человека, заказчик и исполнитель, это разные рейтинги в одной сфере (например в линкедине история работ вполне публична)

                      3. (меня) абсолютно не интересует положительные оценки от людей которые мной или моими друзьями оценены отрицательно. У других может быть иначе, принцип: "ваш алгоритм - ваше право его настроить".

                      4. Не блокчейн в виде крипты (копия базы у всех, pow), но в виде цепочки подписанных блоков личными ключами (децентрализация!).

                      Для этого нужен стандартный API протокол обмена сообщениями например (protobuf), как будет сделана реализация и UI на конкретном клиенте - это детали.


      1. VSV Автор
        27.04.2024 13:43
        +1

        Задача 9. Вы миллиардер. Вас похитили и требуют перевести крупную сумму денег.

        Вариант А: Транзакиция зависит только от вашего ключа (и/или подписи). Ваш ключ при этом надежно спрятан. Вас пытают до самой смерти, чтобы получить доступ к вашим деньгам.

        Вариант Б: Ваш ключ распределен мужду 10 доверенными лицами. И преступникам необходимо получить ключи от К (5 - 10) разных людей в разных странах, чтобы украсть деньги.


        1. vlad4kr7
          27.04.2024 13:43

          Решать задачи миллиардеров, вообще не интересно. Но! получить доступ у 5ти людей к ключам, не так и сложно. Я не зря спрашивал - вы точно уверены, что ВСЕ ваши доверенные люди будут хранить чужие ключи в надежном и защищенном месте? Как вы убедите других, что ИХ доверенные люди будут поступать ответственно?

          Идея интересная, но восстановление ключей не так решается, И распределенная сеть - восстановлением ключей не ограничивается.


          1. VSV Автор
            27.04.2024 13:43
            +1

            Могу сказать только за себя лично. У меня найдётся с десяток людей, которым суммарно (только суммарно) я могу доверять больше, чем самому себе.

            Вот, что я имею в виду: 1. Взломать 10 квартир в разных странах на порядок сложнее, чем одну. 2. Похитить 10 человек в разных странах на порядки сложнее, чем одного. 3. Шантажировать 10 людей гораздо сложнее, чем одного. 4. Вовлечь в мошенническую акцию 10 человек в разных странах сложнее, чем одного.


            1. vlad4kr7
              27.04.2024 13:43

              распечатать 10 одноразовых ключей и хранить их в защищенном месте надежнее, чем уговорить 10 человек делать это для тебя И надеяться на их ответственность. И иметь возможность легко использовать (не надо ехать в другую страну, если такое применимо) И надеяться, что это сработает для все остальных участников сети.


              1. VSV Автор
                27.04.2024 13:43
                +1

                А кто сможет распорядиться вашими спрятанными ключами при несчастном случае?

                А как 10 спрятанных ключей уберегут от мошенничества, направленного против вас лично? Ведь в случае распределенного доверия можно заложить в смарт-контракт запрет на сделки с крупными суммами без подтверждения от X доверенных людей.


                1. vlad4kr7
                  27.04.2024 13:43

                  Извините, вы смешиваете разные проблемы. Зачем кому-то распоряжаться моими ключами. Т.е. подписывать сообщения от моего имени?


  1. wifage
    27.04.2024 13:43
    +1

    Попробуем решить эти задачи. По сути всё перечисленное, несмотря на разноплановость, сводится к проблеме доверия и безопасной аутентификации. 

    Как это не парадоксально задача безопасной аутентификации сводится к проблеме независимости и анонимности. Вернее сегодня нет никакой проблемы безопасной аутентификации. Все инструменты для этого существуют и работают. Есть проблема защищенной, абсолютно устойчивой к атакам со стороны третьих лиц, системы связи. В самом широком смысле это вопрос технологий и /или доступа к энергетическим ресурсам. Конечно эту задачу можно попытаться решить комплексно. Но в таком случае эта будет система, построенная на другой системе, что уже нарушает принцип автономности и независимости. А значит доверять такой системе и относиться к ней как надежной как минимум наивно. Ну и рядом также находится вопрос ресурсов. Хотя решение вполне может базироваться на ресурсах планетарной системы. Есть большая вероятность, что такое возможно.

    На самом деле да - это вызов. Вызов для гения, который перевернет современную ублюдочную систему общества и сделает её более справедливой. Найдется ли такой гений на этой планете в обозримом будущем это вопрос.


    1. VSV Автор
      27.04.2024 13:43
      +1

      Вы правы насчёт проблемы безопасной системы связи. Вот я и предлагаю распределить защиту связи между субъектами, которым мы доверяем естественным образом. Зная, что в отличие от аудео и видео образа, подделать живого человека пока невозможно, я предлагаю разделять ключи физически из рук в руки. И повысить "цену" компроментации канала связи за счёт суммарной ответственности доверенных узлов. Но при этом не задействовать такое огромное число узлов, как в классическом блокчейне.


    1. vlad4kr7
      27.04.2024 13:43

      Ассиметричные ключи (типа RSA) чем вас не устраивают? Независимо генерируете ключ любой длины, и передаете публичный ключ открыто по любым каналам данных.


      1. VSV Автор
        27.04.2024 13:43
        +1

        Меня устраивают ассиметричные ключи и RSA в частности.

        Шифрование не решает проблему потери / хищения ключа и достоверности информации.


        1. vlad4kr7
          27.04.2024 13:43

          Подписи RSA решают проблему достоверности отправителя. Потеря ключа, решается уведомлением сети о смене паблик ключа.

          Например, угнали аккаунт в телеге, восстановить не получилось - что делать? уведомите друзей, с другого аккаунта, или оповестите независимым способом и смене акка (т.е. паблик ключа). все - проблема решена.