本发明涉及系统安全,具体涉及一种用于电子身份的注册及认证方法及装置。
背景技术:
1、随着电子政务的发展,系统安全凸显出了不少亟待解决的问题。而“区块链”与政务的结合成为我国电子政务发展的新方向。一方面,“区块链”为我国电子政务建设创造了良好的机遇;另一方面,也为我国电子政务建设带来了巨大的挑战,值得关注并进行研究。由于政务数据本身的敏感性、重要性和高价值的特性,对数据的真实性和防篡改性要求非常高,这刚好与区块链技术真实、防篡改的特性很好的结合起来。如何将电子政务建设与区块链进行结合,提高系统的安全性,是目前亟需解决的问题。
技术实现思路
1、针对上述技术问题,本发明提供一种用于电子身份的注册及认证方法,包括:
2、接收用户的注册请求,将用户的身份信息和生物信息使用散列哈希算法进行加密,对所述身份信息和生物信息的哈希值进行签名;
3、将签名数据上传到区块链,并广播到区块链中的各个节点;
4、各个节点基于区块共识对所述签名数据进行签署,每完成一次签署生成一个新的哈希值,利用新哈希值形成一个区块;所述区块根据区块头和前一个区块哈希值,计算该区块哈希值;由当前区块哈希值和前一区块哈希值形成链条;
5、将包含用户的身份信息和生物信息的认证请求发送至区块的验证节点;验证节点使用公钥解密认证请求,提取用户的身份信息、生物特征信息的散列值和随机口令,在确定所述随机口令有效时,将所述身份信息作为索引,在区块链上获取对应的记录,将生物特征信息的散列值和区块链上对应记录的生物特征信息的散列值进行比对,若相似度大于预设阈值,则认证成功。
6、进一步的,用户的身份信息包括:身份证号、姓名、生日和性别;
7、用户的生物信息包括:人像照片、指纹、虹膜。
8、进一步的,将用户的身份信息和生物信息使用散列哈希算法进行加密,包括:
9、将用户的身份信息使用sha-256或md5算法加密,生成身份信息散列值h(idinfo);
10、生物信息使用simhash算法加密,生成生物信息散列值hlsh(biofeature)。
11、进一步的,对所述身份信息和生物信息的哈希值进行签名,包括:
12、根据用户的身份证号,使用sm9密钥生成算法生成用户的密钥对,公钥为keypc,私钥为keypv;
13、对身份信息散列值h(idinfo)和生物信息散列值hlsh(biofeature)合成,并使用私钥keypv加密,结果为id的签名sid=skeypv(h(idinfo)||hlsh(biofeature))。
14、进一步的,在将包含用户的身份信息和生物信息的认证请求发送至区块的验证节点之前,包括:
15、将用户的身份信息使用sha-256或md5算法加密,生成身份信息散列值h(idinfo);
16、生物信息使用simhash算法加密,生成生物信息散列值hlsh(biofeature);
17、使用私钥对身份信息散列值h(idinfo)、生物信息散列值hlsh(biofeature)和随机口令进行加密生成认证信息二维码,所述认证信息二维码qr=skeypv(h(idinfo)||hlsh(biofeature)||随机口令);
18、将所述认证信息二维码作为认证请求。
19、进一步的,验证节点使用公钥解密认证请求,提取用户的身份信息、生物特征信息的散列值和随机口令,包括;
20、使用公钥解密认证信息qr=skeypv(h(idinfo)||hlsh(biofeature)||随机口令),提取出h(idinfo)||hlsh(biofeature)||随机口令。
21、进一步的,在确定所述随机口令有效时,将所述身份信息作为索引,在区块链上获取对应的记录,包括:
22、验证所述随机口令是否在有效期限内,若在有效期限内,将认证信息中的身份信息作为索引,在区块链上获取对应的记录;
23、若随机口令不在有效期限内或不正确,则提示重新验证。
24、进一步的,还包括,包括:
25、若认证请求中的生物特征信息的散列值和区块链上对应记录的生物特征信息的相似度小于预设阈值,则认证失败。
26、本发明同时提供一种用于电子身份的注册及认证装置,包括:
27、加密单元,用于接收用户的注册请求,将用户的身份信息和生物信息使用散列哈希算法进行加密,对所述身份信息和生物信息的哈希值进行签名;
28、广播单元,用于将签名数据上传到区块链,并广播到区块链中的各个节点;
29、链条形成单元,用于各个节点基于区块共识对所述签名数据进行签署,每完成一次签署生成一个新的哈希值,利用新哈希值形成一个区块;所述区块根据区块头和前一个区块哈希值,计算该区块哈希值;由当前区块哈希值和前一区块哈希值形成链条;
30、认证单元,用于将包含用户的身份信息和生物信息的认证请求发送至区块的验证节点;验证节点使用公钥解密认证请求,提取用户的身份信息、生物特征信息的散列值和随机口令,在确定所述随机口令有效时,将所述身份信息作为索引,在区块链上获取对应的记录,将生物特征信息的散列值和区块链上对应记录的生物特征信息的散列值进行比对,若相似度大于预设阈值,则认证成功。
31、进一步的,加密单元,包括:
32、第一加密子单元,用于将用户的身份信息使用sha-256或md5算法加密,生成身份信息散列值h(idinfo);
33、第二加密子单元,用于生物信息使用simhash算法加密,生成生物信息散列值hlsh(biofeature)。
34、本发明提供一种用于电子身份的注册及认证方法及装置,提出了一种去中心化的身份注册和验证系统,使用区块链技术存储用户加密后的信息,更好的保护用户的隐私。使用多因子身份注册和验证的方式,使用个人信息加生物识别信息,避免了记住密码等繁琐的方式。针对电子证件使用二维码包含经过算法加密后的个人信息,提高用户个人信息安全性。使用共识机制,确保身份核验服务器节点的安全可靠。整体上,将电子政务建设与区块链进行结合,提高政务系统的安全性。
1.一种用于电子身份的注册及认证方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,用户的身份信息包括:身份证号、姓名、生日和性别;
3.根据权利要求1所述的方法,其特征在于,将用户的身份信息和生物信息使用散列哈希算法进行加密,包括:
4.根据权利要求1所述的方法,其特征在于,对所述身份信息和生物信息的哈希值进行签名,包括:
5.根据权利要求1所述的方法,其特征在于,在将包含用户的身份信息和生物信息的认证请求发送至区块的验证节点之前,包括:
6.根据权利要求1所述的方法,其特征在于,验证节点使用公钥解密认证请求,提取用户的身份信息、生物特征信息的散列值和随机口令,包括;
7.根据权利要求1所述的方法,其特征在于,在确定所述随机口令有效时,将所述身份信息作为索引,在区块链上获取对应的记录,包括:
8.根据权利要求1所述的方法,其特征在于,还包括,包括:
9.一种用于电子身份的注册及认证装置,其特征在于,包括:
10.根据权利要求9所述的装置,其特征在于,加密单元,包括: