2010-12-01 5 views
2

Я хочу реализовать защиту от копирования для рендеринга opengl, вот какая-то идея, ни одна из них не убеждена. Не могли бы вы дать мне несколько предложений о том, как это сделать?Как реализовать защиту от копирования с помощью рендеринга OpenGL

ChangeDisplaySettingsEx API позволяет изменять конфигурацию устройства отображения. Он использует структуру VIDEOPARAMETERS, содержащую сведения о защите от копирования. Этот API был введен на Win2K. Он устанавливает параметры защиты от копирования глобально на каждый вывод, тогда как COPP или OPM устанавливает параметры защиты от копирования для каждого окна приложения.

COPP API доступен только на фильтрах DirectShow VRM-7 или VMR-9 и доступен с WinXP. Использование этого означает, что нам нужно отображать контент с помощью DirectShow. Что произойдет, если мы сделаем полностью наше приложение без Directshow, но создадим фиктивный VRM-9, чтобы установить защиту от копирования?

OPM API доступен только для Vista, но заголовочные файлы являются лишь частью Windows 7 SDK. Этот API кажется явно лучше, чем COPP, в частности, он позволяет приложениям устанавливать параметры защиты от копирования с помощью окон монитора, поэтому это кажется полезным без использования Direct 3D, DirectShow или PMP.

ответ

8

Защита от копирования не работает. Период. Всегда есть способы добраться до содержимого, отображаемого на экране. Если вы не можете получить его с помощью программы, запущенной в системе, вы будете использовать выход видеокарты. Доступны коробки HDMI-videograbber для менее 250 $ - и основные ключи HDCP, защищающие HDMI, просочились.

Мой совет: Не беспокойтесь о внедрении свернутых схем DRM. Лучше тратьте время на то, что имеет значение и последнее.

EDIT из-за комментариев: Включение защиты от копирования не является особенностью OpenGL. Это связано с графической подсистемой операционной системы. В случае Windows защита от копирования HDCP реализована как часть графика фильтра DirectX для видеопотоков. OpenGL отделен от DirectX, поэтому очень маловероятно, что вы можете «защитить» то, что было сделано с помощью OpenGL.

+0

-1 Независимо от ваших личных чувств, иногда требуется HDCP/DPCP (либо вашим клиентом, либо ожидаемыми конфигурациями оборудования). Увольнение вопрос прямо может быть легко, но это, конечно, не бар, который должен быть установлен для ответов. – 2010-12-01 15:54:26