Как с помощью блокчейна защитить свои данные

    Прошлый, 2016 год оказался богат на новости, связанные с технологией блокчейн и кейсами ее применения в реальной жизни. Barclays провел первую в мире реальную торговую сделку между ирландским производителем молочной продукции Ornua и сейшельской торговой компанией, австралийский финансовый конгломерат Commonwealth Bank of Australia, американская финансовая компания Wells Fargo и компания Brighann Cotton Marketing Australia впервые в мире оформили сделку по продаже и доставке хлопка из США в Китай, а авиакомпания S7 и Альфа-Банк провели первую в России сделку-аккредитив. В связи с этим может показаться, что область применения блокчейна ограничивается исключительно финансовым сектором, однако блокчейн затронул и область защиты данных.



    Блокчейн на страже ваших данных


    Когда открылась возможность вносить в регистр не только данные транзакций, но и различные метаданные, мы в Acronis начали активно изучать технологию блокчейн на предмет ее применения в направлении резервного копирования и защиты информации. Мы увидели, что благодаря ей у пользователя появляется возможность гарантировать не только сохранность, но и неизменность/подлинность самых важных данных.
     
    В 2016 году началась разработка и тестирование первых решений, построенных на открытой платформе Ethereum, которая на тот момент была одной из самых продвинутых и удобных, а также позволяла обойти ограничения Bitcoin-блокчейна.
     
    Первым решением, выпущенным нами на рынок, стал trusted timestamping сервис Acronis Notary. Технология была реализована в рамках функционала продукта для индивидуальных пользователей Acronis True Image 2017 New Generation. С его помощью можно проверять аутентичность хранящихся в резервных копиях данных. Например, музыканты или художники могут подтверждать дату и время создания своих произведений, предоставляя в качестве доказательства сертификат Acronis Notary с указанием данной информации, наряду с метаданными о самом произведении.


    Вторым решением, которое мы также продемонстрировали в рамках функционала продукта Acronis True Image 2017 New Generation, стало Acronis ASign. Решение открыло возможность электронного подписания резервных копий документов с автоматической нотаризацией. Пользователь просто загружает в облако Acronis подписанные со своей стороны документы и рассылает другим подписантам электронные приглашения. Каждый из подписантов заходит в облако и с помощью специального интерфейса ставит свою электронную подпись на документе. Таким образом, между сторонами «подписывается» своего рода договор, который автоматически фиксируется в блокчейне.
     

    Техническая сторона вопроса


    Как отмечалось выше, нам удалось обойти ряд ограничений блокчейна, тем самым создать достойный задел на будущее. Хранение данных в наших решениях построено на основе деревьев Меркла. Благодаря этому можно существенно повысить скорость работы и объем хранимой информации о файлах, а также (что очень важно в долгосрочной перспективе) снизить требования к производительности обрабатывающих систем.
     
    Про деревья Меркла aka «хэш-деревья» известно давно, их концепция была запатентована Ральфом Мерклом еще в 1979 году. Это особая структура данных, содержащая итоговую информацию о каком-то большом объеме данных, и которая может быть использована для их верификации. При этом набор информации может быть самым разнообразным: можно хранить любые необходимые данные о файле, будь то его размер, дата создания или еще что-то.
     
    Таким образом, понятно, что структура данных имеет древовидную форму, в узлах которой находятся хэши, созданные на основе данных других, нижестоящих узлов. В конечных формируются корневые хэши, которые и записываются в блокчейн.
     
    Мы используем двоичную структуру, при которой каждый вышестоящий хэш состоит из двух нижестоящих хэшей. Если представить это в форме схемы, то получим следующее.



    Одно из главных свойств дерева Меркла состоит в том, что, зная data 1, hash 2, hash 02 и hash 001, можно подтвердить аутентичность данных data 1, даже если остальные данные не известны. Это означает, что, если вы поместите какой-то файл в Acronis Notary или подпишете какой-то документ с помощью Acronis ASign, затем дадите кому-то из друзей/коллег только хэш исходного файла (hash 1), «ветвь» с хэшами от hash 1 до корневого хэша (hash 001) и корневой хэш (такая структура назвывается «доказательством Меркла»), то друг/коллега с легкостью сможет проверить, тот ли файл сейчас находится в хранилище или нет.


     

    Де Факто/Де Юре


    Если с технической стороной вопроса все более-менее стало ясно, то с юридической — все немного сложнее.
     
    Существует два правовых вопроса, которые в той или иной мере вносили и продолжают вносить ограничения на использование подобных решений на территории России.
     
    Во-первых, и это было основным стоппером, не была ясна позиция государства в отношении криптовалюты, и, как следствие, возможности использования блокчейна. Временами речь заходила о реальном уголовном преследовании за проведение операций с использование криптовалюты.
     
    Во-вторых, непонятна позиция государства в отношении признания записей, хранящихся в блокчейне.
     
    Давайте по порядку разберемся с каждым из вопросов.
     
    В начале этого года, в рамках Гайдаровского форума, зампред ЦБ Ольга Скоробогатова высказалась: «Позиция регулятора и ведомства — что мы не хотели бы сейчас конкретно что-то запрещать, а понять, как относиться к этому, и исходя из этого выстраивать регуляторную базу». Схожую позицию избрали и в Минфине, приостановив работу над законопроектом, предусматривающим весьма суровые наказания за оборот криптовалюты.
     
    Вопрос с признанием записей в блокчейне в суде пока открыт. С одной стороны, в России пока нет закона, хоть как-то определяющего правовой статус подобных записей. С другой стороны, есть ощущение, что государство перестало воспринимать распределенные регистры в качестве «абсолютного зла» и готово делать шаги навстречу зарождающейся отрасли, тем более, что в мире уже появляются интересные кейсы.
     
    Например, признание американскими штатами Аризона и Вермонт юридической силы записей в блокчейне. В Аризоне смарт-контракты теперь будут приравниваться ко всем остальным видам договоров, а в Вермонте записи в блокчейне могут использоваться в качестве доказательства в суде. С большой вероятностью признание блокчейна и дальше продолжит свое движение по США. Где-то таких данные будут сразу признаваться, а в других штататх на судебные разбирательства будут приглашаться ИТ-специалисты, которые выступят в качестве экспертов, как в свое время это было с ДНК-тестами.
     

    Будущее наступило


    Недалекое будущее. Космические корабли бороздят просторы Большого театра, самозавязывающиеся кроссовки от Nike доступны в продаже, а записи в блокчейне признаются судебной системой нашей страны.
     
    Вы решили приобрести машину/квартиру/дачу, нашли подходящий вариант и связались с продавцом. Договор купли-продажи было решено подписать с помощью электронных подписей и внести данные в блокчейн. Вы взяли типовой текст договора, внесли необходимые реквизиты, сохранили в защищенном облаке и направили с помощью Acronis ASign на подпись продавцу. Он внимательно изучил договор, обратил ваше внимание на опечатку в фамилии и подписал исправленную версию.
     
    Машина/квартира/дача ваша. Но проходит какое-то время, и вдруг объявляется прошлый владелец, заявляющий, что вы не расплатились, должны ему X рублей, и вообще незаконно забрали его собственности. Вы же все оплатили вовремя, не собираетесь идти на поводу у мошенника и направляетесь в суд.
     
    Договор существует только в электронном виде, не был заверен у нотариуса и в суд его так просто не принести. Это означает, что перед вами вырисовывается очень интересный квест, в рамках которого вам понадобится доказать три вещи:
     
    • Договор, находящийся в защищенном хранилище, никто не менял;
    • Договор прочитали и подписали обе стороны;
    • Договор был подписан в определенное время.

    Скорее всего, на судебное разбирательство необходимо будет пригласить эксперта, который расскажет представителям правосудия, что из себя представляет технология блокчейн, как хранятся данные и почему их нельзя незаметно подделать/изменить. После краткого ликбеза эксперт попросит вас предоставить электронный документ суду, и тут начнется все самое интересное.
     
    При подписании документа в Acronis ASign пользователю выдается специальный файл в формате PDF, содержащий «Signature Certificate» и «Audit Trail».


    В «Signature Certificate» содержится следующая информация:
     
    • Имя документа, который вы подписали и поместили в хранилище, например, «Договор купли-продажи №1»;
    • Дата подписания;
    • Размер документа;
    • Хэш или «контрольная сумма» документа;
    • Текущий статус;
    • Информация о подписантах;
    • Подпись.

    В «Audit Trail» содержится детальная история событий, происходивших с документом (создание, отправка подписантам, подписание), включая временные отметки и IP-адреса подписантов. Это необходимо, чтобы поставленная электронная подпись соответствовала требованиям международного «Electronic Signature Law» и признавалась в суде.

    Самый простой способ подтвердить, что выданный вам специальный файл аутентичен и, соответственно, подтверждает аутентичность договора, заключается в том, что вы загружаете его на страницу верификации Acronis Notary.
     

     
    После завершения загрузки файла на сайте будет показан статус этого документа. Таким образом, вы докажете в суде, что договор купли-продажи был подписан обеими сторонами в определенное время. Часть квеста пройдена!
     
    Кроме статуса, также будет предоставлена ссылка на сертификат Acronis Notary, содержащий всю информацию о документе в защищенном хранилище. С помощью этого сертификата вы доказываете аутентичность, то есть подлинность подписанного договора. Victory!
     
    Есть еще один путь, несколько сложнее, но намного интереснее.
     
    Вы берете документ и самостоятельно рассчитываете его хэш. Затем из сертификата Acronis Notary берется адрес транзакции в блокчейне (Transaction ID) и находится в онлайн-сервисе, вроде Etherscan.io, позволяющем подтвердить наличие транзакции в Ethereum-блокчейне. В поле данных этой транзакции вы находите Merkle Root и проверяете вхождение хэша, который вы рассчитали для своего документа, в дерево с таким корневым элементом, с помощью open source утилиты verifyhash. Если проверка прошла успешно, аутентичность подписанного документа в хранилище подтверждена. И снова Victory!
     

    Продолжение следует


    Внедрив Acronis Notary и Acronis ASign в наш продукт Acronis True Image 2017 New Generation, мы собрали огромное количество положительных отзывов от индивидуальных пользователей. Фактически мы провели масштабное тестирование в реальных условиях. И уже сейчас, обработав все результаты и максимально устранив шероховатости, мы внедрили эти решения в наш корпоративный продукт – Acronis Backup 12.5.  
    Acronis 93,14
    Компания
    Поделиться публикацией
    Комментарии 26
    • 0
      Мне была бы интересна услуга подтверждения моей личности с помощью блокчейна. Некоторые компании(в Costco такое стоит $6.99 в месяц) оказывают услугу по страхованию кражи личности, но там без блокчейна. К сожалению, данными типа SSN, сканами прав торгуют даже самые ленивые. Я живу в США, и с безопасностью личных данных тут от крайности к крайности: некоторые никак не скрывают свои персональные данные, другие же просят изменить имя на бейдже и используют в качестве ID для почтовых отправлений что-то вымышленное, чтобы обезопасить себя.
    • 0
      Есть ли реальные прецеденты использования вашего сервиса в юридической сфере? Или «огромное количество положительных отзывов от индивидуальных пользователей» (от индивидуальных, заметьте) — это «о, мой хеш в блокчейне — круть!»
      • 0
        Есть ли реальные прецеденты использования вашего сервиса в юридической сфере?

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

        «огромное количество положительных отзывов от индивидуальных пользователей» (от индивидуальных, заметьте)

        Сервис стал доступен для корпоративных пользователей несколько недель назад. Ждём отзывов от них с нетерпением.
        • 0
          1. Вопрос-то был не про то. «Внедрив Acronis Notary и Acronis ASign в наш продукт Acronis True Image 2017 New Generation, мы собрали огромное количество положительных отзывов от индивидуальных пользователей» — очевидно, что «положительные отзывы» контекстно связаны с внедрением и использованием блокчейна.

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

          2. «сервис в первую очередь решает техническую задачу сохранения подлинности данных» — технически всё решается контрольной суммой. И использование блокчейна здесь ничего не добавляет — в нём вы тоже храните хэш. Блокчейн — это вовлечение независимой и публичной «третьей стороны» для решения спорных моментов. Т.е. прежде всего юриспруденция. Приведенные документы Аризоны и Вермонта (отдельное спасибо за прямые ссылки) показывают, что эта область в зачаточном состоянии. Аризона просто фиксирует термины; документ Вермонта — просто review ситуации и перспектив.

          Будет здорово, если в своих публикациях вы будете уделять внимание вопросам права в сфере блокчейна. Не ищите скрытого смысла — сфера новая, достоверной информации мало, а вы всё-таки обладаете большим весом.
          • 0
            Есть ли какая-нибудь статистика, какой процент ваших пользователей хоть раз подтверждал подлинность данных через Notary?

            Несколько сотен реальных пользователей. Для новой технологии это не так мало.

            очевидно, что «положительные отзывы» контекстно связаны с внедрением и использованием блокчейна

            Безусловно.

            И использование блокчейна здесь ничего не добавляет

            Это не совсем так. Хэши объектов, конечно, можно хранить в текстовом файле, но его можно удалить или подменить. А блокчейн — распределённый и неизменный.

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

            Спасибо, будем стараться!
            • 0
              Это не совсем так. Хэши объектов, конечно, можно хранить в текстовом файле, но его можно удалить или подменить. А блокчейн — распределённый и неизменный.

              Я был неточен. Я имел в виду то, что вы и раньше (без блокчейна) обеспечивали своим клиентам подлинность данных. Сервис Notary метит в нишу юридически значимого инструмента для общего применения, что очевидно из его названия. Т.е. вы ожидаете, что и блокчейн, и его использование будет как-то регламентироваться законодательством. Как минимум, говоря о неизменности блокчейна Ethereum, нельзя не вспомнить историю с DAO hard fork, которая говорит прямо о противоположном. А если вспомнить другие подробности этой истории, то и тема со смарт-контрактами под большим вопросом.
          • 0
            По сути вы предоставляете собственноне облачое хранилище данных.
            Не совсем понятно, зачем тут использовать блокчейн?
            • 0
              Когда открылась возможность вносить в регистр не только данные транзакций, но и различные метаданные, мы в Acronis начали активно изучать технологию блокчейн на предмет ее применения в направлении резервного копирования и защиты информации. Мы увидели, что благодаря ей у пользователя появляется возможность гарантировать не только сохранность, но и неизменность/подлинность самых важных данных.
              • 0
                Если я не ошибаюсь — блокчейн — это распределенная база подписанных данных, в которой целостность данных контроллируется множеством независимых узлов, каждый из которых имеет свою полную копию данных.

                Я ошибаюсь?
                Если нет, как эти принципы реализованы в вашем централизованном хранилище?
                Или у вас от блокчейна только цепочка хешей и название?
                • 0
                  Мы храним в блокчейне корневой хэш дерева, построенного из хэшей объектов пользователей. Сами объекты при этом могут храниться где угодно.
        • 0
          не была ясна позиция государства в отношении криптовалюты, и, как следствие, возможности использования блокчейна.
          хм, но если я не ошибаюсь, криптовалюта это следствие блокчейна.
          Возможное положительное отношение к блокчейну, не гарантирует положительное отношение к криптовалюте.
          Положительное отношение к криптовалюте, же, вынуждает положительно относится и к блокчейну.

          Ваша идея хороша.
          • 0
            если я не ошибаюсь, криптовалюта это следствие блокчейна

            Технически это, разумеется, так. Но про блокчейн, как правило, узнают в первую очередь в контексте криптовалюты. По крайней мере, на сегодняшний день :)

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

            Всё верно.

            Ваша идея хороша.

            Спасибо!
          • 0

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


            1. Блок чейн хранит все транзакции и их история есть у всех. Т.е. вся цепочка блоков должна быть на каждом узле и для проверки последнего блока нужно перепроверить все предыдущие.
            2. База данных с транзакциями не самого большого местного банка начинается с размера в 1 ТБ. И это данные не за все время.

            Как вы собрались это хранить? Какие такие транзакции по всей стране в едином блок-чейне? Среднестатистический чел генерирует 5-10 транзакций в день, с учетом технических. Покупка в магазине, оплата сотового, телефонный звонок и т.д. Даже если взять по минимуму — каждая транзакция — это 256 байт памяти 2.5 КБ на человека в день, на 146 000 000 это ~ 350 ГБ в день. И это должно быть на КАЖДОМ узле, и это надо еще обсчитать, сохранить и т.д. Какой нафиг блок-чейн? Или я что-то упустил?

            • 0
              Фишка не в хранении всего массива ваших данных. Это не Pied Piper. Фишка в том, что, доверяя блокчейну, вы можете положить в него только минимум информации и считать её достоверной. Тот же Acronis не хранит в блокчейне весь ваш бекап. Вычисляют хэш и привет. Так же и с транзакциями — будут собирать в zip за день, подписывать его, хэш и подпись — в блокчейн. Главное, чтобы все заинтересованные признавали эту схему.

              Все зависит от области применения и стоимости транзакции (майнеры не будут бесплатно поддерживать работу блокчейна), но хранить избыточные массивы данных в блокчейнах не целесообразно. Оно не для этого.
            • 0
              Т.е. вся цепочка блоков должна быть на каждом узле и для проверки последнего блока нужно перепроверить все предыдущие

              Погуглите SegWit (Segregated Witness).
              • 0
                1. С какой целью используется дерево Меркла? Почему документ нельзя сравнить побайтово, например, или рассчитав целый хеш? Если мы не хотим показывать весь документ одной стороне, то по какой причине? И как в этом случае защититься от того, что по кусочкам атакующий "вытянет" весь файл?
                2. Как именно ваша информация хранится в блокчейне? Как она туда попадает, и кто гарантирует целостность и неизменность? Я задаю этот вопрос, зная, как работает биткоин-блокчейн, но не понимая ваш алгоритм.
                3. Как будет устанавливаться в суде соответствие ключ-личность?

                Статья выглядела бы более понятно, будь она описана с помощью стандартных персонажей (Алиса, Боб, Ева, Мэллори, ...) и с анализом возможных атак.

                • 0
                  1. Дерево Мёркла используется для эффективной упаковки и хранения хэшей нотаризованных объектов. Для документа считается целый хэш. Файлы «вытягивать» неоткуда, в сервисе они не хранятся.
                  2. Мы помещаем корневой хэш построенного дерева Мёркла в блокчейн с помощью специального смарт-контракта. Целостность и неизменность этого хэша гарантирует блокчейн.
                  3. Отличный вопрос! Он находится в процессе проработки.
                • 0
                  Вопрос немного не в тему, но подумалось тут. Есть какое-нибудь распределённое хранилище хешей (в виде блокчейна) содержимого сайтов по url? Смысл в том, что все врут и правят статьи задним числом. Есть всевозможные архивы — да, но можно сказать, что они в сговоре с другой стороной и не доверять. Например, обделалось какое-нибудь СМИ фейковой новостью про загнивающих партнёров, а потом поправили и делают вид, что невиноватые они, на скриншоты говорят, что фотошоп, а Internet Archive и кеш Google из госдепа и всё подделали. А так можно было бы такой сети «скормить» нужный url и получить достоверное состояние этого url на данный момент времени. Правда тут хешировать надо умным образом, чтобы хеш не зависел от какой-нибудь встроенной рекламы (которая каждый раз разная) и баннеров.
                  • 0
                    Такого сервиса пока не видели, но соответствующий эпик находится в бэклоге проекта Notary :)
                    • 0
                      Интересное развитие мысли, однако как доказать, что информация перед помещением в сервис удостоверения не была изменена?
                      • 0
                        URL отдаётся сети из независимых узлов. Каждый заходит и считает хеш. Хеш сохраняется в цепочке только если он совпадает у некоторого минимального числа узлов. Т.е. это просто слепок состояния URL на момент времени. Для того, чтобы данные не изменили задним числом и не говорили потом, что так и было.
                        • 0
                          Да, верно, получается даже такой распределенный сервис, а не только распределенное хранение данных.
                    • 0

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

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

                    Самое читаемое