id: Гость   вход   регистрация
текущее время 00:48 29/03/2024
Владелец: unknown (создано 28/01/2013 13:30), редакция от 26/04/2014 19:46 (автор: unknown) Печать
Категории: криптография, случайные числа, хард
http://www.pgpru.com/Новости/2013/HAVEGEАльтернативныйСпособПолученияКриптостойкойЭнтропииИзПроцессоров
создать
просмотр
редакции
ссылки

28.01 // HAVEGE: альтернативный способ получения криптостойкой энтропии из процессоров


В середине января 2013 года вышла очередная реструктурированная стабильная версия 1.7 генератора энтропии haveged. Это демон, который эффективно "вычисляет" энтропию на основе нестабильности работы практически любого процессора, в котором не требуется наличия никакого встроенного аппаратного генератора случайных чисел. Результат может подмешиваться в Linux устройство /dev/random. Возможно также использование в Windows и других ОС.


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


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


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


Но, как оказалось, чисто цифровые устройства, при работе в определённом режиме, также способны вырабатывать энтропию. При пропускании сигналов через множество одинаковых цифровых устройств, можно добиться режима осцилляции, который будет вырождаться в процесс с элементами хаотичности (джиттер-эффект), что можно использовать для извлечения энтропии. Любительский проект такого уровня известен как Whirlygig, на схожем принципе работает генератор случайных чисел, встроенный в процессоры Intel, начиная с Ivy Bridge. Аналогичные схемы из-за компактности удобно использовать в миниатюрных устройствах, наподобие смарт-карт.


Но что, если у пользователя нет встроенного генератора, он не хочет или не может подключать внешний и не доверяет готовым аппаратным решениям, которые нельзя проверить? Здесь как раз есть возможность компромиссных решений на основе HAVEGE-алгоритмов (HArdware Volatile Entropy Gathering and Expansion), с упоминания которых начался этот небольшой обзор. Первоначально этот алгоритм был открыт в государственном институте исследований в области информатики и автоматики INRIA во Франции исследователями N. Sendrier и A. Seznec в 2002 году.


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


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


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


Наиболее подробно сравнительный анализ различных генераторов, их сравнение с HAVEGE и его подробное описание представлены в дипломной работе filePseudorandom Number Generators for Cryptographic Applications и диссертации fileQuantifying Studies of (Pseudo) Random Number Generation for Cryptography.


Пассивный алгоритм измерений скорости выполнения операций называется HAVEG. В начале 2000-х годов на десктопных процессорах того времени исследователям удалось генерировать поток энтропии 8-16 кбит/сек. Активный алгоритм генерации энтропии HAVEGE на тех же процессорах позволял собирать поток энтропии до 280 Мбит/сек.


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


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


Но у алгоритма есть и существенные недостатки.


  1. Плохая теоретическая обоснованность качества получаемой энтропии. На практике она очень хорошо проходит все статтесты, но нельзя строго доказать, сколько в ней "истинной", а сколько "псевдослучайной", возможно даже предсказуемой и некриптостойкой энтропии. Из-за отсутствия знаний о полном устройстве процессора нельзя построить точную модель получения энтропии, можно лишь ввести нижний порог и опираться на избыточность. Иногда, в отличие от "псевдослучайного" (Pseudo Random Number Generator — PRNG) и "истинно случайного" (True Random Number Generator — TRNG), авторы и другие исследователи называют генератор на основе этого алгоритма "труднопредсказуемым" (Unpredictable Random Number Generator — URNG).
  2. Даже по экспериментальным данным оказалось, что разные процессоры дают разный уровень энтропии. С одной стороны, по мере роста сложности процессоров операции становятся в нём всё более хаотичными по временным характеристикам. С другой стороны, производители вносят оптимизацию с выравниванием отдельных операций в целях поддержки алгоритмов реального времени. В этом случае наблюдаются линейные корреляции временых интервалов, но и при этом остаётся достаточно материала для сбора энтропии. Для переносимости алгоритм желательно тестировать на каждом процессоре. Если же максимальная производительность не важна, то разработчики рекомендуют использовать минимальную производительность по умолчанию, приемлемую для всех типов процессоров.
  3. "Войны компиляторов" приводят к тому, что исходные коды для выполнения команд непосредственной работы с процессором могут быть скомпилированы не так, как задумывалось, из-за навязываемой компилятором оптимизации. Это может привести к фатальной ошибке и требует тестирования сборки после каждого обновления компилятора.
  4. Алгоритм не может безопасно работать на виртуальной машине. Некоторые виртуальные машины выдают округлённые, предсказуемые или занулённые значения процессорных таймеров.
  5. Теоретически возможно появление процессоров со случайными сбоями или преднамеренными "закладками" в процессорных таймерах, которые будут выдавать не слишком точные значения, хотя это и маловероятно, т.к. может привести к нарушению функциональности.

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


Старая версия от создателей находится по адресу http://www.irisa.fr/caps/projects/hipsor/, однако их проект нацеливался на включение в ядро и требовал сравнительно сложной процедуры сборки модуля. Актуальная версия от продолжателей работает как пользовательский демон или системный процесс и не требует никаких модификаций системы. Готовая версия пакета есть в Debian, начиная со squeeze-backports и будет включена в последующие релизы в стандартную поставку.

После установки пакета, он прописывает в системе все нужные стартовые скрипты и запускает процесс накачки устройства /dev/random дополнительной энтропией по алгоритму HAVEGE. Наблюдать за этим процессом можно посредством команды watch cat /proc/sys/kernel/random/entropy_avail. Если в обычном случае количество энтропии быстро расходуется и держится на низком уровне, то после старта демона haveged наблюдается непрерывный процесс подкачки до максимума (по умолчанию примерно до 4096), затем чуть более медленное расходование с падением до 1024 и очередной цикл быстрой подкачки. Посмотреть список потребителей энтропии в системе можно командой fuser -v /dev/{,u}random.


Аналогичные готовые пакеты есть и для других дистрибутивов. Рекомендуется брать версию именно из своего дистрибутива, т.к. она должна быть протестирована на совместимость с компилятором. В большинстве случаев изменения параметров конфигурации не требуется, и лучше использовать наиболее консервативные установки по умолчанию. Потребление ресурсов процессора при этом абсолютно незаметно — по крайней мере, если использовать этот демон только для накачки пула /dev/random.


Известный проект OpenVPN использует библиотеку PolarSSL, в которой реализован алгоритм HAVEGE, однако, из-за проблем на виртуальных хостингах в нём может быть использовано смешанное решение из многих RNG-алгоритмов. Одним из примеров такого решения стал проект CSPRNG, который смешивает энтропию от множества разных алгоритмов, включая HAVEGE и встроенный генератор Intel. Этот проект развивается в составе Archlinux.


Несмотря на появление встроенного аппаратного генератора Intel, проекты на основе сбора энтропии обычных процессоров продолжают развиваться. Хотя изначальные работы исследователей были в значительной части свёрнуты в середине 2000-х годов, их последователи изучают новые версии HAVEGE-алгоритмов. В частности, в 2009 году на конференции по параллельным вычислениям и прикладной математике были представлены возможности параллелизации HAVEGE на современных процессорах для повышения количества и качества вырабатываемой энтропии. Другой алгоритм URNG был создан в 2012 году на основе публикации Unpredictable Random Number Generator Based on Hardware Performance Counters.


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


Источник: haveged – A simple entropy daemon


 
На страницу: 1, 2, 3, 4 След.
Комментарии [скрыть комментарии/форму]
— Славянин (01/02/2013 01:24)   <#>
Псевдокод, все теоретические выкладки, часть экспериментальных исследований у вас на руках.

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

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

Бесплатного Open Source не существует — это как бесплатный сыр в мышеловке, ибо совокупная стоимость владения(OPEX+CAPEX) в конечном итоге оказывается выше чем у коммерческого ПО.
Определенные преимущества у Open Source конечно же есть, вот только это отнюдь не стоимость :)

HAVEGE на слуху, было несколько более-менее авторитетных исследований, применялся то там, то тут. Потому вполне подходит для использования в том ПО, которое создается для продаж за пределами РФ. И нет никакого смысл заказывать по нему дополнительные исследования — вложения просто не окупятся.
— unknown (01/02/2013 10:10, исправлен 01/02/2013 10:11)   профиль/связь   <#>
комментариев: 9796   документов: 488   редакций: 5664
вполне подходит для использования в том ПО, которое создается для продаж за пределами РФ. И нет никакого смысл заказывать по нему дополнительные исследования — вложения просто не окупятся.

По началу его сильно раскритиковали не последние криптографы, но постепенно согласились с тем, что авторы имели основание ввести третий класс криптостойких генераторов: URNG, помимо уже известных PRNG и TRNG.


Бесплатного Open Source не существует — это как бесплатный сыр в мышеловке, ибо совокупная стоимость владения(OPEX+CAPEX) в конечном итоге оказывается выше чем у коммерческого ПО.
Определенные преимущества у Open Source конечно же есть, вот только это отнюдь не стоимость :)

Ну пока копирайтная модель ведения бизнеса, построенная на феодализации интеллектуальной собственности не навернулась окончательно, то да. Дело не в идеологическом неприятии этого подхода, он может сам дойти до кризиса, а для Open Source — кризисом меньше, кризисом больше, в той или иной форме он всё равно выживет и возродится.


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

— Славянин (01/02/2013 21:09)   <#>
Т.е. копирасты виноваты ещё и в том, что совокупная стоимость владения решениями на базе Open Source оказывается выше, чем в случае таких же решений с коммерческим ПО?
И потому в сфере софта надо упразднить копирастов, мол пусть все используют Open Source решения. Увеличение совокупной стоимости владения отразится на ценообразовании товаров и услуг для конечного потребителя. Тогда фактически разговор сводится к тому, чтобы обложить всех и вся скрытым налогом во имя благой цели — расширения сфер применимости Open Source решений? Напоминает некое подобие технофашизма :)
Мол наплевать, что качество Open Source решений зачастую оставляет желать лучшего, что они обходятся для потребителей дороже — всё равно давайте их везде пропихивать всеми правдами и неправдами. А обоснованием для этого — простое авось, что через некоторое время это приведет к переходу количества в качество :)
Увеличение налогового бремени, скрытого или явного, приводит к ухудшению уровня жизни. В итоге, больший процент населения оказывается в социально неблагополучных слоях. Это автоматом приводит к росту числа преступлений против личностей и имущества.
У любого общества играющего с идеями демократии и либерализма есть некий пороговый процент социально неблагополучных слоев населения. При преодолении которого начинаются лавинообразные эффекты, по тому же принципу, что и цепная ядерная реакция.

Если же серьезно, то копирастия на современный software development не оказывает почти никакого влияния. По крайней мере в контексте сорцов. Практика показывает, что почти повсеместно сотрудники R&D вендоров коробочного ПО имеют доступ к сорцам всех продуктов. А текучка кадров в R&D департаментах по 15% в год считается вполне нормой. В итоге сорцы коммерческих продуктов расползаются по миру довольно быстро. И с этим никто не борется, в этом нет никакого смысла. Ибо ситуация с использованием такого чужого кода точно такая же, как и с использованием кода из Open Source проектов. Деньги на приобретение лицензии на коробочное ПО тратятся ради саппорта, а отнюдь не из-за требований копирастии.
Закрытие сорцов не спасает от кражи технологий через промышленный шпионаж, реверсинженеринг или утечку мозгов(переманивание людей). Единственная защита технологий дающих конкурентные преимущества — это патентное право. Однако, оно имеет мало общего с весельем по части патентов на прямоугольник со скругленными углами. Тащить это в обсуждение вопросов и проблем software development'а не имеет никакого смысла. Ровно столько же, как вспоминать про убогость общества, где можно выиграть суд обвинив сеть фастфуда в отсутствии предупреждение о том, что горячий кофе действительно горячий.

Если бы кто-то закрыл бы HAVEGE патентом, то это бы тоже ни имело никак отношения к вопросам Open Source или коммерческой разработке ПО. За игнорирование патента могли бы пострадать как те, так и другие. Вне зависимости от того под какими лицензиями они распространяют свои варианты реализации HAVEGE.
— unknown (01/02/2013 22:03)   профиль/связь   <#>
комментариев: 9796   документов: 488   редакций: 5664
Тащить это в обсуждение вопросов и проблем software development'а не имеет никакого смысла. Ровно столько же, как вспоминать про убогость общества, где можно выиграть суд обвинив сеть фастфуда в отсутствии предупреждение о том, что горячий кофе действительно горячий.

К счастью, получив моральную травму от несобравшейся под винду опенсорсной либы, неуловимо схожие по своему образу мышления представители этого убого общества могут ограничиться лишь словесными обвинениями и нападками на Open Source. Стоит надеяться, что денег в суде они на этом выиграть не смогут. Иначе общество пропадёт окончательно. И только технофашизм его спасёт. С перспективой перехода к постгуманизму и всеобщей киборгизации.
— Гость (02/02/2013 06:05)   <#>
HAVEGE этот известен лет десять, если не больше.

unknown, чел же написал, что у него собирается, но у проектов настройки кривые и потому сборка идет через жопу. нападок на опен сорц незаметно, скорее уж на него напирали.
— Гость (03/02/2013 05:53)   <#>

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

Какие-то такие идеи в мире есть, типа «если на самом нижнем уровне всё недетерминистично, то детерминизму взяться уже неоткуда». Впрочем, понятие детерминистичности можно обобщить и на квантовый нерелятивистский случай, сделав различие между открытыми и замкнутыми системами, где первые описываются матрицами/операторами плотности, а вторые — векторами состояний (волновыми функциями), т.е. открытой системе нельзя приписать никакого вектора состояния.


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


Каждый кулик своё болото хвалит. Можно заменить windows на SCO UNIX, Plan 9 или какую-нибудь экзотику типа VMS, разницы в словах не будет никакой.

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


Смотреть на Open Source как исключительно на коммерческий индустриальный продукт для фирм и корпораций, который ещё и с поддержкой продаётся (или кто-то ей должен заниматься) не правильно, те же десктопные оси к этой категории не относятся. Можно, конечно, заявить, что время, потраченное на изучение Linux'ов just for fun, равносильно увеличению стоимости владения Linux'ами, только вот почему-то изучившие Linux не хотят возвращаться обратно в винду даже при нулевой стоимости винды для них, есть на то причины.
— unknown (03/02/2013 18:45, исправлен 03/02/2013 18:48)   профиль/связь   <#>
комментариев: 9796   документов: 488   редакций: 5664

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


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


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

— Гость (03/02/2013 20:40)   <#>
Потакание желаниям потребителя
Грязные вещи в мире проприетарного софта – это скорее тайное изнасилование потребителя в жопу, о котором он редко догадывается (а кто-то догадывается и даже получает удовольствие). Это когда половина софта внаглую шпионит, другая половина указывает пользователю как ему жить (иногда даже угрожает и требует денег).
В этом говне поуши замазаны производители мелкого проприетарного софта (беспантового и бесполезного, по большому счету никому не нужного), но и гиганты типа Sony, Google и MS иногда пачкаются...
— Славянин (03/02/2013 21:06)   <#>
Рассуждения о вкусе устриц со стороны тех, кто их никогда не ел — на редкость абсурдная клоунада.

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

Open Source проекты являются всего лишь одной из форм ведения коммерческой деятельности. Когда продаваемым товаром является поддержка/саппорт, но без SLA в какой либо форме.

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

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

Перфекционизм полезен, но лишь до тех пор, пока не упирается в то, что сформулировал ещё Черчилль, фразой: "демократия — скверная штука, но ничего лучшего человечество пока не придумало".
— Гость (04/02/2013 01:15)   <#>
Open Source проекты являются всего лишь одной из форм ведения коммерческой деятельности. Когда продаваемым товаром является поддержка/саппорт, но без SLA в какой либо форме.

Есть воз и тележка Open Source проектов, платной поддержки которых нет в принципе. Авторы разрабатывают их свободное время, принимая добровольные пожертвования пользователей (ну вот тот же mcabber). Кстати, есть и более глобальные некоммерческие проекты, типа той же википедии или поисковиков, где ещё и за сервера надо платить. Тем не менее, пользователи пока не платят со своего кармана за поиск в гугле, за чтение статей в википедии, за использование открытых свободный осей и открытого свободного софта под них.
— SATtva (04/02/2013 08:35, исправлен 04/02/2013 08:38)   профиль/связь   <#>
комментариев: 11558   документов: 1036   редакций: 4118
Есть воз и тележка Open Source проектов, платной поддержки которых нет в принципе. Авторы разрабатывают их свободное время, принимая добровольные пожертвования пользователей (ну вот тот же mcabber).

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

— Гость (07/02/2013 07:31)   <#>
Есть и такие FOSS-проекты, авторы которых принципиально не принимают даже пожертвований, тем не менее, выдавая на выходе продакшен-продукт, практически не уступающий коммерческим аналогам по тысяче баксов за коробку.

Да, вот живой пример. :)
— Гость (20/04/2013 18:09)   <#>
Dutch — это Голландия (Нидерланды, NL). Бывает, что её путают с Данией американцы. В фильмах-комедиях собственного производства.

В инглише очень много устоявшихся выражений с "dutch":
— Dutch auction
— Dutch barn
— Dutch carpet
— Dutch comfort
— Dutch concert
— Dutch tile
— Dutch cheese
— Dutch lunch
— Dutch supper
— Dutch treat
— Dutch feast
— dutch cap
— talk like a Dutch uncle
наследие англо-голландских войн.
— unknown (20/11/2013 12:11)   профиль/связь   <#>
комментариев: 9796   документов: 488   редакций: 5664
/comment60229
Скажу по большому секрету, что даже выход QRNG проходит постобработку. Несмотря на то, что физический эффект даёт истиную случайность, сам прибор всё равно будет немного неидеален, что приведёт к отклонениям от случайности. Далее, при распределении QRNG-энтропии по хостам всё равно используется её смешивание с локальной энтропией на хостах и постобработка. C'e la vie, даже QRNG не спасает от необходимости хэширования.

True randomness from realistic quantum devices, интересно описано, как оно там на самом деле устроено.
— Гость (02/12/2013 10:20)   <#>

Очень тонкое замечание для статьи, которая была опубликована всего 2 недели назад. ☺ Короче, «устроено» → «должно быть (если делать по уму) устроено»:

We hope that our framework is useful for the design of next-generation QRNGs that are truly random. // стр. 11

Далее, на стр. 3:

From a practical perspective, another difference between our approach and device-independent randomness expansion is that implementations of the latter are very challenging with state-of-the-art technology and their efficiency is low (we know of only 42 numbers generated this way [27]).

Ага, помним, помним...

Интересно, что даже поверхностное чтение оказалось полезным. Я раньше всё никак не понимал идею quantum-proof-экстракторов, т.к. мне представлялось, что это необходимо только в том случае, если состояние прибора запутано/скоррелировано с состоянием атакующего. Соответственно, если прибор изготовлен нами, и мы доверяем сами себе, то можем гарантировать заранее, что запутанным с атакующим он быть не может.

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

Спасибо за указание на эту работу. В своих основах, если не лезть в глубины аналитики, статья понятная, читается легко, основные моменты до читателя успешно донесены. В общем, Реннер — он и есть Реннер...
На страницу: 1, 2, 3, 4 След.
Ваша оценка документа [показать результаты]
-3-2-1 0+1+2+3