УДК 004.9
к вопросу о технологических аспектах БИткойнА
Сальников Игорь Алексеевич
Санкт-Петербургский имени В.Б. Бобкова филиал Российской таможенной академии, заведующий кафедрой информатики и информационных таможенных технологий, e-mail: [email protected]
В статье представлен краткий обзор информационных технологий, лежащих в основе цифровой криптовалюты и технологии блокчейна
Ключевые слова: информационная технология; пиринговые сети; криптовалюта; биткойн; блок-чейн; асимметричное кодирование; майнинг
TO THE ISSUE OF THE TECHNOLOGICAL ASPECTS OF BITCOIN
Salnikov Igor A.
Russian Customs Academy St.-Petersburg branch named after Vladimir Bobkov, Head of Department of Computer Science and IT-supported Information Customs Technologies, PhD, Docent, e-mail: [email protected]
The article presents a brief overview of the information technologies underlying the digital cryptocurren-cy and blockchain technology
Keywords: information technology; peer-to-peer networks; cryptocurrency; bitcoin; blockchain; asymmetric encryption; mining
Для цитирования: Сальников И.А. К вопросу о технологических аспектах биткойна // Ученые записки Санкт-Петербургского имени В.Б. Бобкова филиала Российской таможенной академии. 2018. № 3 (67). С. 72-77.
Неотъемлемой частью мирового инновационного информационно -технологиче ского процесса развития, на протяжении нескольких последних лет притягивающей к себе пристальное внимание больших групп специалистов в различных сферах научной и практической деятельности, стала криптовалюта. О невозможности игнорирования ее существования и влияния на экономику крупнейших стран мира свидетельствуют не только новостные заголовки мировых информационных агентств, дискуссии, ведущиеся учеными и политиками в аудиториях и на просторах Интернет, но и важные решения, принимаемые средним и крупным бизнесом и в первую очередь правительствами многих стран [1—5].
Криптовалюта является производной нескольких информационных технологий, часть из которых прочно вошли в обиход современного человека, использующего компьютеры, смартфоны, проводные и беспроводные компьютерные сети, Интернет. Тем не менее существуют другие малоизвестные широкому кругу пользователей информационные технологии, незнание и непонимание которых может стать препятствием на пути к освоению перспективных компьютерных технологий, используемых в настоящее время (криптовалюта) и разрабатываемых для внедрения в ближайшем будущем в различных сферах экономики (блокчейн). В данной статье предпринята попытка проанализировать имеющиеся литературные источники для раскрытия понятий и технологий, положенных в основу криптовалюты - в первую очередь биткойна (ВТС), ее майнинга и формирования блокчейна.
Основополагающая статья, в которой изложены принципы построения надежной децентрализованной системы электронного денежного обмена, была опубликована в 2009 г. анонимным автором,
скрытым под псевдонимом Сатоши Накамото. В ней автор впервые предложил для обеспечения скорости и надежности электронных валютных транзакций (переводов) использовать технологию формирования журнала учета транзакций в компьютерной сети, устойчивой к возможным ошибкам пользователей и преднамеренным атакам злоумышленников [6]. В качестве технической основы новой технологии автор предложил использовать пиринговые компьютерные сети, доказавшие свою эффективность при пересылке файлов большого объема, в основном видеофайлов, и производства сложных распределенных вычислений с использованием удаленных компьютеров. Дело в том, что файлы для передачи их по компьютерной сети, в соответствии с действующим протоколом TCP/IP, разбиваются на небольшие блоки, называемые пакетами, в которых указывается: адрес компьютера-отправителя, адрес компьютера-получателя, количество пакетов, порядковый номер пакета и его содержимое. Пакеты в компьютерной сети передаются различными маршрутами в произвольном порядке. После получения очередного пакета проверяется его точное соответствие такому же пакету на компьютере-отправителе. Если в процессе передачи пакета произошла ошибка, запрашивается его повторная передача. После того как компьютер-получатель получит все пакеты, он собирает их в правильной последовательности в соответствии с номерами пакетов и тем самым получает требуемый файл.
Привычная для организации локальной сети клиент-серверная модель показывает высокую эффективность при обмене данными между центральным компьютером (сервером) и рабочими станциями (компьютерами-клиентами). Однако при значительном увеличении количества рабочих станций, что имеет место в глобальной сети
Интернет, скорость обмена данными в сети резко падает, а в случае выхода сервера из строя обмен данными вовсе становится невозможным. Примерами крупных серверов, реализующих клиент-серверную модель обмена файлами, являются серверы DepositFiles, Rapidshare, Letitbit.
В пиринговой модели организации компьютерной сети какой-либо центральный компьютер отсутствует, и все компьютеры являются равноправными. Для поиска компьютера, на котором имеется искомый файл, достаточно воспользоваться специальными каталогами. В подобных сетях серверы (трекеры) все же существуют, но они используются, главным образом, для размещения каталогов файлов, организации работы в сети, поиска и организации связей между компьютерами, передающими файлы, и компьютерами, получающими файлы. Для подключения компьютера пользователя к той или иной пиринговой сети на нем требуется установить специальную программу, связывающую его работу с работой серверов и компьютеров участников сети. Важной особенностью пиринговой сети является то обстоятельство, что каждый компьютер, получивший хотя бы один пакет файла, обязан делиться им со всеми другими компьютерами, сделавшими такой запрос. В результате существенно снижается нагрузка на компьютеры, распространяющие файлы. Примером наиболее распространенной пиринговой сети является сеть BitTorrent.
В процессе традиционной Интернет-торговли покупатель и продавец обмениваются валютой (безналичными электронными переводами) посредством глобальной сети, при этом они вынуждены доверять друг другу. Используется система «звезд»: чем больше сделок проведено и больше положительных отзывов оставили покупатели на сайте продавца, тем больше «звезд» отображается на сайте и тем больше должно быть к нему доверия. Кроме того, и покупатель, и продавец должны доверять выбранной ими платежной системе (SWIFT, VISA, MasterCard, PayPal) с ее разветвленной инфраструктурой в виде банков и отделений банков, банкоматов, платежных киосков, терминалов и банковских карт. Однако чем сложнее система, тем выше вероятность ее сбоя вследствие технических причин (потеря связи, компьютерные вирусы и атаки, установка скиммеров мошенниками), проблем в управлении банками (отзыв лицензий, банкротство), экономических причин (экономические кризисы) и политических причин (ограничение или запрет использования платежной системы).
С. Накамото предложил использовать электронную платежную систему, основанную не на доверии посреднику сделки, а на криптографической защите валютных транзакций, осуществляемых напрямую между двумя участниками пиринговой компьютерной сети. Сеть обеспечивает каждого участника закрытым (секретным) ключом, который хранится только у его владельца (на компьютере, смартфоне, флеш-карте, на бумаге), и открытым
ключом. Открытый ключ позволяет генерировать адреса в сети (биткойн-адреса), используемые, как правило, однократно и сообщаемые в виде QR-ко-да второму участнику сделки для осуществления проведения транзакции. Получив этот код, второй участник сделки осуществляет платеж, подтверждая ее своим закрытым кодом. Платеж осуществляется посредством транзакции, запись о которой рассылается всем участникам сети. Транзакция, с точки зрения участников сделки, включает в себя биткойн-адреса участников сделки (но не их персональные данные) и сумму платежа.
Центральный элемент идеи организации децентрализованного (непосредственного, то есть осуществляемого без использования какой-либо централизованной платежной системы) перевода валютных средств в форме электронных денег состоит в том, что в процессе всех сделок (переводов) формируется хронологическая система записей, привязанных к моментам времени сделок, которая подтверждает их допустимость и утверждается большинством участников сети, а значит - всеми участниками. Данное обстоятельство исключает возможность перехвата злоумышленниками контроля над записями о проведенных сделках, удаления или изменения записей. В любой момент времени на каждом компьютере участника сети имеется утвержденная система записей о завершенных сд елках. Каждые 10 минут на каждом компьютере сети формируется новый информационный блок, состоящий из транзакций, выполненных участниками сети за последний интервал времени, отметки времени и хэше (шифре) предыдущего информационного блока для привязки к нему. Тем самым подтверждается согласие участников сети с предыдущей сделкой и, следовательно, всеми записями о сделках. Участники сети формируют блок только из тех транзакций, которые являются корректными, и не используют уже потраченные средства. Предыдущие блоки изменению не подвергаются.
Таким образом, формируется постоянно растущая цепочка информационных блоков, начиная с начального блока, получившая название «блокчейн».
С точки зрения участника сети его цифровая наличность и ключи доступа к ней хранятся в так называемом электронном кошельке, который создается в виде файла и обслуживается специальным программным обеспечением. Ключи доступа (открытый и закрытый) не видны участникам сети. Когда производится платеж, открытый ключ представлен в соответствующей транзакции биткойн-адресом, который является его производной (цифровым отпечатком). Открытый ключ используется для получения платежей, а закрытый - для оплаты платежей.
Закрытый ключ представляет собой случайное целое число в пределах от 1 до 2256, получаемое с помощью генератора случайных чисел. Пространство закрытых ключей настолько велико, что вероятность подбора ключа бесконечно мала. Ниже дается пример закрытого ключа, используемого для
подтверждения транзакций в сети биткойн-плате-жей [7]:
1Е99423Л4ЕО27608Л15Л2616Л2Б0Б9Б52СБО330 ЛС530БОСС32С8РРС6Л526ЛБОО
Используя закрытый ключ, можно с помощью специальных математических операций вычислить открытый ключ. В сети биткойн-платежей для получения открытого ключа используются методы криптографии, основанные на специально подобранной эллиптической кривой, соответствующей стандарту верс256к1, установленному Национальным институтом стандартов и технологий США, (1):
у2= х3 + 7, (1)
рассматриваемой над полем простого порядка (2):
РР = {0, 1, 2,...,р - 1}, (2)
где р = 2256 - 232 - 29 - 28 - 27 - 26 - 24 - 1 (очень большое простое число).
Умножая закрытый ключ на точку на эллиптической кривой, называемую точкой генерации, получим на этой кривой еще одну точку, которая и будет служить открытым ключом. Точка генерации для всех пользователей сети одна и та же, поэтому одному закрытому ключу всегда соответствует один и тот же открытый ключ. Обратное математическое преобразование открытого ключа в закрытый ключ невозможно, поэтому открытый ключ можно не хранить, а вычислять по мере необходимости. Открытым ключом можно делиться без опасения раскрыть свой закрытый ключ. Выполняя одностороннюю операцию хэширования открытого ключа, получают биткойн-адрес, который указывается в транзакциях в сети. Обратные преобразования невозможны.
С целью хэширования открытый ключ преобразуется с помощью алгоритма БИЛ256 в промежуточный хэш, который затем преобразуется алгоритмом RIPEMD160 в 160-битное число. В начало кода записывается число, определяющее тип кода, например, 0 означает биткойн-адрес, 12810 - закрытый ключ. К полученному коду дважды применяется алгоритм БИЛ256. Из полученного хэша выбирают четыре байта и приписывают их к коду, полученному до применения двойного хэширования. Они будут использоваться в дальнейшем в качестве контрольной суммы для защиты хэша от опечаток и ошибок кодирования. Для удобства чтения полученного числа его компонуют в более компактное представление с использованием системы счисления (кодирования) с основанием 64, из алфавита которой (цифры, строчные и прописные буквы латинского алфавита, знаки + и /) удалены мало различимые символы О, 0, I, 1, /, \. Полученная система кодирования носит название Ба8е58СЬеск. В результате кодирования получается биткойн-адрес,
который должен начинаться с цифры 1 (0 не входит в алфавит системы кодирования), ниже приведен пример биткойн-адреса [7]:
117шав51^уиИЕЫУс1х39ЖУЖК7£8БрЕоХ2у
Следует добавить, что все вычислительные операции в сети компьютеры выполняют с использованием специального свободно распространяемого программного обеспечения с открытым кодом.
Для того чтобы привлечь дополнительных участников сети, добровольно поддерживающих ее существование и стабильность работы так называемых майнеров, в сети используются действенные стимулы. За формирование блока, который будет подтвержден большинством участников сети и записан в блокчейн, участник сети получает на свой виртуальный счет определенную сумму, выраженную в биткойнах (в настоящее время это 12,5 ВТС). Кроме того, за осуществление электронных транзакций могут назначаться комиссии. Тем самым достигается постепенный ввод в систему (экономику сети) валюты. К 2140 г. выпуск биткойнов прекратится, а вознаграждение майнеров будет формироваться только за счет комиссионных отчислений за проведение транзакций.
Проверка правильности транзакций майнерами организована таким образом, чтобы постоянно поддерживать их работу на соревновательной основе. Только один майнер за одну сессию, продолжительностью 10 минут, получает награду и возможные комиссионные. Собственно проверка правильности транзакций выполняется майнерами одинаково быстро. Для того чтобы выбрать среди майнеров победителя очередной сессии, всем участникам сети поступает задание на хэширование последнего сформированного блока транзакций таким образом, чтобы соблюсти заранее заданный шаблон [7, 8]. Например, шаблон должен содержать 25 лидирующих нулей. Для этого многим тысячам майнеров придется выполнять на своих компьютерах огромный объем вычислений, реализующих криптографический алгоритм БИЛ256. Если задача в последней сессии решалась дольше 10 минут, ее сложность автоматически снижается, и наоборот, если задача решена относительно быстро, ее сложность в следующей сессии будет повышена. Сложность решаемых задач является доказательством работы май-неров и обеспечивает безопасность сети. Майнинг в целом является процессом, позволяющим функционировать децентрализованной учетно-финансовой системе, подтверждающей выполнение финансовых операций, защищая ее от сбоев, ошибок и преднамеренных атак при обеспечении согласия (консенсуса) в действиях всех участников сети.
Существование, пусть и виртуальное, а также значительный рост стоимости биткойна (рис. 1) является доказательством справедливости положений С. Накамото и его преемников.
О популярности биткойна и других аналогичных криптовалют в различных странах мира можно
Рис. 1. Динамика курса биткойна к доллару США (Февраль 2017 - январь 2018)
-I
4оо:
Od
OOj^jl
°Q~Q I
Рис. 2. Банкоматы, работающие с биткойнами, на карте мира
судить по доступности банкоматов для населения, позволяющих производить обмен криптовалюты на фиатную валюту - доллары, евро (рис. 2). Очевидно, в нашей стране подобных банкоматов нет, однако их можно найти в Эстонии, Финляндии, Польше.
Банкоматы могут иметь различный вид. Любой желающий может завести электронный кошелек с криптовалютой на свой вкус, зайдя, например, на сайт blockchain.info. Подробные рекомендации и видеоурок можно получить на сайтах https://mining-bitcoin.ru/bitcoin/bitcoin-kak-sozdat-koshelek#i-2 и https://bitcoin.org/ru/getting-started.
В декабре 2017 г. стоимость биткойна выросла в 5 раз, капитализация всех криптовалют, по данным сайта https://coinmarketcap.com, достигла 600 млрд долларов. Однако в январе 2018 г. она упала почти в 2 раза - до 350 млн долларов.
В ряде стран Европы и Америки, в странах Восточной Азии у многих имеется счет в криптовалю-те. Однако резкие колебания курса и возможные
проблемы с местным законодательством, в части уплаты налога на доходы, пока отталкивают людей от использования криптовалюты.
В настоящее время уже имеется возможность участвовать в работе специализированных бирж, торгующих криптовалютой или, по крайней мере, понаблюдать за работой этих бирж в режиме реального времени (рис. 3, 4). Это позволит принимать обоснованные решения, связанные с выбором вида криптовалюты (более 14 видов) и типа операций (покупка или продажа).
Крупнейшие корпорации, такие как Microsoft, Dell, Tesla, Bloomberg, используют криптовалюту (биткойн) для ведения бизнеса.
Время майнеров-одиночек, использующих домашние компьютеры для заработка криптовалюты, прошло. Постепенно проходит ажиотаж, связанный с массовой скупкой видеокарт предприимчивыми бизнесменами: оказалось, что графические процессоры видеокарт, установленных по нескольку
«л* ц тп«
ВД I РГП<ТИ1>в
BITKAN
"JIACHW РЫНКИ НОВОСТИ ¿ИЮГИНГ rWVlHKH ПРИЛОЖЕНИЕ
Real
rinse Pfice
Professional Charts
Low «1 24 Ihr».
CUT USD СЭГГ USD CXT USD orr USD CNY USD
njcdFn : 41«.. ij vmii.ii 5 «37.9ft « £7459.4« $9144.99 wsTsai.«] $94«. M »И7М. .54 ttise.fie ¥ 51174.M 16.54 Ш
BtowWO 1914).!« И17*«. И Still. 2 * 574U. 17 IflHI VW1.1 $9477,64 «5М45, .IS '5 «114,44 «514». 54.К Ш
GKEXUSOT l9IW.ll V Snil. 21 Snu.ifl « 57551.41 Snii.M ¥57451.41 IWl.Li ¥5554«, .49 ii2M.ee ¥ 51534.S4 41. X Ш
WWAMP-LSC ¿9119.99 KSW.JI v 57353 .м 19137,57 Hiw.tl $944J,9ft ¥59341 ,47 $•174,71 «51177.CI 11. И Ш
ZB een»- USCT V5?5l«,«2 nsnn.u $45MM ¥54714.Ml ее ¥51111,04 1.4C 1M
GQAX" USD ¡«и.« V 575M. It 4*7544.14 S947«.17 W 5454J. ,4| $ «15,41 V5143«,14 Ш
«54* V1UU.II «54941,94 114*77,49 VMMJ Stmt.n ¥•«144 «4 l»w,«l ¥54919.21 4 ш
irfV* «54141.27 ; 1944.21. «54241.22 5 №4.9 454313.55 Sm.ii ¥54343 17 ¥54245.69 HI .1С w
Ш «54*14, if Stt?s.5i «S44J4,ftl jHTit) WS444.4J «411H В $f41l.tt «54Ш.» 14.4* ш
Hurt ¥ S+M1.7» $4445.31. ¥54447.£ Sim.« V547M.91 ¥57141 $ 7134.17 ¥49365.37 1.2.1С ш
1оЫ IMI.H УЗД',*. 4« SNN.SI V £4*54,44 11711,14 M54744.19 I«».» ¥5714] J4 $ 7115,J< ¥49264.17 a.«c л
GKEXtn«* ¥53965,55 «smr.n t 91IM. 11 M54475.U $9449.11 ¥44375 14 $1159,99 ¥57944,14 41.31 'Л
Рис. 3. Котировки курсов криптовалют на рынках мира (выбран биткойн, 5 февраля 2018 г.)
I ■ И • в »а
— -* 4 :: яфлщй \ /—Л* \ AM \ щ, М 1 J с 111 it * » — г
Щ ftHt ' v
. _ в mm чш Mt> "« H iinl I» rm 3 ■ — м | № <B »* ----I Dial я 1 I> HH 1« 1ЧВ »mm n i™ U.U IB №M там i'
.А >.а> . J ate fr» JLh — 1 L>Jh J ¿jiyjt ■ - . . ,
Рис. 4. Динамика курса биткойна по отношению к доллару США (5 февраля 2018 г.)
штук в одном системном блоке, гораздо лучше подходят для расчета хэш-функций, чем один микропроцессор, но не выдерживают конкуренции с вычислительным оборудованием, построенном на базе специализированных интегральных микросхем ASIC, спроектированных только для операций майнинга. Отдельные майнеры начали объединяться в коллективные пулы. В 2018 г. реализуется масштабный проект построения промышленной майнинговой фермы Moonlite в Исландии,
где вычислительное оборудование будет охлаждаться естественным образом, благодаря прохладному климату, потребляя «чистую» энергию ветра, воды и геотермальных источников. Планируется, что низкая стоимость электроэнергии даст проекту большие конкурентные преимущества.
Дочерний банк Сбербанка России в Швейцарии - Sberbank (Switzerland) AG - готовится к запуску клиентских операций с криптовалютой [4]. В швейцарском кантоне Цуг активно развивается
своеобразная Кремниевая долина, где создаются максимально выгодные условия для технологических компаний и стартапов: создана развитая инфраструктура, минимизированы налоги.
Однако отечественные компании интересует не столько возможность принять участие в инновационном программно-технологическом процессе, связанном с криптовалютами, сколько получить опыт и подготовить специалистов в области организации компьютерных систем, основанных на блокчейне. Сбербанк России уже создал более 20 проектов на основе блокчейна. Создана блок-чейн-лаборатория, которая занимается синтезом новейших технологий для создания прикладных бизнес-решений.
Широкие перспективы использования блок-чейн-технологии обрисовала М. Свон, основатель Института блокчейн-исследований [9]. Автором предложено использовать данную технологию за рамками финансовой области, а именно: в области защиты интеллектуальной собственности, в работе нотариальных служб, в области муниципального управления, государственных служб, в области здравоохранения, науки, образования, культуры и искусства.
Таким образом, в данной статье выполнен краткий анализ основных информационных технологий, лежащих в основе цифровой криптовалюты и технологии блокчейна, показаны направления использования данных технологий как в повседневной жизни граждан, так и для государственного строительства.
Библиографический список:
1. Пряников М.М., Чугунов А.В. Блокчейн как коммуникационная основа формирования цифровой экономики: преимущества и проблемы // International Journal of Open Information Technologies. № 6. 2017. С. 49-54.
2. Савельев И.В. Технология блокчейн и ее применение //Прикладная информатика. № 6 (66). 2016. С. 23-28.
3. Заседание наблюдательного совета Агентства стратегических инициатив // Президент России. Новости. Выступления и стенограммы. 2016. 14 янв.
4. Сбербанк займется криптовалютами в Швейцарии. Интервью с Г. Грефом // Вести. Экономика. 2018. 2 февр. URL: http://www.vestifinance.ru/articles/97222 (дата обращения: 5.02.2018).
5. ЦБ не допустит криптовалюты на российский рынок как денежные суррогаты // TASS.RU: информационное агентство России. 2017. 8 сент. URL: http://tass.ru/ ekonomika/4546253 (дата обращения: 20.11.2017).
6. Nakamoto S. Bitcoin: A Peer-to-Peer Electronic Cash System / S. Nakamoto. URL: http://www.bitcoin.org/ bitcoin.pdf. (дата обращения: 05.02.2018).
7. Antonopoulos A. Mastering Bitcoin. O'Reilly Media. Inc. 2017. 330 p.
8. Tepper А. Bitcoin The People's Money. / A. Tepper. URL: http:// banksmasher.com/wp-content/uploads/2017/11/ The-Peoples-Money-by-Adam-Tepper.pdf (дата обращения: 05.02.2018).
9. Свон М. Блокчейн. Схема новой экономики. М.: Олимп-Бизнес. 2017. 240 с.