题目:Alice 和Bob是两个程序员,发明了一个比MS Word还好用的文字处理软件PaperWrite,把软件做成一个安装光盘,安装在Windows系统中就能使用,但是由于他们对于安全技术不是很了解,故受到盗版问题的困扰,需要你的帮助。设计一个版权保护模块,防止盗版使用软件,方法不限。
方法1:数字水印
数字水印:用来证明一个数字产品的拥有权、真实性, 数字水印是通过一些算法嵌入在数字产品中的数字信息。
在制作数字光盘时在其中加入隐藏的唯一数字水印,安装或使用软件时将数字水印上传到服务器,若发现多个用户使用同一个数字水印,说明这份光盘遭到盗版,则拥有这一数字水印的所有用户都不能使用该软件。或采用DRM技术,对于每一份正版软件,都用NEC算法为其生成数字水印,并存储于服务器。每次用户启动软件时,都必须联网并与服务器进行数字水印比对,比对不成功就无法启动软件。
方法2:
依赖特定的硬件,通过硬件和软件相结合的方式来实现软件加密保护的技术。常用的方法有磁盘加密、加密卡和加密锁等。如需要一个安装在计算机USB口上的硬件,且软件的一部分程序或算法在这个硬件中运行,确如果缺失这部分则无法运行。
方法3:序列号
大部分收费软件都使用的方法。在购买软件时用户会获得一个产品序列号,软件在安装时需要用户输入正确的序列号,如果序列号不正确则拒绝安装。