一种通过使用许可控制软件使用的装置制造方法及图纸

技术编号:2821084 阅读:187 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供了一种软件保护装置,本软件保护装置包含一个功能模块使用控制单元,功能模块使用控制单元可以根据功能模块的使用许可来控制该功能模块的使用,并可以为功能模块安装或者更新使用许可,从而解决了使用许可在软件中容易被跟踪、分析和破解的问题。

【技术实现步骤摘要】

本专利技术涉及软件保护技术,特别是一种通过使用许可控制软件保护装置 中的功能模块的使用,来控制软件使用的技术。
技术介绍
功能模块软件开发商中从软件产品中提取出来的可以或者已经放在软 件保护装置中的供外部调用代码、数据或者代码和数据。随着经济技术的飞速发展,软件作为辅助工具已经深入到了各行各业当 中。软件产品是软件设计者和软件编程人员智慧的结晶,软件开发商的生存 和发展是软件产品充足供应的基础,因而,保护软件产品的版权,防止软件 产品被盗版,具有很重要的现实意义。在软件开发商已有的保护软件产品的众多策略中,多数采用了这样一种 方式提炼出软件产品中的核心算法或密钥作为关键程序代码,将所述关键 程序代码及该程序代码所需要的数据放在软件保护装置中。作为软件保护装 置的功能模块,供外部软件调用。采用这种方式以后当用户使用软件产品时, 必须要有软件保护装置同时运行,否则将无法使用该软件产品。这种策略的优势是,软件产品的关键代码是放在软件保护装置中的,破 解者很难得到软件产品的关键程序代码,也很难克隆软件保护装置,也就很 难破解该软件产品。当然所述的软件保护装置的处理芯片是一个具有一定安 全认证等级的智能卡芯片才可以防止被硬克隆。正因为有这种优势,国内外越来越多的软件开发商都采用了这种策略保护自己的软件产品。由于市场需求和软件产业的服务化的发展,用户可以购买 一 个软件的使用时间,使用次数等。软件开发商针对用户不同需求,提供不同版本的软件。因此软件开发商需要通过使用许可来限制软件的使用。现有的软件使用许可控制都是在软件中实现,破解者可以根据使用许可 的控制模块和/或分析使用许可数据,从而修改或者伪造使用许可,获得非 法的软件的使用权。从而给软件开发商带了极大的经济损失。
技术实现思路
有鉴于此,本专利技术提供了 一种通过使用许可控制软件使用的软件保护装 置。本专利技术通过使用许可控制软件保护装置中的功能模块的使用,达到控制 软件使用的目的。根据本专利技术的一个方面,提供一种软件保护装置,其特征在于,该软件 保护装置包含功能模块使用控制单元,用于接收外界对功能模块的调用请 求,并根据该功能模块的使用许可,决定该功能模块是否可以被调用。根据本专利技术的一个方面,其特征还在于,功能模块使用控制单元还用于 接收使用许可安装包,并安装或者更新指定的功能模块的使用许可。根据本专利技术的一个方面,其特征还在于,功能模块使用控制单元检查指 定的功能模块的使用许可,如果该功能模块的使用许可有效,则允许该功能 模块被使用,否则不允许该功能模块被使用。根据本专利技术的一个方面,其特征还在于,使用许可有效包含该功能模块 的使用许可存在并且未过期。根据本专利技术的一个方面,其特征还在于,使用许可过期包含用户对软件 的使用已经超过该使用许可的允许范围。根据本专利技术的一个方面,其特征还在于,对软件的使用已经超过该使用 许可的允许范围包含超过该使用许可规定的使用时间或者次数等。根据本专利技术的一个方面,其特征还在于,功能模块使用控制单元在检查 通过该使用许可安装包的合法性和有效性后,为指定的功能模块安装或者更 新使用许可。根据本专利技术的一个方面,其特征还在于,所述安装或更新指定的功能模块的使用许可包含功能模块使用控制单元检查该使用许可安装包的合法性 和有效性;如果该使用许可安装包合法并且有效,则使用该使用许可安装包中携带 的使用许可更新指定的功能模块的使用许可;如果该功能模块的使用许可不存在,则为该功能模块保存使用许可安装 包中携带的使用许可;如果该使用许可安装包不合法或者无效,则终止该使用许可安装包的安 装过程。根据本专利技术的一个方面,其特征还在于,使用许可安装包的合法性检查 包含检查该使用许可安装包的校验码。根据本专利技术的一个方面,其特征还在于,校验码是使用预先设定的密码学算法和密码对使用许可计算得到的。根据本专利技术的 一 个方面,其特征还在于,所述的密码学算法可以是M A C算法、HMAC算法或者非对称密码的数字签名算法。根据本专利技术的一个方面,其特征还在于,使用许可安装包的有效性检查 包含检查该使用许可安装包是否适用于该软件保护装置;是否受到预先设 置的策略影响而不能被使用。根据本专利技术的一个方面,其特征还在于,检查该使用许可安装包是否适 用于该软件保护装置包含该软件保护装置是否包含在使用许可安装包的适 用范围内。根据本专利技术的一个方面,其特征还在于,是否受到预先设置的策略影响 而不能被使用包含如果该使用许可安装包是一次有效的,并且已经在该软 件保护装置上安装过,则不能被再次安装。附图说明图1:本专利技术的结构示意图。图2:本专利技术中的功能模块的使用流程示意图。图3:本专利技术中使用许可安装或更新流程示意图。图4:本专利技术一个实施例中功能模块使用流程示意图。图5:本专利技术一个实施例中的使用许可安装或更新流程示意图。具体实施例方式为使本专利技术的目的、技术方案及优点更加清楚明白,以下参照附图并举 实施例,对本专利技术进行进一步详细说明。图l为本专利技术的结构图,如图l所示,本专利技术的软件保护装置中包含有 功能模块使用控制单元。功能模块使用控制单元可以是一个专用的硬件模块,也可以是软件保护 装置中的固件程序。其功能为接收来自外界的使用功能模块的请求,对该 功能模块的使用许可进行解析,根据解析的结果来控制功能模块是否可以被 使用。所述的使用许可保存在软件保护装置内部的存储区,符合功能模块使 用控制单元所接受的格式, 一个典型的使用许可的内容和格式为License ID = 0x23988707 Meter = 32ExpireDate = 20091001 其中,License ID表示使用许可的ID, Meter表示软件可以被使用的次 数,ExpireDate表示软件可以使用的截至日期。功能模块使用控制单元可以 根据关键字"Meter"和"ExpireDate"的值来判断功能模块是否允许被使用。所述的根据使用许可控制功能模块是否可以被使用,是指功能模块使用 控制单元检查指定的功能模块使用许可。如果该功能模块的使用许可有效, 则允许该功能模块被使用,否则不允许该功能模块被使用。所述的功能模块使用许可有效是指,该功能模块的使用许可存在,并且未过期。所述的使用许可过期是指,用户对软件的使用的已经超过该使用许可的允许范围,例如超过该使用许可规定的使用时间或者次数等。功能模块使用控制单元还用于接收新的功能模块的使用许可安装包,并 安装或者更新指定的功能模块的使用许可。所述安装或更新指定的功能模块的使用许可,是指功能模块使用控制单 元检查该使用许可安装包的合法性和有效性。如果该使用许可安装包合法并 且有效,则使用该使用许可安装包中携带的使用许可更新指定的功能模块的 使用许可,如果该功能模块的授权信息不存在,则为该功能模块保存使用许 可安装包中携带的使用许可;如果该使用许可安装包不合法或者无效,则终 止该使用许可安装包的安装过程。使用许可安装包的合法性检查,是指检查该使用许可安装包的校验码, 从而确定该使用许可安装包的发布者是否合法,该使用许可安装的数据是否 正确并完整。所述的校验码是软件开发商使用预先设定的密码学算法和软件开发商 拥有的密码对使用许可计算得到的。所述的密码学算法可以是MAC算法,HMAC算法或者非对称密本文档来自技高网
...

【技术保护点】
一种软件保护装置,其特征在于,该软件保护装置包含:功能模块使用控制单元,用于接收外界对功能模块的调用请求,并根据该功能模块的使用许可,决定该功能模块是否可以被调用。

【技术特征摘要】

【专利技术属性】
技术研发人员:孙吉平韩勇
申请(专利权)人:北京深思洛克数据保护中心
类型:发明
国别省市:11[中国|北京]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1