Пенистая волна криптовалют принесла в бытовую речь много новых слов: биткоин, майнинг, токен, распределённый реестр, блокчейн и прочие.
К сожалению, немало люди стали употреблять эти слова, не понимания их смысла. Речь идёт не о каких-то нюансах, а о полном отсутствии представления о предмете. Ситуация бывает особенно трагичной, когда в некомпетентные рассуждения впадают лица, принимающие управленческие решения и, тем более, устанавливающие правовые нормы.
Кто-то предлагает с помощью блокчейн выбирать депутатов или… даже президента; кто-то — учитывать движимое и недвижимое имущество; кто-то — что-то делать в здравоохранении; кто-то — усыновлять детей; … Ну и, конечно, немалое число собеседников планирует блокчейном поторговать…
Да, многие уже знают, что блокчейн — это английское слово blockchain, означающее цепочку блоков. Но какую цепочку? Каких блоков?…
Что такое блокчейн?
Блокчейн — это фрагменты произвольной информации, последовательно и связанно удостоверенные электронно-цифровыми подписями.
Всё! Ничего другого в этой технологии нет. — Кто-то что-то написал и подписал своей подписью. Затем другой что-то добавил к предыдущему и также подписал своей подписью. Вот вам два первых звена цепочки.
Прежде всего, блокчейн — это электронно-цифровая подпись! Подробнее о её сути будет рассказано чуть далее.
Информация в цепочках действительно может быть произвольной: текст, звук, видео. Всё, что можно записать в цифровом виде. Возможно, поэтому у некоторых возникает искушение приложить эту технологию невесть к чему.
В одних случаях использование блокчейн вполне возможно и эффективно. В других — идеи о его применении вызывают лишь улыбку. А если такие идеи высказывают официальные лица, возникает большая печаль.
Конечно, можно привести и денежный пример: Вова выплатил Диме 100 рублей, Дима передал их Игорю, а Игорь передал их Аркадию. И каждое из этих действий его участники удостоверяют своими подписями. В результате, мы можем выяснить, у кого в тот или иной момент времени находились денежные средства.
Главное то, что удалить или изменить подписанные данные, находящиеся внутри цепочки, невозможно. Точнее, можно, но это легко выявить.
Блокчейн — это способ совместно удостоверить какие-то цифровые данные разными субъектами (лицами).
Электронно-цифровая подпись (ЭЦП)
Когда разговор заходит об электронных подписях, некоторые впадают в уныние, мол, там криптография, крутая математика, всё равно не пойму. Но ведь незнание деталей устройства автомобиля многим не мешает успешно управлять им. Не вдаваясь в подробности математических алгоритмов, сконцентрируемся на практической стороне дела.
Что первое нужно узнать, чтобы начать применять электронно-цифровую подпись? — То, что для её использования нужно иметь два ключа: открытый (публичный) и секретный (приватный). Они математически связаны между собой, поэтому называются парой. Секретные ключ должен знать только владелец подписи.
Ключи представляют собой очень большие числа, которые в шестнадцатеричном виде могут выглядеть, например, так.
e4e5259bc31fd85e53d5b2434976392fc8d1f51b2c5550bd2f52f0430a5ed375 333b03f3390e0ff31d27cf290638a17364ae0f52b5f4a2dad4171e45b45b125b c5fc19d5dbd075170b515a473371f0286d0c287bf0ac5dfe8f3da81855e7c2b3 42441394af63be2ba1aaaa37484d50928a4fc5e8eb2984267f3a5ef2ecf34e17 791cf573feee8534a5f78372a97b48f92fbd4734eebe3648217a207312d1c3ca 71a9e4293ed1e4629a89dbc9df34719c82c9749cbb89131f1dfca1fb3bc0ed22 a79c1003325105bf5feb4ad762b9d00862614d857262605ea3800cf491e70f80 fb57a1db4b7a5bb46ce8ed39843f872780efad161f0829359155d9a4b87480c1
и
a5562c0b4e2fb38fb748d6022a8f3e119922a7c4e00a244ef35f1a73a28b0a7d 4eeb23184e2f2d3033f02c807aa0ef6635e450e732cda9d11d80317ab22352a8 7de37319fa34a24f69fa729699bf8474ff07d83a66876b41d45ffa0ad20a9da5 f488ce080984a7ba4685cb7c313abfa78a46c33352a26375975327809bcdc7aa 6910600ad2ac461b32198f02d244054766c960d2bc3e9cad92a7a373fe7d5f0d 3802f9a6807f7787a750182b41b1a05e2c67687ee5e08a2a406011179e11617d 0604a6d4c33a4f96992d3cd10da3ddc62fe6c87d45cd7de1be2a8a08e306bb36 34037e9d0f5bb2a7c936946a40725619ea2eef5d95e8063aa6de11fc8611b82d
Первый ключ — открытый, второй — секретный.
Между прочим, это — совершенно реальная пара ключей, сгенерированная по стандарту RSA. Но использовать эти ключи уже нельзя, так как секретный ключ опубликован, то есть он перестал быть секретным. Как говорят специалисты, ключ был скомпрометирован.
Оба ключа в паре позволяют зашифровать исходные данные, например, некий текст. А вот расшифровать его можно только с помощью секретного ключа.
Открытый ключ можно использовать для пересылки зашифрованного сообщения владельцу секретного ключа. Никто другой, кроме владельца парного секретного ключа, не сможет расшифровать его. Таким способом удаётся пересылать конфиденциальные сведения по публичным каналам связи, например, через бесплатные службы электронной почты. Для отправки зашифрованного сообщения вам лишь нужно знать открытый ключ вашего корреспондента.
Кроме того, секретный ключ можно использовать для удостоверения какой-либо информации, например, какого-то файла. В результате зашифровывания исходных данных секретным ключом будет получена уникальная цепочка символов, являющая своего рода цифровым «слепком» этих исходных данных.
Этот «слепок» можно считать электронно-цифровой подписью владельца секретного ключа, так как никто другой не сможет изготовить такой же. Ведь подобрать или вычислить ключ математически очень-очень сложно, практически невозможно.
Такой подписью владелец секретного ключа может удостоверить произвольную цифровую информацию. Например, долговая расписка, подписанная электронно-цифровой подписью, могла бы выглядеть так.
Если в текст, который предшествует подписи, внести какие-либо изменения, например, добавить или убавить хотя бы один пробел, подпись перестанет быть действительной. Хотя в этом случае правильнее сказать, что документ перестал соответствовать подписи, то есть недействительным стал он.
Проверить действительность документа можно с помощью открытого ключа, соответствующего подписи. При его применении к содержимому документа, мы должны получить такую же последовательность символов, что и в подписи. Если последовательности не совпали, значит, документ был изменён.
Для проверки неизменности документа достаточно изложенного порядка, но очень часто требуется узнать ещё и то, кто поставил эту подпись.
Сертификат электронно-цифровой подписи
А что если требуется проверить не только сохранность содержания документа, но и принадлежность подписи, которой его заверили?
Здесь мало указать рядом с подписью имя соответствующего лица. Нужно убедиться в том, что одно соответствует другому.
В физическом мире подпись человека вы либо знаете лично, либо доверяете ей, потому что её образец удостоверил кто-то другой, кому вы доверяете или должны доверять, например, нотариусу.
В компьютерном мире вы также можете либо знать электронную подпись своего контрагента лично, либо доверять чьему-то удостоверению этой подписи.
Действительность и принадлежность электронно-цифровой подписи подтверждается сертификатами, которые выдают удостоверяющие центры (УЦ). В английском языке они называются Certification Authority (CA). Полномочия самих удостоверяющих центров обычно подтверждаются либо правительственными учреждениями, либо крупнейшими отраслевыми организациями. Например, в вашем веб-браузере имеется список корневых удостоверяющих центров, которым доверяют его разработчики.
В Российской Федерации удостоверителем удостоверяющих центров является Министерство связи, по-нынешнему: Министерство цифрового развития, связи и массовых коммуникаций.
Нужно пояснить один важный момент, непонимание которого может ввести в заблуждение.
Строго говоря, электронно-цифровая подпись — это конкретная подпись конкретного документа. Сертификатом же подтверждается принадлежность открытого ключа, которым можно проверить любую подпись владельца этого ключа.
То есть при использовании термина «электронно-цифровая подпись» фактически речь идёт о сертификате (удостоверении) соответствующего открытого ключа.
Взаимное удостоверение подписи
Нельзя ли обойтись без сторонних удостоверяющих центров? — Ну один такой метод мы уже упомянули: если вы лично знаете подпись своего контрагента.
А если не знаете? — Тоже можно обойтись, если подпись нового контрагента будет удостоверена другим лицом, подписи которого вы доверяете.
Если вы знаете подпись Петра, а Пётр своей подписью удостоверил подпись Павла — вы также можете доверять подписи Павла.
Важно отметить, что идея взаимного удостоверения возникла довольно давно. Например, уже в начале 90-х годов в отрытой криптографической системе PGP (Pretty Good Privacy) было обеспечена такая возможность.
Цепочка подписей
Последовательно подписывать некие данные (документы) может потребоваться, например, когда нужно провести групповое согласование документа, или когда документ может эволюционировать, дополняться новыми данными.
Приказ — неизменный документ, который не нужно хранить на многих серверах, но его часто готовит и утверждает группа людей.
Сборочный лист — пример эволюционирующего документа.
Следует понимать, что для обеспечения целостности самой цепочки неважно, как удостоверены подписи в ней. Важно, чтобы была обеспечена их криптографическая надёжность. Удостоверение подписей требуется тем, кто использует эту цепочку в каких-то целях.
Биткоины
В технологии биткоинов реализованы ровно такие цепочки подписей, как было описано. Но с некоторыми особенностями. В этом случае сертификат электронно-цифровой подписи привязан не к физическому или юридическому лицу, а к кошельку — абстрактному идентификатору (уникальному числу). Владение этим кошельком обеспечивается лишь тем, что его собственник обладает соответствующим секретным ключом. Именно поэтому утрата ключа приводит к безвозвратной потере кошелька и его содержимого.
Многочисленные публикации о биткоинах любят иллюстрировать изображениями монеток, которые дополнительно дезориентируют публику.
А судьи кто?
В главного качестве критерия применимости цифровой подписи в вашем конкретном случае следует рассматривать возможность её использования в качестве доказательства, в том числе в суде, если потребуется туда обратиться.
Этот критерий определяет и область, в которой нужно обеспечить действительность подписей участников документооборота.
Если электронный документооборот ограничен рамками одного предприятия, удостоверять подписи достаточно лишь внутри его пределов. В этом случае при возникновении споров арбитром будет выступать руководство этого предприятия.
Если электронный документооборот происходит внутри какого-то клуба или сообщества, требуется подтверждение принадлежности подписей всех членов этого клуба, а арбитром будет уполномоченный орган этого сообщества.
Если электронный документооборот происходит между произвольными субъектами Российской Федерации, требуется обеспечить такую легитимность подписей, чтобы с документами, подписанными ими, можно было обратиться в обычный суд или арбитраж.
Как мы уже знаем, удостоверить подписи можно взаимно, без привлечения удостоверяющих центров. Однако при возникновении полномасштабного гражданского спора предъявить эти подписи в суде не удастся, так как они не будут признаны из-за отсутствия сертификата, выданного сторонним удостоверителем. В этом случае подписи могут обеспечить лишь фиксацию содержания документа на момент его подписания.
Заблуждения
Одно из существенных заблуждений, относящихся к блокчейн, заключается в том, что при его использовании «всё прозрачно» — все всё видят, то есть все данные в цепочке доступны всем.
Такой порядок совсем не является обязательным. Какие-то данные в цепочке вполне могут быть зашифрованы. Конечно, шифровать данные нужно до их подписания. Это усложнит алгоритм организации цепочки, но при должном уровне автоматизации может не сказаться на удобстве её использования.
Другое распространённое заблуждение состоит в том, что блокчейн всегда считается распределённой базой данных, распределённым реестром. Однако распределённость цепочки совершенно необязательна, она может полностью храниться на одном сервере, к которому обращаются заинтересованные лица, использующие её.
Также встречается мнение о том, что блокчейн уже сам по себе ускоряет проведение деловых операций. Подходящая технология может содействовать повышению эффективности этих операций. Но если в целом бизнес-деятельность организована неэффективно, ускорение одного из её элементов делу не поможет. Например, если ассистент нотариуса быстро ставить печати на документы, а подготовка этих документов идёт ни шатко, ни валко, быстродействие ассистента не ускорит решения всей задачи.
Блокчейн не гарантирует и не может гарантировать правильность данных в цепочке. Ведь они вводятся людьми, которые могут ошибиться нечаянно или намеренно. Но цепочка обеспечивается целостность, неизменность ранее введённых данных.
И наконец, самое главное заблуждение заключается в том, что блокчейн является криптовалютой. — Нет, это категорически неверно! Это примерно также как утверждать, что любая бумага является деньгами.
Блокчейн входит в число базовых технологий, задействованных в расточительных упражнениях с криптовалютами, но и только.
Подводные камни
При всей полезности и перспективности технологии блокчейн в ней есть нюансы, которые следует понимать и учитывать при планировании её использования.
Как уже было сказано, сам по себе блокчейн не является распределённой системой, но при необходимости цепочка может быть распределена по разным компьютерам. В этом случае нужно принимать специальные меры для того, чтобы цепочка не прервалась, то есть чтобы каждое звено цепочки всегда могло быть где-то найдено. Хотя бы в одном экземпляре.
Второй естественной проблемой блокчейна является производительность. Строго говоря, для проверки достоверности всех данных в цепочке её требуется проверить от самого начала. Если цепочка стала длинной, и данных в ней накопилось много, её обработка может занимать существенное время.
Если проверять цепочку нужно часто, относительная низкая скорость этой процедуры может стать очень серьёзной проблемой. Именно она является одним из основных препятствий биткоина.
Заключение
Электронные подписи, их взаимное удостоверение, цепочки данных, распределённые базы данных, электронный документооборот — это давно существующие универсальные технологии с большим потенциалом.
Нынешний интересе к ним, спровоцированный модной темой криптовалют, однозначно пойдёт им на пользу. И результаты будут намного лучше, если не отвлекаться на… беспочвенные рассуждения и прожекты.
Валерий Шачин, аналитик компании 1cloud