Оговорюсь сразу — статья является копипастой из «Компьютерры» аж от 2005 года, но, думаю, что все нижеописанное не теряет своей актуальности и сегодня.

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

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

Эта работа является частью более масштабного проекта EFF, именуемого «Технологии кодов машинной идентификации». В ходе аналитического исследования установлено, каким образом на каждом листе, распечатанном цветным лазерным принтером DocuColor, многократно проставляется «код трассировки». Этот код в дальнейшем используется в криминалистических расследованиях, поскольку несет в себе серийный номер принтера, а также дату и время изготовления распечатки.

Код трассировки в принтерах DocuColor представляет собой крошечную прямоугольную матрицу, содержащую 15х8 микроскопических точек желтого цвета. Матрица одного и того же вида печатается на листе многократно, однако места ее расположения не постоянны, а меняются псевдослучайным образом, но так, что стороны прямоугольника остаются всегда параллельны краям листа. Собственно информация закодирована посредством 14 семибитных колонок-байтов, а самая левая колонка матрицы из 8 точек и верхняя строка из 15 точек служат для проверки четности и исправления возможных ошибок считывания. Как показали исследования, содержательную информацию обычно несут 10 байтов, а остальные 4, как правило, не используются (но это может зависеть от конкретной модели принтера).

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

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

Информационные семибитные байты читаются справа налево. Значение первого, самого правого байта пока не установлено (чаще всего 0; для каждого принтера остается неизменным; возможно, несет информацию о неизвестных пользователю особенностях модели или конфигурации). Следующие четыре байта (2,3,4,5) — серийный номер принтера, закодированный так, что каждый байт содержит две цифры обычного десятичного представления номера (таким образом, если серийный номер выглядит как 00654321, то второй байт кодирует 00, третий 65, четвертый 43, пятый 21). Затем идет шестой байт, выполняющий, судя по всему, служебную роль разделителя, поскольку практически всегда полностью заполнен точками; седьмой байт в данном принтере не используется; восьмой кодирует год, но без столетия, то есть 2005 кодируется просто как 5; девятый байт — месяц, когда сделана распечатка; десятый — день; одиннадцатый — час; байты 12 и 13 не используются; четырнадцатый — минуты распечатки; пятнадцатый — проверка четности.

На веб-сайте EFF к странице, (от редактора: ссылка мертва) посвященной этому проекту, подцеплена интерактивная программа, с помощью которой любой владелец распечаток принтера DocuColor может ввести байты считанной самостоятельно матрицы трассировки и посмотреть, какая информация там закодирована.

Код трассировки принтеров Xerox DocuColor был вскрыт потому, что у аналитиков EFF оказалось больше всего распечаток именно от этой линии аппаратов. Благодаря помощи добровольцев, сейчас накапливаются массивы для цветных лазерных принтеров многих других фирм и моделей. Компания Xerox была одним из пионеров этой технологии, сегодня же, как достоверно известно, аналогичная схема трассировки реализована едва ли не во всех принтерах известных брэндов: Brother, Canon, Dell, Epson, Minolta, Kyocera, Lanier, Lexmark, Savin, Toshiba. Судя по результатам первичного анализа, почти все распечатки несут на себе похожие следы-точки персонально идентифицирующей принтер информации.

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

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

В EFF на сей счет придерживаются иной точки зрения. Прежде всего, ни в США, ни в других демократических странах не существует никаких законов, строго регулирующих индивидуальные коды трассировки и предотвращающих злоупотребления этой информацией правительством. В менее свободных странах, использующих те же самые технологии, подпольные демократические движения, занимающиеся выпуском политических или религиозных брошюр (вроде советского «самиздата» 1970–80-х годов), остро нуждаются в анонимности печатаемых документов. А тайная технология трассировки помогает репрессивным властям отыскивать и преследовать диссидентов. Хуже того, говорят адвокаты EFF, вся эта история показывает, как правительство и частная индустрия заключают за спиной народа секретные сделки, направленные на ослабление защиты тайны личной жизни и компрометацию повсеместно используемого оборудования вроде компьютерных принтеров. Отсюда логично вытекает следующий вопрос: какие еще сделки, подобные этой, заключили власти и бизнес, чтобы технология помогала следить за ничего не подозревающими людьми?

Если же подобными вопросами не задаваться регулярно, то в какой-то момент можно будет обнаружить, что вся жизнь человека уже поставлена под пристальный и не ограниченный законами надзор властей. А ото всех прежних свобод демократии останется только одна — всегда голосовать «за».