2013-05-30 6 views
0

proposal for inclusion of DRM on html5 бьет новости в последнее время. Это только предсказуемо, что механизм хранения ключей в конечном итоге будет взломан, as it was on dvd playback software. Это также известно как trusted client problemВнедрение криптографических ключей в программное обеспечение

Мой вопрос прост: существует ли способ шифрования данных, чтобы только определенный фрагмент исполняемого кода мог его расшифровать?

Как правило, закрытый (асимметричный) ключ включен в программный код и используется для дешифрования симметричного ключа (распределенного с содержимым), с которым был зашифрован контент. Это делает тривиальным извлечение указанного секретного ключа из программного обеспечения и обход его.

Мне было интересно, возможно ли, что дешифрование зависит от целостности самого программного обеспечения.

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

Возможно ли это вообще? Если это не так, есть ли математическое доказательство? Я не ищу окончательные ответы здесь, просто указатели на существующую работу.

+0

[этот вопрос] (http://stackoverflow.com/questions/6069907/how-to-protect-decryption-key-from-decompilation?rq=1), но учтите, что я не прошу об обфускации, но прямо incomputability – goncalopp

ответ

0

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

На многих материнских платах уже установлен модуль TPM. Если рынок допускает такие устройства, то защита DRM может стать реальностью. Даже тогда модули TPM уже были сломаны, так как такое устройство в руках хакеров является своего рода аппаратным DRM.

Смежные вопросы