CN114328222A - 离线软件过期校验方法、装置、计算设备及存储介质 - Google Patents
离线软件过期校验方法、装置、计算设备及存储介质 Download PDFInfo
- Publication number
- CN114328222A CN114328222A CN202111627973.4A CN202111627973A CN114328222A CN 114328222 A CN114328222 A CN 114328222A CN 202111627973 A CN202111627973 A CN 202111627973A CN 114328222 A CN114328222 A CN 114328222A
- Authority
- CN
- China
- Prior art keywords
- time
- statistical information
- statistical
- timing
- current
- 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
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明提供了一种离线软件过期校验方法、装置、计算设备及存储介质,运行软件的客户端位于分布式系统中,方法包括:当检测到软件在当前客户端初次启动时启动定时任务,以根据定时任务每次更新后的统计信息对软件的license是否过期进行校验;定时任务用于每隔设定时长对统计信息进行一次更新;统计信息至少包括定时统计时间;每次更新时将统计信息中的定时统计时间增加设定时长;当确定当前客户端停机重启之后,获取分布式系统中其它客户端的系统时间,并根据获取的其它客户端的系统时间,调整当前客户端的当前系统时间;根据调整后的当前系统时间对统计信息进行更新,重启定时任务。本方案,能够提高软件过期校验结果的准确性。
Description
技术领域
本发明实施例涉及计算机技术领域,特别涉及一种离线软件过期校验方法、装置、计算设备及存储介质。
背景技术
软件过期校验是每个商业软件均需要面临的问题,尤其是安装软件的客户端处于离线状态下时,如何进行软件过期校验是亟需解决的问题。目前,通过在内网环境之外部署时间管理工具,将时间管理工具提供的时间与软件license对应的过期时间进行比较,判定license是否过期。但是,若时间管理工具的时间被篡改,则会影响软件过期校验结果。
发明内容
基于时间被篡改影响软件过期校验结果的问题,本发明实施例提供了一种离线软件过期校验方法、装置、计算设备及存储介质,能够提高软件过期校验结果的准确性。
第一方面,本发明实施例提供了一种离线软件过期校验方法,运行所述软件的客户端位于分布式系统中,且所述分布式系统还包括其它客户端,包括:
当检测到所述软件在当前客户端初次启动时启动定时任务,以根据所述定时任务每次更新后的统计信息对所述软件的license是否过期进行校验;所述定时任务用于每隔设定时长对统计信息进行一次更新;所述统计信息至少包括定时统计时间;每次更新时将所述统计信息中的定时统计时间增加所述设定时长;
当确定所述当前客户端停机重启之后,获取所述分布式系统中其它客户端的系统时间,并根据获取的其它客户端的系统时间,调整所述当前客户端的当前系统时间;
根据调整后的当前系统时间对所述统计信息进行更新,并重启所述定时任务。
优选地,所述根据获取的其它客户端的系统时间,调整所述当前客户端的当前系统时间,包括:根据获取的其它客户端的系统时间进行集中度计算,将所述当前客户端的当前系统时间调整为集中度最高的时间;
所述根据调整后的当前系统时间对所述统计信息进行更新,包括:将所述统计信息中的定时统计时间更新为该调整后的当前系统时间。
优选地,所述统计信息中还包括总统计时长;所述软件在所述当前客户端初次启动时所述统计信息中的总统计时长为0,每次更新时将所述统计信息中的总统计时长增加所述设定时长;
所述根据调整后的当前系统时间对所述统计信息进行更新,包括:根据所述统计信息中的定时统计时间和所述当前系统时间,计算停机时长,并将所述统计信息中的总统计时长增加所述停机时长。
优选地,还包括:
所述当前客户端处于运行状态下,每次更新后获取所述当前客户端的系统时间,并计算所述当前客户端的系统时间与所述统计信息中的定时统计时间的绝对时间差;
判断所述绝对时间差是否大于设定时间阈值;若是,则将所述当前客户端的系统时间调整为所述统计信息中的定时统计时间。
优选地,在所述将所述当前客户端的系统时间调整为所述统计信息中的定时统计时间之后,还包括:
将所述当前客户端的系统时间发送至所述分布式系统中的其它客户端,以使其它客户端利用所述当前客户端的系统时间对自身客户端的系统时间进行更新。
优选地,在检测到所述软件在当前客户端初次启动之后,所述启动定时任务之前,还包括:执行获取所述分布式系统中其它客户端的系统时间,并根据获取的其它客户端的系统时间,调整所述当前客户端的当前系统时间,将调整后的当前系统时间确定为统计信息中初始的定时统计时间。
优选地,所述统计信息经过加密后存储至持久化介质中,每次更新时,对所述持久化介质中的所述统计信息进行解密,并在每次更新完成后,将更新后的所述统计信息进行加密。
第二方面,本发明实施例还提供了一种离线软件过期校验装置,应用于运行所述软件的客户端,所述客户端位于分布式系统中,且所述分布式系统中还包括其它客户端,包括:
检测单元,用于当检测到所述软件在当前客户端初次启动时,触发定时任务单元;还用于当确定所述当前客户端停机重启之后触发时间调整单元执行相应操作;
所述定时任务单元,用于在接收到触发时启动定时任务,以每隔设定时长对统计信息进行一次更新;所述统计信息至少包括定时统计时间;每次更新时将所述统计信息中的定时统计时间增加所述设定时长;
过期校验单元,用于根据所述定时任务每次更新后的统计信息对所述软件的license是否过期进行校验;
所述时间调整单元,用于接收到所述检测单元的触发时获取所述分布式系统中其它客户端的系统时间,并根据获取的其它客户端的系统时间,调整所述当前客户端的当前系统时间;
任务处理单元,用于根据所述时间调整单元调整后的当前系统时间对所述统计信息进行更新,并触发所述定时任务单元重启所述定时任务。
第三方面,本发明实施例还提供了一种计算设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时,实现本说明书任一实施例所述的方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行本说明书任一实施例所述的方法。
本发明实施例提供了一种离线软件过期校验方法、装置、计算设备及存储介质,利用定时任务每隔设定时长对统计信息进行一次更新,该更新只依赖于统计信息中的定时统计时间,并不依赖系统时间,且软件过期校验是基于统计信息中的定时统计时间进行的,因此,当前客户端处于运行状态下,即使系统时间若被篡改,也不会影响软件过期校验结果;另外,若当前客户端停机重启,则利用分布式系统中其它客户端的系统时间对当前客户端的当前系统时间进行调整,可见,重新启动定时任务依赖的系统时间是经过分布式系统中其它客户端的系统时间进行调整后的时间,即使停机过程中当前客户端的系统时间被篡改,对软件过期校验结果的影响也会大大降低。综上,本方案能够提高软件过期校验结果的准确性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例提供的一种离线软件过期校验方法流程图;
图2是本发明一实施例提供的一种计算设备的硬件架构图;
图3是本发明一实施例提供的一种离线软件过期校验装置结构图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
如前所述,若时间被篡改,则会影响软件过期校验结果。因此,为了降低离线状态下时间被篡改后对软件过期校验结果的影响,可以考虑使用定时任务来统计软件运行时长,离线客户端开机状态下的定时任务不依赖系统时间,即使系统时间被篡改,也不妨碍定时任务的运行统计。另外,由于离线客户端停机后在开机时,需要依赖系统时间计算停机时长,若此情况下更改了系统时间,依然会影响软件过期校验结果,因此,可以考虑在停机之后,通过内网环境获取其它分布式软件的系统时间,来校验当前客户端的系统时间,提高停机时长的计算准确性,进而提高软件过期校验结果的准确性。
下面描述以上构思的具体实现方式。
请参考图1,本发明实施例提供了一种离线软件过期校验方法,运行所述软件的客户端位于分布式系统中,且所述分布式系统还包括其它客户端,该方法包括:
步骤100,当检测到所述软件在当前客户端初次启动时启动定时任务,以根据所述定时任务每次更新后的统计信息对所述软件的license是否过期进行校验;所述定时任务用于每隔设定时长对统计信息进行一次更新;所述统计信息至少包括定时统计时间;每次更新时将所述统计信息中的定时统计时间增加所述设定时长;
步骤102,当确定所述当前客户端停机重启之后,获取所述分布式系统中其它客户端的系统时间,并根据获取的其它客户端的系统时间,调整所述当前客户端的当前系统时间;
步骤104,根据调整后的当前系统时间对所述统计信息进行更新,并重启所述定时任务。
本发明实施例中,利用定时任务每隔设定时长对统计信息进行一次更新,该更新只依赖于统计信息中的定时统计时间,并不依赖系统时间,且软件过期校验是基于统计信息中的定时统计时间进行的,因此,当前客户端处于运行状态下,即使系统时间若被篡改,也不会影响软件过期校验结果;另外,若当前客户端停机重启,则利用分布式系统中其它客户端的系统时间对当前客户端的当前系统时间进行调整,可见,重新启动定时任务依赖的系统时间是经过分布式系统中其它客户端的系统时间进行调整后的时间,即使停机过程中当前客户端的系统时间被篡改,对软件过期校验结果的影响也会大大降低。综上,本方案能够提高软件过期校验结果的准确性。
下面描述图1所示的各个步骤的执行方式。
首先,针对步骤100,当检测到所述软件在当前客户端初次启动时启动定时任务,以根据所述定时任务每次更新后的统计信息对所述软件的license是否过期进行校验;所述定时任务用于每隔设定时长对统计信息进行一次更新;所述统计信息至少包括定时统计时间;每次更新时将所述统计信息中的定时统计时间增加所述设定时长。
商业软件均设置有对应的license,用于为客户端提供软件授权。其中,license对软件的授权期限可以通过运行总时长或颁发时间、到期时间来实现。
在当前客户端上安装该软件时,离线license导入当前客户端,并将license夏宫信息加密后存储至持久化介质中,当进行软件过期校验时使用。存储在持久化介质的目的是防止客户端重启后丢失license。当软件安装成功后初次启动软件时,则开始启动定时任务,利用定时任务对时间进行统计。
本实施例中,定时任务用于每隔设定时长对统计信息进行一次更新,其中,该统计信息中至少包括定时统计时间。其中,可以创建一个定时器,该定时器的定时时长为该设定时长,该设定时长可以为2个小时、5个小时等,定时任务每当确定定时器走完定时时长后,则对统计信息进行一次更新。其中,初始的定时统计时间可以根据当前客户端在首次启动软件时对应的系统时间来确定。
举例来说,设定时长为2个小时,初始的定时统计时间为2021年1月1日12:00,则定时任务启动,每当定时器走完定时时长2个小时之后,定时任务更新统计系统中的定时统计时间,即更新为2021年1月1日14:00、2021年1月1日16:00、2021年1月1日18:00……。需要说明的是,该定时统计时间的更新是在统计信息中的定时统计时间的基础上增加设定时长,而不是将统计信息中的定时统计时间更新为更新时对应的系统时间。也就是说,只有启动定时任务时依赖当前客户端的当前系统时间,而在定时任务启动之后,当前客户端始终运行的状态下,定时统计时间的更新均不依赖当前客户端的系统时间,即使系统时间被篡改,也可以利用该定时统计时间对软件过期进行校验。
本发明一个实施例中,初始的定时统计时间可以根据当前客户端在首次启动软件时对应的系统时间来确定,其中,可以直接将首次启动软件时对应的系统时间确定为初始的定时统计时间,也可以利用分布式系统中其它客户端的系统时间对当前客户端的当前系统时间进行校准,具体地,在利用分布式系统中其它客户端的系统时间对当前客户端的当前系统时间进行校准时,可以包括:获取所述分布式系统中其它客户端的系统时间,并根据获取的其它客户端的系统时间,调整所述当前客户端的当前系统时间,将调整后的当前系统时间确定为统计信息中初始的定时统计时间。通过利用分布式系统中其它客户端的系统时间对当前客户端的当前系统时间进行校准,使得定时任务使用的初始的定时统计时间即为一个较为准确的时间,为后续更新定时统计时间打好基础,并使用较为准确的定时统计时间执行软件过期校验,保障软件过期校验结果的准确性。
由于本实施例中多次进行“获取所述分布式系统中其它客户端的系统时间,并根据获取的其它客户端的系统时间,调整所述当前客户端的当前系统时间”过程,因此,为便于描述,后文中将该过程称之为“分布式时间校准过程”。
下面对该分布式时间校准过程的实现方式进行说明。
该分布式时间校准过程能够实现的前提是,当前客户端处于分布式系统中,且分布式系统中还包括其它客户端。其中,其它客户端上也可以安装有需要进行过期校验的软件。
该分布式时间校准过程中获取所述分布式系统中其它客户端的系统时间的方式,可以是由当前客户端通过局域网环境向分布式系统中的其它客户端发送时间获取请求,或者在局域网环境中进行时间获取请求的广播,当其它客户端接收到时间获取请求时,可以将自身客户端上当前的系统时间返回给该当前客户端。
该分布式时间校准过程中根据获取的其它客户端的系统时间,调整所述当前客户端的当前系统时间,可以包括:根据获取的其它客户端的系统时间进行集中度计算,将所述当前客户端的当前系统时间调整为集中度最高的时间。
其中,集中度最高的时间可以为参与计算的系统时间中的中位数、平均数、众数、加权平均数、几何平均数、调和平均数或分位数。
需要说明的是,参与计算的系统时间至少包括获取的其它客户端的各系统时间,还可以包括当前客户端的系统时间。
以上完成了对分布式时间校准过程实现方式的说明。
考虑到软件过期校验方式根据license提供的过期校验信息不同,至少可以分为如下两种方式进行过期校验:
第一种,license提供的过期校验信息为过期时间,则校验方式是将统计信息中的定时统计时间与过期时间进行比较,若过期时间晚于统计信息中的定时统计时间,则license未过期,否则,license过期。
第二种,license提供的过期校验信息为运行总时长,那么本发明一个实施例中,该统计信息中还包括总统计时长,该软件在当前客户端初次启动时统计信息中的总统计时长为0,每次更新时将统计信息中的总统计时长增加该设定时长,且校验方式为将统计信息中的总统计时长与运行总时长进行比较,若运行总时长大于总统计时长,则license未过期,否则,license过期。
在第二种方式下,每次更新时依然不依赖更新时当前客户端的系统时间,只是在更新时将统计信息的总统计时长增加该设定时长,可见,当采用第二种方式进行软件过期校验时,若当前客户端始终处于运行状态,则总统计时长始终未依赖系统时间,因此校验结果相对第一种方式更加准确。
然后,针对步骤102,当确定所述当前客户端停机重启之后,获取所述分布式系统中其它客户端的系统时间,并根据获取的其它客户端的系统时间,调整所述当前客户端的当前系统时间。
本发明实施例,由于客户端在停机重启之后,定时任务也被中断,因此,为了降低当前客户端停机过程中系统时间被篡改对软件过期校验结果的影响,可以采用分布式时间校准过程以对当前客户端的当前系统时间进行调整。该分布式时间校准过程的实现方式请参考步骤100中的描述,在此不在赘述。
接下来针对步骤104,根据调整后的当前系统时间对所述统计信息进行更新,并重启定时任务。
本步骤中对统计信息进行更新时,可以包括:将所述统计信息中的定时统计时间更新为该调整后的当前系统时间。
进一步地,若统计信息中还包括总统计时长,那么对统计信息进行更新还包括:根据所述统计信息中的定时统计时间和所述当前系统时间,计算停机时长,并将所述统计信息中的总统计时长增加所述停机时长。
举例来说,当前客户端停机重启后,确定统计信息中的定时统计时间为2021年1月2日10:00,总统计时长为22个小时,利用分布式时间校准过程调整当前客户端的当前系统时间为2021年1月3日10:00,那么可以计算得到停机时长为24个小时,此时对统计信息进行更新:将定时统计时间更新为2021年1月3日10:00,总统计时长为46个小时;并在更新时启动定时任务继续进行定时更新。可见,利用分布式时间校准过程对当前客户端的当前系统时间进行调整后,可以使得定时任务能够使用较为准确的定时统计时间继续进行定时统计,从而提高软件过期校验结果的准确性。
考虑到当前客户端的系统时间也可以用于分布式系统中其它客户端进行分布式时间校准过程,因此,在本发明一个实施例中,还可以包括:所述当前客户端处于运行状态下,每次更新后获取所述当前客户端的系统时间,并计算所述当前客户端的系统时间与所述统计信息中的定时统计时间的绝对时间差;判断所述绝对时间差是否大于设定时间阈值;若是,则将所述当前客户端的系统时间调整为所述统计信息中的定时统计时间。
在当前客户端运行状态下,如果系统时间被篡改,可以直接利用统计信息中的定时统计时间对篡改的系统时间进行调整。为了节约系统资源,可以设定一个时间阈值作为可容忍的篡改时段,比如10分钟,当每次更新后若当前客户端的系统时间与统计信息中的定时统计时间的绝对时间差大于该时间阈值10分钟时,则表明超出可容忍的篡改时段,此时需要将当前客户端的系统时间调整为统计信息中的定时统计时间。其中,该绝对时间差是当前客户端的系统时间与统计信息中的定时统计时间的差值绝对值。
可见,利用定时统计时间对当前客户端的系统时间进行调整,使得当前客户端的系统时间为较为准确的时间,其它客户端在使用分布式时间校准过程时,参与计算的系统时间中该当前客户端的系统时间为较为准确的时间,从而使得其它客户端校准后的系统时间更准确。
进一步地,在本发明一个实施例中,在将当前客户端的系统时间调整为所述统计信息中的定时统计时间之后,还可以将当前客户端的系统时间发送至所述分布式系统中的其它客户端,以使其它客户端利用所述当前客户端的系统时间对自身客户端的系统时间进行更新,从而使得其它客户端的系统时间更为准确,为后续当前客户端在使用分布式时间校准过程时,获取到的其它客户端的系统时间更准确,进一步提高当前客户端进行软件过期校验结果的准确性。
在本发明一个实施例中,同理为了防止统计信息在停机重启后丢失,以及存储的统计信息被篡改,该统计信息可以经过加密后存储至持久化介质中,每次更新时,对所述持久化介质中的所述统计信息进行解密,并在每次更新完成后,将更新后的所述统计信息进行加密。
如图2、图3所示,本发明实施例提供了一种离线软件过期校验装置。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。从硬件层面而言,如图2所示,为本发明实施例提供的一种离线软件过期校验装置所在计算设备的一种硬件架构图,除了图2所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的计算设备通常还可以包括其他硬件,如负责处理报文的转发芯片等等。以软件实现为例,如图3所示,作为一个逻辑意义上的装置,是通过其所在计算设备的CPU将非易失性存储器中对应的计算机程序读取到内存中运行形成的。本实施例提供的一种离线软件过期校验装置,应用于运行所述软件的客户端,所述客户端位于分布式系统中,且所述分布式系统中还包括其它客户端,包括:
检测单元301,用于当检测到所述软件在当前客户端初次启动时,触发定时任务单元;还用于当确定所述当前客户端停机重启之后触发时间调整单元执行相应操作;
所述定时任务单元302,用于在接收到触发时启动定时任务,以每隔设定时长对统计信息进行一次更新;所述统计信息至少包括定时统计时间;每次更新时将所述统计信息中的定时统计时间增加所述设定时长;
过期校验单元303,用于根据所述定时任务每次更新后的统计信息对所述软件的license是否过期进行校验;
所述时间调整单元304,用于接收到所述检测单元的触发时获取所述分布式系统中其它客户端的系统时间,并根据获取的其它客户端的系统时间,调整所述当前客户端的当前系统时间;
任务处理单元305,用于根据所述时间调整单元调整后的当前系统时间对所述统计信息进行更新,并触发所述定时任务单元重启所述定时任务。
在本发明一个实施例中,所述时间调整单元304,具体用于根据获取的其它客户端的系统时间进行集中度计算,将所述当前客户端的当前系统时间调整为集中度最高的时间;
所述任务处理单元305,具体用于将所述统计信息中的定时统计时间更新为该调整后的当前系统时间。
在本发明一个实施例中,所述统计信息中还包括总统计时长;所述软件在所述当前客户端初次启动时所述统计信息中的总统计时长为0,每次更新时将所述统计信息中的总统计时长增加所述设定时长;
所述任务处理单元305,还用于根据所述统计信息中的定时统计时间和所述当前系统时间,计算停机时长,并将所述统计信息中的总统计时长增加所述停机时长。
在本发明一个实施例中,所述时间调整单元304还用于在当前客户端处于运行状态下,每次更新后获取所述当前客户端的系统时间,并计算所述当前客户端的系统时间与所述统计信息中的定时统计时间的绝对时间差;判断所述绝对时间差是否大于设定时间阈值;若是,则将所述当前客户端的系统时间调整为所述统计信息中的定时统计时间。
在本发明一个实施例中,所述时间调整单元304还用于将所述当前客户端的系统时间发送至所述分布式系统中的其它客户端,以使其它客户端利用所述当前客户端的系统时间对自身客户端的系统时间进行更新。
在本发明一个实施例中,所述检测单元301在检测到所述软件在当前客户端初次启动之后,触发定时任务单元之前,还用于获取所述分布式系统中其它客户端的系统时间,并根据获取的其它客户端的系统时间,调整所述当前客户端的当前系统时间,将调整后的当前系统时间确定为统计信息中初始的定时统计时间,以利用该初始的定时统计时间触发所述定时任务单元。
在本发明一个实施例中,所述统计信息经过加密后存储至持久化介质中,所述定时任务单元302用于每次更新时,对所述持久化介质中的所述统计信息进行解密,并在每次更新完成后,将更新后的所述统计信息进行加密。
可以理解的是,本发明实施例示意的结构并不构成对一种离线软件过期校验装置的具体限定。在本发明的另一些实施例中,一种离线软件过期校验装置可以包括比图示更多或者更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件、软件或者软件和硬件的组合来实现。
上述装置内的各模块之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
本发明实施例还提供了一种计算设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时,实现本发明任一实施例中的一种离线软件过期校验方法。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序在被处理器执行时,使所述处理器执行本发明任一实施例中的一种离线软件过期校验方法。
具体地,可以提供配有存储介质的系统或者装置,在该存储介质上存储着实现上述实施例中任一实施例的功能的软件程序代码,且使该系统或者装置的计算机(或CPU或MPU)读出并执行存储在存储介质中的程序代码。
在这种情况下,从存储介质读取的程序代码本身可实现上述实施例中任何一项实施例的功能,因此程序代码和存储程序代码的存储介质构成了本发明的一部分。
用于提供程序代码的存储介质实施例包括软盘、硬盘、磁光盘、光盘(如CD-ROM、CD-R、CD-RW、DVD-ROM、DVD-RAM、DVD-RW、DVD+RW)、磁带、非易失性存储卡和ROM。可选择地,可以由通信网络从服务器计算机上下载程序代码。
此外,应该清楚的是,不仅可以通过执行计算机所读出的程序代码,而且可以通过基于程序代码的指令使计算机上操作的操作系统等来完成部分或者全部的实际操作,从而实现上述实施例中任意一项实施例的功能。
此外,可以理解的是,将由存储介质读出的程序代码写到插入计算机内的扩展板中所设置的存储器中或者写到与计算机相连接的扩展模块中设置的存储器中,随后基于程序代码的指令使安装在扩展板或者扩展模块上的CPU等来执行部分和全部实际操作,从而实现上述实施例中任一实施例的功能。
需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个…”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质中。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种离线软件过期校验方法,其特征在于,运行所述软件的客户端位于分布式系统中,且所述分布式系统还包括其它客户端,所述方法包括:
当检测到所述软件在当前客户端初次启动时启动定时任务,以根据所述定时任务每次更新后的统计信息对所述软件的license是否过期进行校验;所述定时任务用于每隔设定时长对统计信息进行一次更新;所述统计信息至少包括定时统计时间;每次更新时将所述统计信息中的定时统计时间增加所述设定时长;
当确定所述当前客户端停机重启之后,获取所述分布式系统中其它客户端的系统时间,并根据获取的其它客户端的系统时间,调整所述当前客户端的当前系统时间;
根据调整后的当前系统时间对所述统计信息进行更新,并重启所述定时任务。
2.根据权利要求1所述的方法,其特征在于,
所述根据获取的其它客户端的系统时间,调整所述当前客户端的当前系统时间,包括:根据获取的其它客户端的系统时间进行集中度计算,将所述当前客户端的当前系统时间调整为集中度最高的时间;
所述根据调整后的当前系统时间对所述统计信息进行更新,包括:将所述统计信息中的定时统计时间更新为该调整后的当前系统时间。
3.根据权利要求2所述的方法,其特征在于,所述统计信息中还包括总统计时长;所述软件在所述当前客户端初次启动时所述统计信息中的总统计时长为0,每次更新时将所述统计信息中的总统计时长增加所述设定时长;
所述根据调整后的当前系统时间对所述统计信息进行更新,包括:根据所述统计信息中的定时统计时间和所述当前系统时间,计算停机时长,并将所述统计信息中的总统计时长增加所述停机时长。
4.根据权利要求1所述的方法,其特征在于,还包括:
所述当前客户端处于运行状态下,每次更新后获取所述当前客户端的系统时间,并计算所述当前客户端的系统时间与所述统计信息中的定时统计时间的绝对时间差;
判断所述绝对时间差是否大于设定时间阈值;若是,则将所述当前客户端的系统时间调整为所述统计信息中的定时统计时间。
5.根据权利要求4所述的方法,其特征在于,在所述将所述当前客户端的系统时间调整为所述统计信息中的定时统计时间之后,还包括:
将所述当前客户端的系统时间发送至所述分布式系统中的其它客户端,以使其它客户端利用所述当前客户端的系统时间对自身客户端的系统时间进行更新。
6.根据权利要求1-5中任一所述的方法,其特征在于,在检测到所述软件在当前客户端初次启动之后,所述启动定时任务之前,还包括:执行获取所述分布式系统中其它客户端的系统时间,并根据获取的其它客户端的系统时间,调整所述当前客户端的当前系统时间,将调整后的当前系统时间确定为统计信息中初始的定时统计时间。
7.根据权利要求1-5中任一所述的方法,其特征在于,所述统计信息经过加密后存储至持久化介质中,每次更新时,对所述持久化介质中的所述统计信息进行解密,并在每次更新完成后,将更新后的所述统计信息进行加密。
8.一种离线软件过期校验装置,其特征在于,应用于运行所述软件的客户端,所述客户端位于分布式系统中,且所述分布式系统中还包括其它客户端,包括:
检测单元,用于当检测到所述软件在当前客户端初次启动时,触发定时任务单元;还用于当确定所述当前客户端停机重启之后触发时间调整单元执行相应操作;
所述定时任务单元,用于在接收到触发时启动定时任务,以每隔设定时长对统计信息进行一次更新;所述统计信息至少包括定时统计时间;每次更新时将所述统计信息中的定时统计时间增加所述设定时长;
过期校验单元,用于根据所述定时任务每次更新后的统计信息对所述软件的license是否过期进行校验;
所述时间调整单元,用于接收到所述检测单元的触发时获取所述分布式系统中其它客户端的系统时间,并根据获取的其它客户端的系统时间,调整所述当前客户端的当前系统时间;
任务处理单元,用于根据所述时间调整单元调整后的当前系统时间对所述统计信息进行更新,并触发所述定时任务单元重启所述定时任务。
9.一种计算设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时,实现如权利要求1-7中任一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行权利要求1-7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111627973.4A CN114328222A (zh) | 2021-12-28 | 2021-12-28 | 离线软件过期校验方法、装置、计算设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111627973.4A CN114328222A (zh) | 2021-12-28 | 2021-12-28 | 离线软件过期校验方法、装置、计算设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114328222A true CN114328222A (zh) | 2022-04-12 |
Family
ID=81014380
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111627973.4A Pending CN114328222A (zh) | 2021-12-28 | 2021-12-28 | 离线软件过期校验方法、装置、计算设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114328222A (zh) |
-
2021
- 2021-12-28 CN CN202111627973.4A patent/CN114328222A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7926103B2 (en) | System and method for preventing replay attacks | |
WO2021036545A1 (zh) | 一种基于智能合约的数据处理方法、设备及存储介质 | |
US7116969B2 (en) | Wireless device having a secure clock authentication method and apparatus | |
WO2021233048A1 (zh) | 基于区块链的数据检测方法、装置及计算机可读存储介质 | |
KR20080014878A (ko) | 비신뢰 지속 시간 소스에 기초한 보호 클록 관리 방법,장치, 시스템 및 기계-액세스 가능 매체 | |
US20210067524A1 (en) | Detection of a malicious entity within a network | |
US20050050363A1 (en) | Secure data management apparatus | |
JP6385842B2 (ja) | 情報処理端末、情報処理方法、及び情報処理システム | |
CN111506489A (zh) | 测试方法、系统、设备、服务器及存储介质 | |
US20240146553A1 (en) | Registration and Execution Methods and Apparatuses of Timed Smart Contract in Blockchain | |
CN110716538A (zh) | 一种车辆诊断方法、装置、设备及可读存储介质 | |
CN112905536A (zh) | 基于区块链的数据校验同步方法和装置 | |
CN111901176A (zh) | 故障确定方法、装置、设备及存储介质 | |
US20060136892A1 (en) | Embedded agent for self-healing software | |
KR100653139B1 (ko) | 시간동기 방식 오티피 시스템의 오티피 토큰 시간보정에의한 인증방법 | |
CN114328222A (zh) | 离线软件过期校验方法、装置、计算设备及存储介质 | |
US12022015B2 (en) | Method for distributed and secure timekeeping | |
CN100576136C (zh) | 使用许可数据和相关的设备连接运行数据传输网络的方法 | |
CN111797410A (zh) | 一种多服务器授权控制方法和装置 | |
CN113783649B (zh) | 终端校时方法、系统、电子设备及存储介质 | |
CN111460256A (zh) | 网页数据的爬取方法、装置、计算机设备和存储介质 | |
CN100382506C (zh) | 一种网络管理系统中对网元服务器进行认证的方法 | |
CN110113187B (zh) | 一种配置更新方法、装置、配置服务器及配置系统 | |
CN114925339B (zh) | 一种服务器固件的许可时间管控方法、装置、设备、介质 | |
CN112770318B (zh) | 一种终端注册方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |