Другое допустимое решение – наложить ограничение на типы запросов, которые пользователь может делать к базе данных. Это также трудно сделать правильно. В одной известной исследовательской работе автор, вычисляя жалованье своего босса, основывался на вполне законных запросах к базе данных переписи 1970 года, несмотря на контроль, введенный специально для того, чтобы предупреждать подобные вещи. Информационная система Национального здравоохранения Новой Зеландии пыталась разрушить подобные виды атак, не выдавая информацию по группам, состоящим менее чем из 6 человек.
Атаки все равно остаются возможными. Алиса собирается узнать виды разрешенных запросов, и лучшее, что она может сделать, – сформировать некий математический подход для вывода нужной ей информации из информации, к которой она имеет доступ. И подобные вещи усугубляются, если Алисе разрешено добавлять данные в базу и удалять их. Если она хочет получить информацию относительно отдельного человека, она могла бы вставить пару сотен записей в базу и затем сделать общий запрос по людям, включая тех, которых она добавила, плюс ее цель. Так как ей известны все данные, которые она добавила, она может «вычислить» данные того, кто ей нужен. Целый ряд атак основывается на означенной идее.
В этой области проводились активные исследования в 80-х годах, но сейчас их меньше. (Новые правила конфиденциальности медицинской информации могут привести к их возрождению.) Хотя проблемы так и не решены.
Стеганография
Стеганография[42] – это наука скрывать сообщения внутри сообщений. Геродот рассказывает о практике древних греков, когда секретное сообщение записывали с помощью татуировки, нанесенной на бритую голову посланца, а потом он снова отращивал волосы, перед тем как переправить это сообщение через вражескую территорию. (Длительность этой связи измерялась месяцами.) Использование невидимых чернил – более современная технология. Микрофотоснимки были изобретены немцами во время Первой мировой войны и оставались в моде в течение многих лет. Шпионы делали негативное изображение достаточно маленьким, чтобы можно было вырезать его и поместить между строчек книги. Шпион мог пронести такую книгу везде, не опасаясь, что кто-либо обнаружит микрофотографии, скрытые на одной из ее многочисленных страниц.
В компьютерном мире стеганография используется для скрытия секретных сообщений в графике, картинках, движущихся изображениях или в звуке. Отправитель скрывает сообщение, используя наименьшие значащие биты[43] файла одного из этих типов – качество слегка ухудшается, но если вы сделали все правильно, это с трудом можно заметить – получатель на другом конце извлекает его. Некоторые коммерческие и свободно распространяемые программы предлагают стеганографию либо отдельно, либо в составе целого пакета средств обеспечения безопасности связи.