本发明涉及信息安全和身份认证,具体为一种基于国密sm9算法的高安全性身份认证方法及系统。
背景技术:
1、sm9算法是一种基于用户身份标识的密码算法,sm9中的密钥生成中心可根据用户身份标识和系统参数产生对应的用户私钥,签名者可根据用户私钥、相关参数和身份标识对消息形成签名。
2、现有技术中,验签者可根据发送方的身份标识和相关参数直接产生对应的公钥从而对签名进行验证,以确认发送方身份的真实性和数据的完整性。标识密码体系与传统公钥密码体系最大的不同就是去除了证书机制,消除了证书的验证和管理过程,提高了整体验证效率;但是,认证数据在服务端存储所面对安全问题。
技术实现思路
1、本发明的目的在于提供一种基于国密sm9算法的高安全性身份认证方法及系统,以解决上述背景技术中提出的问题。
2、为实现上述目的,本发明提供如下技术方案:一种基于国密sm9算法的高安全性身份认证方法,所述方法包括以下步骤:
3、初始化阶段,服务端kgc产生随机数;
4、注册阶段,服务端接收用户在注册时提交的认证数据后,对该数据使用sm3算法进行哈希处理;
5、认证阶段,用户在登录其账号时提交认证数据,服务端接收后对其进行sm3哈希处理。
6、优选的,初始化阶段,服务端kgc产生随机数,并生成签名主公私钥对。
7、优选的,注册阶段,服务端接收用户在注册时提交的认证数据后,对数据使用sm3算法进行哈希处理,作为用户的身份标识信息,生成其签名私钥,并对身份标识信息进行sm9签名。
8、优选的,认证阶段,用户在登录其账号时提交认证数据,服务端接收后对其进行sm3哈希处理,作为身份标识信息对注册时的签名数据进行验签,若验签成功则认证通过,否则不通过。
9、一种基于国密sm9算法的高安全性身份认证系统,所述系统由服务端、客户端以及kgc组成;
10、服务端:在初始化阶段向kgc请求签名主公私钥对;
11、客户端:在注册阶段向服务端发送用户的账号及其认证信息;
12、kgc:密钥生成中心,在初始化阶段为服务端生成签名主公私钥对。
13、优选的,服务端在认证阶段对用户的认证数据同样进行sm3哈希处理,对本地签名数据进行验签,若验签成功则认证通过。
14、优选的,客户端在认证阶段向服务端发送用户的认证信息。
15、优选的,kgc:密钥生成中心,在初始化阶段为服务端生成签名主公私钥对,在注册阶段生成用户的签名私钥。
16、与现有技术相比,本发明的有益效果是:
17、本发明提出的基于国密sm9算法的高安全性身份认证方法及系统,利用sm9算法,将用户认证数据转换为用户私钥,生成签名数据后可以丢弃认证数据,避免认证数据在服务端存储所面对的安全问题;同时sm9是属性标识算法,只有真实的用户身份数据才能够身份认证通过,保证了身份认证的准确性和高安全性。
1.一种基于国密sm9算法的高安全性身份认证方法,其特征在于:所述方法包括以下步骤:
2.根据权利要求1所述的一种基于国密sm9算法的高安全性身份认证方法,其特征在于:初始化阶段,服务端kgc产生随机数,并生成签名主公私钥对。
3.根据权利要求1所述的一种基于国密sm9算法的高安全性身份认证方法,其特征在于:注册阶段,服务端接收用户在注册时提交的认证数据后,对数据使用sm3算法进行哈希处理,作为用户的身份标识信息,生成其签名私钥,并对身份标识信息进行sm9签名。
4.根据权利要求1所述的一种基于国密sm9算法的高安全性身份认证方法,其特征在于:认证阶段,用户在登录其账号时提交认证数据,服务端接收后对其进行sm3哈希处理,作为身份标识信息对注册时的签名数据进行验签,若验签成功则认证通过,否则不通过。
5.一种根据权利要求1-4任意一项所述的基于国密sm9算法的高安全性身份认证方法的基于国密sm9算法的高安全性身份认证系统,其特征在于:所述系统由服务端、客户端以及kgc组成;
6.根据权利要求5所述的一种基于国密sm9算法的高安全性身份认证系统,其特征在于:服务端在认证阶段对用户的认证数据同样进行sm3哈希处理,对本地签名数据进行验签,若验签成功则认证通过。
7.根据权利要求5所述的一种基于国密sm9算法的高安全性身份认证系统,其特征在于:客户端在认证阶段向服务端发送用户的认证信息。
8.根据权利要求5所述的一种基于国密sm9算法的高安全性身份认证系统,其特征在于:kgc:密钥生成中心,在初始化阶段为服务端生成签名主公私钥对,在注册阶段生成用户的签名私钥。