[发明专利]对软件进行加密、解密的方法及加密、解密的装置有效
| 申请号: | 200710107636.6 | 申请日: | 2007-05-23 |
| 公开(公告)号: | CN101311942A | 公开(公告)日: | 2008-11-26 |
| 发明(设计)人: | 唐文;胡建钧 | 申请(专利权)人: | 西门子(中国)有限公司 |
| 主分类号: | G06F21/22 | 分类号: | G06F21/22 |
| 代理公司: | 暂无信息 | 代理人: | 暂无信息 |
| 地址: | 100102北*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 软件 进行 加密 解密 方法 装置 | ||
技术领域
本发明涉及计算机安全领域,特别涉及计算机加密领域,具体的讲是对软件进行加密、解密的方法及加密、解密的装置。
背景技术
现在,软件已经成为一种具有独立的价值的商品,软件的功能、执行过程和编码等等都很可能成为竞争对手或其它组织或个人抄袭的对象。所以软件,特别是由中间语言,例如,Java,.NET等编程语言编写的软件很容易通过逆向工程被逆向编码,例如使用.NET Reflect(微软的逆向工程工具),JAD(Java的逆向工程工具),从而得到软件的核心算法、编码等信息,这些信息如果被破解者恶意使用会造成开发者的损失,例如,模仿软件的核心算法,绕过注册过的软件等。
在现有技术中,通过更改程序内部函数名称,重新安排控制流程或其它方法来迷惑破解者的破解行为具有一定的效果,能够使逆向编码后的软件程序很难读懂或者无法读懂,但是这种源代码的保护机制不能避免软件程序被逆向编码,软件程序的信息还是有可能泄漏。
在《计算机与信息技术》2005年5月刊“利用DES加密算法保护Java源代码”一文中,公开了一种将Java编辑的软件进行加密,并在运行时解密的方案。该方案使用数据加密标准(DES:Data Encryption Standard)将可执行的Java程序加密,将加密后的程序编码和密钥存储于存储器内,加载器将加密的Java程序编码和密钥加载到系统中,调出密钥并将程序编码解密,转换为可执行的编码形式,并载入Java虚拟机(JVM)中运行。
上述方法很容易被破解者跟踪,破解者只要使用调试工具就可以跟踪程序启动的每一步。如果程序在每次运行时都访问某一个文件,从该文件中获得密钥或者获得系统符号名,这样会使破解者怀疑该文件可能为该软件的密钥文件或者系统符号名对照表,如果破解者确定了该文件就是密钥文件,则会千方百计的破解该密钥文件,如果破解了密钥文件,则就可以将密文的软件编码转换为明文的软件编码,对该软件就可以进行逆向工程以生成源代码,从而造成软件所有人的损失。
发明内容
为了解决以上问题,增加软件被反编译的难度,本发明的目的在于提供一种对软件进行加密的方法和一种相应的解密方法,加入了门限加密特征,在每次启动软件时获取门限密钥因子的地址都不一样,使破解者不能确定哪些是密钥地址。
本发明还提供了一种对软件进行加密的装置和一种相应的解密装置,能够随机的将多个门限密钥因子存储于软件的不同段中,解密时随机的从某些段中取得门限密钥因子用于解密软件。
步骤101,利用第一加密模块将存储介质中的软件明文加密为第一软件密文,其中解密所用的密钥为第一密钥SK;
步骤102,第二加密模块利用n个门限密钥因子生成第二密钥,使用该第二密钥将所述第一密钥SK加密为密钥密文PSK,并将所述密钥密文PSK拼接于所述第一软件密文中,其中n为大于1的正整数;
步骤103,利用封装模块将所述密钥密文PSK和第一软件密文作为一体分为n段,将所述门限密钥因子拼接于所述分段中,形成第二软件密文,并存储于所述存储介质中。
根据本发明加密方法的一个进一步的方面,所述步骤101中所述的加密方法包括,对称加密算法或非对称加密算法。
根据本发明加密方法的再一个进一步的方面,所述步骤102中使用的门限密钥算法包括沙米尔门限密钥算法。
根据本发明加密方法的另一个进一步的方面,所述步骤103中,所述封装模块将所述密钥密文PSK和第一软件密文作为一体分为n段,C代表所述n段中的任意一段,段C由块C0,C1,C2,…,Cm-1构成,针对于每一段C和相应的k计算:
C′0=C0×k (E0)
C′1=C1×k+C0 (E1)
C′2=C2×k+C1 (E2)
C′m-1=Cm-1×k+Cm-2 (Em-1)
C′m=Cm-1 (Em)
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西门子(中国)有限公司,未经西门子(中国)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200710107636.6/2.html,转载请声明来源钻瓜专利网。





