Алгоритмы криптовалют таблица: Алгоритмы майнинга и шифрования криптовалют

Содержание

Алгоритмы майнинга. Какой из 8 алгоритмов самый выгодный

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

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

Таблица наиболее популярных криптовалютных алгоритмов

Алгоритм

Криптовалюта

SHA-256

Bitcoin, Bitcoin Cash, EOS, Steem, Litecoin Cash

Ethash

Ethereum, Ethereum Classic

Scrypt

Litecoin

CryptoNight

Monero, Bytecoin, Electroneum, CryptoNoteCoin, DarkNetCoin

X11

Dash

Equihash

Zcash, Bitcoin Gold, Komodo, ZClassic, ZenCash, Bitcoin Private

ProgPow

Bitcoin Interest, Veil, Zano, EtherCore, Super Zero, Epic Cash

Quark

Quark, Amsterdam Coin, Darknet, BiosCrypto, Dimecoin

1.

Алгоритм SHA-256

Secure Hash Algorithm – безопасный алгоритм хеширования, который появился в 2001 году. Цифра отображает размер чисел – 256 бит. За разработку алгоритма отвечает АНБ США. Первоначальная задумка заключалась в обеспечении высокого уровня конфиденциальности в протоколах TLS, SSL, SSH и PGP. В 2003 году ученые Гилберт и Хандштук подтвердили безопасность алгоритма. Позже, в 2008 году, исследователи из Индии все же нашли коллизии – разные сообщения с одинаковым хешем. В сентябре того же года они представили более безопасный метод конструирования алгоритма.

Наработки АНБ использовал Сатоши Накамото для обеспечения анонимности в сети Bitcoin, которая была запущена 3 января 2009 года. Поскольку у криптовалюты открытый исходных код, его часто использовали для создания других цифровых монет. Однако главный недостаток SHA-256 заключается в более медленной работе. Из-за этого начали появляться монеты на других алгоритмах.

SHA-256 нашел применение не только в криптовалютах. Сегодня его используют:

  • OpenLab – хеши паролей;
  • DNSSEC – дайджесты DNSKEY в протоколе DNSSEC;
  • X.509, DSA и PGP – создание электронной цифровой подписи;
  • IPSec – поддержка в протоколах ESP и IKE.

Ранее для эффективного майнинга на SHA-256 подходил обычный персональный компьютер. Однако со временем хешрейт сети начал стремительно увеличиваться, из-за чего рентабельность добычи криптовалюты подобным образом начала падать. Ситуация ухудшилась с появлением ASIC – теперь из-за особенностей алгоритма SHA-256 добывать BTC имеет смысл только с использованием специального оборудования. C этого момента началась «гонка вооружений», поскольку практически каждый год появляются новые, более мощные модели.

2.

Алгоритм Ethash

Ethash – обновленная версия алгоритма Dagger Hashimoto, который был получен благодаря объединению Hashimoto Thaddeus Dryja и Dagger. Последний был разработан Виталиком Бутерином. Разработчики алгоритма ставили перед собой следующие цели:

  1. усложнить создание ASIC;
  2. обеспечить легкую проверку клиента;
  3. обеспечить полное хранение цепочки блоков.

Несмотря на попытки усложнить производство ASIC, в 2018 году компания Bitmain объявила о создании специализированного оборудования для добычи Ethereum. Подобная ситуация не устраивала разработчиков Ethereum, и они объявили о брикетировании. Сеть может обновиться в любой момент, из-за чего ASIC перестанет приносить деньги. Позже разработчики объявили о переходе на POS – это сделает дальнейшее производство ASIC бессмысленным.

Для майнинга монет на базе Ethash в текущих условиях лучше всего подходят видеокарты. При майнинге в память видеокарты загружается DAG-файл. Размер этого документа постепенно растет. Вес файла уже превысил 4 ГБ. Для майнинга необходимо иметь видеокарты с объемом памяти от 6 ГБ. Однако и она через несколько лет перестанет приносить прибыль.

С проблемой увеличения DAG-файла столкнулась и другая криптовалюта – Ethereum Classic. Когда вес документа приблизился к значению 3,96 ГБ, разработчики приняли решение обновить алгоритм и уменьшить размер файла до 2,5 ГБ. В противном случае из-за низкой популярности сети существовал риск, что основная часть хешрейта достанется маленькой группе лиц.

3. Алгоритм Scrypt

Scrypt получил популярность после появления Litecoin. Однако автором алгоритма является не создатель криптовалюты Чарльз Ли, а офицер безопасности FreeBSD Колин Персиваль. Разработчик пытался защитить алгоритм от действий ASIC. Для вычисления функций алгоритму требуется значительный объем памяти со случайным доступом. В конечном результате это сделало Litecoin более гибким, нежели Bitcoin.

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

В качестве решения проблемы появилась модернизированная вариация алгоритма Scrypt-N. Его отличие заключается в постоянном повышении требуемой памяти, из-за чего создавать ASIC становится бессмысленно. Впервые этот алгоритм использовали для создания монеты Vertcoin. Несмотря на свою уникальность и отличие от Litecoin, она так и не обрела популярность. По данным CoinsMarketCap, она занимает 538-е место по размеру капитализации.

Еще одной вариацией стал NeoScrypt. Изначально базовый алгоритм изменялся под потребности криптовалюты Feathercoin. Алгоритм также пытались наделить устойчивостью к ASIC. NeoScrypt используют несколько монет – VIVO, Phoenixcoin, Innova. Из них внимания заслуживает только первая. Ей удается удерживать позиции в топ-100 криптовалют по версии CoinMarketCap. По своим характеристикам VIVO можно сравнить с Dash – монета также предоставляет высокий уровень анонимности.

4. Алгоритм CryptoNight

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

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

  • постепенное уменьшение эмиссии;
  • высокая скорость создания блоков;
  • сопротивление ASIC;
  • возможность задействовать CPU и GPU;
  • более высокий уровень анонимности, чем у SHA-256 или других алгоритмов.

Несмотря на защищенность от ASIC, производителям все же удалось создать специализированное оборудование для добычи криптовалюты, например monero майнинг. После этого, в 2018 году, разработчики криптовалюты приняли решение провести хардфорк и перейти на улучшенную версию алгоритма – CryptoNight V8. Это позволило исправить некоторые ошибки и сделать неэффективными любые ASIC. Однако из-за этого немного упала эффективность добычи криптовалюты на видеокартах. Хардфорк позволил решить проблему, но через год разработчики столкнулись с другой – централизация мощностей. Мыслями о возможной атаке 51 % поделился блогер по майнингу ValeraTV.

В этот раз вместо банального улучшения старого алгоритма перешли на другой – RandomX. Его особенность заключается в произвольном выполнении разных частей кода и загрузке памяти устройств. Из-за нового алгоритма хешрейт GPU и CPU несколько снизился, но сильнее всего пострадают ASIC – подобное оборудование перестанет быть эффективным, а самим производителям будет выгоднее затачивать технику под другие монеты.

5. Алгоритм Х11 и выше

Х11 – алгоритм майнинга, который использует 11 функций для хеширования. Подобный подход обеспечивает высокую степень безопасности и защищенность от ASIC. В теории разработчикам потребуется очень много времени на создание специализированного оборудования. Впервые алгоритм начал использоваться криптовалютой Darkcoin, которая появилась в 2014 году. Через год она сменила название на Dash. Сегодня dash майнинг доступен на видеокартах и асиках с поддержкой Х11.

Первые несколько лет производство ASIC удавалось сдерживать, но в 2016 году производители все же смогли найти решение. Это дало толчок для развития обновленных версий алгоритма. Так появились новые версии алгоритма — X13, Х15 и Х17. Их базовый принцип работы практически не отличается, поскольку они лишь добавляют количество функций. Не трудно догадаться, что последний вариант считается наиболее защищенным от ASIC. Алгоритм X17 используют следующие криптовалюты:

  • Verge;
  • MKTCoin;
  • SHIELD;
  • Bitmark;
  • Volvox;
  • GlobalToken.

Наиболее популярной из них считается Verge – она занимает 85-е место по размеру капитализации (по данным CoinMarketCap). В отличие от Х11, для Х17 еще нет разработанного ASIC, соответственно, для добычи Verge и аналогичных криптовалют подходит CPU и GPU. Это положительно сказывается на хешрейте, но из-за низкой популярности большинства монет майнинг может оказаться убыточным из-за высоких тарифов на электричество.

6. Алгоритм Equihash

Equihash – анонимный алгоритм, который появился в 2016 году. Его использовали при создании криптовалюты Zcash. Сейчас монета находится на 32-м месте в рейтинге CoinMarketCap. Алгоритм позволяет публиковать платежи в блокчейне, но при этом скрывает отправителя, получателя и сумму перевода. Его авторами являются Александр Бирюков и Дмитрий Ховратов – ученые из Люксембурга. В свое время отдельные личности называли Zcash наиболее привлекательной заменой биткоину из-за подлинного уровня анонимности – происхождение монеты невозможно установить за счет доказательства с нулевым разглашением.

Equihash достаточно требовательный к объему памяти, при этом скорость обработки вычислений играет меньшую роль. Подобное решение также делает сеть устойчивой к ASIC, однако со временем производители смогли создать машину для эффективного майнинга – Antminer Z9 mini от Bitmain и A9 ZMaster. Создатели Zcash отказались от проведения хардфорка или других методов борьбы с ASIC. В результате стоимость криптовалюты сильно упала – ранее Zcash уверенно входил в топ-10 криптовалют и имел шансы закрепиться в списке.

В качестве альтернативного варианта появилась криптовалюта Zero. Она использует улучшенный алгоритм EquihashZero, который лучше защищает сеть от ASIC. Пока у производителей не получилось создать специализированную технику, поэтому майнеры используют GPU. Однако монета Zero практически не торгуется на биржах, и ее популярность быстро падает.

7. Алгоритм ProgPow

ProgPow появился в 2018 году. Это очередной алгоритм, который разработали для борьбы с ASIC. Его начали использовать после хардфорка первой криптовалюты – на рынке появилась новая монета Bitcoin Interest. На новый алгоритм обратили внимание разработчики Ethereum, в том числе и Виталик Бутерин. Несмотря на хайп вокруг монеты, она достаточно быстро подешевела.

За 2 года ни один производитель не представил ASIC для майнинга монет на алгоритме ProgPow, однако причина кроется не только в хорошей защищенности. Ни одна монета так не смогла пробиться в топ-20, из-за чего многие из них пользуются низкой популярностью как среди покупателей, так и среди майнеров. Подробнее ознакомиться с тестами алгоритма ProgPow можно в видео от ValeraTV.

8. Алгоритм Quark

Алгоритм Quark появился в 2013 году. За его разработку отвечали Жан-Филипп Аумассон, Вилли Мейер, Мария Ная-Пласения и Лука Хензен. Главное отличие от других алгоритмов заключается в параллельном использовании 6 хеш-функций: Grostl, Blue Midnight Wish, Keccak, JH, Skein, Blake. Необходимость создания Quark объясняется возможностью использовать приложения с протоколом RFID, который нуждается в облегченных хеш-функциях.

Позже алгоритм Quark нашел применение в криптовалютах. Его использовали для реализации как PoW-, так и PoS-майнинга. В первом случае для криптовалют подходили обычные компьютеры. На старте CPU майнинг был достаточно эффективным, но из-за увеличения хешрейта пользователям со временем пришлось использовать GPU. Монеты на Quark не получили широкой популярности, поэтому использовать видеокарты рентабельнее для майнинга эфира и других монет.

Позже появились ASIC-устройства – Baikal miner BK-X и Baikal Giant+ A2000. Они выдают по 900 Mh/s и 2000 Mh/s. Для сравнения: GTX 1070 от NVIDIA дает всего лишь 25,86 Mh/s. Такая большая разность в мощности убила майнинг Quark на видеокартах окончательно. Сейчас одноименная монета занимает 1028-е место, а ее добычей практически никто не занимается. Криптовалюту поддерживают три маленькие биржи.

Какой алгоритм майнинга наиболее выгодный

Перед началом добычи криптовалют следует определить рентабельность майнинга. Для этого следует учитывать такие факторы:

  • Стоимость электричества. Крупные майнеры специально создают большие предприятия в особых экономических зонах с дешевой электроэнергией.
  • Цена оборудования. Чем дольше срок окупаемости оборудования, тем выше риск, что со временем техника перестанет приносить прибыль, при этом владелец не успеет ее окупить.
  • Курс монеты. Bitcoin и другие криптовалюты отличаются высокой волатильностью. Майнерам следует внимательно следить за котировками, чтобы продавать цифровые активы по выгодной цене.
  • Хешрейт. Чем выше хешрейт относительно показателей пользователя, тем меньше будет сумма вознаграждения.

Несмотря на постоянные колебания курса и хешрейта, на протяжении последних лет наибольшей популярностью пользуются алгоритмы SHA-256 и Ethash, на которых работают Bitcoin и Ethereum соответственно. Для майнинга BTC пользователи используют ASIC (например, Antminer S17), а для добычи ETH лучше подходят видеокарты (например, AMD Radeon VII).

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

Рассчитать доходность можно с помощью сайта WhatToMine – это онлайн-калькулятор, который следит за доходностью всех известных алгоритмов. На сайте можно быстро рассчитать доходность GPU. Для этого перейдите в раздел «GPU», выберите видеокарту и укажите количество. Сайт автоматически рассчитает хешрейт по каждому алгоритму. У четырех Radeon VII следующие результаты:

Алгоритм

Хешрейт

Мощность

Ethash

320 Mh/s

840 Вт

RandomX

5600 h/s

680 Вт

NeoScrypt

8600 kh/s

920 Вт

Equihash

118 h/s

800 Вт

Еще ниже находятся данные о доходности каждой монеты в порядке убывания. Соответственно, с использованием 4 Radeon VII выгоднее всего добывать Ethereum. Эта криптовалюта приносит до $21,02. Чистая прибыль при стоимости электричества $0,1 за 1 кВт составляет $19,00. В подобных условиях окупаемость фермы может варьироваться от 210 до 300 дней. Подробнее узнать об эффективности майнинга криптовалют на разном оборудовании можно в статье «Рентабельность майнинг-фермы».

Заключение

Рассмотрев наиболее популярные алгоритмы, можно сделать следующие выводы:

  1. Если вначале разработчики создавали альткоины, которые слабо отличаются от Bitcoin, то после 2014 года начали появляться цифровые монеты с повышенной конфиденциальностью и защищенностью от ASIC. Ранее мы подробно рассмотрели историю криптовалют.
  2. Основная часть разработчиков старается защитить оборудование от ASIC, однако, несмотря на технологическое совершенство, Bitcoin по-прежнему остается наиболее популярной криптовалютой. Инвесторы, трейдеры и остальные пользователи не особо задумываются о майнинге монет, а просто покупают их на рынке. 2}.\]

    РИСУНОК 11.1: Евклидово расстояние между двумя временными рядами вычисляется как квадратный корень из суммы квадратов расстояний от каждого \(i\)–го наблюдения одного ряда до \(i\)–го наблюдения другого ряда (показаны светло-серыми вертикальными линиями). В качестве примера использованы данные по стоимости криптовалют

    ethereum (верхний ряд) и litecoin (нижний ряд) за первые 6 месяцев 2019 г.

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

    Для решения этой проблемы были разработаны специальные меры расстояния, среди которых особое место занимает т.н. DTW–расстояние, основанное на алгоритме динамической трансформации временной шкалы (Dynamic Time Warping). Впервые эта мера была применена в 1970–х гг. в задаче по распознаванию речи для устранения проблемы, связанной с разной скоростью произнесения одинаковых фраз разными людьми.

    Как следует из его названия, алгоритм DTW трансформирует временную шкалу (растягивает или сжимает) с целью достичь

    оптимального сопоставления (optimal matching), или оптимального выравнивания (optimal alignment), двух последовательностей. Проще говоря, ставится задача расположить два временных ряда относительно друг друга таким образом, чтобы расстояние между ними оказалось минимальным.

    Предположим, что мы сравниваем два временных ряда \(Q = (q_1, q_2, \dots, q_n)\) и \(R = (r_1, r_2, \dots, r_m)\) (эти обозначения происходят от часто используемых в англоязычной литературе терминов “query” — “запрос”, и “reference” — “эталон”).

    Символами \(i = 1 \dots n\) и \(j = 1 \dots m\) обозначим соответствующие индексные номера наблюдений из этих двух рядов.

    Алгоритм DTW включает две основные стадии. На первой стадии составляют т.н. матрицу локальных потерь \(lcm\) (от “Local Cost Matrix”) порядка \(n \times m\), каждый элемент \(lcm(i, j)\) которой содержит расстояние между парой наблюдений \(q_i\) и \(r_j\). Обычно используют евклидово или манхэттенское расстояния, хотя можно воспользоваться и другими подходящими случаю мерами.

    На второй стадии находят такой путь трансформации (warping path) \(\phi = \{(1, 1), \dots, (n, m)\}\) через эту матрицу, который минимизирует суммарное расстояние между рядами \(Q\) и \(R\). Это расстояние вычисляется следующим образом: \[DTW(Q, R) = \underset{\phi}{min} \left(\sum \frac{m_{\phi} lcm(k)}{M_{\phi}}\right), \forall k \in \phi,\] где \(m_{\phi} > 0\) — весовой коэффициент, ассоциированный с каждым элементом \(\phi\), а \(M_{\phi}\) — константа, нормализующая длину пути (Giorgino 2009).

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

    монотонным, т.е. на каждом шаге пути индексам \(i\) и \(j\) разрешается только возрастать. Это ограничение задается с помощью т.н. шаговых паттернов (step patterns), которые определяют направление разрешенных переходов между ячейками таблицы \(lcm\) на каждом шаге. В литературе можно встретить несколько таких шаговых паттернов (Sarda-Espinosa 2019), однако чаще всего используются symmetric1 и symmetric2 (рис. 11.2).

    РИСУНОК 11.2: Наиболее распространенные шаговые паттерны, используемые для нахождения оптимального пути трансформации в алгоритме DTW. Линии, соединяющие точки, соответствуют разрешенными направлениям перехода между ячейками таблицы \(lcm\) на каждом шаге пути, а числа рядом с этими линиями — весовым коэффициентам переходов \(m_{\phi}\)

    Помимо локальных вводятся также и глобальные ограничения. Важнейшим из них является ограничение на ширину окна трансформации (warping window), в пределах которого разрешается прокладывать путь трансформации. Разработано множество разновидностей таких окон, но чаще всего используется т.н. окно Сакэ–Чиба (Sakoe–Chiba window), которое охватывает определенную симметричную область вдоль диагонали матрицы \(lcm\) (рис. 11.3).

    РИСУНОК 11.3: Пример окна Сакэ–Чиба

    На рис. 11.4 показан стандартный способ визуализации матрицы локальных потерь \(lcm\) (прямоугольник в центре диаграммы), найденного пути трансформации (линия, проходящая примерно по диагонали матрицы) и сравниваемых временных рядов. Индексацию матрицы принято начинать в левом нижнем углу прямоугольника (\(lcm(1, 1)\)), а заканчивать в правом верхнем (\(lcm(m, n)\)). Слева от прямоугольника принято изображать “эталон” (reference), т.е. временной ряд, с которым сравнивается изображенный внизу матрицы “запросный” временной ряд (query). Для построения диаграммы был использован пакет dtw (Giorgino 2009).

    РИСУНОК 11.4: Визуализация оптимального пути DTW–трансформации, найденного при сопоставлении временных рядов стоимости криптовалют ethereum и litecoin

    На рис. 11.5 приведен результат оптимального сопоставления временных рядов стоимости криптовалют ethereum и litecoin с помощью алгоритма DTW.

    РИСУНОК 11.5: Результат оптимального сопоставления временных рядов стоимости криптовалют ethereum (красная прерывистая линия) и litecoin (черная сплошная линия), полученный с помощью алгоритма DTW (сравните с рис. 11.1). В алгоритме были использованы параметры, приведенные в коде для рис. 11.4

    Пакет

    dtwclust

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

    В пакете dtwclust (Sarda-Espinosa (2019)) реализовано большое количество алгоритмов кластеризации временных рядов, включая несколько недавно разработанных методов. За исключением классической иерархической кластеризации, код для всех этих алгоритмов написан специально с целью добиться максимальной скорости вычислений. Вычислительная оптимизация алгоритмов была выполнена исходя из предположения, что в большинстве случаев пользователи будут применять DWT–расстояние в качестве меры различий между временными рядами (отсюда название пакета). Однако имеется возможность использовать и другие меры расстояния, включая пользовательские. Кроме того, с помощью

    dtwclust можно одновременно сравнить несколько алгоритмов и выбрать оптимальное решение на основе одной или нескольких метрик качества кластеризации.

    Главной функцией пакета

    dtwclust является tsclust(), у которой есть следующие аргументы:

    • series — список из нескольких временных рядов (не обязательно одинаковой длины), матрица с числовыми значениями или таблица данных. Поскольку все функции dtwclust так или иначе работают со списками временных рядов, то лучше всего на этот аргумент подавать сразу именно такой список. Для формирования списка временных рядов из матриц и таблиц данных можно применить вспомогательную функцию tslist() (при этом предполагается что каждая строка в матрице или таблице данных представляет собой один временной ряд).
    • type — тип кластеризации: "partitional" (с разбиением), "hierarchical" (иерархическая), "tadpole" (по алгоритму TADPole; Begum et al. 2016) или "fuzzy" (нечеткая кластеризация).
    • k — запрашиваемое число кластеров. Это может быть также вектор из нескольких целых чисел, если стоит задача проверить качество кластеризации для нескольких решений.
    • preproc — имя функции, выполняющей предварительную обработку данных. По умолчанию принимает значение NULL. Если аргументу centroid (см. ниже) присвоено значение "shape" (“форма”), то preproc автоматически примет значение zscore, что соответствует функции из пакета dtwclust, которая выполняет стандартизацию данных.
    • distance — название меры расстояния, зарегистрированное в регистре функции dist() из пакета proxy (см. объяснение ниже). Если type = "tadpole", то этот аргумент будет проигнорирован.
    • centroid — либо строковое значение с названием метода нахождения центроидов ("mean", "median", "shape" и др.), либо функция, выполняющая нахождение центроидов.
    • control — список с перечнем управляющих параметров алгоритма, заданного через аргумент type. Для формирования подобных списков служат специальные функции: partitional_control(), hierarchical_control(), fuzzy_control() и tadpole_control() (см. справочный файл, доступный по команде ?"tadpole_control" и примеры ниже).
    • args — вложенный список параметров, определяющих процесс подготовки данных к анализу (элемент списка с именем preproc), расчета меры расстояния (элемент dist) и центроидов (прототипов) кластеров (элемент cent). Для формирования этого списка служит специальная функция tsclust_args().
    • seed — значение зерна генератора случайных чисел (позволяет воспроизвести результаты вычислений).
    • trace — логический аргумент (по умолчанию равен FALSE). При значении TRUE на экран будет выводиться больше служебной информации о ходе вычислений.
    • error.check — логический аргумент (по умолчанию равен TRUE). Включает или выключает проверку правильности значений перечисленных выше аргументов перед началом вычислений.

    Функция tsclust() возвращает объект класса TSClusters, который реализован с использованием S4 — одной из разновидностей классов, применяемых в R для объектно-ориентированного программирования. Отдельные атрибуты объектов класса S4 (“слоты”) можно извлекать с помощью оператора @ (в отличие от обычного $, принятого в S3–объектах). Подробную документацию по классу TSClusters и его методами можно найти в справочных файлах, доступных по командам ?"TSClusters-class" и ?"tsclusters-methods" соответственно.

    Пакет dtwclust во многом полагается на другой широко используемый пакет — proxy (автоматически устанавливается и загружается одновременно с dtwclust), в котором реализованы многие меры расстояния. Различная информация о функциях, вычисляющих соответствующие меры расстояния, хранится в специальном объекте–регистре под названием pr_DB. Содержимое регистра можно просмотреть с помощью команды proxy::pr_DB$get_entries() (в целях экономии места пример не приводится). Все зарегистрированные в pr_DB функции автоматически становятся доступными для функции proxy::dist(), которая используется в пакете dtwcust. Это является большим преимуществом дизайна dtwclust, поскольку пользователь получает возможность работать с любой мерой расстояния из pr_DB.

    Пример кластеризации с использованием DTW–расстояния

    Рассмотрим особенности работы с пакетом dtwclust на примере иерархической кластеризации временных рядов стоимости 22 криптовалют из таблицы cryptos:

    ## hierarchical clustering with 4 clusters
    ## Using dtw distance
    ## Using PAM (Hierarchical) centroids
    ## Using method ward.D2 
    ## 
    ## Time required for analysis:
    ##    user  system elapsed 
    ##   14.86    1.86   16.73 
    ## 
    ## Cluster sizes with average intra-cluster distance:
    ## 
    ##   size   av_dist
    ## 1    5  875.9981
    ## 2    7 1340.3730
    ## 3    4 1644.0947
    ## 4    6  875.1360

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

    ##     augur   bitcoin   cardano chainlink      dash    decred  dogecoin       eos 
    ##         1         2         3         4         2         1         3         1 
    ##  ethereum      iota  litecoin     maker    monero      nano       neo      qtum 
    ##         2         4         2         2         2         4         1         1 
    ##   stellar    tether     tezos      tron       xrp     zcash 
    ##         3         4         4         3         4         2

    Объект hc_4_ward обладает также удобным методом plot(), позволяющим визуализировать полученное кластерное решение. Поскольку мы имеем дело с иерархической кластеризацией, то по умолчанию будет изображена дендрограмма (рис. 11.6):

    РИСУНОК 11.6: Результат иерархической кластеризации 22 временных рядов, выполненной с использованием DTW–расстояния

    Применив функцию plot() с аргументом type = "sc", мы получим изображение анализируемых временных рядов, сгруппированных в соответствии с результатом кластеризации (рис. 11.7). Кроме того, для каждого кластера в виде прерывистой линии будет показан его центроид, или “прототип”. По умолчанию центроиды представляют собой такие временные ряды из исходных данных, которые в среднем ближе всего ко всем остальным рядам из соответствующих кластеров. При необходимости алгоритм расчета центроидов можно изменить с помощью аргумента centroid функции tsclust().

    РИСУНОК 11.7: Временные ряды стоимости 22 криптовалют, сгруппированные в соответствии с кластером, к которому они принадлежат

    Интересно, что для 4–го кластера в качестве центроида алгоритмом был выбран временной ряд tether, который по сравнению с другими рядами выглядит почти как прямая горизонтальная линия. Однако если “присмотреться поближе”, то можно увидеть, что форма этого ряда далека от горизонтальной линии и отчасти напоминает форму других рядов из кластера 4. Для изображения этого центроида достаточно воспользоваться следующей командой (рис. 11.8):

    РИСУНОК 11.8: Центроид кластера 4 из объекта hc_4_ward

    К сожалению, как видно на рис. 11.7, исходные настройки метода plot() в пакете dtwclust не отличаются особой эстетической привлекательностью: ширина изображающей центроид линии слишком велика, что в сочетании с прерывистостью этой линии затрудняет восприятие графика и понимание свойств временного ряда. К cчастью, метод plot() является лишь оберткой для функций ggplot2, а значит мы можем легко изменить свойства линии (рис. 11.9):

    РИСУНОК 11.9: Результат изменения внешнего вида линии, изображающей центроид одного из кластеров

    Выполненная нами выше кластеризация была основана на фиксированных параметрах (число выделяемых кластеров, метод кластеризации и др. ), выбор которых не был определен какими–то особыми соображениями. К сожалению, как это обычно бывает с кластерным анализом, очень трудно сделать уверенное заключение о “правильности” полученного решения. Тем не менее, как было отмечено в разд. 10, существует ряд метрик, которые пытаются объективно оценить качество кластеризации. В функции cvi() (от “cluster validity indices”, т.е. “индексы валидности кластеров”) реализовано несколько таких метрик, широко используемых при кластеризации временных рядов (подробнее см. справочный файл, доступный по команде ?cvi).

    В качестве примера использования cvi() создадим несколько вариантов кластеризации анализируемых нами временных рядов. Тип кластеризации оставим прежним ("hierarchical"), но будем варьировать запрашиваемое число кластеров и методы агломерации:

    Приведенные значения k и method дают 18 комбинаций параметров. Поскольку расчет DTW–расстояния требует значительных вычислительных ресурсов, построение 18 кластерных решений может занять довольно много времени. Один из способов ускорить эти вычисления заключается в использовании существенно оптимизированной (но ограниченной по возможностям) функции dtw_basic() вместо dtw() для расчета DTW–расстояния. Однако мы воспользуемся другим подходом — параллелизацией вычислений. В пакете dtwclust многопоточные параллельные вычисления выполняются с помощью широко используемого для этих целей пакета foreach. Такие вычисления запустятся автоматически при условии существования необходимого “бэкенда”, который можно создать с помощью еще одного популярного пакета — doParallel:

    ## 
    ## Calculating distance matrix...
    ## Performing hierarchical clustering...
    ## Extracting centroids...
    ## 
    ##  Elapsed time is 27.94 seconds.

    Заметьте, что построение всех 18 вариантов кластеризации было выполнено с помощью единственного вызова функции tsclust(). Для этого потребовалось лишь подать векторы с интересующими нас значениями параметров на соответствующие аргументы (k и method). Итогом этих вычислений стал список с 18 элементами, которые содержат отдельные объекты класса TSClusters:

    ## [1] 18
    ## [1] "HierarchicalTSClusters"
    ## attr(,"package")
    ## [1] "dtwclust"

    Для нахождения “оптимального” решения можно воспользоваться несколькими индексами “внутренней” валидности кластеров, реализованными в функции cvi(). Поскольку разные индексы могут приводить к разным заключениям о качестве сравниваемых кластеризаций, часто рассчитывают сразу несколько индексов, а затем принимают окончательное заключение на основании простого “большинства голосов”. В приведенном ниже примере мы рассчитаем индекс силуэтов (Silhouette index, "Sil"), индекс Данна (Dunn index, "D") и индекс Калинского–Харабаша (Calinski–Harabasz index, "CH"). Чем больше каждый из этих индексов, тем лучше соответствующее кластерное решение:

    ## Sil   D  CH 
    ##   2  15   2

    Как видим, два из трех индексов валидности указывают на то, что оптимальным является второе решение (см. также рис. 11.10):

    ## hierarchical clustering with 3 clusters
    ## Using dtw distance
    ## Using PAM (Hierarchical) centroids
    ## Using method average 
    ## 
    ## Time required for analysis:
    ##    user  system elapsed 
    ##    1.18    0.22   27.94 
    ## 
    ## Cluster sizes with average intra-cluster distance:
    ## 
    ##   size  av_dist
    ## 1   11 1654.238
    ## 2    1    0.000
    ## 3   10 1976.140

    РИСУНОК 11.10: Результат оптимальной иерархической кластеризации временных рядов cryptos, найденной при помощи трех индексов валидности

    Рассмотренные выше примеры — это лишь введение в возможности пакета dtwclust. Дополнительную информацию о реализованных в нем методах кластеризации временных рядов можно найти в статье Sarda-Espinosa (2019).

    Алгоритмы майнинга криптовалют — таблица 2018 и описание | COINTOPLAB.RU

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

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

    Как можно заметить, распространённых алгоритмов достаточно много, но и среди них можно выделить самые надёжные и востребованные:

    — X11 – применяется при вычислении для получения монет Dash. Работал в основном только с видеокартами, но недавно под этот алгоритм стали производить ASIC-майнеры для Dash;

    — X11Gost – алгоритм обеспечивающий работу криптомонеты Sibcoin, также известной, как «Сибирский Червонец». Эта криптовалюта является ответвлением от валюты Dash – её отечественным аналогом. Алгоритм основан на хеш-функции, которая соответствует требованиям ГОСТ Р 34.11-2012;

    — SHA256 – алгоритм, на котором работает самая распространённая на текущий момент криптовалюта – биткойн. В связи с распространённостью алгоритма, видеокарты уже не дают достаточно мощности для хоть сколько-то нормального заработка, так как по мощности их быстренько вытолкнули китайские ASIC-майнеры. На алгоритме SHA256 основаны большинство других алгоритмов, в той или иной мере копирующих биткойн. В их числе и свежий Bitcoin Cash’

    — Decred – применяется в одноимённой криптовалюте. Является модификацией Blake256. Нормально майнится на видеокартах. Часто майнинг Decred осуществляется параллельно с майнингом DaggerHashimoto с помощью специальных программ;

    — Ethash (DaggerHashimoto) – на нём добывается небезызвестный Ethereum. Для майнинга Эфира рекомендуется использовать видеокарты с высоким объемом памяти. Лучше под алгоритм адаптированы видеокарты AMD, но и видеокарты от Nvidia 10-й серии справляются достаточно неплохо;

    — Scrypt – обеспечивает работу «цифрового серебра» — Litecoin’а. Большое распространение алгоритм набрал, когда для майнинга биткойна стали появляться ASIC-майнеры. Теперь и для алгоритма Scrypt появились ASIC-майнеры, и большей части майнеров соответствующий скрипт тоже недоступен;

    — Equihash – даёт жизнь валюте Zcash. Эта криптовалюта сейчас сильно распространена среди майнеров на графических картах, так как у предшественника данного топа, Ethereum, сильно возросла сложность сети;

    — CryptoNight – обеспечивает работу Monero. Отличается от большинства других популярных алгоритмов тем, что хорошо вычисляется на процессорах. Конечно, на одних процессорах ферму не построишь, но приятный бонус к заработку они вполне способны принести.

    Расширенная таблица алгоритмов шифрования криптовалют

    НазваниеТикерАлгоритмГодОтличительные особенности
    BitcoinBTCSHA-2562009Первый, исторический алгоритм, обеспечивающий работу криптовалюты, признанной тысячами правовых субъектов, и в их числе – Евросоюзом.
    LitecoinLTCScrypt2011Грубо говоря, Litecoin является клоном Bitcoin’a, но с ускоренными транзакциями.
    NamecoinNMCSHA-2562011В первую очередь Namecoin применяется для цензуроустойчивого домена .bit, функционирование которого аналогично функционированию доменов .com и .net. Выделяется .bit тем, что он не регулируется главным руководящим органом для доменных имен – ICANN.
    BytecoinBCNCryptoNight2012Самый защищённый из алгоритмов. Его взломать в принципе невозможно. Только попытка взлома будет стоить невероятных расходов электроэнергии, и необходимая мощность оборудования должна будет быть эквивалентной мощности среднего суперкомпьютера. Поэтому кроме Вас доступ к вашему кошельку никто не получит. Так говорят разработчики алгоритма.
    PeercoinPPCSHA-2562012Монеты этой криптовалюты можно получать не только непосредственно майнингом видеокарты, но и генерацией новых монет уже имеющимися.
    DogecoinDOGEScrypt2013Клон Litecoin’a – клона Bitcoin’a. Конечно, не без незначительных изменений. С популярностью этой криптовалюты всё сверхтипично – он распространился благодаря огромным вложениям в рекламу и запоминающемуся символу.
    GridcoinGRCBOINC2013Объединённые этой системой вычислительные мощности помогают решать задачи во многих науках, в их числе: климатология, астрофизика, медицина, математика, биология.
    RippleXRPECDSA2013Валюта была создана для ускорения банковских транзакций.
    BelaCoinBELAScrypt2014Криптовалютный фотосток
    DashDASHX112014Почти полное отсутствие отслеживания. Есть возможность проводить транзакции напрямую.
    DashcoinDSHCryptoNight2014Передовая криптовалюта, код сети которой обновляется стремительно и с низкими затратами ресурсов, а ошибки протоколов близки к 0%.
    DigiByteDGBSHA2562014Усовершенствованная версия Litecoin и Bitcoin
    DNotesNOTEScrypt2014Децентрализованная peer-to-peer криптовалюта. Передаётся через Интернет. Транзакции осуществляются мгновенно. При высокой скорости передачи сохраняется безопасность, комиссия при этом минимальна.
    EinsteiniumEMC2Scrypt2014Аналог kickstarter’а для научных проектов
    FoldingCoinFLDCStanford Folding2014Использует расходуемые мощности для моделирования процессов свёртывания белков внутри организма человека. Полученные при таких исследованиях результаты используются для изобретения новых медицинских препаратов, которые способствуют излечению от связанных с проблемой сворачивания белка болезней. Среди таких болезней есть и смертельно-опасные. Кроме того, эти исследования обеспечивают не только изобретение новых препаратов, но и открытия, как в исследовании белка, так и в медицине в целом.
    MoneroXMRCryptoNight2014Высокая анонимность денежных переводов
    NautiluscoinNAUTNXT2014Криптовалюта, созданная с целью доказать возможность существования криптовалюты в качестве класса инвестиционных активов.
    NavcoinNAVX132014Обеспечивает работу технологии NAVTech, которая параллельно с Tor’ом гарантирует анонимность частных покупок в Интернете.
    PinkCoinPINKX112014Валюта базируется на Ethereum’е. Обеспечивается зафиксированной номинальной массой цветных бриллиантов.
    PotcoinPOTScrypt2014Представляет легальную составляющую индустрии марихуаны
    SyscoinSYSScrypt2014Встроенная в криптовалюту платформа, ориентированная на децентрализованную торговлю.
    VcashXVCBlake2562014Тщательно проработанный, инновационный алгоритм. Транзакции быстры, защищены и работают безукоризненно.
    VertCoinVTCLyra2RE2014Зарекомендовал себя как ответвление, защищённое от ASIC-майнеров. Соответственно, идейно противостоит монополизации майнинга.
    ViaCoinVIAScrypt2014
    AugurREPSmart contract2015Основан для составления прогнозов для рынков финансов
    EthereumETHDagger-Hashimoto2015Основан на идее универсальности для большинства проектов.
    EthereumClassicETCDagger-Hashimoto2015Ответвление от Эфириума с уменьшенной стоимостью монеты.
    ExpanseEXPDagger-Hashimoto2015Полномасштабное использование блокчейна с целью удобной децентрализации проектов.
    NEMXEMblockchain2015Проект предлагает услуги нотариального заверения и обеспечивает возможность мгновенного перевода денег по всему миру с низкой комиссией. Высокий уровень защиты кошельков.
    RadiumRADSSmartchain2015Максимализация оптимальности использования блокчейна для обеспечения децентрализованной работы сервисов.
    SiacoinSCBlake2b2015Безопасное хранение данных.
    lbryCoinLBCLBRY2016Банк творчества по типу фотостоков.
    SteemitSTEEMSHA-2562016Агрегатор мультимедийного контента.

    Гид: алгоритмы машинного обучения и их типы

    Обучение с учителем

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

    К категории обучения с учителем относятся классификация, регрессия и прогнозирование.

    1. Классификация: В задачах классификации программа машинного обучения должна сделать заключение на основе наблюдённых значений и определить, к какой категории относятся новые наблюдения. Например, при сортировке электронной почты на спам и полезные сообщения программа просматривает накопленные в прошлом данные и согласно им сортирует новые электронные письма.
    2. Регрессия: В задачах регрессии программа машинного обучения должна оценить – и понять – взаимосвязи между переменными. Предмет регрессионного анализа – одна зависимая переменная и набор других изменяющихся переменных. Это делает анализ особенно полезным для прогнозирования и предсказаний.
    3. Прогнозирование: Это процесс построения предсказаний о будущем на основе данных из прошлого и настоящего, который обычно используется при анализе трендов.

    Обучение с частичным привлечением учителя

    Обучение с частичным привлечением учителя похоже на обучение с учителем, однако использует как размеченные, так и неразмеченные данные. Размеченные данные – это, по сути, наборы единиц информации с приписанными им метками (тегами). В неразмеченных данных таких меток нет. Комбинируя методы обучения, алгоритмы могут обучаться размечать неразмеченные данные.

    Обучение без учителя

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

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

    Методы обучения без учителя включают в себя:

    1. Кластеризация: Кластеризация предполагает группирование наборов похожих данных (на основе определенных критериев). Это полезно для сегментации данных на несколько групп и проведении анализа на основе каждого набора данных по отдельности для поиска закономерностей.
    2. Понижение размерности: Понижение размерности уменьшает количество используемых переменных и отделяет точную искомую информацию.

    Обучение с подкреплением

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

    Education Series: хеш-таблицы и хеш-алгоритмы | by Quantalysus

    Криптография с открытым ключом позволила реализовать широкий спектр приложений, от веб-приложений с паролем до технологии блокчейн. В этой статье я собираюсь углубиться в хеш-таблицы и функции хеширования, ключевые компоненты, позволяющие использовать Биткойн и другие криптовалютные проекты. Функции хеширования позволяют записывать данные в группы, называемые блоками. Попытка изменить данные, хранящиеся в этом блоке, приведет к другому результату.Любой наблюдатель, следящий за бумажным следом, заметит, что вывод изменился. Таким образом, хеширование можно рассматривать как функцию или инструмент, обеспечивающий защиту данных от несанкционированного доступа, достоверность и, в некотором смысле, цифровой отпечаток пальца. Мы начнем с описания того, что такое хеш-таблица, а затем перейдем к определению функции хеширования.

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

    Рассмотрим простой одномерный массив или список элементов, хранящихся в корзине. Позиция каждого бина читается слева направо, начиная с 0. Чтобы найти элемент в списке, вы можете использовать подход грубой силы, такой как линейный список.Для очень большого массива это может занять очень много времени.

    Вот пример упрощенного одиночного массива с 6 позициями, начиная наш счет с 0. Пока мы оставим значения пустыми. Мы вернемся к этому примеру.

    Index012345Value

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

    Итак, давайте придумаем метод для вставки значений в позицию индекса в нашем шести индексном массиве.

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

    1. KYLE
    2. JEFF
    3. ZOMBIE
    4. QUANTALYSUS
    5. BITCOIN
    6. NEO
    7. 90 Вы можете посмотреть значения ниже.

      Несколько слов об операторе по модулю, прежде чем мы начнем. Если вы не помните, что такое модуль, лучше просто использовать пример. Допустим, мы хотим вычислить 5/3. Ответ будет 1 2/3. Поскольку нам не хватает целого числа, мы используем значение 2 в качестве нашего модуля.Ладно продолжим.

      Теперь, возвращаясь к нашим словам, мы можем вывести:

      1. KYLE = K (75) + Y (89) + L (76) + E (69) = 309 % 6 (количество позиций в массиве) = 3
      2. JEFF = 1
      3. CRYPTO ZOMBIES = 0 (включая пробел для расчета)
      4. QUANTALYSUS = 4
      5. BITCOIN = 4
      6. NEO = 4

      Далее давайте заполним наш наверху.

      Position012345KEYCRYPTO ZOMBIESJEFF KYLEQUANTALYSUS

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

      Мы успешно сохранили наши первые три значения: KYLE (кстати, имя моего делового партнера), JEFF (автор этой статьи), CRYPTO ZOMBIES (успешный канал Кайла о криптовалюте на YouTube) и QUANTALYSUS (мой веб-сайт и название бренда) . Но мы столкнулись с проблемами хранения BITCOIN и NEO. Как упоминалось выше, если бы мы знали индекс значения, мы могли бы быстро его найти. Давайте назовем наше значение поиска find_item() , чтобы выполнить поиск в массиве.

      Find_item (0) = Crypto Zombies

      Find_Item (1) = Jeff

      Find_item (3) = Kyle

      Find_item (4) = Quantalysus

      массивы невероятно полезны для более чем просто хранения простых слов . Допустим, мы хотели получить другие фрагменты информации, такие как любимые числа или любимые цвета, мы могли бы это сделать. Назовем эти значений . Итак, теперь у нас есть пар ключ-значение . Для ключа KYLE у нас есть два значения: любимое число — 9 и любимый цвет — зеленый.Наша таблица может выглядеть как таблица ниже. Это хэш-таблица, также известная как хэш-граф.

      Position012345KEYCRYPTO ZOMBIESJEFF KYLEQUANTALYSUS VALUE 187 94 VALUE 2BLUERED GREENGREEN

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

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

      В нашем исходном примере BITCOIN и NEO не прошли отбор, потому что ключ QUANTALYSUS уже занял индекс 4.Это известно как столкновение . Чтобы найти эти два ключа как пробел в индексе, мы могли бы настроить то, что называется Open Addressing , поскольку в каждом открытом пространстве разрешено хранить ключ и соответствующие ему значения. Сама открытая адресация имеет несколько методов разрешения коллизий. В этом примере мы будем использовать Linear Search/Probing , метод, который будет проверять массив на наличие следующего доступного пространства и, возможно, циклически повторяться с самого начала, пока не найдет место. Биткойн сталкивается с индексом 4, поэтому линейный поиск помещает ключ в индекс 5.Поиск повторяется до тех пор, пока Neo не может быть сохранен в открытом пространстве номер 2. Теперь наша таблица выглядит так:

      Index012345ValueCRYPTO ZOMBIESJEFF NEOKYLEQUANTALYSUS BITCOIN

      Другие подходы к открытой адресации, помимо линейного поиска, включают «плюс 3 перефразирования», «квадратичное зондирование». и «двойное хеширование».

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

      Еще один способ обработки коллизий — Closed Addressing , также известный как Chaining . Вместо того, чтобы использовать открытую адресацию и линейный поиск для размещения BITCOIN в первом открытом индексе, Цепочка создаст то, что называется Linked List .Это будет выглядеть, как в таблице ниже. QUANTALYSUS указывает на BITCOIN и, в свою очередь, указывает на NEO.

      ValueValueValue0CRYPTO ZOMBIES 1JEFF 2 3KYLE 4QUANTALYSUS >>>>>BITCOIN >>>>>NEO >>>>>5

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

      Еще одна проблема, которую необходимо решать в обеих формах адресации, — это кластеризация . Допустим, у нас есть массив размером 100, но все значения находятся в индексах 45–75. В пространствах от 0 до 44 и от 76 до 99 имеется множество открытых адресов (помните, что индексация массива начинается с 0). Когда выполняется линейный поиск, поиск будет прочесывать множество пустых пространств, прежде чем он наткнется на кластер. Другие методы открытой адресации, упомянутые выше, такие как квадратичное зондирование и двойное хеширование, пытаются разделить ключи-значения в массиве.

      В блокчейнах, таких как Биткойн, вся «база данных» всех транзакций между адресами хранится в блоках, соединенных вместе.Этот реестр распространяется на каждый узел в сети. Этот распределенный реестр фактически представляет собой очень большой массив, который позволяет искать такую ​​информацию, как «сколько биткойнов» имеет адрес и какие транзакции имели место в блоке 1 476 203. Алгоритмы хеширования и структуры хранения данных позволяют сети хранить данные и быстро извлекать ценную информацию. Структура хранения данных в сочетании с поиском данных с помощью хэш-функции требует большой осторожности в нескольких следующих областях:

      1. Разрешение и минимизация коллизий
      2. Высоко распределенные хеш-значения (уменьшение кластеризации)
      3. Легко проверить

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

      Спасибо за внимание.

      Другие ресурсы :

      1. Если вы разбираетесь в хеш-функциях, вы поймете и блокчейны
      2. Квадратичное зондирование
      3. Хэш-таблица Википедия

      Спасибо, что пришли на сайт. Quantalysus публикует исследования и анализ блокчейна для криптосообщества. Пожалуйста, подпишитесь на Twitter , Steem (пожалуйста, подпишитесь и проголосуйте, если сможете — спасибо!) , Канал Telegram (новинка!) и Medium, чтобы оставаться на связи 900

      Если вы хотите зарабатывать токены Aelf (ELF) только за использование Twitter и Reddit, подпишитесь на их программу конфет / вознаграждений .

      Если вы что-то узнали:

      Другие сообщения:

      Взлом биткойнов с помощью Google AutoML Tables & Tensorflow | by Dror Gensler

      Компания Google выпустила несколько продуктов, предназначенных для автоматизации и улучшения обучения и подготовки к машинному обучению, доступных на своей облачной платформе.Последняя из них — AutoML Tables — предназначена для «автоматического создания и развертывания современных моделей машинного обучения на основе структурированных данных».

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

      Идея проста — «майнинг» биткойнов — это процесс попытки угадать правильную комбинацию строк, которые после хеширования сгенерируют действительный блок. Побочным продуктом является обработка транзакций, а вознаграждение — биткойны.

      Так зачем применять к нему машинное обучение? что ж, текущий метод майнинга, по сути, представляет собой «грубую форсировку» интенсивных вычислений, пытаясь угадать правильные входные данные для алгоритма. Однако одной из ключевых особенностей Биткойна является Блокчейн — полная запись каждого блока, добытого на сегодняшний день, вместе с входными параметрами, используемыми для его добычи.

      Фактически, Блокчейн содержит полмиллиона примеров «проблемы» вместе с решением. В мире машинного обучения это называют «обучающим набором данных» 🙂

      Таблицы AutoML позволяют пользователю загружать большой набор данных, организованный в виде таблицы — либо набор данных BigTables, либо еще проще — файл . CSV-файл.

      Как указывалось ранее, добыча биткойн-блока — это процесс применения хеш-алгоритма (дважды) к набору входных параметров. Эти параметры при хешировании составляют часть «заголовка блока», который должен начинаться с ряда ведущих нулей, определяемых сложностью. Как только полученный хэш становится действительным, он сохраняется в блокчейне для всеобщего обозрения (и проверки). Это 80-байтовая строка, состоящая из следующего (щелкните изображение, чтобы узнать больше):

      Добавить описание

      Помимо версии, битов (целевой) и hashPrevBlock, которые являются фиксированными, другие параметры определяются майнерами и увеличиваются, когда хеширование.Однако при совместном майнинге с другими — Time и MerkleRoot также определяются пулом майнинга, и все, что нам остается, — это увеличивать и угадывать Nonce. Поэтому он будет нашей целью и выходом для нашей модели машинного обучения, и это здорово, потому что таблицы AutoML могут иметь только один столбец, установленный в качестве цели.

      Чтобы сохранить эти данные в файл .csv, я запустил полную биткойн-ноду и, дождавшись ее синхронизации с сетью (и ожидая, и ожидая…) — запустил `bitcoin-cli getblock `, сделал некоторые вырезание и сохранение в файл, а затем повторный запуск с предыдущим хэшем в качестве входных данных и повторение блокчейна в обратном направлении.Результат выглядит следующим образом:

      Добавить описание

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

      Первым шагом является импорт данных обучения в таблицы AutoML. После этого нам предоставляется экран «Схема», где мы выбираем «Цель» для нашей модели ML — поле, которое она будет выводить.

      Добавить описание

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

      Но подождите! мы уже можем заметить проблему — AutoML автоматически определяет типы данных столбца и выбрал несколько полей как «категориальные». Это здорово, но в нашем случае, поскольку значения уникальны, категорий будет столько, сколько имеется обучающих строк, и оперативные данные никогда не будут соответствовать какой-либо категории!

      И если мы перейдем к странице «Анализ», мы увидим, что было выбрано слишком много категорий (торт — страница 1 из 4..)

      Добавить описание

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

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

      Добавить описание

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

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

      Tensorflow ожидает, что входные данные будут в виде Bytearray — значения в диапазоне от 0 до 255. Я разделил поле Blockchain, байт за байтом, и результат выглядит следующим образом:

      Добавить описание

      Наши данные сейчас имеет 76 полей, каждое из которых представляет 1 байт заголовка блока, причем последние четыре байта являются последним числовым полем — наша цель, Nonce.

      Снова импортируйте данные в таблицы AutoML, и они будут выбраны как числовые:

      Добавить описание

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

      Добавить описание

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

      Плохие результаты были ошибкой в ​​таблицах AutoML или просто сложностью обучающих данных, которые не могут быть изучены ИИ? Чтобы проверить, я обращаюсь к старым добрым Tensorflow и Keras, чтобы провести местное обучение.

      Tensorflow ожидает данные в виде Bytearray, как мы сделали во второй попытке. Вот как это было подготовлено —

      Добавить описание

      Мы обучаем полностью подключенную нейронную сеть, выводя 4 байта, которые мы будем конкатенировать, чтобы сформировать наш одноразовый номер —

      Добавить описание

      Результат уже нескольких эпох обучения рассказывает ту же историю:

      Добавить описание

      Обратите внимание, хотя средняя абсолютная ошибка не так высока, как в таблицах AutoML, точность «застряла» на 0.2757 .

      Это не случайно. Поскольку мы выводим ровно 4 байта, эта оценка точности может означать только то, что NN не может правильно учиться и предсказывать.

      Причина? либо сеть недостаточно велика — что маловероятно, поскольку мы бы увидели хотя бы НЕКОТОРОЕ улучшение между эпохами,

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

      Наверное, это так! Удивительно видеть, как простой SHA256 с достаточным количеством «соли» может производить достаточную энтропию, чтобы сделать блокчейн по-настоящему надежным и неуязвимым!

      По крайней мере, до тех пор, пока мы не вытащим большие пушки… Оставайтесь с нами, чтобы узнать о втором раунде — Взлом биткойнов с помощью Fujitsu Quantum Annealer!

      Дрор Генслер

      SubtleCrypto — веб-API | МДН

      Интерфейс SubtleCrypto Web Crypto API предоставляет ряд низкоуровневых криптографических функций. Доступ к функциям SubtleCrypto  получается через свойство thin объекта Crypto , которое вы получаете из свойства crypto .

      Предупреждение: Этот API предоставляет ряд низкоуровневых криптографических примитивов. Их очень легко использовать неправильно, и подводные камни, связанные с ними, могут быть очень тонкими.

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

      Ошибки в проектировании и реализации системы безопасности могут сделать безопасность системы полностью неэффективной.

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

      Этот интерфейс не наследует никаких свойств, так как у него нет родительского интерфейса.

      Этот интерфейс не наследует никаких методов, так как у него нет родительского интерфейса.

      SubtleCrypto.encrypt()

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

      SubtleCrypto.decrypt()

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

      SubtleCrypto.sign()

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

      SubtleCrypto.verify()

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

      Тонкая Крипто.дайджест()

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

      SubtleCrypto.generateKey()

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

      SubtleCrypto.deriveKey()

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

      SubtleCrypto. deriveBits()

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

      SubtleCrypto.importKey()

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

      SubtleCrypto.exportKey()

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

      Тонкая Крипто.обертка ()

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

      SubtleCrypto.unwrapKey()

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

      Мы можем разделить функции, реализованные этим API, на две группы: функции шифрования и функции управления ключами.

      Функции шифрования

      Это функции, которые можно использовать для реализации функций безопасности, таких как конфиденциальность и аутентификация в системе. API SubtleCrypto предоставляет следующие функции шифрования:

      Функции управления ключами

      За исключением дайджест() , все функции шифрования в API используют криптографические ключи.В API SubtleCrypto криптографический ключ представлен с помощью объекта CryptoKey . Для выполнения таких операций, как подписание и шифрование, вы передаете объект CryptoKey в функцию sign() или encrypt() .

      Генерация и получение ключей

      Обе функции generateKey() и seek() создают новый объект CryptoKey .

      Различие состоит в том, что generateKey() будет генерировать новое уникальное значение ключа каждый раз, когда вы его вызываете, в то время как производный ключ () извлекает ключ из исходного ключевого материала.Если вы предоставите один и тот же ключевой материал для двух отдельных вызовов , производныхKey() , вы получите два объекта CryptoKey , которые имеют одно и то же базовое значение. Это полезно, если, например, вы хотите получить ключ шифрования из пароля, а затем получить тот же ключ из того же пароля для расшифровки данных.

      Импорт и экспорт ключей

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

      Обратным к exportKey() является importKey() . Вы можете импортировать ключи из других систем, и в этом вам поможет поддержка стандартных форматов, таких как PKCS #8 и JSON Web Key. Функция exportKey() экспортирует ключ в незашифрованном формате.

      Если ключ является конфиденциальным, вы должны использовать wrapKey() , который экспортирует ключ, а затем шифрует его с помощью другого ключа; API вызывает «ключ переноса ключей».

      Инверсией wrapKey() является unwrapKey() , которая расшифровывает, а затем импортирует ключ.

      Хранение ключей

      Объекты CryptoKey могут храниться с использованием алгоритма структурированного клонирования, что означает, что вы можете сохранять и извлекать их с помощью стандартных API веб-хранилищ. Спецификация предполагает, что большинство разработчиков будут использовать API IndexedDB для хранения объектов CryptoKey .

      Поддерживаемые алгоритмы

      Криптографические функции, предоставляемые Web Crypto API, могут выполняться одним или несколькими различными криптографическими алгоритмами : аргумент алгоритма функции указывает, какой алгоритм следует использовать.Некоторым алгоритмам нужны дополнительные параметры: в этих случаях аргумент алгоритма представляет собой объект словаря, который включает дополнительные параметры.

      В таблице ниже указано, какие алгоритмы подходят для каких криптографических операций:

      Таблицы BCD загружаются только в браузере

      Опубликован новый отчет «Регулирование криптовалюты во всем мире»

      Криптовалюты, когда-то малоизвестные и в основном связанные с финансированием незаконной деятельности, стали мейнстримом.Криптовалюты — это тип виртуальной валюты, в которой используются криптографические алгоритмы для проверки и защиты транзакций. Транзакции записываются в цифровом виде в распределенном реестре, таком как блокчейн. Поскольку все больше и больше людей инвестируют в криптовалюты и торгуют ими, правительства всего мира обращают на это внимание. В то время как Сальвадор принял биткойн в качестве законного платежного средства в сентябре 2021 года, другие правительства, такие как Китай, полностью запрещают частные криптовалюты. Индия недавно приняла решение не придавать биткойнам статус законного платежного средства и, как сообщается, работает над запиской Кабинета министров о регулировании официальной цифровой валюты центрального банка (CBDC) при одновременном запрете частных криптовалют.

      Директорат глобальных юридических исследований (GLRD) Юридической библиотеки Конгресса недавно обновил более полный отчет Юридической библиотеки Конгресса за 2018 год о регулировании криптовалют во всем мире. Обновление добавляет Соединенные Штаты в список исследуемых юрисдикций. Мы рады поделиться с вами этим исследованием, Регулирование криптовалюты во всем мире: обновление за ноябрь 2021 года. Отчет состоит из юрисдикционной таблицы со ссылками и двух карт, которые визуально представляют выводы из таблицы. Он посвящен двум темам. Во-первых, правовой статус криптовалют, то есть, запрещает ли страна прямо или косвенно криптовалюты. Примерами неявных запретов являются запрет банкам и другим финансовым учреждениям на операции с криптовалютами или предложение услуг физическим/юридическим лицам, работающим с криптовалютами, или запрет на обмен криптовалют. Во-вторых, в таблице показана нормативно-правовая база, связанная с криптовалютами, в частности, применение налогового законодательства и законов о борьбе с отмыванием денег и финансированием терроризма (законы о ПОД/ФТ) к криптовалютам.

      БИТКОИН Криптовалюта $BTC. Фото пользователя Flick Джонатана Катрера. 21 апреля 2021 г. Используется по лицензии CC BY-NC-ND 2.0.

      Приглашаем вас ознакомиться с информацией, представленной в нашем отчете. Вы также можете просматривать дополнительные отчеты в Юридической библиотеке по другим темам. Чтобы получать оповещения о публикации новых отчетов, вы можете подписаться на обновления по электронной почте и RSS-канал для отчетов юридической библиотеки (нажмите кнопку «Подписаться» на веб-сайте юридической библиотеки). Юридическая библиотека также опубликовала различные статьи, связанные с криптовалютами, в Global Legal Monitor .


      Подпишитесь на In Custodia Legis — это бесплатно! – получать интересные сообщения, основанные на обширных коллекциях Юридической библиотеки Конгресса и опыте наших сотрудников в области американского, иностранного и международного права.

      Анализ рынка криптовалют с использованием различных методов кластеризации на основе прототипов

      %PDF-1.4 % 1 0 объект > эндообъект 2 0 объект >поток 2021-12-22T04:39:10Adobe InDesign 15.0 (Windows)2022-01-01T12:31:53+01:002022-01-01T12:31:53+01:00Библиотека Adobe PDF 15.0; изменено с использованием iText® 5.3.5 © 2000-2012 1T3XT BVBA (SPRINGER SBM; лицензионная версия)Fintech;Неконтролируемое машинное обучение;Криптовалюта;Электронный рынок;Кластеризация;Инвестиционные портфелиFalseapplication/pdfhttps://doi.org/10.1186/s40854-021- 00310-9

    8. Springer Берлин Гейдельберг
    9. Финансовые инновации, https://doi. org/10.1186/s40854-021-00310-9
    10. Финтех
    11. Неконтролируемое машинное обучение
    12. Криптовалюта
    13. Электронный рынок
    14. Кластеризация
    15. Инвестиционные портфели
    16. Анализ рынка криптовалют с использованием различных методов кластеризации на основе прототипов
    17. Луис Лоренцо
    18. Хавьер Арройо
    19. 10.1186/s40854-021-00310--04-23true
    20. springer.com
    21. springerlink.com
    22. https://doi.org/10.1186/s40854-021-00310-910.1186/s40854-021-00310--4730journalFinancial InnovationАвтор(ы)2010-04-23true10.1186/s40854-021-00310-9noindex
    23. ком
    24. springerlink.com
    25. UUID: f2ac383d-95c9-4479-b8e9-7a881855674euuid: 1e9e75db-6bc9-45ae-bdc8-70e8f0eca7aadefault1
    26. converteduuid: f2ac383d-95c9-4479-b8e9-7a881855674econverted в PDF / A-2bpdfToolbox2021-12-22T09: 35: 37Z
    27. 2B
    28. Луис Лоренцо http://orcid. орг/0000-0001-9059-0021
    29. http://ns.adobe.com/pdfx/1.3/pdfxAdobe Document Info Схема расширения PDF
    30. externalMirrors crossmark:MajorVersionDateCrossmarkMajorVersionDateText
    31. externalMirrors crossmark:CrossmarkDomainExclusiveCrossmarkDomainExclusiveText
    32. перекрестие внутренних зеркал: DOIdoiText
    33. externalMirrors crossmark:CrosMarkDomainsCrossMarkDomainsseq Text
    34. internalA имя объекта, указывающее, был ли документ изменен для включения информации о захвате robotsText
    35. внутренний идентификатор стандарта PDF/XGTS_PDFXVersionText
    36. внутренний уровень соответствия стандарту PDF/XGTS_PDFXConformanceText
    37. internalCompany создает PDFCompanyText
    38. internalDate, когда документ был последний раз измененSourceModifiedText
    39. http://crossref. org/crossmark/1.0/crossmarkCrossmark Схема
    40. внутренняяОбычно такая же, как у prism:doiDOIText
    41. externalThe дата публикации публикацииe.MajorVersionDateText
    42. internalCrossmarkDomainExclusiveCrossmarkDomainExclusiveText
    43. internalCrossMarkDomainsCrossMarkDomainsseq Текст
    44. http://prismstandard.org/namespaces/basic/2.0/prismPrism Схема
    45. externalЭтот элемент содержит URL-адрес статьи или единицы контента.Платформа атрибутов необязательно разрешена для ситуаций, в которых необходимо указать несколько URL-адресов. PRISM рекомендует использовать в сочетании с этим элементом подмножество значений платформы PCV, а именно «мобильный» и «веб-сайт». ПРИМЕЧАНИЕ. PRISM не рекомендует использовать значение #other, разрешенное в словаре, контролируемом платформой PRISM. Вместо использования #other обратитесь к группе PRISM по адресу [email protected], чтобы запросить добавление вашего термина в словарь, контролируемый платформой.URLURI
    46. externalЦифровой идентификатор объекта для статьи. DOI также может использоваться в качестве идентификатора dc:identifier. При использовании в качестве dc:identifier форма URI должна быть захвачена, а голый идентификатор также должен быть захвачен с помощью prism:doi. Если в качестве требуемого dc:identifier используется альтернативный уникальный идентификатор, то DOI следует указывать как голый идентификатор только в пределах prism:doi. Если необходимо указать URL-адрес, связанный с DOI, то prism:url можно использовать вместе с prism:doi для предоставления конечной точки службы (т.е. URL-адрес). доитекст
    47. externalISSN для электронной версии выпуска, в котором встречается ресурс. Разрешает издателям включать второй ISSN, идентифицирующий электронную версию выпуска, в котором встречается ресурс (поэтому e(lectronic)Issn. Если используется, prism:eIssn ДОЛЖЕН содержать ISSN электронной версии.issnText
    48. внутренний номер томаvolumeText
    49. внутренний номер проблемы номер текста
    50. внутренняя стартовая страницаstartingPageText
    51. внутренняя конечная страницаendingPageText
    52. externalТип агрегации указывает единицу агрегации для коллекции контента.Комментарий PRISM рекомендует использовать словарь управляемого типа агрегации PRISM для предоставления значений для этого элемента. Примечание. PRISM не рекомендует использовать значение #other, разрешенное в настоящее время в этом контролируемом словаре. Вместо использования #other, пожалуйста, обратитесь в группу PRISM по адресу [email protected], чтобы запросить добавление вашего термина в словарь контролируемого типа агрегации. агрегатионтипетекст
    53. externalНазвание журнала или другого издания, в котором был/будет опубликован ресурс.Обычно это будет использоваться для предоставления названия журнала, в котором статья появилась в качестве метаданных для статьи, а также такой информации, как название статьи, издатель, том, номер и дата обложки. Примечание. Название публикации можно использовать, чтобы различать печатный журнал и онлайн-версию, если названия различаются, например «magazine» и «magazine.com».publicationNameText
    54. externalCopyrightcopyrightText
    55. http://нс.adobe.com/pdf/1.3/pdfAdobe PDF Schema
    56. internalОбъект имени, указывающий, был ли документ изменен для включения информации треппингаTrappedText
    57. http://ns. adobe.com/xap/1.0/mm/xmpMMXMP Схема управления мультимедиа
    58. внутренний идентификатор на основе UUID для конкретного воплощения документаInstanceIDURI
    59. internalОбщий идентификатор для всех версий и представлений документа. DocumentIDURI
    60. internalОбщий идентификатор для всех версий и представлений документа.ОригиналДокументIDURI
    61. http://www.aiim.org/pdfa/ns/id/pdfaidPDF/A ID Schema
    62. internalPart of PDF/A standardpartInteger
    63. внутреннее изменение стандарта PDF/A amdText
    64. внутренний уровень соответствия стандарту PDF/A text
    65. Springer Nature ORCID Schemahttp://springernature. com/ns/xmpExtensions/2.0/sn
    66. authorInfoBag AuthorInformationexternalAuthor information: содержит имя каждого автора и его/ее ORCiD (ORCiD: Open Researcher and Contributor ID).ORCiD — это постоянный идентификатор (непатентованный буквенно-цифровой код), позволяющий однозначно идентифицировать научных и других академических авторов.
    67. AuthorInformationhttp://springernature.com/ns/xmpExtensions/2.0/authorInfo/authorУказывает типы информации об авторе: имя и ORCID автора.
    68. nameTextВыдает имя автора.
    69. orcidURIGВыдает ORCID автора.
    70. конечный поток эндообъект 3 0 объект

      На горизонте появляются более надежные криптоалгоритмы

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

      Но надвигаются грозовые тучи. По мере того, как квантовые компьютеры продвигаются вперед и становятся мейнстримом, они вводят уровень вычислительной мощности, который меняет ставки за столом.Хотя есть много потенциальных преимуществ, основным недостатком является возможность взломать современную криптографию с открытым ключом, включая широко используемые схемы RSA (Rivest-Shamir-Adleman) и Diffie-Hellman. Это повлияет на все, от маршрутизаторов и виртуальных частных сетей (VPN) до возможности проверки цифровых подписей.

      Факт, который не остался незамеченным. В 2016 году Агентство национальной безопасности США (АНБ) опубликовало предупреждение и рекомендовало организациям начать поиск способов перехода на более совершенную криптографию. Год спустя Национальный институт стандартов и технологий США (NIST) начал предлагать новые и более совершенные алгоритмы, которые могли бы противостоять взлому квантовыми компьютерами и стать стандартом.

      Взлом кода

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

      Риск ощутим для предприятий, университетов, правительств и других организаций. Если квантовые компьютеры взломают алгоритмы PKE, это повлияет не только на устройства. Он может раскрывать исторические данные, хранящиеся внутри организаций. Следовательно, математики и компьютерщики разрабатывают новые и гораздо более совершенные криптографические алгоритмы, использующие как классические, так и основанные на решетке структуры.Первый основан на некомпактном коде; последний использует математические формулы или доказательства для обеспечения целостности алгоритма. На самом деле алгоритмы на основе решеток являются частью более широкого движения к формальному (проверенному) программному обеспечению.

      В настоящее время NIST сократил количество алгоритмов следующего поколения до 15. Группа исследователей и специалистов по информатике, участвующих в проекте, продолжает тестировать, уточнять и обновлять алгоритмы, чтобы сбалансировать требования к скорости и безопасности. Ожидается, что в течение следующих года или двух NIST завершит работу над новыми стандартами.Это не будет охватывать все квантово-устойчивые алгоритмы в будущем — другие могут разрабатывать алгоритмы вне стандарта — но можно с уверенностью сказать, что этот набор алгоритмов будет широко использоваться в промышленности и правительстве.

      Обеспечение будущего

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

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

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

      CARAF: Система оценки рисков гибкости криптографии | Журнал кибербезопасности

      Аннотация

      Криптоманевренность относится к способности объекта заменить существующие криптографические примитивы, алгоритмы или протоколы новой альтернативой быстро, недорого, без риска или с приемлемым риском.Эти изменения могут быть вызваны действиями регулирующих органов, достижениями в области вычислительной техники или недавно обнаруженными уязвимостями. Тем не менее, повседневные операционные потребности могут отодвинуть на задний план соображения гибкости криптографии при развертывании технологий, проектировании процессов или разработке продуктов/услуг. Следовательно, изменения часто выполняются в случайном порядке. Переход от одного криптографического решения к другому может занять много времени и подвергнуть организации ненужному риску безопасности. В этом документе представлена ​​структура для анализа и оценки риска, связанного с отсутствием гибкости криптографии.Предлагаемая структура может использоваться организациями для определения подходящей стратегии смягчения последствий, соответствующей их допустимому риску. Мы демонстрируем применение этой структуры на примере квантовых вычислений и связанных с ними угроз криптографии в контексте TLS для Интернета вещей.

      Введение

      Enigma — одна из самых известных систем шифрования в мире. На момент создания он считался самой сильной системой шифрования [1]. Только благодаря изобретательности ученых из Польши, Франции, Великобритании и других стран Enigma была взломана. Хотя союзные войска очень старались сохранить это в секрете, некоторые историки утверждали, что нацисты могли знать, что Enigma не была защищена [2, 3]. Если да, то почему тогда нацисты не перешли на другую систему шифрования? Один из возможных ответов заключается в гибкости криптографии или ее отсутствии. Во-первых, нацистам нужна была лучшая альтернатива Enigma. Кроме того, существовали эксплуатационные ограничения.Персонал, в том числе развернутый на фронте, должен быть обучен использованию нового алгоритма и связанного с ним оборудования. Им также необходимо будет выдать новые кодовые книги. Учитывая, что нацистские силы были переброшены на всем пути от России до Франции, это было бы чрезвычайно сложно. Таким образом, хотя теоретически нацисты могли перейти на другое решение для шифрования, на практике это было бы довольно сложно.

      Способность заменять криптографические примитивы, алгоритмы или протоколы с ограниченным влиянием на операции и с небольшими накладными расходами, такими как затраты, называется криптографической гибкостью. Хотя большинство современных организаций полагаются на широкий спектр криптографии от RSA до AES, немногие учитывают риск неучета гибкости криптографии. Тем не менее успехи в криптоанализе часто приводят к обнаружению уязвимостей в старой криптографии [4, 5]. Кроме того, юридические или нормативные требования могут потребовать использования определенной криптографии. Достижения в области вычислений, таких как квантовые компьютеры, могут потребовать перехода на совершенно другие наборы алгоритмов с принципиально иными математическими основами [6].

      Таким образом, крипто-гибкость должна рассматриваться как бизнес-риск, как и любой другой. соответствие и цепочка поставок. Как организации могут оценить и снизить этот риск, то есть риск, связанный с гибкостью криптографии или ее отсутствием? Данная статья направлена ​​на решение этого вопроса. В частности, мы предлагаем систему оценки рисков 5D Crypto Agility (CARAF):

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

      • Во-вторых, они должны определить активы, затронутые этим вектором угрозы.

      • В-третьих, они должны оценить ожидаемую стоимость скомпрометированных затронутых активов.

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

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

      Вклад этой работы — основа подхода к управлению безопасностью и рисками в упреждающем, а не в реактивном режиме.Это нацелено на будущие риски, когда эмпирический подход к принятию решений будет ограничен ограниченными или отсутствующими данными. Мы начнем с представления предыстории и связанной с ней работы в разделе «Предыстория и родственная работа». В разделе «Структура оценки рисков криптогибкости» мы описываем наш CARAF. В разделе «Практическое исследование: квантовые вычисления» обсуждается применение фреймворка на примере квантовых вычислений в контексте TLS для Интернета вещей (IoT). Наконец, раздел «Заключение» завершает статью.

      Базовая и родственная работа

      Криптовалюта: историческая перспектива

      Потребность в гибкости криптографии хорошо известна. Уязвимости в старых популярных криптосистемах часто приводили к необходимости перехода на новые, более безопасные альтернативы. Одним из примеров является миграция с SHA-1 на SHA-2. NIST запретил всем федеральным агентствам США использовать SHA-1 в 2010 году, а центры цифровой сертификации не имеют права выдавать сертификаты SHA-1 с 2016 года [7].Хотя большинство браузеров будут отображать сообщение об ошибке при обнаружении сертификата SHA-1 на веб-сайте, некоторые позволяют обойти ошибку гораздо позже.

      Гибкость шифрования может быть трудно внедрить, не создавая дополнительных угроз безопасности. TLS или SSL — это пример протокола с некоторой встроенной гибкостью. TLS устанавливает зашифрованное соединение между сервером и клиентом, используя сертификаты с асимметричными и симметричными ключами. Он имеет встроенную поддержку ряда шифров, которые можно использовать опционально или взаимозаменяемо.Однако эту гибкость можно использовать для других классов кибератак. В BEAST [8] и CRIME [9], например. Злоумышленники смогли воспользоваться встроенной гибкостью протокола, чтобы переключиться на небезопасный шифр. Это также означает, что протокол TLS настолько безопасен, насколько безопасен шифр, выбранный клиентом. Необходимо отслеживать небезопасные шифры, но их удаление оказывается затруднительным из-за необходимости обеспечения обратной совместимости. Это приводит к резервным атакам, недавним примером которых является POODLE [10].

      Тем не менее, сделать поддержку алгоритма более жесткой для нескольких определенных алгоритмов и размеров ключей может быть сложно или привести к проблемам в работе. Проблемы с реализацией возникают, когда изменения слишком сильно различаются между версиями. TLS v1.3, впервые опубликованный в 2014 году, претерпел десятки изменений. Однако разные версии не могут взаимодействовать друг с другом, и это приводит к относительно высокой частоте отказов промежуточных блоков. Промежуточные устройства — это сетевые устройства, которые отслеживают и иногда перехватывают трафик, а также блокируют трафик, который они не понимают, например TLS v1.3. При представлении TLS 1.3 большое количество серверов отключалось бы вместо согласования и отвечало бы версией 1.2 [11]. Было приложено много усилий, чтобы первоначальная коммуникация для версии 1.3 выглядела как версия 1.2 до того, как 21 марта 2018 года была окончательно завершена работа над TLS версии 1.3 [12].

      Переход в инфраструктуре Интернета особенно сложен, поскольку цифровые подписи на сертификатах, возможно, прослужат десятилетиями. Как только конкретный алгоритм подписи используется для выдачи долгоживущего сертификата, он будет использоваться многими доверяющими сторонами, и ни одна из них не может прекратить его поддержку, не аннулировав все подчиненные сертификаты [13]. Кроме того, из-за неспособности устаревших систем, а также устройств с ограниченными ресурсами поддерживать новые алгоритмы оказалось сложным удалить или отключить старые ослабленные алгоритмы. Таким образом, несмотря на то, что известно, что все алгоритмы в конечном итоге устареют, миграция часто является длительным и сложным процессом.

      Драйверы для гибкости шифрования

      Новая технология — квантовая

      Отказ от новых технологий, таких как квантовые вычисления, может поставить под угрозу безопасность криптографических алгоритмов.Например, алгоритм Шора можно использовать для нарушения предположений, лежащих в основе наиболее широко используемых криптосистем с открытым ключом [14]. В то же время алгоритм поиска Гровера обеспечивает квадратичное ускорение в задачах неструктурированного поиска, которые влияют на вычислительную безопасность криптосистем с симметричным ключом и хеш-функций [15]. В таблице 1 представлены сводные данные о влиянии крупномасштабных квантовых компьютеров на распространенные криптоалгоритмы [6]. Таким образом, достаточно большому квантовому компьютеру может потребоваться переход, который будет зависеть от криптографической гибкости затронутых активов.Криптосистемы с открытым ключом должны быть заменены квантово-безопасными альтернативами, в то время как решения с симметричным ключом могут потребовать удвоения размера ключа для обеспечения того же уровня безопасности. Первое может быть более сложным, поскольку потребует изменений как в затронутых активах, так и в инфраструктуре серверной поддержки.

      Таблица 1:

      Влияние квантовых вычислений на распространенные криптографические алгоритмы

      9
      Алгоритм . Тип . Назначение . Воздействие .
      Симметричный ключ Шифрование
      Sha-2, Sha-3 Hash Hash Функции Большие продукты
      3 RSA Общественный ключ подписи, ключевое учреждение более небезопасно
      ECC Открытый ключ Открытый ключ Больше не защищают
      DSA Конечное поле Открытый ключ Больше не безопасно 
      9
      Алгоритм . Тип . Назначение . Воздействие .
      Симметричный ключ Шифрование
      Sha-2, Sha-3 Hash Hash Функции Большие продукты
      3 RSA Общественный ключ подписи, ключевое учреждение более небезопасно
      ECC Открытый ключ Открытый ключ Больше не защищают
      DSA Конечное поле Открытый ключ Больше не безопасно 
      Таблица 1:

      влияние квантовых вычислений на распространенные криптографические алгоритмы . Тип . Назначение . Воздействие . 9 Симметричный ключ Шифрование Sha-2, Sha-3 Hash Hash Функции Большие продукты3 RSA Общественный ключ подписи, ключевое учреждение более небезопасно ECC Открытый ключ Открытый ключ Больше не защищают DSA Конечное поле Открытый ключ Больше не безопасно 

      9
      Алгоритм . Тип . Назначение . Воздействие .
      Симметричный ключ Шифрование
      Sha-2, Sha-3 Hash Hash Функции Большие продукты
      3 RSA Общественный ключ подписи, ключевое учреждение более небезопасно
      ECC Открытый ключ Открытый ключ Больше не защищают
      DSA Конечное поле Открытый ключ Больше не является безопасным 
      Алгоритмические и операционные уязвимости

      В октябре 2017 года в программной библиотеке, реализующей RSA, была обнаружена уязвимость ROCA, которая затронула миллиарды устройств безопасности и смарт-карт [16].В 2017 году неправомерный выпуск SSL-сертификатов от Symantec позволил злоумышленникам настроить корпоративные оболочки и фишинговые сайты. В 2018 году все существующие SSL-сертификаты Symantec были заблокированы Google Chrome, и Symantec пришлось перевыпустить все свои сертификаты [17]. В июле 2018 года NIST предложил запретить использование алгоритмов 3DES через 5 лет [18].

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

      Законодательство, регулирование и этика

      Правовые и нормативные требования являются одним из менее заметных факторов гибкости криптовалюты. В идеале любые усилия государственной политики в области кибербезопасности должны быть нейтральными в отношении технологий.На практике это не всегда так. Например, некоторые правительства могут чувствовать необходимость управлять тем, какие криптосистемы используются в пределах их юрисдикции. Китайское правительство предписывает своим поставщикам использование криптоалгоритмов класса SM(x). В США FCC работает с телекоммуникационными компаниями над внедрением протоколов STIR/SHAKEN для решения проблемы роботизированных звонков [19].

      В дополнение к определенным публичным организациям, предпочитающим определенные типы криптографии, также могут быть требования по созданию законных механизмов доступа [20].Возможно, самым популярным примером этого является микросхема Clipper, в которой используется концепция условного депонирования ключей [21]. Совсем недавно Рэй Оззи предложил четырехэтапный процесс под названием Clear [22]. Проблемы безопасности этих систем выходят за рамки этой статьи и доступны в других источниках [23–25]. Однако мы должны отметить, что внедрение таких систем, как Clear, потребует перепроектирования серверных систем и, следовательно, повлияет на гибкость криптографии.

      Решения для гибкости шифрования

      Криптовалютная гибкость может быть повышена за счет внедрения слоя сервисного программного обеспечения или шлюзового приложения между приложениями и аппаратными модулями безопасности. Аппаратный шифратор Senetas серии CN фокусируется на гибкости аппаратного обеспечения, предоставляя гибкую архитектуру программируемых вентильных матриц, которая позволяет выполнять обновления в полевых условиях [26]. Однако для этого требуется специальное и проприетарное оборудование, и оно работает только для сетевого шифрования. Cryptomatic Crypto Service Gateway 3.10 — это модуль, который можно внедрить в существующие продукты [27]. Он предоставляет центр криптографического управления, который действует как служба модуля аппаратной безопасности и интерфейс управления политикой шифрования.Однако для этого по-прежнему требуется, чтобы конечные пользовательские приложения или конечные точки могли поддерживать соответствующие ключи и соответствующие алгоритмы. InfoSec Global AgileSec — это система безопасности с несколькими криптоплатформами. Он состоит из криптографического инструментария на конечных точках и инфраструктуры сервера управления, который удаленно развертывает политику и устанавливает ее для криптографии на разнообразном наборе удаленного программного обеспечения и устройств [28].

      Новые технологии, такие как квантовые вычисления, могут потребовать перехода на совершенно новый набор алгоритмов вместо лучшего управления текущими криптосистемами [29].НИСТ, например все еще находится в процессе определения квантово-безопасных замен для текущих алгоритмов с открытым ключом [6, 30]. В отсутствие установленных квантово-безопасных альтернатив классическим криптографическим системам с открытым ключом решением может быть развертывание гибридных решений. Теоретически они останутся безопасными, если хотя бы одна из лежащих в их основе криптографических схем не будет взломана. Однако они могут быть медленнее, занимать больше места для хранения ключей и быть менее эффективными [31]. Одновременно ведется совместная работа над цифровыми сертификатами, совместимыми как с классическими, так и с квантово-безопасными криптографическими алгоритмами от ISARA, Cisco, CableLabs и DigiCert.Пользователи смогут загрузить гибридный корневой сертификат и запросить гибридный сертификат конечного объекта, а затем подключиться к серверу TLS с использованием гибридного сертификата, чтобы для цифровой подписи использовались классические или квантово-безопасные наборы шифров.

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

      Системы оценки рисков

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

      NIST SP 800-30 — основополагающая и популярная основа для оценки ИТ-рисков, включая риски безопасности [32]. . Он четко структурирован, когда дело доходит до планирования и реализации. Тем не менее, структура NIST фокусируется на оценке технологических рисков, и в ней нет идентификации активов или рассмотрения средств контроля, необходимых для оценки организационных рисков.В отличие от NIST SP 800-30, ориентированного на США, ISO/IEC 27005 является международным стандартом информационной безопасности, опубликованным Международной организацией по стандартизации [33]. Он помещает безопасность в контекст общего управления и процессов компании. Хотя ISO находится под влиянием NIST, он позволяет использовать различные вычислительные методы для расчета риска и охватывает технологии, людей и процессы, тем самым обеспечивая более целостную картину. Отличием от NIST и ISO является оценка эксплуатационно критических угроз, активов и уязвимостей или OCTAVE, которая является самоуправляемой и настраиваемой.Он подходит к рискам безопасности с операционной и организационной точек зрения и рассматривает технологии в бизнес-контексте [34]. ISO 27005 и OCTAVE ориентированы на информационную безопасность, тогда как NIST 800-30 шире и может применяться к системам, приложениям или информации. OCTAVE также не производит количественную оценку рисков. Таким образом, даже в пределах одной и той же области риска могут быть очень разные подходы к проведению оценки риска.

      Хорошо известной системой оценки рисков для кибербезопасности является NIST Cybersecurity Framework или CSF [35].Это пятимерная структура: (i) идентифицировать, (ii) защищать, (iii) обнаруживать, (iv) реагировать и (v) восстанавливать. Оценка рисков должна начинаться с инвентаризации активов. После идентификации активов организация должна развернуть средства безопасности для их защиты. Затем организации должны развернуть инструменты для обнаружения любых атак на идентифицированные активы. В случае атаки предприятие должно отреагировать соответствующими действиями по смягчению последствий. Если реакция неадекватна и актив скомпрометирован, последним шагом является наличие механизма восстановления, чтобы вернуть актив в оперативный режим.CSF NIST, как и большинство методологий оценки рисков, предназначен для устранения известных угроз, в то время как криптогибкость более ориентирована на будущее и предназначена для подготовки организаций к возможным изменениям.

      Напротив, модель квантового риска Mosca XYZ определяет, когда пора готовиться к квантовым угрозам [36]. X относится к продолжительности, в течение которой информация должна храниться в безопасности. Y означает время, необходимое для перехода на квантово-безопасное решение. Z — это оценка того, когда идентифицированные злоумышленники получат доступ к квантовым технологиям. Если X+Y>Z⁠, то безопасность отсутствует или недостаточна. Оценка рисков Mosca разделена на шесть этапов. Этап 1 заключается в определении информационных активов и их текущей криптографической защиты. Фаза 2 заключается в исследовании состояния и оценке сроков доступности квантовых компьютеров и квантово-безопасной криптографии. Поскольку технология все еще новая и постоянно меняется, то, что является наиболее рискованным сегодня, может быть другим завтра, и необходим постоянный мониторинг. Этап 3 заключается в выявлении субъектов угроз, а затем оценке их времени для доступа к квантовым технологиям и вероятности использования эксплойтов.Этап 4 заключается в определении квантовой уязвимости организации с использованием времени жизни активов и времени, необходимого для обновлений или миграции. Этап 5 заключается в определении квантового риска путем расчета того, станут ли бизнес-активы уязвимыми до того, как организация сможет их защитить. Этап 6 заключается в определении и приоритизации действий, необходимых для поддержания осведомленности о дорожной карте или плане миграции.

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

      Структура оценки рисков Crypto Agility

      В разделе «Предпосылки и сопутствующие работы» обсуждались трудности реализации криптогибкости, а также проблемы, возникающие из-за ее отсутствия. Эти трудности усугубляются, если предприятия подходят к гибкости криптографии на разовой основе без учета базовой технологии, компенсирующего контроля и управления жизненным циклом.Решения, касающиеся гибкости криптовалюты, должны рассматриваться как бизнес-риск и учитывать воздействие на основе всесторонней оценки рисков. В этом разделе мы представляем 5D (или поэтапную) структуру для поддержки этой оценки, называемую CARAF.

      Этап 1: выявление угроз

      Мы начинаем с определения угрозы, на устранение которой направлена ​​оценка на основе CARAF. Это отличает CARAF от других структур риска и позволяет оценщикам сбрасывать со счетов активы, на которые не повлияет рассматриваемая угроза.Например, если активы, скорее всего, будут выведены из обращения до того, как возникнет необходимость в криптопереходе, их можно считать выходящими за рамки. Точно так же, если угроза затрагивает только программные активы, аппаратные активы могут считаться выходящими за рамки. Затем оценщики могут явно обратиться к активам, на которые повлияла угроза. Это позволяет использовать более оптимизированную и реалистичную структуру оценки, тем более, что большинство организаций имеют широкий спектр активов, а исчерпывающие запасы редкость.

      CARAF направлен на устранение вероятной угрозы безопасности в будущем, позволяя организации действовать упреждающе, а не реактивно.Поскольку угроза находится в будущем, может быть недостаточно информации о возможных векторах риска для точного определения воздействия, вероятности или воздействия. Например, рассмотрим угрозу квантовых вычислений. NIST утверждает, что квантовый компьютер, способный взломать 2000-битный RSA за считанные часы, может быть построен к 2030 году с бюджетом около миллиарда долларов [6]. Другие предполагают, что существует 15%-ная вероятность того, что RSA и ECC будут нарушены к 2026 г., и 50%-ная вероятность к 2031 г. [37]. Вероятность и сроки внедрения квантовых компьютеров на практике могут измениться из-за новых исследований и требуют постоянной оценки. Также необходимо решить физические инженерные проблемы, такие как ограниченное количество доступных кубитов [38]. Таким образом, неясно, когда появится достаточно большой квантовый компьютер с возможностью факторизации RSA [6].

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

      Наконец, в зависимости от категории угрозы воздействие будет различным:

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

      • Недавно обнаруженные уязвимости по своей природе являются неожиданными и могут повлиять на критически важные приложения.Однако ответственное раскрытие информации может помочь организациям надлежащим образом планировать свои действия. Кроме того, они могут извлечь уроки из существующих тематических исследований предыдущих переходов, например. от SHA1 до SHA2. Если для известных уязвимостей обнаруживаются новые эксплойты, меры по смягчению могут уже существовать, например. патч для уязвимого подкомпонента или, альтернативно, компенсирующий контроль.

      • Отказ от новых технологий, таких как квантовые вычисления, является наиболее сложной задачей из-за отсутствия конкретных сроков проявления угроз, а также предшествующих случаев перехода.Здесь также может быть наиболее информативной оценка рисков гибкости криптографии, и она находится в центре внимания тематического исследования в разделе «Пример из практики: квантовые вычисления». Помимо квантовых вычислений, новые легкие криптографические подходы могут заменить существующие ресурсоемкие альтернативы для повышения производительности.

      Таким образом, CARAF начинает с выявления угроз или будущих рисков. Следующим шагом является инвентаризация затронутых активов.

      Этап 2: инвентаризация активов

      Подверженность различным активам рискам безопасности будет различаться в зависимости от характера угрозы.Рассмотрим, например. PCI-DSS v3.1, который осуждал использование всех версий SSL, а также TLS 1.0 и требовал перехода на TLS 1.1 и выше [39]. Соответствующий организационный ответ должен был быть сосредоточен на активах, которые обрабатывают данные PCI и используют TLS 1.0 или SSL. Таким образом, как только организация определяет вектор угрозы, определяющий гибкость криптографии, следующим шагом является инвентаризация списка затронутых активов. Эти активы относятся к системам с независимыми криптографическими компонентами, которые поддерживают конфиденциальность, целостность или доступность.Конкретный объем будет определяться организацией и их вариантом использования. Таким образом, экосистему IoT с двумя умными лампочками и центральным хабом можно одновременно описать как три отдельных актива или один актив.

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

      • Объем: Любая инвентаризация должна начинаться с определения соответствующего объема, который будет определяться характером угрозы, выявленной на этапе 1.Например, в случае угроз, связанных с PCI, любые системы, не относящиеся к PCI, могут считаться неподпадающими под действие. Однако в некоторых случаях сфера применения не является четкой из-за взаимозависимости служб и устройств. Таким образом, любые зависимости рассматриваемых активов также должны быть рассмотрены, когда это применимо.

      • Чувствительность: организации должны отдавать приоритет активам, входящим в сферу деятельности, с более высоким ожидаемым риском. Таким образом, важно понимать, где и как используется актив, каково влияние компрометации актива, т.е.е. утраты конфиденциальности или целостности, либо утери, т.е. становятся недоступными.

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

      • Управление секретами: Описи также должны включать информацию об управлении секретами, относящимися к отдельным криптографическим решениям.К ним могут относиться, помимо прочего, ключи, пароли, токены API и сертификаты, а также частота использования и обновлений.

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

      • Право собственности: Никакая инвентаризация не может считаться полной без информации о владении активами. Для крупных компаний или нетехнологических отраслей криптоактивы могут поступать от сторонних поставщиков вместо (или в дополнение) к внутренним командам разработчиков. Криптография как услуга — новая тенденция в облачных вычислениях. Даже традиционные вычисления широко используют криптобиблиотеки с открытым исходным кодом, такие как OpenSSL. Документирование этих вышестоящих и нижестоящих зависимостей имеет решающее значение, поскольку одним из рисков, связанных с использованием сторонних продуктов в организации, является отсутствие адекватных и своевременных обновлений; некоторые компоненты могут быть даже с истекшим сроком службы. Тогда у ответственных владельцев будут соответствующие планы реагирования.

      • Местоположение: расположение актива влияет на его криптографическую гибкость. Например, для локальных активов может потребоваться другой процесс обновления по сравнению с облачными. Юрисдикционные ограничения также могут препятствовать гибкости. Китай, например. регулирует все внутреннее использование криптографии, тогда как США этого не делает [40].

      • Управление жизненным циклом: Для оценки безопасности информационного актива важно знать о механизмах обмена данными с третьими сторонами, процедурах резервного копирования или восстановления, сроке службы актива, а также об обработке по окончании срока службы.

      Эти факторы помогут организациям определить активы, которым необходимо отдать приоритет для снижения риска от угрозы, определенной на этапе 1. Кроме того, это поможет выявить степень пробелов в знаниях, чтобы организации могли соответствующим образом планировать. Например, центральные репозитории прав собственности на активы нередко содержат отсутствующую или датированную информацию. Даже когда известно право собственности, некоторые владельцы активов могут не знать, какая криптография используется и как хранятся ключи, в то время как у других может быть подробный план управления изменениями.Что наиболее важно, опрос, основанный на факторах, подробно описанных выше, поможет организациям оценить, насколько криптогибкими являются их активы, и понять проблемы, связанные с смягчением последствий. Это поможет организациям оценить подверженность риску (этап 3), соответствующую стратегию снижения риска (этап 4) и, наконец, разработать дорожную карту для реализации этой стратегии (этап 5).

      Этап 3: оценка риска

      В средних и крупных организациях даже инвентаризация с широким охватом должна быть приоритетной для снижения рисков на основе воздействия.Общая формула для оценки риска: «Риск = Вероятность * Воздействие». «Вероятность» относится к вероятности или частоте воздействия. В кибербезопасности это зависит от таких факторов, как мотивация и опыт злоумышленника, а также наличие каких-либо средств смягчения или контроля. «Воздействие» относится к последствиям реализации риска. Что касается кибербезопасности в корпоративном контексте, это часто издержки компании в случае компрометации актива, т. е. потери конфиденциальности, целостности или доступности.В традиционных областях принятия решений, основанных на риске, актуарная информация, такая как статистика или записи о предыдущих событиях, используется для расчета вероятности и воздействия, тем самым моделируя риск.

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

      Вместо этого мы приводим более частный случай общей формулы с другой абстракцией вероятности воздействия, т. е. временем воздействия. Например, вероятность воздействия квантовых компьютеров может составить 15 % к 2026 г. и 50 % к 2031 г. [42]. Таким образом, время воздействия представляет собой распределение вероятностей, которое можно свести к дискретным значениям для оценки риска.Воздействие в этом случае измеряется как стоимость обновления актива до безопасного состояния в течение требуемого периода времени. Стоимость будет определяться некоторыми факторами, задокументированными в кадастре (Этап 2). Миграция более гибкого криптографического актива будет дешевле и, следовательно, будет представлять меньший риск. Таким образом, риск гибкости криптовалюты зависит от времени миграции и стоимости миграции, т. е. «Риск = Сроки × Стоимость».

      Хронология

      Сроки воздействия основаны на модели Моски [36] путем включения информации из этапов 1 и 2:

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

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

      • Z (Угроза) относится к количеству лет до того, как вектор угрозы приведет к компрометации.Хотя временной рейтинг для X и Y может быть выведен из факторов, записанных как часть инвентаризации активов на этапе 2, Z не зависит от инвентаризации и получен из оценки угроз на этапе 1. Например , если угроза исходит от новых технологий, то Z необходимо скорректировать с учетом любых достижений в исследованиях, которые сокращают или удлиняют временной горизонт материализации угрозы.

      Для количественной оценки риска мы оцениваем три компонента от 1 до 4 или от низкого до критического риска соответственно (таблица 2). Значения 1–3 расположены от низкого до высокого в зависимости от того, как скоро может быть реализована будущая угроза, а значение 4 означает, что угроза уже существует. Например, оценка 4 будет означать, что постановление, осуждающее определенные алгоритмы, уже принято или уже создан квантовый компьютер, достаточно большой, чтобы учитывать RSA.

      Таблица 2:

      анализ вероятности риска на основе временной шкалы (в годах)

      временная шкала . 1 — Низкий риск . 2 — средний риск . 3—Высокий риск . 4—критический .
      Х (Срок годности)
      Да (Смягчение)
      Z (угрозы)        
      Хронология . 1 — Низкий риск . 2 — средний риск . 3—Высокий риск . 4—критический .
      Х (Срок годности)
      Да (Смягчение)
      Z (угрозы)        
      . 1 — Низкий риск . 2 — средний риск . 3—Высокий риск . 4—критический . Х (Срок годности) Да (Смягчение) Z (угрозы)        
      Хронология . 1 — Низкий риск . 2 — средний риск . 3—Высокий риск . 4—критический .
      Х (Срок годности)
      Да (Смягчение)
      Z (угрозы)        

      Оценки для каждого компонента можно усреднить по активам с одинаковой чувствительностью, чтобы получить оценку риска на временной шкале, которая должна совпадать с одним из значений в модели взвешенного рейтинга воздействия.Например, если X+Y>Z, то уровень риска организации, скорее всего, будет высоким (3) или критическим (4), что означает, что корпоративная инфраструктура будет подвержена квантовым атакам через Z лет. С другой стороны, если уравнение X+Y

      Стоимость

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

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

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

      • Гибкость: Платформа позволяет устанавливать различные криптографические модули по принципу plug-and-play.

      • Производительность. Задачи шифрования, такие как генерация или расшифровка ключей, имеют ограниченное влияние на операционные издержки.

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

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

      • Управление секретами: Изменения в алгоритмах могут также повлиять на управление секретами или поддерживающую инфраструктуру, такую ​​как системы управления ключами и системы выдачи сертификатов. Ошибки в процессе могут вызвать проблемы. Let’s Encrypt пришлось отозвать и перевыпустить около 3 миллионов сертификатов из-за ошибки в системе. Эти проблемы могут стать чрезвычайно дорогими, если перевыпускаемые токены основаны на оборудовании.По оценкам, повторный выпуск токенов SecureID стоил RSA 66 миллиардов долларов. Хотя затраты на Let’s Encrypt и RSA не были связаны с изменениями, связанными с гибкостью криптографии, возможно, эти ошибки были допущены в условиях обычного ведения бизнеса. Если векторы угроз приводят к изменениям в криптографии, вполне разумно, что могут совершаться аналогичные ошибки.

      • Внедрение: аппаратное или программное обеспечение также увеличивает затраты. Spectre и Meldown продемонстрировали трудности устранения аппаратных уязвимостей [44].Даже установка исправлений программного обеспечения может потребовать простоя системы, а также может привести к краху системы, если исправление не было должным образом протестировано.

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

      • Местонахождение. Способность организации снижать риск может быть ограничена местоположением. Например, юрисдикции могут информировать о затратах на снижение рисков. В США внутреннее использование криптографии не регулируется. Однако разрешение должно быть предоставлено центральным руководящим органом в Китае.В этом случае любое снижение риска будет ограничено разрешениями регулирующих органов и может привести к увеличению затрат [40].

      Этап 4: защита активов за счет снижения рисков

      Обычно существует три варианта снижения риска:

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

      • Принять риск и сохранить статус-кво. Это разумно, когда ожидаемое значение риска ниже допустимого для организации уровня риска.

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

      Таким образом, соответствующая стратегия снижения риска будет зависеть от организационной допустимости риска и ожидаемого значения риска, определенного на этапе 3 в зависимости от Сроки и Стоимость .Упрощенная стратегия снижения рисков представлена ​​в таблице 3.

      Таблица 3: Оценка снижения риска

      Методы снижения . Низкая стоимость . Высокая стоимость .
      X + Y Phase Out Принимают риск
      X + Y> Z Secure Asset 40777
      9072
      Методы смягчения последствий . Низкая стоимость . Высокая стоимость .
      X + Y Принять риск X + Y> Z X + Y> Z Secure Asset Secure Asset 40725 9077
      Таблица 3:

      Оценка смягчения риска

      Методы смягчения последствий . Низкая стоимость . Высокая стоимость .
      X + Y Phase Out Принимают риск
      X + Y> Z Secure Asset 40777
      9072 9076 X + Y> Z
      Методы смягчения последствий . Низкая стоимость . Высокая стоимость .
      X + Y Phase Out Accept Risk X + Y> Z Secure Asset Phase Out

      Phase 5: Организационная дорожная карта

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

      • План реагирования на инциденты: он должен включать планы по устранению уязвимостей во внутренних криптовалютных решениях.

      • Оценка рисков третьей стороной: они должны учитывать свою реакцию на раскрытие информации об уязвимостях.

      • Обзоры архитектуры безопасности. Они должны оценить криптографическую гибкость предлагаемой архитектуры.

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

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

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

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

      Практический пример: квантовые вычисления

      Использование CARAF может помочь организациям при переходе, определяя приоритеты смягчения на основе ожидаемого риска. Таким образом, в этом разделе мы представляем тематическое исследование того, как операционализировать CARAF для варианта использования квантовых вычислений. Еще в 2015 году АНБ рекомендовало организациям подготовиться к предстоящему переходу на квантово-устойчивый алгоритм [45].Одним из возможных решений с использованием обычного оборудования является постквантовая криптография (PQC) или обычные шифры, основанные на математических задачах, отличных от факторинга и дискретного логарифмирования. NIST в настоящее время пересматривает PQC, и ожидается, что стандарты квантовой безопасности будут выпущены к 2024 году [30]. Таким образом, правительство США может ожидать, что организации (в частности, поставщики, предоставляющие критически важные услуги) перейдут на квантово-безопасные альтернативы в не столь отдаленном будущем. Этого можно ожидать независимо от того, станут ли к 2024 году квантовые компьютеры, влияющие на существующие криптосистемы, практичными или нет.

      Определение угрозы

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

      При стандартной оценке гибкости модульность и абстракции в реализации программного обеспечения и сети позволяют легко переключать криптографические алгоритмы.Однако алгоритмы квантовой безопасности основаны на принципиально иных базовых математических предположениях по сравнению с существующими решениями, такими как RSA или ECC. Эти допущения добавляют четыре дополнительных ограничения к гибкости шифрования: (i) большие размеры ключа, (ii) большие выходные данные, (iii) большее время для шифрования/дешифрования (или подписи) и (iv) большее время для установления безопасного канала или проверки аутентификация. Соответственно, угроза квантовых вычислений будет включать в себя, в дополнение к стандартным проблемам гибкости криптографии, ограниченное хранилище, а также ограничения на операционные накладные расходы.Эти новые требования к криптографии может быть трудно реализовать в активах с ограниченным пространством, высокими требованиями к скорости или жестко закодированными реализациями криптографии, и в этом случае они становятся проблемами крипто-гибкости.

      Инвентаризация активов

      Конкурс NIST по замене текущего алгоритма открытого ключа вышел в финал [30]. Ожидается, что доказуемо безопасный PQC и стандарты перестанут действовать к 2024 году, поэтому любые криптографические активы, которые должны быть выведены из эксплуатации до этого времени, могут быть исключены из этой оценки рисков.Учитывая, что криптосистемы с симметричным ключом и алгоритмы хеширования требуют более простого исправления, т. е. увеличения размера ключа или хэш-выходных данных, мы не считаем, что они входят в сферу данной оценки.

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

      • Область применения: Одним из примеров криптографии с открытым ключом является TLS (ранее SSL), который используется для защиты данных при передаче в различных контекстах риска, например. HTTPS для веб-трафика, STARTTLS для электронной почты, DLTS для IoT и т. д. HeartBleed, уязвимость в OpenSSL (популярная и широко используемая реализация TLS с открытым исходным кодом), исправление которой обошлось более чем в 500 миллионов долларов [46]. Если криптография, лежащая в основе TLS, становится уязвимой из-за больших квантовых компьютеров, справедливо предположить, что без надлежащего планирования исправления затраты будут еще выше.Таким образом, мы ограничиваем наши возможности TLS.

      • Чувствительность: Как отмечалось ранее, переход на квантово-безопасную криптографию затруднен из-за потребности в дополнительных ресурсах. Например, большие размеры ключей и большие выходные данные требуют большей емкости хранилища. Эти ресурсы более доступны на веб-серверах и серверах электронной почты. Напротив, их доступность в устройствах IoT обычно ограничена. Таким образом, мы считаем, что устройства IoT и связанные с ними данные более чувствительны к переходу, и дополнительно ограничиваем наше исследование этим вариантом использования/активом.

      • Криптография. Хотя TLS использует криптографию как с открытым ключом, так и с симметричным ключом, мы в первую очередь сосредоточимся на первом.

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

      • Реализация. Мы рассматриваем три разных типа реализации:

        • Хорошо известные реализации с открытым исходным кодом, такие как OpenSSL, которые имеют существующую поддержку постквантовых алгоритмов посредством связанных проектов с открытым исходным кодом, таких как Open Quantum Safe.

        • Запатентованные реализации, поддерживающие постквант, например. Соединитель ISARA Catalyst OpenSSL.

        • Реализации, которые в настоящее время не поддерживают постквантовые алгоритмы.

      • Право собственности: Для владения мы рассматриваем два условия:

        • Устройства IoT, разработанные и обновленные предприятием,

        • Устройства IoT, разработанные и обновленные сторонним поставщиком

        • 83
        • Местоположение. В зависимости от принадлежности устройства IoT имеют разные местоположения для установления сетевых подключений и обмена данными.

          • Устройства IoT, принадлежащие организации, подключаются к локальному веб-серверу.

          • Устройства IoT, принадлежащие стороннему поставщику, подключаются к облачной среде, т.е. АМС.

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

        Оценка риска

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

        Хронология

        Временная шкала основана на трех различных факторах.

        • Z (Threat): NIST утверждает, что квантовый компьютер, способный взломать 2000-битный RSA за считанные часы, может быть построен к 2030 году с бюджетом около миллиарда долларов [6]. Кроме того, NIST рассматривает потенциальные решения для алгоритмов квантовой безопасности и должен опубликовать свои рекомендации к 2024 году [30].Исходя из этого, мы предполагаем, что если угроза реализуется через 20 с лишним лет, т. е. в два раза по сравнению с расчетным сроком NIST, риск может быть низким. Соответственно, если угроза реализуется через 10–20 лет, риск средний, через 5–10 лет – высокий, 0–5 лет – критический.

        • Y (смягчение или исправление): если актив использует реализацию TLS с существующей поддержкой квантово-безопасных алгоритмов, время, необходимое для устранения, будет меньше, если реализация TLS в настоящее время не имеет поддержки.Даже при наличии поддержки миграция может занять много времени. Переход с SHA-1 на SHA-2 занял примерно 10 лет. Blackberry потребовалось 5 лет, чтобы перейти от 3DES к AES, при этом контролируя все устройства и серверы [47]. Для оценки этого риска мы предполагаем, что:

          • Перенос корпоративных активов с квантовой поддержкой займет 5–10 лет.

          • Для миграции корпоративных активов без квантовой поддержки потребуется 11–20 лет.

          • Перенос активов третьей стороны с квантовой поддержкой займет 11–20 лет.

          • Перенос активов третьих лиц без квантовой поддержки займет более 20 лет (если вообще будет).

        • X (срок годности): потребительское устройство IoT для общих корпоративных условий может иметь срок службы от 2 до 20 лет. Например, телефоны нередко обновляются каждые 2 года. Напротив, принтеры и камеры часто могут служить более 10 лет. Таким образом, для целей этой оценки риска мы можем разделить активы, чтобы согласовать временную шкалу квантовой угрозы, как указано в таблице 4.

        Таблица 4: Оценка риска по временной шкале

        в годах

        3
        . 1 — Низкий риск . 2 — средний риск . 3—Высокий риск . 4—критический .
        x (Срок хранения) 5 10 20 20+
        y (смягчение последствий)

        7
        0-5 6-10 11 -20 200777 20+
        Z (угроза) 20+ 10-20 5-10 5-10 0-5
        3
        Сроки . 1 — Низкий риск . 2 — средний риск . 3—Высокий риск . 4—критический .
        x (Срок хранения) 5 10 20 20+
        y (смягчение последствий)

        7
        0-5 6-10 11 -20 200777 20+
        Z (угроза) 20+ 10-20 5-20 5-5 0-5
        Таблица 4:

        Оценка риска риска в течение многих лет

        3
        Хронология . 1 — Низкий риск . 2 — средний риск . 3—Высокий риск . 4—критический .
        x (Срок хранения) 5 10 20 20+
        y (смягчение последствий)

        7
        0-5 6-10 11 -20 200777 20+
        Z (угроза) 20+ 10-20 5-10 5-10 0-5
        37
        Сроки . 1 — Низкий риск . 2 — средний риск . 3—Высокий риск . 4—критический .
        x (Срок хранения) 5 10 20 20+
        y (смягчение последствий)

        7
        0-5 6-10 11 -20 20+
        Z (угроза) 20+ 10-20 5-10 0-5
        Стоимость

        Следующим шагом является оценка стоимости перехода на квантовобезопасное решение для каждого класса активов в соответствии с графиком.Точная стоимость миграции будет различаться в зависимости от организации, типа актива IoT и т. д. Однако несколько тенденций, вероятно, будут применяться повсеместно. Во-первых, стоимость миграции со временем будет снижаться, поскольку разрабатываются новые инструменты, подобные Open Quantum Safe (OQS), которые упрощают интеграцию алгоритмов квантовой безопасности. Даже существующие инструменты будут подвергаться более тщательному тестированию. По мере того, как все больше организаций будут пытаться использовать эти инструменты на практике, они будут публиковать улучшения. Напротив, системы IoT, использующие реализации TLS, которые уже предоставляют возможность использовать постквантовое или гибридное решение, будут менее затратными для миграции по сравнению с теми, которые этого не делают.Исходя из этого, в таблице 5 представлена ​​качественная оценка затрат на квантово-безопасную миграцию TLS для активов IoT.

        Тип актива (поддержка PQC) . 1 — Низкий риск . 2 — средний риск . 3—Высокий риск . 4—критический .
        Enterprise (поддержка) Medium Низкий Низкий Низкий
        Enterprise (NO-поддержка) Высокий Высокий Средний Medium
        третья сторона (Поддержка) Высокий High Medium Low Low
        третья сторона (без поддержки) Высокий Высокий Высокий Высокий
        Тип активов (поддержка для ПКК) . 1 — Низкий риск . 2 — средний риск . 3—Высокий риск . 4—критический .
        Enterprise (поддержка) Medium Низкий Низкий Низкий
        Enterprise (NO-поддержка) Высокий Высокий Средний Medium
        третья сторона (Поддержка) Высокий High Medium Low Low
        третья сторона (без поддержки) Высокий Высокий Высокий Высокий
        Тип активов (поддержка для ПКК) . 1 — Низкий риск . 2 — средний риск . 3—Высокий риск . 4—критический .
        Enterprise (поддержка) Medium Низкий Низкий Низкий
        Enterprise (NO-поддержка) Высокий Высокий Средний Medium
        третья сторона (Поддержка) Высокий High Medium Low Low
        третья сторона (без поддержки) Высокий Высокий Высокий Высокий
        Тип активов (поддержка для ПКК) . 1 — Низкий риск . 2 — средний риск . 3—Высокий риск . 4—критический .
        Enterprise (поддержка) Medium Низкий Низкий Низкий
        Enterprise (NO-поддержка) Высокий Высокий Средний Medium
        третья сторона (Поддержка) Высокий Высокий Medium Low Low
        третья сторона (NO-поддержка) Высокий Высокий Высокий Высокий

        Безопасные активы

        Мы можем использовать информацию из таблиц 4 и 5 для аппроксимации соответствующего снижения безопасности, показанного в таблице 6, со следующими пояснениями в зависимости от цвета:

        Таблица 6: Снижение безопасности

        на основе ожидаемого значения риска

        9072 90 Поддержка)

        Тип актива (поддержка PQC) . 1 — Низкий риск . 2 — средний риск . 3—Высокий риск . 4—критический .
        Enterprise (поддержка) Принимайте риск + Фаза Безопасный Безопасный Безопасный
        9072
        Enterprise (NO-поддержка) Принимайте риск + Фаза Принять риск Безопасный + поэтапный отказ  Безопасный + поэтапный отказ 
        Сторонняя сторона (поддержка)  Принять риск + поэтапный отказ  Принять риск  Безопасный + поэтапный отказ  Безопасный + поэтапный отказ  Безопасный + поэтапный отказ  Принимайте риск + фаза Accept

        Фаза

        Фаза

        Фаза

        Фаза

        Фаза

        9072 90 Поддержка)
        Тип активов (поддержка PQC) . 1 — Низкий риск . 2 — средний риск . 3—Высокий риск . 4—критический .
        Enterprise (поддержка) Принимайте риск + Фаза Безопасный Безопасный Безопасный
        9072
        Enterprise (NO-поддержка) Принимайте риск + Фаза Принять риск Безопасный + поэтапный отказ  Безопасный + поэтапный отказ 
        Сторонняя сторона (поддержка)  Принять риск + поэтапный отказ  Принять риск  Безопасный + поэтапный отказ  Безопасный + поэтапный отказ  Безопасный + поэтапный отказ  Принимайте риск + фаза Accept

        Фаза

        7

        Фаза

        Фаза

        7

        Фаза

        Фаза

        7

        .

        9072 90 Поддержка)

        Тип актива (поддержка PQC) . 1 — Низкий риск . 2 — средний риск . 3—Высокий риск . 4—критический .
        Enterprise (поддержка) Принимайте риск + Фаза Безопасный Безопасный Безопасный
        9072
        Enterprise (NO-поддержка) Принимайте риск + Фаза Принять риск Безопасный + поэтапный отказ  Безопасный + поэтапный отказ 
        Сторонняя сторона (поддержка)  Принять риск + поэтапный отказ  Принять риск  Безопасный + поэтапный отказ  Безопасный + поэтапный отказ  Безопасный + поэтапный отказ  Принимайте риск + фаза Accept

        Фаза

        Фаза

        Фаза

        Фаза

        Фаза

        9072 90 Поддержка) 9072
        Тип активов (поддержка PQC) . 1 — Низкий риск . 2 — средний риск . 3—Высокий риск . 4—критический .
        Enterprise (поддержка) Принимайте риск + Фаза Безопасный Безопасный Безопасный
        9072
        Enterprise (NO-поддержка) Принимайте риск + Фаза Принять риск Безопасный + поэтапный отказ  Безопасный + поэтапный отказ 
        Сторонняя сторона (поддержка)  Принять риск + поэтапный отказ  Принять риск  Безопасный + поэтапный отказ  Безопасный + поэтапный отказ  Безопасный + поэтапный отказ  Принимайте риск + фасоль Accept Risk

        фаза

        фаза

        фаза

        7

        • (серый) Устройства IOT без риска которые уже запланированы к поэтапному отказу в ближайшие 5 лет.Для этих устройств, независимо от владельца или реализации, затраты на переход к квантово-безопасному решению нетривиальны. Таким образом, разумно принять риск (при условии, что текущие сроки поэтапного отказа обеспечены).

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

        • (зеленый) Для корпоративных IoT-устройств без поддержки PQC вопрос усложняется. В ближайшем будущем стоимость миграции, вероятно, будет высокой. У них будет три варианта смягчения последствий (в порядке возрастания сложности):

          • Перейти на другую реализацию TLS.

          • Написать пользовательскую вилку текущей реализации.

          • Реализовать компенсирующий элемент управления, например квантовую безопасную оболочку для протокола TLS, например.г. Оболочка Golioqs для приложений Go [48].

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

          • Напротив, поскольку срок службы устройств IoT превышает 10 лет, риск неиспользования квантово-безопасной версии TLS становится выше. В то же время стоимость перехода на квантово-безопасную версию TLS снижается.Благодаря дополнительному времени у предприятия будет достаточно времени для перепроектирования своего устройства IoT для использования другой реализации TLS, а также для ее тестирования. Таким образом, может быть более рациональным обезопасить актив. В качестве альтернативы, если обновление слишком сложно, решение может заключаться в поэтапном отказе от небезопасного устройства IoT и замене его другим устройством, поддерживающим квантово-безопасную реализацию TLS.

          • (желтый) Для сторонних устройств IoT, поддерживающих PQC, защита активов требует учета нескольких факторов.Доступность квантово-безопасных альтернатив в реализации TLS снижает стоимость миграции. Однако, поскольку устройство должно быть обновлено третьей стороной, которой оно принадлежит, предприятию необходимо обеспечить смягчение последствий посредством контрактов. Некоторые поставщики могут взимать дополнительную плату за разработку и интеграцию. Если у поставщика нет предыдущего опыта работы с постквантовыми алгоритмами и ему не хватает времени, он может не выполнить адекватное тестирование или непреднамеренно добавить ошибки в код.

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

          • (красный) Для сторонних устройств IoT без поддержки PQC. Если срок годности этих устройств превышает 10 лет, их следует выводить из эксплуатации до того, как риск станет высоким или критическим.Однако, если срок годности составляет от 6 до 10 лет, риск является средним, и лучшим вариантом может быть принятие риска. Сроки потребуют больших затрат, если организация захочет снизить риск, внедрив компенсирующий элемент управления или переключившись на другого поставщика.

        Организационная дорожная карта

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

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

        Дорожная карта по снижению риска путем защиты актива потребует обновления до квантово-безопасной альтернативы. Прежде чем двигаться вперед, необходимо будет понять компромиссы между различными вариантами. Существует значительный объем существующей литературы, например. [49–51], с подробными бенчмарками. Хотя организации могут извлечь уроки из предыдущей работы, соответствующие алгоритмы постоянно обновляются. Кроме того, различные реализации приведут к различным результатам производительности.Таким образом, организациям необходимо будет инвестировать в пользовательские эталонные тесты, которые учитывают ограничения их активов, а также соответствующую операционную среду.

        В целях демонстрации мы рассмотрим моделирование связи TLS в универсальной системе с использованием виртуальной машины Linux. Мы используем виртуальную машину x86-64 Ubuntu 19.10, работающую под управлением ядра Linux 5.3.0-24-generic и компилятора GNU C (gcc) 9.2.1. В настоящее время существует три библиотеки, которые интегрируют квантово-безопасные альтернативы в соединение TLS: (i) ISARA Radiate, (ii) libpqcrypto и (iii) OQS.Здесь мы рассмотрим решения, использующие OQS, который имеет лучшую поддержку сообщества по сравнению с libpqcrypto и не является проприетарным, как в случае с ISARA Radiate.

        OQS — это консорциум партнеров и участников, возглавляемый Университетом Ватерлоо, которые написали и выпустили реализации многих алгоритмов PQC с открытым исходным кодом в библиотеках C на GitHub. PQC для OpenSSL все еще находятся в разработке и не включают все версии всех кандидатов, поэтому мы выбрали два с разными математическими основами для сравнительного анализа, чтобы проиллюстрировать компромиссы [30], показанные в таблице 7.( Примечание : Picnic-L3 и Picnic-L5 не поддерживались в OQS во время тестирования и, следовательно, не имеют соответствующих скоростей генерации ключей/сертификатов.)

        Таблица 7. Эталонный анализ

        схем цифровой подписи в OQS

        7 9 16 12 35976 41 41 7
        Алгоритм . Открытый ключ (байты) . Секретный ключ (байты) . Подпись (байты) . Ключ/Сертификат.Генерал (мс) . +
        Дилитий 2 1184 3376 2044 25
        Дилитий 3 1 472 3504 2701 35
        Дилитий 4 1760 3856 35777 3366 33
        Picnic-L1 16
        Pictic-L3 48 24 27 173-74 134 -
        Picnic-L5 64 32 32 46 292-128 46 282-128 - -
        7 9 16 12 35976 41 41 9: 9076 - 9:

        9082 4

        Алгоритм . Открытый ключ (байты) . Секретный ключ (байты) . Подпись (байты) . Ключ/Сертификат. Генерал (мс) .
        Дилитий 2 +1184 3376 2044 25
        Дилитий 3 1472 3504 2701 35
        Дилитий 4 1760 3856 35777 3366 33
        Picnic-L1 16
        Pictic-L3 48 24 27 173-74 134 -
        Picnic-L5 64 32 46 2 46 292-128 176
        Таблица 7:

        Схемы цифровой подписи в OQS

        7 9 16 12 35976 41 41 7
        Algorithm . Открытый ключ (байты) . Секретный ключ (байты) . Подпись (байты) . Ключ/Сертификат. Генерал (мс) . +
        Дилитий 2 1184 3376 2044 25
        Дилитий 3 1 472 3504 2701 35
        Дилитий 4 1760 3856 35777 3366 33
        Picnic-L1 16
        Pictic-L3 48 24 27 173-74 134 -
        Picnic-L5 64 32 32 46 292-128 46 282-128 - -
        7 9 16 12 35976 41 4177 9 292-128 - 9 282-126 - -

        9072
        Алгоритм . Открытый ключ (байты) . Секретный ключ (байты) . Подпись (байты) . Ключ/Сертификат. Генерал (мс) . 90 765
        Дилития 2 тысячи сто восемьдесят четыре 3376 2044 25
        Дилития 3 тысячи четыреста семьдесят два 3504 2701 35
        Дилития 4 1760 3856 35777 3366 33
        Picnic-L1 16
        Pictic-L3 48 24 27 173-74 134 -
        Picnic-L5 64 64 32 46 292-128 46 292-128 -

        . Две алгоритмы цифровой подписи, которые мы сравниваемым, представляют собой алгоритм на основе решетки и финалистом раунда. 3 конкурса NIST и Picnic, который основан на хэше и является альтернативой 3 раунду конкурса NIST.Разница в математической основе приводит к различным накладным расходам, что отражено в контрольной таблице. Алгоритмы на основе решетки имеют: (i) больший размер ключа, (ii) меньший размер подписи и (iii) более высокую скорость генерации ключа/сертификата. Подобные компромиссы были замечены в тестах, выполненных Amazon для гибридной криптографии с открытым ключом [31].

        В зависимости от ресурсов актива IoT, а также эксплуатационных ограничений организация выберет наилучшую возможную альтернативу.Многие активы IoT могут иметь ограниченное хранилище. Однако размеры ключа для Dilithium существенно не отличаются от RSA (или Diffie-Hellman), который обычно составляет не менее 1024 бит. При этом подпись для RSA того же порядка, что и ключ. Подписи для Dilithium также по размеру аналогичны их ключам. Picnic, хотя и имеет намного меньший размер ключа, имеет размер подписи, который по крайней мере на один порядок больше, чем у RSA. Таким образом, если актив в настоящее время использует RSA, Dilithium может стать подходящей заменой.Организационная дорожная карта должна гарантировать, что актив может переключать алгоритмы, например. через обновление ПО. Тем не менее, организационная дорожная карта не должна предусматривать обновление оборудования, поскольку размеры сигнатур, а также размеры ключей аналогичны размерам, используемым в настоящее время для RSA.

        Заключение

        Нехватка криптографической гибкости — это риск, который может помешать организациям реагировать на меняющиеся нормативные и технологические ландшафты. В то же время с этим риском трудно справиться из-за отсутствия предыдущих инцидентов и данных о воздействии.Это проявляется на примерах из реальной жизни, которые показывают, что переход может быть как дорогостоящим, так и длительным. Например, переход от SHA-1 к SHA-2 занял более 10 лет. Таким образом, необходим систематический обзор угроз, влияющих на криптографию, чтобы обеспечить адекватную гибкость, а также доступные варианты смягчения последствий для устаревших и сторонних систем.

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

        Заявление о конфликте интересов . Авторы этих статей являются штатными сотрудниками Comcast Cable.Мнения, выраженные в этой статье, принадлежат отдельным авторам и не отражают официальную позицию Comcast Cable.

        Ссылки

        1

        Рэтклифф

        РА.

        Заблуждения интеллекта: Enigma, Ultra и конец безопасных шифров

        .

        Кембридж

        :

        Издательство Кембриджского университета

        ,

        2006

        .2

        Кан

        Д.

        Захват загадки: Гонка за нарушение правил немецких подводных лодок, 1939–19043 .

        Аннаполис, Мэриленд, США

        : Naval Institute Press,

        2001

        .3

        Wesolkowski

        S.

        Изобретение загадки и как полировка разгадала ее перед началом Второй мировой войны. В:

        Конференция IEEE по истории телекоммуникаций (Канада)

        . University of Waterloo,

        2001

        .4

        Fluhrer

        S

        ,

        Mantin

        I

        ,

        Shamir

        A.

        Слабые стороны алгоритма планирования.In:

        Международный семинар по избранным областям криптографии

        .

        Springer

        ,

        2001

        ,

        1

        24

        .5

        Wang

        X

        ,

        Yu

        md0

        H. В:

        Ежегодная международная конференция по теории и приложениям криптографических методов

        .

        Springer

        ,

        2005

        ,

        19

        -

        35

        .6

        CHEN

        CHEN

        L

        ,

        Jordan

        S

        ,

        LIU

        Y-K

        et al.Доклад о постквантовой криптографии. Технический отчет, Национальный институт стандартов и технологий,

        2016

        .7

        Комментарии Nist о криптоаналитических атаках на sha-1

        . Технический отчет. Национальный институт стандартов и технологий,

        2006

        .9

        Сирохи

        P

        ,

        Агарвал

        A

        ,

        Тьяги

        S.

        Всестороннее исследование протоколов безопасности SSL/TL. In:

        2016 2-я Международная конференция по вычислительным технологиям следующего поколения

        .

        IEEE

        ,

        2016

        ,

        893

        ,

        893

        -

        9000

        .10

        Möller

        Möller

        B

        ,

        Duong

        T

        ,

        Kotowicz

        K.

        Этот пудрь укусы: эксплуатация SSL 3.0 Foomback

        .

        Совет по безопасности

        ,

        2014

        .13

        Хаусли

        R

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

        2015

        . https://инструменты.ietf.org/html/rfc7696 (19 мая 2021 г., дата последнего обращения).14

        Shor

        P.

        Полиномиальные алгоритмы факторизации простых чисел и дискретного логарифмирования на квантовом компьютере

        .

        SIAM J Comput

        1997

        ;

        26

        :

        1484

        :

        1484

        -

        1509

        -

        1509

        . 150002 1509

        .15

        Brassard

        G

        ,

        Hoyer

        P

        ,

        TAPP

        A.

        Квантовый криптанализ хеш-функций без когтей

        .

        Новости ACM Sigact

        1997

        ;

        28

        :

        14

        19

        .18

        Баркер

        Э

        ,

        Рогинский

        А

        . Переход на использование криптографических алгоритмов и длин ключей. Технический отчет. Национальный институт стандартов и технологий,

        2019

        .20

        Abelson

        H

        ,

        Anderson

        R

        ,

        Bellovin

        SM 900al.

        Ключи под половицами: обеспечение безопасности путем требования доступа правительства ко всем данным и коммуникациям

        .

        Дж Cybersecur

        2015

        ;

        1

        :

        69

        79

        .21

        Denning

        DE

        ,

        Branstad

        DK.

        Таксономия для систем условного депонирования ключей

        .

        Общинный ACM

        1996

        ;

        39

        :

        34

        -

        40

        .23

        abelson

        H

        ,

        Anderson

        R

        ,

        Bellovin

        SM

        et al.

        Риски, связанные с восстановлением ключа, депонированием ключа и доверенным сторонним шифрованием

        .

        World Wide Web J

        1997

        ;

        2

        :

        241

        257

        .24

        Майкл Фрумкин

        A.

        Метафора – это ключ: криптография, клиппер и конституция

        .

        Правовая редакция Университета Пенсильвании

        1995

        ;

        143

        :

        709

        .25

        Bellovin

        SM

        ,

        Blaze

        M

        ,

        Boneh

        D et al. Анализ протокола CLEAR в соответствии с требованиями национальных академий.Технический отчет CUCS-003-18. Департамент компьютерных наук Колумбийского университета, 10 мая

        2018

        .29

        Чен

        L

        ,

        Чен

        L

        ,

        Джордан

        S 900al.

        Отчет о постквантовой криптографии

        , Vol.

        12

        .

        US Министерство торговли, Национальный институт стандартов и технологий

        ,

        2016

        .30

        ALAGIC

        G

        ,

        alperin-Sheriff

        J

        ,

        APON

        D

        et al.Отчет о состоянии второго раунда процесса стандартизации постквантовой криптографии NIST. Технический отчет. Министерство торговли США, Nist,

        20202,

        .32

        20202 Stoneburner

        G

        ,

        GOGUEN

        G

        ,

        Goguen

        A

        ,

        Ferry

        A.

        Руководство по управлению рисками для информационных технологических систем

        .

        NIST SP

        2002

        ;

        800

        :

        800

        30

        .33

        Klipper

        S.

        Iso/iec 27005. В:

        Управление рисками информационной безопасности

        .

        Гейдельберг, Германия

        :

        Springer

        ,

        2015

        ,

        59 2015

        ,

        59

        -

        96

        .34

        Alberts

        CJ

        ,

        Rehrens

        SG

        ,

        Pethia

        Rd et al

        . Критическая для эксплуатации система оценки угроз, активов и уязвимостей. Технический отчет. CARNEGIE-MELLON UNIV PITTSBURGH PA SOFTWARE ENGINEERING INST,

        1999

        .35

        Седжвик

        А

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

        2014

        .36

        Моска

        M

        ,

        Малхолланд

        J

        . Методология квантовой оценки риска. Технический отчет. Global Risk Institute,

        2017

        .37

        Mosca

        M.

        Кибербезопасность в эпоху квантовых компьютеров: будем ли мы готовы?

        IEEE Secur Priv

        2015

        ;

        16

        :

        38

        41

        .38

        Национальные академии наук, техники и медицины

        .

        Квантовые вычисления: прогресс и перспективы

        .

        Вашингтон, округ Колумбия

        : The National Academys Press,

        2019

        .39

        Williams

        BR.

        PCI DSS 3.1: стандарт, убивший SSL

        .

        USA

        :

        Syngress

        ,

        2015

        .40

        Saper

        N.

        Международное регулирование криптографии и глобальная информационная экономика

        .

        Nw J Tech Intell Prop

        2012

        ;

        11

        :

        673

        .41

        Кшетри

        Н.

        Экономика киберстрахования

        .

        IEEE IT Prof

        2018

        ;

        20

        :

        9

        14

        .42

        Mosca

        M

        ,

        Piani

        M.

        Quantum.

        TORONTO

        :

        Глобальный рискованный институт риска

        ,

        2019

        .44

        Bennett

        R

        ,

        Callahan

        C

        ,

        Jones

        S

        et al.

        Как жить в мире после расплавления и призраков

        .

        Коммуна ACM

        2018

        ;

        61

        :

        40

        44

        .45

        Коммерческий набор алгоритмов национальной безопасности

        .

        2015

        .46

        Маколей

        Т

        . Комментарии в ответ на черновик 1.1 структуры кибербезопасности NIST и черновик 1.1 дорожной карты NIST по улучшению кибербезопасности критической инфраструктуры. Технический отчет. Национальный институт стандартов и технологий,

        2018

        .49

        Фарахманд

        Ф

        ,

        Данг

        В.Б.

        ,

        Анджейчак

        М

        и др. Внедрение и тестирование семи механизмов инкапсуляции ключей на основе решетки 2 раунда с использованием программного и аппаратного подхода к разработке кода. In:

        Вторая конференция NIST по стандартизации PQC

        .

        Национальный институт стандартов и технологий

        ,

        2019

        .50

        Данг

        VB

        ,

        Фарахманд

        F

        ,

        Анджейчак

        3

        Внедрение и тестирование трех алгоритмов постквантовой криптографии на основе решетки с использованием программного и аппаратного кода. В:

        2019 Международная конференция по программируемым пользователем технологиям (ICFPT)

        .

        IEEE

        ,

        2019

        ,

        206

        14

        .51

        Гай

        K

        . Проблемы и преимущества внедрения и тестирования постквантовой криптографии в аппаратном обеспечении. В: Материалы симпозиума Великих озер 2018 г. по СБИС .

        2018

        ,

        359

        64

        .

        © Автор(ы), 2021. Опубликовано Oxford University Press.

        Это статья в открытом доступе, распространяемая в соответствии с лицензией Creative Commons Attribution License (http://creativecommons.org/licenses/by/4.0/), которая разрешает неограниченное повторное использование, распространение и воспроизведение на любом носителе при условии, что оригинал работа цитируется правильно. .
        Обновлено: 29.01.2022 — 02:12

        Добавить комментарий

        Ваш адрес email не будет опубликован. Обязательные поля помечены *