[发明专利]编译方法以及编译器有效
| 申请号: | 200910082321.X | 申请日: | 2009-04-14 |
| 公开(公告)号: | CN101533454A | 公开(公告)日: | 2009-09-16 |
| 发明(设计)人: | 陆舟;于华章 | 申请(专利权)人: | 北京飞天诚信科技有限公司 |
| 主分类号: | G06F21/22 | 分类号: | G06F21/22;G06F9/44 |
| 代理公司: | 北京中博世达专利商标代理有限公司 | 代理人: | 申 健 |
| 地址: | 100083北京市*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 编译 方法 以及 编译器 | ||
技术领域
本发明涉及计算机技术领域,尤其涉及一种编译方法以及编译器。
背景技术
智能密钥设备是一种带有处理器和存储器的小型硬件装置,它通过计算机的数据通讯接口与主机连接。它具有密钥生成、安全存储密钥、预置加密算法等功能。智能密钥设备与密钥相关的运算完全在装置内部运行,并且具有抗攻击的特性,安全性极高。智能密钥设备生产商、软件系统开发商或者最终用户可以将一些重要信息存储到智能密钥设备中,用以保证信息安全性或者防止遗忘。
目前,较高端的智能密钥设备是可编程的,即可以在智能密钥设备中运行预先存入其中的程序代码。智能密钥设备将预先存入其中的程序代码进行编译,编译后在计算机上执行编译后的程序代码得到处理结果。其中,编译过程是指将高级语言编写的源程序翻译成目标程序的过程。该目标程序是由计算机可执行的指令构成,并且功能与源程序的功能相同。编译过程分为5个阶段:词法分析、语法分析、语义检查与中间代码的生成、代码优化和目标代码生成。
在实现上述编译过程中,发明人发现现有技术中至少存在如下问题:从源程序编译出目标程序后,任何一个具有机器语言处理能力的计算机都能够执行该目标程序,使得编译后的目标程序不能得到较好的版权保护;并且现有的版权保护方法也特别复杂,需要用户手动地将验证智能密钥设备的代码加到源程序中,并且还需要用户学习如何使用智能密钥设备。
发明内容
本发明的实施例提供一种编译方法以及编译器,用来简化、降低现有技术中版权保护的复杂度与难度。
为达到上述目的,本发明的实施例采用如下技术方案:
一种编译方法,包括对源程序代码进行预处理;并对预处理后的源程序代码进行词法分析和语法分析;该方法还包括:
按照预先设定的规则确定验证代码在源程序代码中的插入点;
将所述验证代码插入到所述插入点在源程序代码中的对应位置;
将包含插入了验证代码的源程序代码转换成目标程序代码。
一种编译器,包括编译模块,用于对源程序代码进行预处理,并对预处理后的源程序代码进行词法分析和语法分析;该编译模块还包括:
确定单元,用于按照预先设定的规则确定验证代码在源程序代码中的插入点;
插入单元,用于将所述验证代码插入到所述插入点在源程序代码中的对应位置;
转换单元,用于将包含插入了验证代码的源程序代码转换成目标程序代码。
本发明提供的编译方法及编译器,先在源程序代码中确定出验证代码的插入点,将验证代码插入到所述插入点在源程序代码中的对应位置,并将包含插入了验证代码的源程序代码转换成目标程序代码。如此一来,在执行目标程序代码的过程中如果执行到其中的验证代码处,则要进行智能密钥设备的验证,这样就能够防止目标程序被任何一台计算机执行,达到了目标程序代码版权保护的目的。并且,由于本发明中目标程序执行过程中是对智能密钥设备进行验证,而智能密钥设备是硬件形式存在的,相对于现有技术中通过软件形式设置 密码而言,本发明在编译阶段自动加入了访问智能密钥设备的代码,使目标程序代码自动受到智能密钥设备的保护,简化、降低了版权保护的复杂度与难度。。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例1中编译方法的流程图;
图2为本发明实施例1中编译器的框图;
图3为本发明实施例2中编译方法的流程图;
图4为本发明实施例2中编译器的框图。
具体实施方式
本发明实施例中的验证代码能够对智能密钥设备进行验证,为了便于理解本发明中保护目标程序代码版权时所采用的验证代码,下面详细的介绍一下智能密钥设备。
一般智能密钥设备中会内置安全芯片来实现安全功能。该安全芯片除了具有通用嵌入式微控制器的各种特性外,还具有较可靠的安全性能。在设计智能密钥设备时会针对安全性能方面在安全芯片的结构上做一些特殊处理,比如采用特定的安全内核作为安全芯片的内核,该安全内核能够支持多个拥有不同权限的状态,从而实现对硬件资源访问权限的管理。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京飞天诚信科技有限公司,未经北京飞天诚信科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910082321.X/2.html,转载请声明来源钻瓜专利网。





