xaker

8-мегапиксельный смартфон как генератор случайных чисел

  • вторник, 13 мая 2014 г. в 03:10:46
http://www.xakep.ru/post/62480/

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

Метод основан на том факте, что эмиссия фотона — квантовый процесс, который по своей природе случаен. Таким образом, в конкретный промежуток времени от источника света будет получено случайное количество фотонов. Подсчёт этого количества — первый этап работы ГСЧ нового типа.

Авторы научной работы отмечают, что светочувствительные сенсоры современных смартфонов достигли высокого качества и способны учитывать квантовые эффекты такого рода. Каждый элемент сенсора (отдельный пиксел) может сгенерировать случайное число. А поскольку на сенсоре миллионы пикселей, то ГСЧ выдаёт обильный поток информации. Для доказательства физики продемонстрировали реализацию ГСЧ на 8-мегапиксельном смартфоне Nokia N9, фотографируя зелёный светодиод. Результатом стали случайные числа в потоке 1 мегабит/с. Это более чем достаточно для большинства приложений, установленных на смартфоне.

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

Сравнение измерений квантового и классического шума на специализированном детекторе ATIK 383L (вверху) и смартфоне Nokia N9 (внизу)