PAM -> шифрование
Есть много интересных PAM-модулей (кое-какой список). Всякие там Bluetooth-устройства, отпечатки пальцев, одноразовые пароли... А можно для себя написать... Но для домашнего компьютера они плохо подходят – противник просто вытащит винчестер. Он зашифрован, но просто паролем, и все эти классные PAM-модули остаются не при делах.
Смотрите. Допустим, я – игрок в Lines (Шарики) с двадцатилетним стажем. Пишется PAM-модуль, пускающий пользователя, только если тот набирает 5'000 очков. Подошёл к компьютеру, быстренько сыграл, набрал очки – залогинен. Это не пароль, который можно подсмотреть, отличная защита, никто кроме меня не может залогиниться! Но всё равно придётся вводить пароль к дисковому шифрованию – это проблема. Узнай его, утащи диск – считай, получил данные без обхода нашей потрясающей защиты. Использовать бы как-то игру для создания ключа расшифрования, но как?
Есть ли какой-то способ использовать произвольный PAM-модуль для генерации ключа шифрования?
Простое решение – логинимся (могут использоваться любые модули PAM) на удалённую машину, она нам отдаёт пароль шифрования. Но это не нравится – во-первых, достаточно прийти к удалённой машине, и всё повторяется, во-вторых, пароль при передаче можно перехватить/подсмотреть.
Если машина считается полностью доверяемой, то гуглить по хинтам: radius, kerberos, авторизующий сервер. Или вы хотите что-то такое? Пример с игрой в принципе не рабочий: раз игра выдаёт ключ шифрования, значит она его имеет, а раз так, его можно просто извлечь с диска, подсоединив к другому компьютеру и применив мозг; здесь я даже не касаюсь того, что прохождение какой-то игры — не слишком уникальная вещь, чтобы по этому критерию ей доверять свои приватные данные. Ещё есть тупиковые идеи с trusted computing и DRM (предвосхищаю ваши дальнейшие поползновения), которые в принципе могут быть использованы, если пользователь сам электронщик и паяет эту DRM под себя (тоже обсуждалось на форуме).
В этом и вопрос. Как произвольный PAM-модуль можно использовать для выработки ключа шифрования так, чтобы его нельзя было получить "подсоединив к другому компьютеру". Соответственно, и игра приведена в шутку как пример модуля, которому не сообщается информации, а который проверяет что-то ещё.
Если угодно, другой пример, эдакая реализация poor man's one time passwords: в PAM-модуль зашит простенький математический алгоритм, например, число-ответ = 2 * число-вопрос + 3 + номер дня недели. При входе человеку показывают число-вопрос, он, зная алгоритм, считает число-ответ. Даже если подсмотреть, что человек вводил, залогиниться ещё раз не получится (конечно, при наличии нескольких пар вопрос-ответ, простой алгоритм можно будет угадать, это всё понятно...). Можно логиниться, даже если за тобой подглядывают. Но что толку, если противник не будет пытаться войти, но просто сосредоточится на шифровании диска.
PAM-модулю здесь (как и в случае с Lines) ключ для шифрования не передаётся. Что делать? Сомневаюсь, что есть какие-то варианты, кроме удалённого сервера, но вдруг.
комментариев: 9796 документов: 488 редакций: 5664
Алгоритмы выработки одинакового ключа шифрования из принципиально нечётких биометрических данных существуют и основаны соответственно на нечёткой логике, можно прикрутить к любым подходящим данным и к играм. На все недостатки биометрии вам указали выше. Взлом и протроянивание незашифрованной игры для того, чтобы она дала нужный результат, как вам также указали выше, сводится к DRM. Плюс низкая энтропия выработанного ключа — можно не ломать игру, а сбрутфорсить всё малое множество порождаемых ею ключей для попыток прямого расшифрования.
Защита от подглядывания концептуально реализована в визуальном пароле: /comment8025. Советую ознакомиться перед изобретением очередного велосипеда.
Но где хранить pam и визуальное приглашение? В DRM-ящике? На носимой фдэшке?
Получаем "проблему кащеевой смерти" /comment41369.
А просто pam-luks для того что бы не нужно было дважды вводить пароль на логин юзера и на расшифровку домашнего каталога существует, но это ведь не то, что вы хотите? По крайней мере перед этим всё равно придётся вводить пароль полнодискового шифрования, с проблемой кащеевой смерти опять же.
Реально не работает (фуфло) или просто неадекватно – можно лишиться более ценного, чем информация – собственных пальцев?!
Если вы хотите игру в качестве PAM-авторизации (пройти игру+ввести пароль чтобы залогиниться) — это можно сделать, сойдёт в качестве "дополнительной навески"; только вот расшифрование диска с этим как-то связывать — явный перебор по уже вышеописанным причинам.
Вот это бы к DiskCryptor'у прикрутить...
комментариев: 9796 документов: 488 редакций: 5664