新闻中心

EEPW首页 > 模拟技术 > 学习方法与实践 > 硬件式数字版权管理(DRM)技术剖析

硬件式数字版权管理(DRM)技术剖析

——
作者:郭长佑时间:2007-12-29来源:DIGITIMES收藏
        前言:

       内容业者惧怕辛苦产制的内容遭人盗拷、软件业者害怕用心开发的产品被人破解注册机制、企业用户烦恼重要商务数据外泄流传,凡此种种,就需要各种防拷防护、加密防护。

       当USB随身碟、光盘刻录机等复制愈来愈便利,同时Internet愈来愈普及,连网络率速率不断增快,也让盗拷及泄密等情事愈来愈容易发生!为遏止盗拷、泄密,业界提出「」防拷,即(Digital Rights Management),也有业者称为「信息版权管理」,即IRM(Information Rights Management),如Microsoft就以IRM称之。

       除、IRM外,早有各种模拟、数字的防拷机制!例如为防止VHS录像带被转拷、侧录,因而有Macrovision的ACP,或如DVD光盘片有CSS、CPRM技术,就连DVI、HDMI等数字视讯接头也有HDCP防拷机制,更不用谈Blu-ray Disc、HD DVD等新一代光盘也有AACS防拷。

       储存媒体或视讯接口等的防护很单纯,就是防止被复制,或防止在传递时被拦截转拷,但个人计算机上的数据防护就远比媒体、接口来的复杂,每个人用Word、Excel编创的数据,有太多种可能与管道导致外泄,例如另存新档、复制/贴上、打印、硬拷(撷图,按下Print Screen钮)等等。

       到底PC端的数据防拷要如何做才稳固?才能防止各种外泄与非法开启、存取的可能?以下本文将以騋扬科技(McAMOS Technology)的InfoLock Data Security System(以下简称:InfoLock)为范例,进行方案的实现原理及防护机制。

       从「Key Pro,硬件锁」开始

       早在光盘烧录器与Internet未盛行前的90年代前期,PC产业一直有个头痛的问题,那就是软件的盗拷盛行,每盗拷1套即会造成软件创作者、软件发行商重大商业利益受损,现在透过方便的因特网,盗拷现象更是雪上加霜,因此更需要应用程序的防拷技术。

       业界提出Key Pro(硬件锁)的防护手法,Key Pro是个硬件装置,早期多接在PC的打印机端口上,之后将应用程序安装至硬盘,在应用程序启动时,程序会查核Key Pro是否连接,若否应用程序就会中止启动无法使用,达到防拷效果,或者实行更缜密的作法,应用程序运作时会定期查核Key Pro?或者在重要动作(如:储存档案)时查核Key Pro是否被拔走?以此达到更高程度的防护。此外,除了查核Key Pro是否接于PC上,也可搭配密码输入的查核比对,在Key Pro接上且密码正确才能启动程序。

       不过随着USB接口的普及,现在PC已鲜少使用打印机端口,所以Key Pro也必须提升,从打印机端口的类型转变成USB接口的类型(有时也称:USB Token),然除此之外一切的运作原理、查核机制都与过往作法无异。

       从程序防拷提升到数据防拷

       了解Key Pro的原理机制后,DRM即是以Key Pro为基础所扩展延伸而成,过去是在软件启动时进行Key Pro查核,而今是在档案要开启时进行Key Pro查核,以及对档案进行敏感性动作(如:复制、打印)时进行查核。 

        另外InfoLock必须对用户的档案进行加解密,加密之后的档案即可安心传递,即便被有心人士取得档案,也无法正常开启该档案,即是无法正确解读档案的内容。或者,即便允许他人正确开启档案,但也不允许他人另存新文件,即不允许拷贝档案。

        再者,若有人运用复制、贴上撷取档案部分内容,InfoLock也可禁止此行为,一是让有心者选取、复制,但在贴上时只会贴出一堆无法解读的乱码,另一则是连程序的「复制」选项都呈现灰暗而无法点选。同样的,想运用「打印」印出档案内容,或用「撷图」等硬拷方式窃取,也统统会被InfoLock监督,并依据原创者对档案的权限设定来决定是否要绝禁打印、撷图。

        解析Key Pro的硬件构造

        接下来许多人会对Key Pro感到兴趣,Key Pro内的硬件组成为何?又是如何达到防护功效?

        事实上Key Pro内的硬件相当简单,与常见的USB随身碟相当接近,USB随身碟内有控制器(Controller)与NAND型闪存(NAND Flash)2个芯片。其中控制器芯片的前端接口是USB接口,负责与PC上的USB接口相连,而后端界面则是NAND Flash的存取接口,与NAND Flash连接。如此,PC端可以对USB随身碟下达命令,如写入、读出、格式化等,控制器芯片在接受命令后就会对NAND Flash进行存取操控。

        类似的,Key Pro内也有一个控制器芯片,另外也有1个内存芯片,控制器芯片方面是1个8位的微控制器(Microcontroller),事实上USB随身碟的控制器芯片,其核心也是1个8位的MCU。而内存芯片方面也类似,也都是非挥发性的内存(断电后数据依然留存),只是容量不需要很大,而Key Pro只需要少量的容量,因此使用串行式的EEPROM即可。

        更具体而言,InfoLock的USB型Key Pro,其控制器部分使用的是Cypress Semiconductor的8位MCU,该MCU本身就内建USB接口,然后MCU再与串行式EEPROM连接。

        MCU与PC端USB接口连接的部分必然要有内建的USB接口电路,倘若没有内建的USB接口,而是用一般用途性的I/O接脚(General Purpose Input Output;GPIO),再搭配上MCU的控工艺序来实现USB通讯,将会大幅增加MCU的运算负荷。

        至于MCU与EEPROM连接的部分,由于串行式EEPROM的存取、操控相当简易,且没有高速性的必要,因此MCU是否有内建的对应存取接口并不重要,「有」也可行,「没有」也能用GPIO搭配控工艺序的方式来实现存取、操控。以InfoLock而言,其EEPROM为1,024Bytes(即1KB)容量。

        接着是原理,Key Pro的MCU内会放入加解密的算法程序,而金钥(Key)或其它相关的参数(Parameter)资料则会放于EEPROM内,并依据加解密的运作来读取、写入EEPROM内的数据。

        这时各位可能会猜想:「或许直接取出Key Pro内的EEPROM,并读取EEPROM内的数据,如此就可以破解加密。」关于此举,其实是没有效用的,纯粹读取EEPROM内的数据并无法理出加解密的规则脉络,因为真正的演算是存于MCU的控工艺序内。

        本机端、服务器端程序功效及原理

        了解Key Pro部分后,接下来就是PC端的软件部分,用户必须安装InfoLock的客户端程序,将程序安装于自用的PC上,程序本身已包含了Key Pro的装置驱动程序,所以不用再行安装Key Pro的驱动程序。

        程序安装完后,用户就可以针对档案类型来进行加密,例如对 .doc档加密、对 .xls档加密等,甚至可以进行本机端的批次加密,即是在本机端的所有 .ppt檔、 .pdf档一律加密,或者是设定加密时限,例如:在多久时间内对档案加密,超过时间后则解除加密。

        至此各位或许会问:针对档案类型进行加密,是否意味着我用不同的应用程序来开启就可以破解加密?例如一般使用者是用Adobe Reader来开启 .pdf檔,然而也有人使用Foxit Reader来开启 .pdf檔,如此是否表示使用Foxit Reader就能够顺利开启加密后的 .pdf檔?

        对此其实是否定的,无论任何一种应用程序,对相同类型的档案都采取相同的档案开启、档案解读方式,所以对该类型档案加密后,换用其它应用程序来开启,结果依然是乱码,或者该档案允许开启,但存盘、编辑、复制、打印、撷图等也依然受到管控。

        除客户端程序外,对于大编制机构或企业而言,需要对档案进行更一致性的权限管控,如此则需要架设一部服务器,在服务器端安装InfoLock的服务器端程序,服务器端程序会与客户端程序进行通讯,客户端会将前端使用者的加解密操作进行记录,再将这些记录集中回传至服务器上,成为日志记录,如此机构或企业的资管人员就可进行资安管控,或协助企业内进行稽核防弊、公司治理等工作。

        值得一提的是,InfoLock也能针对.htm档进行加密,如此即便是放于网站上的网页数据也可以进行加密,前端浏览者必须具有Key Pro才能正确浏览该加密网页的内容。

        无硬件锁(Key-less)方案

        前述的作法是在每个使用者都拥有自己的Key Pro为前提所设计的加解密、存取防护等机制,但也有部分客户认为能否省去Key Pro,完全在现有PC上内实现全然相同的安全功效。

        关于此其实是可行的,騋扬科技也有设计出Key-less的方案,原有EEPROM内的储存数据,转变成PC硬盘内的一个数据文件,该数据文件也与EEPROM一样仅1KB左右的容量,而MCU的运算功效则改由PC内的CPU来替代,至于MCU程序就成了PC上的执行程序。

        未来展望

        InfoLock是以Key Pro软件防拷技术为基础,扩展延伸成DRM的,而过往纯软件防拷的技术方案称为SmartLock,用户档案的数字版权防护则为本文所谈论的InfoLock,不过两者其实也可合为一体,既能防止应用程序盗拷,也可防止用户数据外泄,二合一的方案则称为GoldLock。

        往未来看,騋扬科技还会持续强化提升InfoLock,由于现在愈来愈多人使用USB随身碟,且用户不期望被Key Pro独占一个USB接口,因为PC上即便有4~6个USB接口,也经常有不够使用,以下一版的Key Pro/USB Token有可能会与USB随身碟合而为一,一方面可以让使用者存放个人资料,另一方面也可进行用户数据加密防护。

        如果要让Key Pro/USB Token与USB随身碟结合,则USB随身碟所用的控制器芯片必须放入原有Key Pro MCU所用的控工艺序,而EEPROM的数据则改放入到NAND Flash内。

        其次,InfoLock的Key Pro/USB Token也可能会转变成合乎TPM(Trusted Platform Module,可信任平台模块)规范的硬件设计,这是目前在PC上逐渐普及运用的硬件加解密规范,许多处理器、以太网络控制器芯片都已内建,并运用在笔记本电脑、电视游乐器内,例如Microsoft的Xbox 360即有内建。

        最后,下一版的InfoLock在软件上也要进行提升,现有InfoLock的PC端程序是直接进行I/O运作层次的拦截与监视,以此来绝禁开文件、编修、存盘、转存、复制、打印、撷图等行为,此种作法在现有的Windows 98、Me、XP上可行,但在Windows Vista上则会被认为是不安全的程序运作,必须经过再次的提示、确认才能执行。

        因此,新的PC端程序将会依据Windows Vista对应用程序、装置驱动程序的新规范来开发、撰写,以不直接介入I/O层次的方式,但同样能实现、执行版权管理防护。不过现在Windows Vista的使用量仍少,且现有作法仍适用于Windows 98、XP,同时Windows Vista也仍可运用,预计在Windows Vista更成熟普遍时,新架构、新执行方式的InfoLock软件才需要登场。

              

        △图说:騋扬科技(McAMOS Technology)的方案:InfoLock Data Security System。盒内包含了PC端安装软件与USB接口的Key Pro硬件锁。(黄鸿模摄) 

 
               


        △图说:USB界面的Key Pro(或称:USB Token)的图片。(郭长佑摄) 

  
          


        △图说:Key Pro/USB Token插入笔记本电脑时的模样。(郭长佑摄)

             

        △图说:图上为一般USB随身碟的内部电路,控制器左侧用USB接口与PC的USB端口连接,右侧用NAND Flash接口与NAND Flash内存连接。图下则是USB型的Key Pro之电路,微制器左侧用USB接口与PC相连,右侧以GPIO或SPI、Microwire等接口与串行式EEPROM相连。(郭长佑绘)


评论


相关推荐

技术专区

关闭