http://www.cs.auckland.ac.nz/~pgut001/p ... a_cost.txt
Поскольку статья большая (больше 1000 строк) и на английском, приведу
краткое резюме по тексту.
Статья посвящена техническому (исключительно техническому, а не
политическому) рассмотрению того, что майкрософт навключал в винды в попытке
помещать "пиратскому" копированию "премиум контета" (к примеру, данные с
Blu-Ray и HD-DVD дисков), и как это отразится на индустрии в целом и на
пользователях в частности. А именно, ценой этой "защиты" станет значительное
удорожание железа и софта, уменьшение производительности и надёжности,
усложнение тех.поддержки и т.п. Причём эта мелкософтовская инициатива по
переделке рынка затронет это не только пользователей виндов, но и
пользователей альтернативных операционных систем.
Эти выводы сделаны в том числе и на основе анализа мелкософтовских
документов (ссылки на документы даны в статье). К примеру, приведена цитата
из документации (о принципиальной возможности софтовой реализации шифрования
контента, не перекладывая это на железячников):
"
The problem with regular AES is that it takes about 20 CPU clocks to encrypt
each byte. This is OK for compressed or semi-compressed video, but for the
multiple HD uncompressed case, it is too much even for a 2006 processor.
[...]
In the case of premium content, whether video can play back smoothly when
using regular AES with uncompressed video will be a function of the
resolution of the uncompressed video and the power of the processor. It is
unlikely to work well in 2006 for uncompressed HD premium content
"
Краткие моменты, которые освещены и объяснены:
- для настоящей реализации того, что предлагается в висте, должны нарушаться
законы физики. Чтобы сместить внимание с этого аспекта, документация
мелкософта предлагает "производителям графики выйти за рамки букв
спецификации и предлагать дополнительный фичи защиты от копирования,
поскольку это демонстрирует их твёрдое намерение защищать премиум-контент".
- запрет на функциональность: если виста по каким-то причинам решит, что
конкретный интерфейс не позволяет защищать контент, он будет запрещаться. К
примеру, при проигрывании защищаемого контента выходы типа S/PDIF (хай-энд
интерфейс для качественной передачи аудио профессионалами) будут запрещены.
Более того, все (абсолютно все, даже сверхдорогие Radeon X1900 XT или Nvidia
7800GTX) видеокарты просто не поддерживают HDCP (технологию защиты от
копирования видео), несмотря на рекламные заявляения. В результате,
анонсированный Sony в августе Blu-Ray драйв просто не мог проигрывать
Blu-Ray диски на PC. Или вот реальный пример:
"I've just had my first experience with HD content being blocked. I
purchased an HP Media Center PC with a built-in HD DVD player, together with
a 24" 'high definition' 1920 x 1200 HP flat panel display (HP LP2465). They
even included an HD movie, 'The Bourne Supremacy'. Sure enough, the movie
won't play because while the video card supports HDCP content protection,
the monitor doesn't. (It plays if I connect an old 14" VGA CRT using a
DVI-to-VGA connector)".
- косвенный запрет на функциональность: помимо явного запрета
функциональности, есть и не явные. К примеру, для подавления эха, по
голосовым линиям коммуникации должны пересылаться обратно фрагменты потока,
но в Висте это запрещено (там разрешено только сильно искажённые самплы).
Более того, _вся_ система вывода должна деградировать в соответствии с
наличием премиум-контента. В резальтате, к примеру, при затухании (fade out)
сигнала "защищённой" музыки, все системные звуки должны затихать тоже.
- ухудшение качества проигрывания: поскольку запрет на функциональность не
всегда возможен, виста предусматривает (автоматическое) ухудшение видео- и
аудио-сигналов. К примеру, если используется интерфейс DVI (вместо худшего
по качеству VGA), то при присутствии премиум-контента картинка должна
генериться (пропускаться через специальные фильтры) вистой "немного
нечёткой" (как на расфокусированном ЭЛТ). Фактически, аналоговый VGA
интерфейс пока ещё разрешён для выдачи премиум-контента, но в будущем будет
запрещён и он. Явно разрешён только низкокачественный ТВ-выход, но и там
должна применяться защита Макровижн. Аналогично со звуком: звук должен
ухудшаться, чтобы звучать "fuzzy with less detail".
А теперь представьте себе ситуацию, когда виста решит, что она должна
ухудшить качество картинки, которая является рентгенно- или томо-граммой.
- исключение open-source поддержки железа: чтобы исключить аппаратную
эмуляцию, виста требует скан аппаратной функционалоности (HFS) для
уникальной идентификации подлинности железа. Чтобы это работало, мелкософт
требует от железячников, чтобы они держали особенности функционирования
своих устройств (тех же видеокарт) в секрете и не допускали написания
сторонних драйверов, а перед выпуском своих драйверов железячники должны
покупать сторонний софт, который будет внедрять в их драйвера
вирусо-подобную антиотладочную функциональность.
- исключение унифицированных драйверов: чтобы HFS работал, для каждого
устройства и даже каждой редакции (степпинга, версии) одних и тех же
чипсетов должны писаться новые драйвера, а значит, прощай универсальные
драйвера типа Catalyst/Detonator/Forceware. А, к примеру, HDMI аудио-кодеки
должны делать отличными от S/PDIF аудио-кодеков.
- DoS ("отказ в обсулуживании") через отзыв драйверов: если майкрософт
решит, что драйвер недостаточно надёжен в обеспечении защиты от копирования,
его сигнатура мелкософтом может быть отозвана, а значит, это устройство
превратится в макулатуру, прочём по всему миру. Это очень обширная тема:
даже если не учитывать злоупотреблений и ошибок, то под угрозой большинство
железа, поскольку железячники редко обновляют драйвера для "устаревшего"
железа, а "устаревшее" для них - это, как правило, год-два. А как насчёт
драйверов, являющихся частью комплекта (к примеру, драйвера на встроенное в
материнскую плату аудио)? А как насчёт того, что WGA ("антипиратская"
компонента виндов) позволяет только малое число замен железа перед покупкой
новой лицензии, а при отзыве драйвера может потребоваться (временно)
заменить железку (например, видеокарту, которая без драйверов не работает
или работает в ограниченном режиме 640x480x256)? А как насчёт того, что
пираты используют те же чипсеты, которые нередко используются в
профессионалами (к примеру, в видео-студиях) - в этом случае из-за отдельных
инцидентов пострадают и потеряют железо все легальные пользователи.
- уменьшение надёжности системы: писатели malware-программ (фишеры, спамеры)
сами могут (и будут!) пользоваться функциями "защиты от копирования" системы
и, вот ирония судьбы, будут защищены от антивирусников законом DMCA, который
запрещает копирование, дизассемблирование, дешифрование и прочие подобные
действия.
- увеличение стоимости железа (из-за невозможности ориентироваться только
на эффективность). Цитата из майкрософтовских документов:
"The evidence [of security] must be presented to Hollywood and other content
owners, and they must agree that it provides the required level of security.
Written proof from at least three of the major Hollywood studios is
required".
Это означает, что железячники не только должны все свои идеи, схемы,
реализации согласовывать с Disney, MGM и 20th Century-Fox (читай: лишняя
бюрократия, лишние комиссионные), но и что они не свободны в выборе этих
самых идей, схем и реализаций, поскольку голливуд не интересует
себестоимость или эффективность, их интересует только "защита от
копирования".
- увеличение стоимости из-за необходимости лицензировать ненужную
"интеллектуальную собственность" третьих сторон. Просто цитата (детали и
прочие подробности ищите в самой статье):
"We've taken on more legal costs in copyright protection in the last six to
eight months than we have in any previous engagement. Each legal contract
sets a new precedent, and each new one builds on the previous one" -- ATI.
- ненужное потребление ресурсов процессоров и устройств. Для предотвращения
фальсификаций, все потоки данных (между программами и системой, между
процессором и видеокартой) должны шифроваться с помощью AES-128. Причём для
полноценной программной реализации потокового шифрования мощности
современных процов не хватает (см. цитату выше), а значит, к примеру,
видио-строители должны отнимать в графических процессорах ресурсы от
рендеринга видео и отдавать под шифрование. А драйвера должны опрашивать раз
в 30 мс своё железо, чтобы удостовериться, что всё нормально (прощай спящий
режим). К этому же, виста сам опрашивает видео-драйвера на каждом фрейме, и,
похоже, именно это является причиной проблем с проигрыванием видео и аудио в
висте, когда теряются кадры, а звук заикается. Опять цитата (детали и прочие
подробности опять же ищите в самой статье):
"Since [encryption] uses CPU cycles, an OEM may have to bump the speed grade
on the CPU to maintain equivalent multimedia performance. This cost is
passed on to purchasers of multimedia PCs" -- ATI.
А ведь кроме MPEG существуют и другие, более высококачественные схемы для
представления "премиум-контента" (Ogg video или D-cinema), но поскольку в
них используются другие алгоритмы, в висте они не могут быть применены, пока
железячники не растелятся и не реализуют это в своём железе и драйверах для
висты.
- вопрос вопросов: зачем мелкософту идёт/ведёт в такую яму? Ответ типа
"этого требует голливуд" не принимается, он бессмысленный. Верный ответ,
скорее всего, таков: с внедрением мелкософтовской защиты от копирования
мелкософт становится владельцем каналов распространения. Монополистом. А та
монополия, которую мы имеем сейчас - это только цветочки. И, что самое
плохое, здесь нет выхода: винды пока что владеют большей частью рынка, а
значит, если железячники хотят, чтобы их устройство показывало и играло не
только низко-качественное, нечёткое, размытое видео и аудио, они должны
играть по правилам мелкософта. Для пользователей тоже выхода нет: независимо
от того, какую операционную систему вы используете, если железячнику
пришлось играть по правилам мелкософта, свои накладные расходы они будут
слупливать со всех пользователей, в том числе пользователей Win9x, XP,
Linux, OS x и т.д.