Кивино гнездо: Закономерные случайности Берд Киви
Кивино гнездо: Закономерные случайности
Берд Киви
Опубликовано 29 августа 2011 года
Как известно, генераторы случайных чисел, или RNG (от Random Number Generator), обеспечивают работу криптографии. Иначе говоря, играют важнейшую роль в безопасности коммуникаций и защите информации, хранимой в компьютерных устройствах.
Однако детерминированная природа цифрового компьютера такова, что в нём, с технической точки зрения, довольно сложно реализовать хаотический процесс для генерации подлинно случайных чисел. Поэтому и приходится повсеместно применять так называемые PRNG, то есть алгоритмы генерации псевдослучайных чисел, лишь похожих на случайные в той или иной степени. А всякая, даже малейшая, предсказуемость ключей в криптографии – это заведомая слабость, чреватая компрометацией.
Конечно же, разработчиками постоянно предпринимаются попытки исправить эту неприятную ситуацию. Одна из наиболее интересных за последнее время конструкций для «генератора случайностей» была представлена в августе этого года корпорацией Intel – на конференции Hot Chips 23, проходившей в Стэнфордском университете, США.
Инженерам исследовательского центра Intel Circuit Research Lab в г. Хиллсбро, штат Орегон, удалось-таки сконструировать внутри микросхемы настоящий DRNG, или Digital RNG – чисто цифровой (без аналоговых компонентов) генератор случайных чисел, используя исключительно производственные процессы КМОП-технологии.
Чтобы стало понятнее, насколько долгим и непростым был путь к этому успеху, имеет смысл хотя бы вкратце вспомнить предысторию данной разработки.
Первая попытка Intel внедрить в обычные компьютеры генератор подлинно случайных чисел была предпринята в 1999 году, когда появился существенно новый компонент чипсета Firmware Hub. Генератором случайных чисел в этом чипе являлась компактная аналоговая конструкция, работавшая на основе теплового шума, который имеется во всех резисторах электрических схем. Этот хаотический шум усиливался, а формируемый из него дрожащий сигнал изменял период цикла в относительно медленно тикающих часах.
Для каждого из тактов этих беспорядочно тикающих медленных часов схема чипа брала выход от вторых, быстро тикающих часов, которые регулярно и поочередно выдавали два бинарных значения — 0 и 1. В результате беспорядочной выборки значений с этого выхода и получалась случайная последовательность из нулей и единиц генератора.
Один из главных минусов этой схемы заключался в том, что аналоговая конструкция, необходимая для усиления теплового шума, потребляла немало энергии. Хуже того, из-за своих конструктивных особенностей данная схема работала постоянно – вне зависимости от того, нужны ли были для текущей работы компьютера случайные числа или же нет.
Другой существенный минус аналоговых компонентов внутри чипа – это серьёзные проблемы в тех ситуациях, когда приходит время менять производственные технологии, применяемые для изготовления процессоров.
Производственные линии для выпуска интегральных микросхем каждые несколько лет приходится обновлять из-за перехода к более мелким масштабам упаковки транзисторов. Для цифровых схем КМОП-технологии этот переход осуществляется довольно просто, а вот для каждого нового поколения аналоговых схем всё оказывается гораздо сложнее.
Аналоговые схемы требуют дополнительной конструкторской доработки, чтобы обеспечивать нужное соотношение «сигнал-шум». По мере того как происходит движение к наиболее передовым технологиям миниатюризации схем, напряжение питания в этих схемах стабильно понижается.
Это снижение напряжения попутно понижает мощность сигнала – без перемен в шуме устройства. Иначе говоря, понижается и уровень отношения сигнала к шуму, а значит, каждая модернизация неизбежно влечёт за собой тщательную переоценку параметров и комплекс тестирований для RNG. Ясно, что это чрезвычайно неудобно и обременительно.
Принимая во внимание все эти проблемы, в 2008 году конструкторы Intel всерьёз озаботились задачей по созданию такого генератора случайных чисел, который использовал бы в своей работе исключительно цифровые элементы схемы. Поначалу задачей полного избавления генератора случайных битов от аналоговых схем занимались исследователи Circuit Research Lab в Хиллсбро, а затем к ним подключились индийские коллеги из исследовательского центра Bangalore Design Lab.
Остроумное решение, которое в итоге было найдено, с полным правом можно называть парадоксальным. С формальной точки зрения, данная конструкция нарушает важнейшее правило в конструировании цифровых схем, согласно которому схема должна находиться в хорошо определённом состоянии, давая на выходе только логические 0 и 1.
Элемент цифровой схемы может, конечно, пребывать краткие периоды времени в промежуточном состоянии переключения между двумя этими базовыми возможностями. Однако он никогда не должен оставаться балансирующим и неопределённым в том, каким путём следует двигаться дальше. Такого рода неопределённостей всегда стараются избегать, поскольку они вносят задержки в работу схемы и даже способны порождать сбои в работе системы.
Однако в конструкции нового генератора случайных чисел такое тяготение к балансированию стало не дефектом, а особенностью схемы. Можно сказать, что данная схема делает своей главной фишкой так называемый феномен «метастабильности» – обычно крайне нежелательный эффект при конструировании логических схем, использующих более одной тактовой частоты. Цифровой же генератор, созданный командой Intel, устроен таким образом, что здесь результатом метастабильности является в буквальном смысле каждый бит на выходе схемы.
Обычно выход с цифрового устройства принято брать в тот момент, когда он устоялся на определённом значении, будь это ноль или единица. А метастабильность – это то, что происходит, когда показание напряжения берётся во время перехода, так что бит пойман где-то в промежутке между нулём и единицей. В конечном счёте такой бит непременно перейдёт в одно из этих двух базовых состояний, однако нет способа предсказать, в каком именно он окажется.
Исследователи Intel умышленно стали снимать сигнал во время именно таких переходов, а кроме того, они усиливают эту случайность ещё больше, с помощью петли обратной связи настраивая метастабильность таким образом, чтобы бит падал в состояние 1 или 0 с примерно равной вероятностью. Превращая, по сути дела, данный процесс в электронный эквивалент подбрасывания монеты.
Конструктивно весь этот трюк реализован на основе пары инверторов (элементов схемы, у которых выходной сигнал противоположен сигналу на входе), циклически подсоединённых друг к другу, и двух довольно странно подключённых к инверторам транзисторов. Из-за этой «нелогичной» схемы подключения данная система в каждом такте работы на кратчайшее время подвисает между двумя своими базовыми состояниями — 0 и 1.
В идеальном мире такое неопределённое состояние системы теоретически могло бы длиться вечность. Однако в мире реальном даже самый минимальный всплеск теплового шума – какая-нибудь случайная атомная вибрация – внутри схемы обязательно подтолкнёт это симметричное, но крайне нестабильное состояние в одно или другое из стабильных состояний системы.
Иными словами, и здесь исход состояния для этой неопределённой ситуации в цифровой схеме определяется физически случайными свойствами теплового шума. По сути всё, что для этого потребовалось, – это подсоединить два дополнительных транзистора к часам, которые регулярно включают и выключают пару инверторов. Всякий раз, когда тактовые часы тикают, эта схема порождает один случайный бит. А коль скоро в современном микропроцессоре часы тикают с частотой порядка 3 гигагерц, генератор способен выдавать 3 миллиарда случайных битов в секунду.
Теоретически отсюда можно сделать вывод, что процессор имеет возможность просто снимать выходные биты от этой зашиты в него на аппаратном уровне схемы RNG, сразу подавать их в криптографическое приложение и считать свою задачу выполненной. В реальности, однако, эти биты случайны не до такой высокой степени, какую хотелось бы иметь в надёжной криптографии. Грубый поток битов, выходящих из базовой схемы – независимо от того, насколько она хороша, – всё равно может иметь нежелательные статистические сдвиги и корреляции.
А цель конструкторов Intel ставилась так, чтобы построить систему, которая генерирует не просто чисто случайные, а «высококачественные случайные числа», совместимые с общепринятыми криптографическими стандартами. В первую очередь, с критериями NIST SP800-90 Национального института стандартов и технологий США, соответствие которым гарантирует выдачу соответствующего сертификата, а значит, и повсеместное признание схемы в качестве надёжной криптотехнологии.
Чтобы гарантировать высокое качество случайных чисел, порождаемых новым DRNG, в Intel разработали специальный трёхэтапный процесс генерации. Помимо базовой аппаратной схемы (первый этап), данный процесс также предусматривает «кондиционер» (второй этап) и псевдослучайный генератор чисел (заключительный третий этап). В совокупности же вся эта конструкция получила кодовое наименование Bull Mountain.
Не вдаваясь в глубокие технические подробности, можно описать работу двух дополнительных этапов следующим образом.
С выхода аппаратного генератора на вход кондиционера случайные числа подаются пакетами по 512 битов. Этот пакет разбивается на два 256-битных числа, а суть работы кондиционера сводится к тому, что с помощью достаточно сложных, но быстрых математических криптопреобразований он доводит пару данных чисел до кондиций 256-битной последовательности, максимально близкой к статистически идеальному состоянию чисто случайного числа. Можно говорить, что суть этапа кондиционирования – это как бы концентрация всех тех шумовых случайностей, которые способна предоставить двухинверторная аппаратная схема.
Третий этап Bull Mountain объясняется тем, что, хотя новая аппаратная схема генерирует случайные числа из теплового шума намного быстрее, чем её предшественники, она всё ещё не настолько шустра, чтобы отвечать любым нынешним запросам к защищённым компьютерным коммуникациям. Поэтому, дабы позволить Bull Mountain выдавать случайные числа столь же быстро, как программные генераторы псевдослучайных последовательностей (но сохраняя при этом высокое качество подлинно случайных чисел), конструкторы добавили в схему ещё один уровень – PRNG с очень высокой скоростью «засева».
Этот алгоритм использует 256-битные случайные числа от кондиционера, чтобы засеивать ими криптографически надёжный (на основе стандарта AES) генератор псевдослучайных чисел, порождающий последовательности 128-битных чисел. Из одного 256-битного зерна этот псевдослучайный генератор способен выдавать огромное множество псевдослучайных чисел. Понятно, что, когда такие зёрна поступают со скоростью порядка 3 гигагерц, производительность генератора можно сделать очень большой.
В новых микропроцессорах Intel генератор Bull Mountain будет доступен программным приложениям через инструкцию RdRand, которая уже была представлена программистам-разработчикам несколько месяцев назад. Первыми процессорами, которые обеспечат работу RdRand, станут чипы семейства Ivy Bridge.
Эти 22-нанометровые микропроцессоры, как ожидается, должны быть официально представлены в сентябре в рамках конференции разработчиков Intel Developer Forum. Согласно другой, пока неофициальной информации, в Intel намерены объявить о рыночных поставках новых чипов Ivy Bridge в начале 2012 года, примерно в дни январской ярмарки бытовой электроники Consumer Electronics Show.
К оглавлению
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
Кивино гнездо: Непроизносимо Берд Киви
Кивино гнездо: Непроизносимо Берд Киви Опубликовано 27 июля 2010 года Каждый год, когда дело доходит до летней хакерской конференции Black Hat в Лас-Вегасе, одна из самых волнующих тем — это какие из докладов оказались сняты на этот раз. Ибо так уж устроен
Кивино гнездо: Что-то происходит... Киви Берд
Кивино гнездо: Что-то происходит... Киви Берд Опубликовано 22 августа 2011 годаПримерно через месяц, с 30 сентября по 2 октября 2011, в городе Орландо (штат Флорида, США) будет проходить в высшей степени неординарное мероприятие под названием 100 Year Starship Study Public Symposium («Общественный
Кивино гнездо: Зелёный и тёплый БЕРД КИВИ
Кивино гнездо: Зелёный и тёплый БЕРД КИВИ В то время как физики многих стран уже который год и не слишком успешно бьются над тем, чтобы построить эффективный квантовый компьютер при низких, криогенного уровня температурах, другие исследователи выбрали существенно иной
Кивино гнездо: О чём скандал? Берд Киви
Кивино гнездо: О чём скандал? Берд Киви Начиная с первого мая сего года в Китае вступили в силу интересные правила, обязывающие поставщиков компьютерно-сетевого обеспечения предоставлять властям всю информацию об имеющихся в их продуктах технологиях
Кивино гнездо: Имитация или подлинник БЕРД КИВИ
Кивино гнездо: Имитация или подлинник БЕРД КИВИ Математические методы анализа, мощно усиленные современными компьютерными технологиями, ныне всё чаще и чаще используются при работе с произведениями искусства. Например, для восстановления давно утраченных фрагментов в
Кивино гнездо: Подбит на взлёте БЕРД КИВИ
Кивино гнездо: Подбит на взлёте БЕРД КИВИ Группа известных израильских криптографов (Orr Dunkelman, Nathan Keller, Adi Shamir) опубликовала в Сети препринт [iacr.org] исследовательской статьи, демонстрирующей, что ими взломан шифр KASUMI. Этот важный криптоалгоритм также известен под названием
Кивино гнездо: Сюжет из «Плейбоя» БЕРД КИВИ
Кивино гнездо: Сюжет из «Плейбоя» БЕРД КИВИ Все знают, чем славится самый известный журнал для мужчин. Но не все, возможно, в курсе, что если из «Плейбоя» полностью убрать его примечательные, спору нет, картинки, то и после этого он остается весьма интересным журналом. То
Кивино гнездо: Сеть на колёсах Берд Киви
Кивино гнездо: Сеть на колёсах Берд Киви Компания Ford Motor в этом году выпустит на рынок свои первые машины со встроенной беспроводной сетью WiFi — в качестве элемента фирменной технологии Sync. И в связи с этим обещает, что попутно автомобили станут оснащаться существенно
Кивино гнездо: Кто, где, когда Киви Берд
Кивино гнездо: Кто, где, когда Киви Берд Опубликовано 19 июля 2011 года На проходившей недавно в США конференции MobiSys 2011 (Девятая международная конференция по мобильным системам, приложениям и сервисам, 28 июня — 1 июля 2011, Вашингтон) несложно было
Кивино гнездо: О «взломе» Skype Берд Киви
Кивино гнездо: О «взломе» Skype Берд Киви Опубликовано 14 июля 2010 года Несколько последних дней по интернету гуляет новость о раскрытии исходных кодов программ, защищающих популярную систему IP-телефонии Skype. При этом, как оно часто бывает с темами
Кивино гнездо: Фактор Мэннинга Берд Киви
Кивино гнездо: Фактор Мэннинга Берд Киви Опубликовано 15 июня 2010 года На первый взгляд, вся эта история походила на откровенную газетную утку в духе жёлтой прессы. Будто бы некий молодой американский солдатик, неся службу где-то на одной из военных
Кивино гнездо: Архив-Шнархив Берд Киви
Кивино гнездо: Архив-Шнархив Берд Киви Опубликовано 18 июня 2010 года В нескольких популярных блогах ученых-физиков последние недели живо обсуждалась новая и весьма занятная онлайновая забава учёных под названием snarXiv.org. Внешне этот сайт построен
Кивино гнездо: Ещё раз про Stuxnet Берд Киви
Кивино гнездо: Ещё раз про Stuxnet Берд Киви Опубликовано 27 января 2011 года За несколько первых недель 2011 года череда независимых друг от друга событий сложилась таким образом, что общая картина вокруг загадочного компьютерного червя Stuxnet стала
Кивино гнездо: Ещё раз про Stuxnet (окончание) Берд Киви
Кивино гнездо: Ещё раз про Stuxnet (окончание) Берд Киви Опубликовано 28 января 2011 года Согласно перекрёстным свидетельствам целого ряда источников (осведомлённых специалистов в области компьютерной безопасности, экспертов по ядерному обогащению и
Кивино гнездо: Псевдоархеология Берд Киви
Кивино гнездо: Псевдоархеология Берд Киви Опубликовано 26 мая 2010 года В одном из недавних выпусков газеты The New York Times была опубликована довольно большая статья об интересном и весьма плодотворном приложении современных технологий лазерного
Кивино гнездо: За что боролись БЕРД КИВИ
Кивино гнездо: За что боролись БЕРД КИВИ В середине февраля этого года на сайте полиции г. Дубаи, Объединенные Арабские Эмираты, в его англоязычном разделе появилась примерно такая вот информация об объявленных в международный розыск преступниках — с их фотографиями и