CN101847188A - 一种基于时钟的安全装置的软件保护方法及安全装置 - Google Patents
一种基于时钟的安全装置的软件保护方法及安全装置 Download PDFInfo
- Publication number
- CN101847188A CN101847188A CN201010163373A CN201010163373A CN101847188A CN 101847188 A CN101847188 A CN 101847188A CN 201010163373 A CN201010163373 A CN 201010163373A CN 201010163373 A CN201010163373 A CN 201010163373A CN 101847188 A CN101847188 A CN 101847188A
- Authority
- CN
- China
- Prior art keywords
- safety feature
- end device
- time
- clock
- subelement
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 45
- 238000004891 communication Methods 0.000 claims abstract description 28
- 238000001514 detection method Methods 0.000 claims description 9
- 108010001267 Protein Subunits Proteins 0.000 claims description 5
- 230000004913 activation Effects 0.000 claims description 4
- 230000005540 biological transmission Effects 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 10
- 238000013478 data encryption standard Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 230000003213 activating effect Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000035945 sensitivity Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 238000000060 site-specific infrared dichroism spectroscopy Methods 0.000 description 1
- 230000002618 waking effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
- G06F21/72—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits
- G06F21/725—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits operating on a secure reference time value
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/121—Restricting unauthorised execution of programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/121—Restricting unauthorised execution of programs
- G06F21/123—Restricting unauthorised execution of programs by using dedicated hardware, e.g. dongles, smart cards, cryptographic processors, global positioning systems [GPS] devices
Abstract
本发明公开了一种基于时钟的安全装置的软件保护方法及安全装置,属于信息安全领域。所述方法包括:安全装置与终端装置建立连接,所述安全装置接收所述终端装置中的受保护软件发送的服务指令,所述安全装置利用预设的时间保护功能对所述终端装置中的受保护软件进行保护;所述安全装置包括:接口模块和主控模块,其中,所述主控模块包括:通讯单元和软件保护单元;本发明提供的安全装置中保存时间的限制信息,根据时间的限制信息通过本发明提供的方法可以精确地控制了受保护软件使用安全装置的起始时间和截止时间,为受保护软件提供了更安全的服务。
Description
技术领域
本发明涉及信息安全领域,特别涉及一种基于时钟的安全装置的软件保护方法及安全装置。
背景技术
安全装置是一种带有处理器和存储器的小型硬件装置,它内置CPU、存储器、芯片操作系统,使用简单、成本较低,可以存储用户的密钥或数字证书,利用智能密钥设备内置的密码算法对软件进行保护。
现有技术中,最流行的对软件的使用权进行保护的方法为:提炼出软件产?中的核心算法或密钥作为关健程序代码,将所述关键程序代码及该程序代码所需要的数据放在安全装置中作为安全装置的功能模块,供外部软件调用,即,功能模块为:软件开发商从软件中提取出来的可以或者已经放在安全装置中的供外部调用的代码和/或数据,采用这种方式以后,当用户使用软件时,必须要有安全装置同时运行,否则将无法使用该软件。
这种软件保护方法的优势是,软件的关健代码是放在安全装置中的,破解者很难得到软件的关键程序代码,也很难克隆安全装置,也就很难破解该软件,因此国内外越来越多的软件开发商都采用了这种方法来保护自己的软件。
但是现有技术中的这种软件产品的保护方法也存在很大的缺点,安全装置无法记录其开始使用的起始日期,并且也不能精确地控制其被使用的起始时间和截止时间。
发明内容
为了解决现有技术中的不足,本发明提供了一种基于时钟的安全装置的软件保护方法及安全装置,所述技术方案如下:
一种基于时钟的安全装置的软件保护方法,其特征在于,所述方法包括:
所述安全装置与终端装置建立连接;
所述安全装置接收所述终端装置中的受保护软件发送的服务指令;
所述安全装置利用预设的时间保护功能对所述终端装置中的受保护软件进行保护。
一种基于时钟的安全装置,其特征在于,所述安全装置包括:
接口模块,与主控模块相连,用于所述安全装置与终端装置建立连接;
主控模块,用于控制所述安全装置的各种操作;
其中,所述主控模块包括:
通讯单元,与软件保护单元相连,用于与所述终端装置进行通讯,接收所述终端装置发送的服务指令,并将相应的结果返回给所述终端装置;
软件保护单元,与所述通讯单元相连,用于所述安全装置利用预设的时间保护功能对所述终端装置中的受保护软件进行保护。
本发明的有益效果在于:本发明通过安全装置中保存时间的限制信息,并根据时间的限制信息限制安全装置的使用时间,使得安全装置更加方便地与时间、日期等功能进行绑定,精确地控制了受保护软件使用安全装置的起始时间和截止时间,为受保护软件提供了更安全的服务。
附图说明
图1为本发明实施例1提供的一种基于时钟的安全装置的软件保护方法的流程图;
图2为本发明实施例2提供的另一种基于时钟的安全装置的软件保护方法的流程图;
图3为本发明实施例3提供的一种安全装置的结构示意图;
图4为本发明实施例3提供的一种安全装置的具体结构示意图;
图5为本发明实施例3提供的一种安全装置的另一种具体结构示意图;
图6为本发明实施例3提供的一种安全装置的具体电路图;
图7为本发明实施例4提供的另一种安全装置的结构示意图;
图8为本发明实施例5提供的又一种基于时钟的安全装置的软件保护方法的流程图;
图9为本发明实施例6提供的再一种基于时钟的安全装置的软件保护方法的流程图;
图10为本发明实施例7提供的又一种安全装置的结构示意图;
图11为本发明实施例7提供的又一种安全装置的具体结构示意图;
图12为本发明实施例7提供的又一种安全装置的另一种具体结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式做进一步地详细描述。
实施例1
本实施例提供了一种基于时钟的安全装置的软件保护方法,该安全装置中的时钟是通过时钟芯片来实现的,是一种硬时钟,并且安全装置中有电池,当安全装置与终端装置没有连接时,硬时钟由电池供电。
在本实施例中,安全装置出厂时,硬时钟是不工作的,即不计时,没有进行过时间校对,只有在接收到终端装置发送的服务指令后才开始计时。并且安全装置在出厂之前还可以设置一个或多个关于时间的限制信息,该时间的限制信息用于安全装置在出厂后的使用中对受保护软件实施时间保护功能,并且只有当安全装置与终端装置建立连接之后,且接收到终端装置发送的服务指令时安全装置才会利用上述时间保护功能对终端装置中的受保护软件进行保护。
参见图1,一种基于时钟的安全装置的软件保护方法具体为:
步骤101:安全装置与终端装置建立连接;
在本实施例中,安全装置与终端装置建立连接的步骤具体如下:
1、安全装置上电;
2、终端装置对安全装置进行枚举,获得安全装置的相关信息;
3、终端装置将按照HID协议进行封装后的指令发送给安全装置,对安全装置进行初始化,与安全装置进行通信;
或者,终端装置将按照CCID协议进行封装后的指令发送给安全装置,对安全装置进行初始化,与安全装置进行通信;
或者,终端装置将按照SSID协议进行封装后的指令发送给安全装置,对安全装置进行初始化,与安全装置进行通信;
本实施例中的时间的限制信息具体为限制受保护软件使用该安全装置的时间长度(如10小时);
终端装置可以为计算机、有源读卡器、射频读卡器以及所有能够使用上述安全装置的装置。
步骤102:终端装置中的受保护软件向安全装置发送服务指令,其中服务指令具体为激活硬时钟,并设置硬时钟的起始时间的指令,如0X4D+60个字节的起始时间;
在本实施例中,受保护软件是指对部分或全部功能的使用进行修改或加密保护的软件,并且在受保护软件启动应用保护功能时,受保护软件可以自动或手动地向安全装置发送服务指令;
服务指令为安全装置与终端装置之间预先约定的指令,可以是预先约定的多条服务指令中的任意一条,例如,服务指令可以为激活硬时钟,并设置硬时钟的起始时间的指令,如0X4D+60个字节的起始时间,也可以是终端装置与安全装置的通讯指令,如APDU指令80 10 00 00 00,还可以是程序启动指令和/或功能算法指令,或还可以是读指令0X3C,写指令0X3D等;
进一步的,终端装置中的受保护软件还可以向安全装置发送加密后的服务指令,其中,进行加密可以但不限于采用以下加密算法,如AES(AdvancedEncryption Standard)高级加密算法、DES(Data Encryption Standard)数据加密算法等。
步骤103:安全装置接收终端装置发送的服务指令并进行解析,然后激活硬时钟使其开始计时;
在本步骤103中,如果安全装置接收到的是加密后的服务指令,则安全装置按照预先约定的解密算法对加密后的服务指令进行解密,解密算法可以但不限于:AES算法或DES算法等。
步骤104:将硬时钟的时间状态值设置为硬时钟的起始时间;
时间状态值是指在内部硬时钟被激活开始计时之前,硬时钟处于不工作的状态时,硬时钟内部存储的时间值,这个时间值即为时间状态值;
并且,本实施例步骤104还可以包括:安全装置读取内部预先设置的时间限制信息,即限制受保护软件使用该安全装置的时间长度(如10小时),并判断硬时钟保存的时间状态值是否为0,若为0,则安全装置将读取得到的时间长度(如10小时)设置为硬时钟的截止时间,若不为0,则安全装置将硬时钟保存的时间状态值加上读取得到的时间长度(如10小时)后得到的时间设置为受保护软件使用该硬时钟的截止时间;
其中,当判断得出硬时钟保存的时间状态值不为0时,步骤104还可以为:安全装置将硬时钟保存的时间状态值清0,将硬时钟的起始时间设置为0,并将读取得到的时间长度设置为硬时钟的截止时间;
需要说明的是,本发明实施例中省略了安全装置的硬时钟与终端装置的时钟进行同步的过程,安全装置按照硬时钟本身进行计时,同时安全装置还可以通过接收到的服务指令,将自身的硬时钟的当前时间与终端装置的时钟进行校准,按照校准后的时间进行计时。
步骤105:安全装置读取硬时钟的当前时间,并判断当前时间是否为有效时间;
如果是,则执行服务指令并将执行结果返回给终端装置;
如果不,则将错误结果返回给终端装置,或者安全装置内部自毁,或者安全装置自锁。
其中,安全装置返回给终端装置的执行结果或错误结果可以是加密的,安全装置所采用的加密算法可以但不限于包括AES算法或DES算法;并且,错误结果具体可以但不限于为安全装置已过期的提示信息或报错信息或随机结果;
在本步骤105中,判断当前时间是否为有效时间的方法具体可以为:
安全装置计算当前时间和起始时间的差值,并将得到的差值与其自身预置的限制受保护软件使用该安全装置的时间长度相比较,判断得到的差值是否已经超过其自身预置的限制受保护软件使用该安全装置的时间长度,如果超过,则当前时间不为有效时间;如果未超过,则当前时间为有效时间;
例如,安全装置的硬时钟当前时间为6小时25分,起始时间是1小时;而其自身预置的限制受保护软件使用该安全装置的时间长度为10小时,当前时间与起始时间的差值为5小时25分,未超过时间长度10小时,因此当前时间有效;
或者,安全装置读取此时硬时钟的当前时间和截止时间,并判断读取得到的当前时间是否在截止时间之前,若不是,则当前时间不为有效时间;若是,则当前时间为有效时间;
例如,若安全装置的硬时钟当前时间为10小时45分,而截止时间为10小时,当前时间在截止时间之后,因此当前时间无效。
在本实施例中,步骤103至步骤105即为安全装置根据时间的限制信息实施时间保护功能,并利用预设的时间保护功能对终端装置中的受保护软件进行保护的操作,本实施例中预设的时间保护功能是通过硬时钟来实现的;
需要说明的是,当安全装置开始利用预设的时间保护功能对终端装置中的受保护软件进行保护后,只有当受保护软件主动停止应用或已到达应用时间时,安全装置才会停止执行时间保护功能,如果强制其停止,则该安全装置将被损坏,并向终端装置返回安全装置已坏的信息。
本发明实施例通过安全装置中保存时间的限制信息,并根据时间的限制信息限制安全装置的使用时间,使得安全装置更加方便地与时间、日期等功能进行绑定,精确地控制了受保护软件使用安全装置的起始时间和截止时间,为受保护软件提供了更安全的服务。
实施例2
本实施例提供了另一种基于时钟的安全装置的软件保护方法,该安全装置中的时钟是通过时钟芯片来实现的,是一种硬时钟,并且安全装置中有电池,当安全装置与终端装置没有连接时,内部硬时钟由电池供电。
在本实施例中,安全装置在出厂时,硬时钟是开始工作了的,已经进行了校对,使得硬时钟的时间和日期是准确、可信的。并且安全装置在出厂之前还可以设置一个或多个关于时间的限制信息,该时间的限制信息用于安全装置在出厂后的使用中对受保护的软件实施时间保护功能,并且只有当安全装置与终端装置建立连接之后,且接收到终端装置发送的服务指令时安全装置才会利用上述时间保护功能对终端装置中的受保护软件进行保护。
参见图2,另一种基于时钟的安全装置的软件保护方法具体为:
步骤201:安全装置与终端装置建立连接;
在本实施例中,安全装置与终端装置建立连接的步骤具体与实施例1中安全装置与终端装置建立连接的步骤相同,在此不再重复;
其中,本实施例中的时间的限制信息可以为限制受保护软件使用该安全装置的时间长度(如10小时);或者,还可以为限制受保护软件只能在截止日期之前(如2010年12月31日之前)使用该安全装置;或者,也可以为限制受保护软件只能在指定的时间区间内(如一天当中的8:00a.m——5:00p.m)使用该安全装置。
步骤202:终端装置中的受保护软件向安全装置发送服务指令,其中服务指令具体为读取硬时钟当前时间的指令,如0X4C;
在本实施例中,受保护软件是指对部分或全部功能的使用进行修改或加密保护的软件,并且在受保护软件启动应用保护功能时,受保护软件可以自动或手动地向安全装置发送服务指令;
服务指令为安全装置与终端装置之间预先约定的指令,可以是预先约定的多条服务指令中的任意一条,例如,服务指令可以为读取硬时钟当前时间的指令,如0X4C,也可以为终端装置与安全装置的通讯指令,如APDU指令80 10 0000 00,还可以是程序启动指令和/或功能算法指令,或还可以是读指令0X3C,写指令0X3D等;
进一步的,终端装置中的受保护软件还可以向安全装置发送加密后的服务指令,其中,进行加密可以但不限于采用以下加密算法,如AES高级加密算法、DES数据加密算法等。
步骤203:安全装置接收终端装置发送的服务指令并进行解析,然后读取内部硬时钟的当前时间;
本发明实施例中省略了安全装置的硬时钟与终端装置的时钟进行同步的过程,安全装置按照内部硬时钟本身进行计时,同时安全装置还可以通过接收到的服务指令,将自身的硬时钟的当前时间与终端装置的时钟进行校准,按照校准后的时间进行计时。
步骤204:判断当前时间是否为有效时间;
如果是,则执行服务指令并将执行结果返回给终端装置;
如果不,则将错误结果返回给终端装置。
其中,安全装置返回给终端装置的执行结果或错误结果可以是加密的,安全装置所采用的加密算法可以但不限于包括AES算法或DES算法;并且,错误结果具体可以但不限于为安全装置已过期的提示信息或报错信息或随机结果;
在本步骤204中,判断当前时间是否为有效时间的方法可以包括以下几种:
(1)当时间的限制信息为限制受保护软件使用该安全装置的时间长度时;
判断是否为第一次使用该安全装置的时间保护功能;
如果是,则保存第一次使用该安全装置的时间保护功能的起始时间,并在使用结束后保存使用该安全装置的时间保护功能的时间长度;
如果否,则读取内部保存的已使用该安全装置的时间保护功能的时间长度,判断该读取得到的值是否小于限制受保护软件使用该安全装置的时间长度;
如果是,则当前时间为有效时间;
如果否,则当前时间不为有效时间。
例如,读取得到的内部保存的已使用该安全装置的时间保护功能的时间长度为8小时,而限制受保护软件使用该安全装置的时间长度为10小时,则硬时钟的当前时间有效。
(2)当时间的限制信息为限制受保护软件只能在截止日期之前使用该安全装置时;
安全装置读取硬时钟的当前时间和时间的限制信息中的截止时间;
判断硬时钟的当前时间是否已超过截止时间;
如果是,则当前时间不为有效时间;
如果否,则当前时间为有效时间。
例如,硬时钟的当前时间为2009年6月23日,时间的限制信息中的截止时间为2010年12月31日,则硬时钟的当前时间未超过截止时间,当前时间有效。
(3)当时间的限制信息为限制受保护软件只能在指定的时间区间内使用该安全装置时;
安全装置读取硬时钟的当前时间、时间的限制信息中的起始时间和截止时间;
判断硬时钟的当前时间是否处于时间的限制信息中的起始时间和截止时间之间;
如果是,则当前时间为有效时间;
如果否,则当前时间不为有效时间。
例如,硬时钟的当前时间为6:00a.m,时间的限制信息中的起始时间和截止时间分别为:8:00a.m和5:00p.m,则硬时钟的当前时间未处于时间的限制信息中的起始时间和截止时间,当前时间无效。
在本实施例中,步骤203和步骤204即为安全装置根据时间的限制信息对实施时间保护功能,并利用预设的时间保护功能对终端装置中的受保护软件进行保护的操作,本实施例中预设的时间保护功能是通过硬时钟来实现的;
需要说明的是,当安全装置开始利用预设的时间保护功能对终端装置中的受保护软件进行保护后,只有当受保护软件主动停止应用或已到达应用时间时,安全装置才会停止执行时间保护功能,如果强制其停止,则该安全装置将被损坏,并向终端装置返回安全装置已坏的信息。
本发明实施例通过安全装置中保存时间的限制信息,并根据时间的限制信息限制安全装置的使用时间,使得安全装置更加方便地与时间、日期等功能进行绑定,精确地控制了受保护软件使用安全装置的起始时间和截止时间,为受保护软件提供了更安全的服务。
实施例3
本实施例提供了一种安全装置,该安全装置中的时钟是通过时钟芯片来实现的,是一种硬时钟,并且安全装置中有电池,当安全装置与终端装置没有连接时,硬时钟由电池供电。
参见图3,该安全装置包括:
接口模块301,与主控模块304相连,用于安全装置与终端装置建立连接,本实施例中具体可以为USB接口模块;
硬时钟模块302,与电池模块303和主控模块304相连,用于进行计时,实现安全装置的软件保护功能;
电池模块303,与硬时钟模块302相连,用于当安全装置没有与终端装置连接时,给硬时钟模块302供电;
主控模块304,用于控制安全装置的各种操作;
其中,主控模块304具体包括:
通讯单元3041,与软件保护单元3042相连,用于安全装置与终端装置进行通讯,具体用于接收终端装置中的受保护软件发送的预先约定的服务指令;
软件保护单元3042,与通讯单元3041相连,用于安全装置利用预设的时间保护功能对终端装置中的受保护软件进行保护。
进一步地,参见图4,一种实施方式下,软件保护单元3042包括:
激活子单元30421,用于激活安全装置中的硬时钟模块302使其开始计时;
设置子单元30422,与激活子单元30421相连,用于将硬时钟模块302的时间状态值设置为硬时钟模块302的起始时间;
读取子单元30423,与设置子单元30422相连,用于读取硬时钟模块302的当前时间;
判断子单元30424,与读取子单元30423相连,用于判断读取子单元30423读取得到的当前时间是否为有效时间;
相应地,通讯单元3041还用于当判断子单元30424的判断结果为是时,发送服务指令的执行结果给终端装置;当判断子单元30424的判断结果为否时,发送错误结果给终端装置,或者安全装置内部自毁,或者安全装置自锁,其中错误结果具体可以但不限于为安全装置已过期的提示信息或报错信息或随机结果。
具体地,设置子单元30422,还用于根据起始时间和时间的限制信息设置硬时钟模块302的截止时间;
读取子单元30423,具体用于读取硬时钟模块302的当前时间、以及设置子单元30422设置的截止时间;
相应地,判断子单元30424,用于判断读取子单元30423读取得到的当前时间是否已超过截止时间;
如果是,则判断子单元的结果为当前时间不为有效时间;
如果否,则判断子单元的结果为当前时间为有效时间;
或者,
读取子单元30423,用于读取硬时钟模块302的当前时间、时间的限制信息以及硬时钟模块302的起始时间;
判断子单元30424,用于判断当前时间与起始时间之间的差值是否小于时间的限制信息中设定的时间长度;
如果是,则判断子单元的结果为当前时间为有效时间;
如果否,则判断子单元的结果为当前时间不为有效时间。
进一步地,参见图5,另一种实施方式下,软件保护单元3042包括:
读取子单元30421,用于读取硬时钟模块302的当前时间;
判断子单元30422,与读取子单元30421相连,用于判断读取子单元30421读取得到的当前时间是否为有效时间;
相应地,通讯单元3041还用于当判断子单元30422的判断结果为是时,发送服务指令的执行结果给终端装置;当判断子单元30422的判断结果为否时,发送错误结果给终端装置,或者安全装置内部自毁,或者安全装置自锁,其中错误结果具体可以但不限于为安全装置已过期的提示信息或报错信息或随机结果。
具体地,判断子单元30422,还用于判断是否为第一次开启安全装置的时间保护功能;
如果是,软件保护单元3042还包括存储子单元,用于存储第一次使用该安全装置的时间保护功能的时间长度;
如果否,判断子单元30422,还用于判断存储的第一次使用该安全装置的时间保护功能的时间长度是否小于限制受保护软件使用该安全装置的时间长度;
如果是,则当前时间为有效时间;
如果否,则当前时间不为有效时间;
或者,
读取子单元30421,用于读取硬时钟模块302的当前时间、时间的限制信息以及设置为所述硬时钟模块302的起始时间的时间状态值;
判断子单元30422,用于判断当前时间与起始时间之间的差值是否小于时间的限制信息中设定的时间长度;
如果是,则判断子单元的结果为当前时间为有效时间;
如果否,则判断子单元的结果为当前时间不为有效时间。
或者,
读取子单元30421,用于读取硬时钟模块302的当前时间、时间的限制信息;
判断子单元30422,用于判断硬时钟模块302的当前时间是否已超过时间的限制信息中设定的截止时间;
如果是,则判断子单元的结果为当前时间不为有效时间;
如果否,则判断子单元的结果为当前时间为有效时间;
或者,
读取子单元30421,用于读取硬时钟模块302的当前时间、时间的限制信息;
判断子单元30422,用于判断所述硬时钟模块302的当前时间是否在所述时间的限制信息中设定的指定的使用时间区间内;
如果是,则当前时间为有效时间;
如果否,则当前时间不为有效时间。
进一步的,该主控模块304还可以包括:
解密单元,用于当通讯单元3041接收到的服务指令为加密的服务指令时,使用预先约定的解密算法对加密的服务指令进行解密;
加密单元,用于对执行结果或错误结果进行加密;
相应的,通讯单元3041具体还用于将加密后的执行结果或错误结果返回给终端装置。
本发明实施例通过安全装置中保存时间的限制信息,并根据时间的限制信息限制安全装置的使用时间,使得安全装置更加方便地与时间、日期等功能进行绑定,精确地控制了受保护软件使用安全装置的起始时间和截止时间,为受保护软件提供了更安全的服务。
进一步地,下面结合具体实现电路图来对安全装置中的各个功能模块进行详细地描述。
参见图6,图6为本发明实施例提供的安全装置的具体实现电路图。图6中的J1对应着安全装置的接口模块,具体为USB接口,用于安全装置与终端装置进行连接,图6中的U2、X1、C5和C6具体组成了安全装置中的硬时钟模块,图6中的B1为电池,B1与C7、D 3、D4具体组成了安全装置的电池模块,用于为安全装置中的时钟模块提供电源,图6中的U1是一个主控芯片,安全装置中的通讯模块和开启模块的实现均集成在这个主控芯片中。
实施例4
本实施例提供了另一种基于时钟的安全装置,该安全装置中的时钟是通过软时钟来实现的,即在安全装置的主控芯片中有一个定时器,并且该定时器能独立于主控芯片而工作,当主控芯片不工作时,该定时器还可以计时。
参见图7,该安全装置包括:
接口模块401,与主控模块402相连,用于安全装置与终端装置建立连接,本实施例中具体可以为USB接口模块;
主控模块402,用于控制安全装置的各种操作;
其中,主控模块402具体包括:
软时钟单元4021,用于进行计时,实现安全装置的时间保护功能;
在本实施例中,软时钟单元4021的时间周期可以为1秒,当安全装置不工作时,软时钟单元4021仍然在计时,开始计时且当时间到后,即软时钟单元计时满1秒后,唤醒单元唤醒运算单元开始工作。
唤醒单元4022,与软时钟单元4021相连,用于当软时钟单元4021的时间到时后,唤醒运算单元4023开始工作,具体用于通过中断唤醒运算单元4023开始工作;
运算单元4023,与软时钟单元4021和唤醒单元4022分别相连,用于将软时钟单元的时间周期的时间值加到安全装置停止工作时的时间上,作为新的当前时间;
在本实施例中,若安全装置停止工作时的时间为2010年3月17号13点21分59秒,此时软时钟单元仍在计时,满1S后,唤醒单元唤醒运算单元将这1S加到安全装置停止工作时的时间上,即加到2010年3月17号13点21分59秒上,此时安全装置的当前时间则为2010年3月17号13点22分00秒,因此如此反复,当安全装置不工作的情况下,安全装置的时间仍然是在不断更新的,保证了时间的准确、可信。
通讯单元4024,与软件保护单元4025相连,用于与终端装置进行通讯;
软件保护单元4025,与软时钟单元4021、唤醒单元4022、运算单元4023和通讯单元4024分别相连,用于安全装置利用预设的时间保护功能对终端装置中的受保护软件进行保护;
在本实施例中,该主控模块402还包括加密单元和解密单元,其具体操作与实施例3中所描述的操作相同,在此不再重复;
相应地,本实施例中的通讯单元4024和软件保护单元4025的具体操作与实施例3中所描述的操作相同,在此不再重复。
并且,基于该软时钟的安全装置的软件保护方法的具体实现流程与实施例1和实施例2中描述的流程相同,在此不再重复,可以参考实施例1和实施例2中的内容。
本发明实施例通过安全装置中保存时间的限制信息,并根据时间的限制信息限制安全装置的使用时间,使得安全装置更加方便地与时间、日期等功能进行绑定,精确地控制了受保护软件使用安全装置的起始时间和截止时间,为受保护软件提供了更安全的服务。
实施例5
本实施例提供了又一种基于时钟的安全装置的软件保护方法,该安全装置中的时钟是通过内部定时器来实现的,安全装置的主控芯片中有一个定时器,该定时器不能独立于主控芯片而工作,只有主控芯片工作时,该定时器才工作,并且安全装置中存在有功能模块,即为从软件中提取出来的放在安全装置中的供外部调用的代码和/或数据。
参见图8,又一种基于时钟的安全装置的软件保护方法,在安全装置与终端装置建立连接之后,具体实现步骤如下:
步骤500:安全装置初始化并启动内部计时器;
在本步骤500中,对内部计时器进行初始化包括利用终端装置的时间来设置内部计时器的初始时间,并启动内部计时器,实现软件保护功能。
步骤501:等待接收终端装置发送命令,并循环检测内部计时器的值是否已达到预先设定的阈值,如果内部计时器的值未达到阈值,则执行步骤502,否则执行步骤531;
步骤502:接收终端装置发送的命令,并判断接收到的命令为启用命令、调用命令还是停用命令;
当为启用命令时,执行步骤503;
当为调用命令时,执行步骤511;
当为停用命令时,执行步骤521;
步骤503:检查要求启用的功能模块是否超时,如果不超时则执行步骤504,如果超时,则向终端装置报告错误,并返回步骤501;
在本步骤503中,如果功能模块超时时,也可以不予处理,直接返回步骤501。
步骤504:根据内部计时器的输出开始累计地记录该功能模块的使用时间;
步骤505:初始化并启用该功能模块,然后返回步骤501;
上述步骤504和步骤505的先后顺序可调换。
步骤511:检查该功能模块是否已经被启用,如果已启用,则执行步骤512,否则向终端装置报告错误,并返回步骤501;
对于未启用的功能模块,可以直接返回步骤501。
步骤512:调用该功能模块,并将调用结果返回给终端装置,返回步骤501;
步骤521:检查该功能模块是否已经被启用,如果已被启用则执行步骤522,如果未被启用则直接返回步骤501;
步骤522:停用该功能模块,并更新该功能模块的使用时间;
步骤523:停止对被停用的功能模块计时,返回步骤501;
功能模块的停用包括以上两个步骤522和523,主要为停止计时和更新使用时间,其中,在功能模块被停用后,应当停止对其使用时间的计时,而更新使用时间使功能模块的使用时间被更新为最新信息。
步骤531:更新已启用的功能模块的使用时间;
步骤532:检测是否有功能模块已超时,如有则执行步骤533,否则返回步骤501;
步骤533:停用相关的超时的功能模块,然后执行步骤523。
本实施例步骤531至步骤533的这种循环检测可以以预定的时间间隔对功能模块的使用时间进行检测,并及时地刷新已启用的功能模块的使用时间,从而为及时发现超时使用的功能模块提供了条件,该阈值越小,则检测是否超时使用的周期越短,对于功能模块的控制的灵敏度越高;反之,阈值越大,则检测是否超时使用的周期越长,对于功能模块的控制的灵敏度越低。
本发明实施例通过安全装置中保存时间的限制信息,并根据时间的限制信息限制安全装置的使用时间,使得安全装置更加方便地与时间、日期等功能进行绑定,精确地控制了受保护软件使用安全装置的起始时间和截止时间,为受保护软件提供了更安全的服务。
实施例6
本实施例提供了再一种基于时钟的安全装置的软件保护方法,该安全装置中的时钟也是通过内部定时器来实现的,安全装置的主控芯片中有一个定时器,该定时器不能独立于主控芯片而工作,只有主控芯片工作时,该定时器才工作;
参见图9,再一种基于时钟的安全装置的软件保护方法,具体实现步骤如下:
步骤601:安全装置与终端装置建立连接;
在本实施例中,安全装置与终端装置建立连接的步骤具体与实施例1中安全装置与终端装置建立连接的步骤相同,在此不再重复;
终端装置可以为计算机、有源读卡器、射频读卡器以及所有能够使用上述安全装置的装置。
步骤602:安全装置接收终端装置的受保护软件发送的服务指令;
在本步骤602中,受保护软件是指对部分或全部功能的使用进行修改或加密保护的软件,并且在受保护软件启动应用保护功能时,受保护软件可以自动或手动地向安全装置发送服务指令;
服务指令为安全装置与终端装置之间预先约定的指令,可以是预先约定的多条服务指令中的任意一条,例如,服务指令可以为读取终端装置的当前时间的指令,也可以为终端装置与安全装置的通讯指令,如APDU指令80 10 00 0000,还可以是程序启动指令和/或功能算法指令,或还可以是读指令0X3C,写指令0X3D等;
进一步的,如果安全装置接收到的是加密后的服务指令,则安全装置按照与终端装置预先约定的解密算法对加密后的服务指令进行解密,解密的算法可以但不限于:AES算法或DES算法等;
步骤603:安全装置对接收到的服务指令进行解析,读取终端装置的当前时间;
步骤604:安全装置初始化并启动定时器,将读取得到的终端装置的当前时间设置为定时器的起始时间,开始计时;
在本实施例中,如果步骤603读取得到的终端装置的当前时间为2010年3月18号15:00,则将定时器的起始时间设置为2010年3月18号15:00,并从这个时间开始计时。
步骤605:安全装置与终端装置断开连接时,将定时器的当前时间保存到FLASH芯片或EEPROM芯片中;
在本实施例中,安全装置与终端装置断开连接后,没有电源给安全装置供电,安全装置的主控芯片无法工作,相应地主控芯片中的定时器也停止计时,并且定时器的当前时间也会丢失,因此安全装置将定时器的当前时间保存到掉电后数据也不会丢失的FLASH存储芯片或EEPROM存储芯片中;
本实施例中定时器开始计时的起始时间为2010年3月18号15:00,若定时器计时20分钟之后安全装置与终端装置断开连接,则此时定时器的当前时间应该是2010年3月18号15:20,因此安全装置将定时器的当前时间2010年3月18号15:20保存到FLASH芯片或EEPROM芯片中。
步骤606:安全装置再次与终端装置建立连接,接收终端装置的受保护软件发送的服务指令;
步骤607:安全装置再次读取终端装置的当前时间,并读取保存在FLASH芯片或EEPROM芯片中的时间;
步骤608:根据保存在FLASH芯片或EEPROM芯片中的时间判断终端装置的当前时间是否为有效时间;
如果是,则执行服务指令并将执行结果返回给终端装置;
如果不,则将错误结果返回给终端装置,或者安全装置内部自毁,或者安全装置自锁。
在本实施例中,根据保存在FLASH芯片或EEPROM芯片中的时间判断终端装置的当前时间是否为有效时间具体为:判断终端装置的当前时间是否在保存在FLASH芯片或EEPROM芯片中的时间之后,若是,则当前时间为有效时间,否则当前时间不为有效时间;
安全装置返回给终端装置的执行结果或错误结果可以是加密的,安全装置所采用的加密算法可以但不限于包括AES算法或DES算法;并且,错误结果具体可以但不限于为安全装置已过期的提示信息或报错信息或随机结果;
若步骤607中读取得到的终端装置的当前时间为2010年3月18号17:00,保存在FLASH芯片或EEPROM芯片中的时间为2010年3月18号15:20,因此终端装置的当前时间在保存在FLASH芯片或EEPROM芯片中的时间之后,则执行服务指令并将执行结果返回给终端装置;
若步骤607读取得到的终端装置的当前时间为2010年3月18号11:40,保存在FLASH芯片或EEPROM芯片中的时间为2010年3月18号15:20,因此终端装置的当前时间在保存在FLASH芯片或EEPROM芯片中的时间之前,则将错误结果返回给终端装置。
需要说明的是,当安全装置开始利用预设的时间保护功能对终端装置中的受保护软件进行保护后,只有当受保护软件主动停止应用或已到达应用时间时,安全装置才会停止执行时间保护功能,如果强制其停止,则该安全装置将被损坏,并向终端装置返回安全装置已坏的信息。
本发明实施例通过安全装置中保存时间的限制信息,并根据时间的限制信息限制安全装置的使用时间,使得安全装置更加方便地与时间、日期等功能进行绑定,精确地控制了受保护软件使用安全装置的起始时间和截止时间,为受保护软件提供了更安全的服务。
实施例7
本实施例提供了又一种基于时钟的安全装置,该安全装置中的时钟是通过内部计时器来实现的。
参见图10,该安全装置包括:
接口模块701,与主控模块702相连,用于安全装置与终端装置建立连接,本实施例中具体可以为USB接口模块;
主控模块702,用于控制安全装置的各种操作;
其中,主控模块702具体包括:
定时器单元7021,与软件保护单元7023相连,用于进行计时,实现安全装置的软件保护功能;
通讯单元7022,与软件保护单元7023相连,用于安全装置与终端装置进行通讯,具体用于接收终端装置发送的命令;
软件保护单元7023,与定时器单元7021和通讯单元7022分别相连,用于安全装置利用预设的时间保护功能对终端装置中的受保护软件进行保护。
进一步地,参见图11,一种实施方式下,软件保护单元7023包括:
初始化子单元70231,用于初始化并启动定时器单元7021开始计时;
检测子单元70232,与初始化子单元70231相连,用于在等待终端装置发送命令的时候检测定时器的值是否已达到了阈值;
判断子单元70233,与检测子单元70232相连,用于判断接收到的终端装置发送的命令的类型;
启用子单元70234,与判断子单元70233相连,用于当判断子单元70233判断得到接收到的为启用命令时,启用该功能模块;
调用子单元70235,与判断子单元70233相连,用于当判断子单元70233判断得到接收到的为调用命令时,调用该功能模块;
停用子单元70236,与判断子单元70233相连,用于当判断子单元70233判断得到接收到的为停用命令时,停用该功能模块。
进一步地,当检测子单元70232检测得到定时器的值已达到阈值时,主控模块702还可以包括:
更新单元,用于更新已启用的功能模块的使用时间;
相应地,检测子单元70232还用于检测是否有功能模块已超时;
当有功能模块超时时,停用单元70236还用于停用相关超时的功能模块和停止对该功能模块的计时;
当判断子单元70233判断得出接收到的命令为启用命令时,判断子单元70233还用于判断功能模块是否已超时;
当判断得到功能模块没有超时时,主控模块702还包括:
记录单元,用于根据定时器单元7021的时间记录该功能模块的使用时间;
当判断子单元70233判断得出接收到的命令为调用命令时,判断子单元70233还用于判断功能模块是否已被启用;
当判断子单元70233判断得出接收到的命令为停用命令时,判断子单元70233还用于判断功能模块是否已被启用。
进一步地,参见图12,另一种实施方式下,软件保护单元7023包括:
读取子单元70231,用于读取终端装置的当前时间;
初始化子单元70232,用于初始化并启动定时器单元7021开始计时;
设置子单元70233,与读取子单元70231和初始化子单元70232分别相连,用于在初始化之后将读取子单元70231读取得到的终端装置的当前时间设置为定时器单元7021的起始时间,开始计时;
存储子单元70234,与设置子单元70233相连,用于将断电时的定时器单元7021的当前时间存储到非易失性存储芯片中;
相应地,通讯单元7022还用于当安全装置与终端装置再次连接时,接收终端装置的受保护软件发送的服务指令;
读取子单元70231还与存储子单元70234相连,用于读取此时终端装置的当前时间和存储在非易失性存储芯片中的时间;
判断子单元70235,与读取子单元70231相连,用于根据保存在FLASH芯片或EEPROM芯片中的时间判断终端装置的当前时间是否为有效时间,具体为判断此时终端装置的当前时间是否在存储在非易失性存储芯片中的时间之后。
进一步的,该主控模块702还可以包括:
解密单元,用于当通讯单元7022接收到的服务指令为加密的服务指令时,使用预先约定的解密算法对加密的服务指令进行解密;
加密单元,用于对执行结果或错误结果进行加密;
相应的,通讯单元7022具体还用于将加密后的执行结果或错误结果返回给终端装置。
本发明实施例通过安全装置中保存时间的限制信息,并根据时间的限制信息限制安全装置的使用时间,使得安全装置更加方便地与时间、日期等功能进行绑定,精确地控制了受保护软件使用安全装置的起始时间和截止时间,为受保护软件提供了更安全的服务。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (17)
1.一种基于时钟的安全装置的软件保护方法,其特征在于,所述方法包括:
所述安全装置与终端装置建立连接;
所述安全装置接收所述终端装置中的受保护软件发送的服务指令;
所述安全装置利用预设的时间保护功能对所述终端装置中的受保护软件进行保护。
2.根据权利要求1所述的基于时钟的安全装置的软件保护方法,其特征在于,所述服务指令为所述安全装置与所述终端装置之间预先约定的指令,或者所述服务指令为所述安全装置与所述终端装置之间预先约定的多条指令中的任意一条。
3.根据权利要求1所述的基于时钟的安全装置的软件保护方法,其特征在于,所述安全装置利用预设的时间保护功能对所述终端装置中的受保护软件进行保护的操作具体为:所述安全装置通过硬时钟,或者软时钟,或者定时器对所述终端装置中的受保护软件进行保护。
4.根据权利要求3所述的基于时钟的安全装置的软件保护方法,其特征在于,所述安全装置通过硬时钟对所述终端装置中的受保护软件进行保护的操作具体为:
所述安全装置激活内部硬时钟使其开始计时;
将所述内部硬时钟的时间状态值设置为所述内部硬时钟的起始时间;
读取所述内部硬时钟的当前时间,并判断所述当前时间是否为有效时间;
若是,则执行所述服务指令并将执行结果返回给所述终端装置;
否则,将错误结果返回给所述终端装置,或者所述安全装置内部自毁,或者所述安全装置自锁;
或者,
所述安全装置直接读取所述内部硬时钟的当前时间;
判断所述当前时间是否为有效时间;
若是,则执行所述服务指令并将执行结果返回给所述终端装置;
否则,将错误结果返回给所述终端装置,或者所述安全装置内部自毁,或者所述安全装置自锁。
5.根据权利要求3所述的基于时钟的安全装置的软件保护方法,其特征在于,所述安全装置通过软时钟来实现对所述终端装置中的受保护软件进行保护的操作具体为:
所述安全装置激活内部软时钟使其开始计时;
将所述内部软时钟的时间状态值设置为所述内部软时钟的起始时间;
读取所述内部软时钟的当前时间,并判断所述当前时间是否为有效时间;
若是,则执行所述服务指令并将执行结果返回给所述终端装置;
否则,将错误结果返回给所述终端装置,或者所述安全装置内部自毁,或者所述安全装置自锁;
或者,
所述安全装置直接读取所述内部软时钟的当前时间;
判断所述当前时间是否为有效时间;
若是,则执行所述服务指令并将执行结果返回给所述终端装置;
否则,将错误结果返回给所述终端装置,或者所述安全装置内部自毁,或者所述安全装置自锁。
6.根据权利要求3所述的基于时钟的安全装置的软件保护方法,其特征在于,所述安全装置通过定时器对所述终端装置中的受保护软件进行保护的操作具体为:
利用所述定时器的计时来累计记录所述安全装置中功能模块的实际使用时间;
根据所述安全装置接收到的服务指令和所述功能模块的实际使用时间来控制所述功能模块的使用;
或者,
所述安全装置初始化并启动所述定时器,将所述终端装置的当前时间设置为所述定时器的起始时间,开始计时;
将断电时的所述定时器的当前时间保存到非易失性存储芯片中;
再次上电时读取所述终端装置的当前时间和所述非易失性存储芯片中保存的时间;
根据所述非易失性存储芯片中保存的时间判断所述当前时间是否为有效时间;
若是,则执行所述服务指令并将执行结果返回给所述终端装置;
否则,将错误结果返回给所述终端装置,或者所述安全装置内部自毁,或者所述安全装置自锁。
7.一种基于时钟的安全装置,其特征在于,所述安全装置包括:
接口模块,与主控模块相连,用于所述安全装置与终端装置建立连接;
主控模块,用于控制所述安全装置的各种操作;
其中,所述主控模块包括:
通讯单元,与软件保护单元相连,用于与所述终端装置进行通讯,接收所述终端装置发送的服务指令,并将相应的结果返回给所述终端装置;
软件保护单元,与所述通讯单元相连,用于所述安全装置利用预设的时间保护功能对所述终端装置中的受保护软件进行保护。
8.根据权利要求7所述的基于时钟的安全装置,其特征在于,所述服务指令为所述安全装置与所述终端装置之间预先约定的指令,或者所述服务指令为所述安全装置与所述终端装置之间预先约定的多条指令中的任意一条。
9.根据权利要求7所述的基于时钟的安全装置,其特征在于,所述安全装置还包括:
硬时钟模块,与所述主控模块和电池模块分别相连,用于计时,实现所述安全装置的时间保护功能;
电池模块,与所述硬时钟模块相连,用于在所述安全装置与所述终端装置断开连接时,给所述硬时钟模块供电。
10.根据权利要求9所述的基于时钟的安全装置,其特征在于,所述软件保护单元用于所述安全装置利用预设的时间保护功能对所述终端装置中的受保护软件进行保护,具体为:所述安全装置通过所述硬时钟模块利用预设的时间保护功能对所述终端装置中的受保护软件进行保护。
11.根据权利要求10所述的基于时钟的安全装置,其特征在于,所述软件保护单元包括:
读取子单元,用于读取所述硬时钟模块的当前时间;
判断子单元,与所述读取子单元相连,用于判断所述当前时间是否为有效时间;
若是,则执行所述服务指令并将执行结果返回给所述终端装置;
否则,将错误结果返回给所述终端装置,或者所述安全装置内部自毁,或者所述安全装置自锁;
或者,
激活子单元,用于激活所述硬时钟模块开始计时;
设置子单元,与所述激活子单元相连,用于将所述硬时钟模块的时间状态值设置为所述硬时钟模块的起始时间;
读取子单元,与所述设置子单元相连,用于读取所述硬时钟模块的当前时间;
判断子单元,与所述读取子单元相连,用于判断所述当前时间是否为有效时间;
若是,则执行所述服务指令并将执行结果返回给所述终端装置;
否则,将错误结果返回给所述终端装置,或者所述安全装置内部自毁,或者所述安全装置自锁。
12.根据权利要求7所述的基于时钟的安全装置,其特征在于,所述主控模块还包括:
软时钟单元,用于进行计时,实现所述安全装置的时间保护功能;
唤醒单元,与所述软时钟单元相连,用于当所述软时钟单元的时间周期值到时后,唤醒运算单元开始工作;
运算单元,与所述软时钟单元和唤醒单元分别相连,用于将所述软时钟单元的时间周期值加到所述安全装置停止工作时的时间上,作为安全装置新的当前时间。
13.根据权利要求12所述的基于时钟的安全装置,其特征在于,所述软件保护单元用于所述安全装置利用预设的时间保护功能对所述终端装置中的受保护软件进行保护具体为:所述安全装置通过所述软时钟单元利用预设的时间保护功能对所述终端装置中的受保护软件进行保护。
14.根据权利要求13所述的基于时钟的安全装置,其特征在于,所述软件保护单元包括:
读取子单元,用于读取所述硬时钟模块的当前时间;
判断子单元,与所述读取子单元相连,用于判断所述当前时间是否为有效时间;
若是,则执行所述服务指令并将执行结果返回给所述终端装置;
否则,将错误结果返回给所述终端装置,或者所述安全装置内部自毁,或者所述安全装置自锁;
或者,
激活子单元,用于激活所述硬时钟模块开始计时;
设置子单元,与所述激活子单元相连,用于将所述硬时钟模块的时间状态值设置为所述硬时钟模块的起始时间;
读取子单元,与所述设置子单元相连,用于读取所述硬时钟模块的当前时间;
判断子单元,与所述读取子单元相连,用于判断所述当前时间是否为有效时间;
若是,则执行所述服务指令并将执行结果返回给所述终端装置;
否则,将错误结果返回给所述终端装置,或者所述安全装置内部自毁,或者所述安全装置自锁。
15.根据权利要求7所述的基于时钟的安全装置,其特征在于,所述主控模块还包括:
定时器单元,与所述软件保护单元相连,用于进行计时,实现所述安全装置的软件保护功能。
16.根据权利要求15所述的基于时钟的安全装置,其特征在于,所述软件保护单元用于所述安全装置利用预设的时间保护功能对所述终端装置中的受保护软件进行保护具体为:所述安全装置通过所述定时器单元利用预设的时间保护功能对所述终端装置中的受保护软件进行保护。
17.根据权利要求16所述的基于时钟的安全装置,其特征在于,所述软件保护单元包括:
初始化子单元,用于初始化并启动所述定时器单元开始计时;
检测子单元,与所述初始化子单元相连,用于在等待所述终端装置发送命令的时,检测所述定时器单元的值是否已达到了阈值;
判断子单元,与所述检测子单元相连,用于判断接收到的所述终端装置发送的命令的类型;
启用子单元,与所述判断子单元相连,用于当所述判断子单元判断得到接收到的为启用命令时,启用所述功能模块;
调用子单元,与所述判断子单元相连,用于当所述判断子单元判断得到接收到的为调用命令时,调用所述功能模块;
停用子单元,与所述判断子单元相连,用于当所述判断子单元判断得到接收到的为停用命令时,停用所述功能模块;
或者,
读取子单元,与设置子单元和存储子单元分别相连,用于读取所述终端装置的当前时间;
初始化子单元,用于初始化并启动所述定时器单元开始计时;
设置子单元,与所述初始化子单元和读取子单元分别相连,用于将所述读取子单元读取得到的所述终端装置的当前时间设置为所述定时器单元的起始时间,开始计时;
存储子单元,与所述读取子单元相连,用于将断电时的所述定时器单元的当前时间存储到非易失性存储芯片中;
判断子单元,与所述读取子单元相连,用于根据所述存储在非易失性存储芯片中的时间判断所述当前时间是否为有效时间;
若是,则执行所述服务指令并将执行结果返回给所述终端装置;
否则,将错误结果返回给所述终端装置,或者所述安全装置内部自毁,或者所述安全装置自锁。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010163373A CN101847188A (zh) | 2010-04-28 | 2010-04-28 | 一种基于时钟的安全装置的软件保护方法及安全装置 |
PCT/CN2010/075513 WO2011134208A1 (zh) | 2010-04-28 | 2010-07-28 | 一种基于时钟的安全装置的软件保护方法及安全装置 |
US12/989,679 US20120131679A1 (en) | 2010-04-28 | 2010-07-28 | Method for protecting software based on clock of security device and security device thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010163373A CN101847188A (zh) | 2010-04-28 | 2010-04-28 | 一种基于时钟的安全装置的软件保护方法及安全装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101847188A true CN101847188A (zh) | 2010-09-29 |
Family
ID=42771807
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010163373A Pending CN101847188A (zh) | 2010-04-28 | 2010-04-28 | 一种基于时钟的安全装置的软件保护方法及安全装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20120131679A1 (zh) |
CN (1) | CN101847188A (zh) |
WO (1) | WO2011134208A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102779258A (zh) * | 2012-07-06 | 2012-11-14 | 苏州阔地网络科技有限公司 | 一种软件有效期控制方法及系统 |
CN103186729A (zh) * | 2013-03-26 | 2013-07-03 | 北京深思数盾科技有限公司 | 利用加密锁对软件进行保护的方法及加密锁 |
CN104298898A (zh) * | 2014-09-11 | 2015-01-21 | 北京深思数盾科技有限公司 | 一种软件保护方法及装置 |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110302660A1 (en) * | 2010-06-02 | 2011-12-08 | Rupaka Mahalingaiah | Method and apparatus for securing digital devices with locking clock mechanism |
CN103164641B (zh) * | 2011-12-08 | 2018-05-18 | 北京深思数盾科技股份有限公司 | 一种调用软件保护装置外部代码的方法 |
US8912814B2 (en) | 2012-11-12 | 2014-12-16 | Chaologix, Inc. | Clocked charge domain logic |
US8912816B2 (en) | 2012-11-12 | 2014-12-16 | Chaologix, Inc. | Charge distribution control for secure systems |
US9720716B2 (en) * | 2013-03-12 | 2017-08-01 | Intel Corporation | Layered virtual machine integrity monitoring |
CN103544037B (zh) * | 2013-10-29 | 2016-08-17 | 飞天诚信科技股份有限公司 | 一种支持OpenSC的软硬件驱动的实现方法 |
CN103679062B (zh) * | 2013-12-23 | 2017-02-08 | 上海贝岭股份有限公司 | 智能电表主控芯片和安全加密方法 |
CN104376647B (zh) * | 2014-11-04 | 2019-01-04 | 国家电网公司 | 用于电力的实时算费系统 |
CN105046115A (zh) * | 2015-09-15 | 2015-11-11 | 北京深思数盾科技有限公司 | 检测软件运行时间被篡改的方法及装置 |
CN105468937A (zh) * | 2015-11-13 | 2016-04-06 | 北京恒华伟业科技股份有限公司 | 一种加密锁的控制方法和装置 |
US10075452B2 (en) | 2016-02-18 | 2018-09-11 | Comcast Cable Communications, Llc | Distributed content uploading and validation |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040123118A1 (en) * | 2002-01-16 | 2004-06-24 | Dahan Franck B. | Secure mode indicator for smart phone or PDA |
CN101216870A (zh) * | 2007-12-28 | 2008-07-09 | 北京深思洛克数据保护中心 | 软件保护装置中实时时间的获得及远程校准方法 |
CN101241531A (zh) * | 2007-07-27 | 2008-08-13 | 北京深思洛克数据保护中心 | 一种控制软件授权使用时间的方法 |
CN101261667A (zh) * | 2008-04-10 | 2008-09-10 | 北京深思洛克数据保护中心 | 一种软件保护方法 |
US20090077674A1 (en) * | 2007-09-19 | 2009-03-19 | Dong Ryeol Shin | Software installation system and method for copy protection |
CN101587523A (zh) * | 2009-07-02 | 2009-11-25 | 北京飞天诚信科技有限公司 | 保护软件的方法、装置和系统 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6523119B2 (en) * | 1996-12-04 | 2003-02-18 | Rainbow Technologies, Inc. | Software protection device and method |
US20060195909A1 (en) * | 2005-02-25 | 2006-08-31 | Rok Productions Limited | Media player operable to decode content data |
US20100023783A1 (en) * | 2007-12-27 | 2010-01-28 | Cable Television Laboratories, Inc. | System and method of decrypting encrypted content |
CN101221614A (zh) * | 2008-01-23 | 2008-07-16 | 北京深思洛克数据保护中心 | 软件保护装置中实时时钟的远程校准方法 |
CN101271503A (zh) * | 2008-05-04 | 2008-09-24 | 北京深思洛克数据保护中心 | 一种限制软件使用时间的方法和系统 |
CN100585610C (zh) * | 2008-05-19 | 2010-01-27 | 北京深思洛克软件技术股份有限公司 | 一种带时间阈保护的软件保护装置及其实现方法 |
-
2010
- 2010-04-28 CN CN201010163373A patent/CN101847188A/zh active Pending
- 2010-07-28 US US12/989,679 patent/US20120131679A1/en not_active Abandoned
- 2010-07-28 WO PCT/CN2010/075513 patent/WO2011134208A1/zh active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040123118A1 (en) * | 2002-01-16 | 2004-06-24 | Dahan Franck B. | Secure mode indicator for smart phone or PDA |
CN101241531A (zh) * | 2007-07-27 | 2008-08-13 | 北京深思洛克数据保护中心 | 一种控制软件授权使用时间的方法 |
US20090077674A1 (en) * | 2007-09-19 | 2009-03-19 | Dong Ryeol Shin | Software installation system and method for copy protection |
CN101216870A (zh) * | 2007-12-28 | 2008-07-09 | 北京深思洛克数据保护中心 | 软件保护装置中实时时间的获得及远程校准方法 |
CN101261667A (zh) * | 2008-04-10 | 2008-09-10 | 北京深思洛克数据保护中心 | 一种软件保护方法 |
CN101587523A (zh) * | 2009-07-02 | 2009-11-25 | 北京飞天诚信科技有限公司 | 保护软件的方法、装置和系统 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102779258A (zh) * | 2012-07-06 | 2012-11-14 | 苏州阔地网络科技有限公司 | 一种软件有效期控制方法及系统 |
CN103186729A (zh) * | 2013-03-26 | 2013-07-03 | 北京深思数盾科技有限公司 | 利用加密锁对软件进行保护的方法及加密锁 |
CN104298898A (zh) * | 2014-09-11 | 2015-01-21 | 北京深思数盾科技有限公司 | 一种软件保护方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
US20120131679A1 (en) | 2012-05-24 |
WO2011134208A1 (zh) | 2011-11-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101847188A (zh) | 一种基于时钟的安全装置的软件保护方法及安全装置 | |
CN101984575B (zh) | 一种保护移动终端软件的方法和装置 | |
CN101256606A (zh) | 休眠用于处理安全数据的处理装置 | |
US8701207B2 (en) | Method, device and system for protecting software | |
US9589160B2 (en) | Working method for smart card reader | |
CN107995617A (zh) | 一种可支持远程安全销毁的固态存储设备设计 | |
CN102054146A (zh) | 一种开机密码保护方法和装置 | |
CN102592364A (zh) | 一种基于加解密功能的现场服务终端及其应用方法 | |
GB2460143A (en) | Secure memory device with wide area communications | |
CN101114332A (zh) | 用于管理多个智能卡会话的系统和方法 | |
CN103246839A (zh) | 一种智能密钥设备的工作方法 | |
CN109389757A (zh) | 一种基于nb-iot调制解调器的智能燃气表专用模组 | |
CN203606828U (zh) | 一种具有限时管理控制功能的软件加密锁 | |
CN109905857A (zh) | 一种用于智能燃气表的窄带nb-iot通讯模组及其使用方法 | |
EP3769183B1 (en) | Devices with removable smart cards | |
CN106571917B (zh) | Ic卡智能燃气表esam嵌入式安全管理模块 | |
CN112632642A (zh) | 一种时钟校验方法、装置及电子设备 | |
US20120045055A1 (en) | Communication device, information processing system, and encryption switching method | |
CN201387612Y (zh) | 一种农畜产品流通监管装置 | |
CN106886728A (zh) | 一种智能卡的读取装置和方法 | |
CN204216909U (zh) | 特色服务系统信息安全装置 | |
WO2019100693A1 (zh) | 控制se的系统、方法及芯片 | |
CN206178833U (zh) | 一种cpu加密装置 | |
CN202433968U (zh) | 一种车载设备 | |
CN106778363B (zh) | 一种基于rs422的加密卡及加密方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20100929 |