一种基于国密算法对应用程序认证授权的方法技术

技术编号:39486413 阅读:11 留言:0更新日期:2023-11-24 11:06
本发明专利技术公开了一种基于国密算法对应用程序认证授权的方法,首先生成一对国密

【技术实现步骤摘要】
一种基于国密算法对应用程序认证授权的方法


[0001]本专利技术属于应用授权认证
,具体涉及一种基于国密算法对应用程序认证授权的方法


技术介绍

[0002]随着互联网技术的高速发展,客观上对产品软件的要求越来越高,导致软件的开发成本不断增加

为了保护软件开发者的权益,同时也为了保障信息安全和软件安全,防止软件产品不被滥用

盗用等,促成了
LICENSE
技术的出现

作为商用软件的惯用模式,
LICENSE
被广泛集成到了各种软件中,作为软件使用前必须验证激活的先决条件

[0003]目前,常规软件的
LICENSE
的生成一般是基于国际算法套件进行一层加密,没有过多的组合算法,验证过程只需根据加密算法的反向解析
LICENSE
,一般验证通过后即可完全使用软件,没有特殊的权限限制,最多只有有效期的限制,因此
LICENSE
文件的安全性较低,无法满足当前互联网技术对应用程序产品安全性的要求;并且
LICENSE
验证过程大多数都是在线版,需要联网与外部服务交互获取验证过程所需的数据,这样就限制了其无法在内网环境下进行使用


技术实现思路

[0004]针对以上现有技术中存在的缺点和不足,本专利技术提出基于国密算法对应用程序认证授权的方法,通过加解密使用的国密标准算法,并组合使用多种不同的加密算法,显著提高
LICENSE
文件的安全性

[0005]为实现上述目的,本专利技术采用的技术方案为一种基于国密算法对应用程序认证授权的方法,包含以下步骤:
[0006]S1
:授权签发,包括生成
ECC
密钥对

获取机器特征值和创建授权文件;
[0007]S2
:验证授权文件

[0008]上述步骤
S1
所述授权签发,具体包含以下步骤:
[0009]S11
:读取公私钥文件,获取公钥
P
和私钥
d

[0010]S12
:获取通过用户输入确认授权的开始时间
st
和结束时间
et

[0011]S13
:通过
hcinfo.conf
文件获取签发机器的硬件信息
hc

[0012]S14
:使用
P+d

st&et&hc
拼接数据计算
SM2
的签名值
S1
,以确保
st、et

hc
的完整性和正确性;
[0013]S15
:对
S1
进行
SM4_ECB
加密,输出密文
C1
,密钥
K1
通过
shamir
秘密共享算法分散为三份写入到代码中,以防止攻击者同时伪造
P

d

st

et

hc

S1
数据;
[0014]S16
:获取最后访问时间
lt
,并通过
SM4_ECB
加密输出密文
C2
,以防止用户通过修改系统时间攻击;
[0015]S17
:将以上数据
P&st&et&hc&C1&C2
拼接,写入
LICENSE
作为最后的授权文件

[0016]上述步骤
S2
所述验证授权文件,具体包含以下步骤:
[0017]S21
:读取
LICENSE
中的对应数据
P、st、et、hc、C1、C2

[0018]S22
:使用密钥
K1

C1
进行
SM4_ECB
解密,获得
S1

[0019]S23
:将上述获取的
st、et

hc
拼接作为数据通过
P

S1
进行
SM2
验签;
[0020]S24
:使用密钥
K1

C2
进行
SM4_ECB
解密,获得
lt

[0021]S25
:获取当前系统时间
ct
进行判断,须满足
ct、lt
位于
st

et
之间,且
ct
大于等于
lt

[0022]S26
:获取当前系统硬件信息与
LICENSE
中的
hc
进行比对;
[0023]S27
:更新
LICENSE
中的
C2
并保存

[0024]为了避免多个
LICENSE
共用一个密钥对的情况出现,每个
LICENSE
都有各自对应的密钥对,其中密钥对里的公钥是写入到
LICENSE
中公开的,而私钥需进行出口把控和安全维护

[0025]前述生成
ECC
密钥对是通过密钥生成工具生成可用的
ECC
公私钥对

[0026]通过所述密钥生成工具会将生成的公私钥对通过
Base64
编码后输出到用户指定的文件夹中,生产两个文件
sm2_priv.key

sm2_pub.key。
[0027]与现有技术相比,本专利技术具有以下的有益技术效果:
[0028]1,本专利技术通过加解密使用的国密标准算法,并组合使用多种不同的加密算法,大幅提高了
LICENSE
文件的安全性;
[0029]2,
LICENSE
认证过程所需数据皆可从
LICENSE
中获取,无需联网进行
LICENSE
认证,内

外网环境皆可进行认证
LICENSE
,因此使用环境广泛

[0030]3,加密所使用的会话密钥通过
shamir
秘密共享算法进行保护;
[0031]4,每次认证
LICENSE
可实时更新记录最后时间,有效提高本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种基于国密算法对应用程序认证授权的方法,其特征在于,包含以下步骤:
S1
:授权签发,包括生成
ECC
密钥对

获取机器特征值和创建授权文件;
S2
:验证授权文件
。2.
根据权利要求1所述的基于国密算法对应用程序认证授权的方法,其特征在于,步骤
S1
所述授权签发具体包含以下步骤:
S11
:读取公私钥文件,获取公钥
P
和私钥
d

S12
:获取通过用户输入确认授权的开始时间
st
和结束时间
et

S13
:通过
hcinfo.conf
文件获取签发机器的硬件信息
hc

S14
:使用
P+d

st&et&hc
拼接数据计算
SM2
的签名值
S1
,以确保
st、et

hc
的完整性和正确性;
S15
:对
S1
进行
SM4_ECB
加密,输出密文
C1
,密钥
K1
通过
shamir
秘密共享算法分散为三份写入到代码中,以防止攻击者同时伪造
P

d

st

et

hc

S1
数据;
S16
:获取最后访问时间
lt
,并通过
SM4_ECB
加密输出密文
C2
,以防止用户通过修改系统时间攻击;
S17
:将以上数据
P&st&et&hc&C1&C2
拼接,写入
LICENSE
作为最后的授权文件
。3.
根据权利要求2所述的基于国密算法对应用程序认证授权的方法,其特征在于,步骤
S2

【专利技术属性】
技术研发人员:李建贾磊王传林
申请(专利权)人:江苏深网科技有限公司
类型:发明
国别省市:

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

1