Чип 10NES защищал не от копирования, а от издания без разрешения
Nintendo поставила в NES 1985 года микросхему, без верного ответа которой консоль перезапускается бесконечно. Судебное решение 1992 года разрешило вскрывать такие замки — но Atari Games всё равно проиграла, и по причине, не имеющей отношения к технике.
Внутри каждой NES стоит маленький четырёхразрядный микроконтроллер 10NES. Такой же стоит в каждом лицензионном картридже. При включении оба запускают одну и ту же программу от одного значения и начинают выдавать поток чисел; консоль сверяет свой поток с тем, что приходит из картриджа. Если ответы расходятся или их нет, консоль дёргает линию сброса. И так по кругу, несколько раз в секунду.
Здесь важно назвать вещи своими именами. Это не защита от копирования: содержимое картриджа копируется свободно, чип ничего не шифрует. Это замок совместимости. Он не даёт запуститься картриджу, который не прошёл через Nintendo.
Что именно защищалось
Защищалась лицензия. Условия Nintendo в середине восьмидесятых были жёсткими: издатель выпускает не больше пяти игр в год на платформе, картриджи производит только Nintendo, тиражи заказываются заранее и оплачиваются вперёд, на коробке стоит печать качества.
Это был прямой вывод из обвала 1983 года. Nintendo решила, что рынок убила неконтролируемая поставка — десятки издателей, заваливших полки неотличимыми картриджами, — и встроила контроль поставки прямо в кремний. Экономическое правило, отлитое в микросхему.
Дело 1992 года
Компания Atari Games, торговавшая под маркой Tengen, хотела выпускать игры для NES без разрешения. Её инженеры вскрыли корпус чипа, изучили его под микроскопом, сняли логику и почти всё поняли самостоятельно.
А потом сделали лишнее. Юристы Atari Games запросили копию исходного кода 10NES в Бюро регистрации авторских прав США, заявив, что компания является ответчиком по судебному делу и код нужен ей для защиты. На тот момент это было неправдой. Получив код, они выпустили свой чип под названием Rabbit и начали продавать нелицензионные картриджи.
Решение Федерального апелляционного суда по делу Atari Games против Nintendo of America в 1992 году устроено любопытно. Суд подтвердил принцип: обратная разработка ради понимания незащищённых функциональных элементов — добросовестное использование, законное занятие. Но Atari Games дело проиграла, потому что копия, с которой она работала, была получена обманом, а недобросовестное поведение лишает права ссылаться на добросовестное использование.
Компания выиграла принцип и проиграла процесс. Принципом с тех пор пользуются все, кроме неё.
В том же 1992 году девятый округ пришёл к тому же выводу в деле Sega против Accolade, а в 2000-м — в деле Sony против Connectix, распространив логику на эмуляцию. Эти три решения и есть юридическое основание, на котором в США законно писать эмуляторы.
Куда переехал замок
Из железа в подпись. Современная консоль не обменивается рукопожатием с картриджем, а проверяет криптографическую подпись исполняемого файла. Вскрыть такую проверку технически труднее, но главное — с 1998 года в США действует раздел 1201 Закона об авторском праве в цифровую эпоху, запрещающий обход технических средств защиты как таковой, независимо от того, нарушается ли авторское право по существу.
То есть прецедент 1992 года никуда не делся, а почва под ним сместилась. Разбирать чип, чтобы понять протокол, по-прежнему можно. Обходить криптографию, чтобы запустить своё, — уже отдельный состав.
Общий вывод простой и полезный: замок совместимости почти всегда экономический инструмент в инженерном корпусе. В 1985 году он собирал доллары с каждого картриджа. Сегодня он собирает тридцать процентов с магазина.
Источник: en.wikipedia.org