一种基于区块链与智能合约的身份认证系统及方法技术方案

技术编号:19828899 阅读:22 留言:0更新日期:2018-12-19 17:02
本发明专利技术请求保护一种基于区块链与智能合约的身份认证方法,主要包括如下模块:独立于区块链的用户认证模块,负责在两个节点之间进行用户的身份认证;区块链模块,其于存储整个用户身份认证过程的加密编码与其他相关认证信息;智能合约模块,其作用是在用户身份认证完成之后将整个认证过程进行RSA算法加密后存入区块链中。本发明专利技术利用区块链公开、去中心化、防篡改的特性,可以很好的解决身份联盟之间的用户认证过程中可能产生的隐私泄露、伪造认证信息和认证后抵赖的问题。

【技术实现步骤摘要】
一种基于区块链与智能合约的身份认证系统及方法
本专利技术属于密码学、网络技术,尤其涉及基于区块链与智能合约的身份认证方法。
技术介绍
近年来,Fackbook、微博等社交网络发展迅猛,人们也通常会同时加入好几个社交网络来享受互联网提供的便利与完整服务。与此同时,社交网络公司也同样希望为用户提供更加优质的服务,以此吸引更多的用户。更具体的,如果一个联盟中存在两个平台T与B,对于一个已经在平台B中注册过的用户u,想要新加入平台T,这时平台T就会向平台B发送请求询问用户u的基本情况,以便为其提供个性化服务。而传统的身份认证方法存在用户信息泄露、伪造认证信息和平台对已认证的用户行为抵赖即不承认该用户是经其认证的问题。随着区块链与智能合约技术的出现,可以利用区块链技术的去中心化、公开、不可篡改等特点来改进传统的身份认证方法。通过在认证过程中加入对应平台的数字证书与数字签名来保证认证过程中的数据私密性与完整性。再利用RSA加密算法速度快,难破解的特性对完整的认证过程进行加密编码之后将该编码加入到区块链中,既保证了整个过程的公开性又保障了用户的隐私性,同时避免了抵赖的问题。
技术实现思路
本专利技术旨在解决以上现有技术的问题。提出了一种可以有效避免在用户身份认证过程中存在的隐私问、伪造问题和抵赖问题的基于区块链与智能合约的身份认证系统及方法。本专利技术的技术方案如下:一种基于区块链与智能合约的身份认证系统,其包括认证模块、智能合约模块和区块链模块,所述认证模块与智能合约模块相连接,所述智能合约模块与区块链模块相连接,其中,所述认证模块,用于完成用户的身份认证过程,认证模块架设在局域网的两个节点之间;所述智能合约模块,用于在认证模块的认证过程结束后将本次完整的认证过程利用RSA(罗纳德·李维斯特-阿迪·萨莫尔-伦纳德·阿德曼)加密算法转为加密编码,并将该加密编码存入区块链中;区块链模块负责存储经过加密编码。进一步的,所述认证模块的认证过程包括:认证服务请求方节点T向用户原本所处的认证服务提供方节点B发起请求,节点B收到请求后,验证该请求的真实性,如果验证成功则返回对节点T所请求的内容的回应;节点T收到返回内容后,验证该内容的真实性并获取回应内容。进一步的,所述请求包括以下三项:请求的内容;节点T的数字签名;节点T的数字证书。进一步的,所述节点B收到请求后,验证该请求的真实性,该验证步骤具体如下:节点B受到请求后,首先利用颁发数字证书的权威机构的公钥解开该数字证书,获得节点T的真实公钥;接着利用从数字证书中获取的节点T的公钥来解析请求中的数字签名,以验证请求内容的真实性与完整性。进一步的,所述验证成功后,节点B返回节点T所请求的内容的回应,该内容包含以下几项:对节点T所请求的内容的回应;节点B的数字签名;节点B的数字证书。进一步的,所述对完整的认证过程进行RSA加密算法进行加密,具体包括以下步骤:1.假设发送方向接收方发送明文信息m,发送方从接收方获得的公钥为(n,e),利用加密公式me=c(modn)对明文信息m进行加密得到密文c。其中,m必须是整数,而且m必须比n小。其中公式的含义为:m的e次方被n除的余数为c。2.发送方将密文c发送给接收方。3.接收方从发送方接收到密文c,用自己的配对私钥(n,d)进行解密,利用解密公式cd=m(modn)解密得到明文信息m。其中公式的含义为:c的d次方被n除的余数为m。进一步的,所述区块链模块是由若干个区块组成的链,每个区块又包含区块体与区块头。其中区块头里面存储着区块的头信息,包含上一个区块的哈希值(PreHash),本区块体的哈希值(Hash),以及时间戳(TimeStamp)等信息。而区块体存储着这个区块的详细数据(Data),这个数据包含若干行记录,可以是交易信息,也可以是其他某种信息。对于一种基于区块链与智能合约的身份认证系统而言则是存储的加密后的完整认证过程。一种基于前述系统的区块链与智能合约的身份认证方法,其包括以下步骤:独立于区块链的用户认证过程,负责在两个节点之间进行用户的身份认证;在认证过程完成之后,将完整的认证过程发送认证服务请求方,并对完整的认证过程进行RSA加密算法进行加密得到加密编码,将该加密编码自动存入区块链中。进一步的,所述RSA加密算法是使用认证服务请求方的公钥对认证过程产生的明文进行加密,并只能用认证服务请求方的私钥进行解密获取整个认证过程信息。本专利技术的优点及有益效果如下:本专利技术的系统及方法在用户允许节点查询其信息的基础上,实现了用户身份的认证,与此同时很好的保护了用户的隐私;当用户新加入一个目标网络,该目标网络即向用户之前的注册过的源网络发起认证请求,在收到源网络的回复之后,即可使用该用户的信息。同时该认证过程并不存储在一个中心服务器上,而是保存在公开的区块链中,又很好的解决了抵赖问题。附图说明图1是本专利技术提供优选实施例基于区块链与智能合约的身份认证架构图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、详细地描述。所描述的实施例仅仅是本专利技术的一部分实施例。本专利技术解决上述技术问题的技术方案是:图1是基于区块链智能合约的身份认证架构图,其中包含三大模块:认证模块、智能合约模块和区块链模块。其中认证模块负责节点之间的认证,该认证过程处于安全且私密的局域网络中,不对外开放;智能合约模块负责在认证过程结束后将一次完整的认证过程利用RSA加密算法进行编码后存入区块链中;区块链模块负责存储认证过程的加密值。首先是认证模块,其负责进行用户的身份认证。认证模块架设在局域网的两个节点之间,保证了隐私性与安全性。具体的认证步骤如下:1.节点T向节点B发出认证请求,请求中除了包含了请求内容之外,还包含了节点T的数字签名TDS与权威数字认证机构颁发的数字证书TDC。2.节点B在接受到来自节点T的请求之后,首先会用数字认证机构的公钥解开数字证书获取到节点T的真正公钥,之后再用获取到的公钥解开数字签名以核对请求内容的真实性与完整性。3.接着,节点B向节点T发送响应,响应中包含响应内容,节点B的数字签名BDS,由权威机构颁发的数字证书BDC。4.节点T在收到响应之后按同样的操作获取内容。然后是智能合约模块,其负责在一次认证过程完成之后将该次认证过程利用RSA加密算法转为加密编码,并将该加密编码存入区块链中。RSA加密算法是一种非对称的加密算法,具有迅速且极其难破解的特性,保障了完整的认证过程能快速的进行编码,且不易被解密。最后是区块链模块,其负责存储认证过程的加密编码与其他与认证相关的信息。该认证方法可以很好的保护使用双方的隐私性与安全性。但也可能存在以下几种被攻击的情况:1.伪装成节点T向节点B发出认证请求。这种情况下因为没有节点T的数字签名TDS与权威数字认证机构颁发的数字证书TDC,所以节点B不予以回应,攻击失败。2.伪装成节点B向节点T发送认证结果。这种情况下由于没有节点B的数字签名BDS,由权威机构颁发的数字证书BDC,所以节点T并不认同该认证结果,不予接受。试图篡改区块链上的认证过程数据。这种情况下由于区块链本身的特性,已经很难实现该攻击,再加上区块链上的数据是加密数据,就更加难以更改。所以,该攻击方式不会成功。以上这些实施例应本文档来自技高网...

【技术保护点】
1.一种基于区块链与智能合约的身份认证系统,其特征在于,包括认证模块、智能合约模块和区块链模块,所述认证模块与智能合约模块相连接,所述智能合约模块与区块链模块相连接,其中,所述认证模块,用于完成用户的身份认证过程,认证模块架设在局域网的两个节点之间;所述智能合约模块,用于在认证模块的认证过程结束后将本次完整的认证过程利用RSA加密算法转为加密编码,并将该加密编码存入区块链中;区块链模块负责存储经过加密编码。

【技术特征摘要】
1.一种基于区块链与智能合约的身份认证系统,其特征在于,包括认证模块、智能合约模块和区块链模块,所述认证模块与智能合约模块相连接,所述智能合约模块与区块链模块相连接,其中,所述认证模块,用于完成用户的身份认证过程,认证模块架设在局域网的两个节点之间;所述智能合约模块,用于在认证模块的认证过程结束后将本次完整的认证过程利用RSA加密算法转为加密编码,并将该加密编码存入区块链中;区块链模块负责存储经过加密编码。2.根据权利要求1所述的一种基于区块链与智能合约的身份认证系统,其特征在于,所述认证模块的认证过程包括:认证服务请求方节点T向用户原本所处的认证服务提供方节点B发起请求,节点B收到请求后,验证该请求的真实性,如果验证成功则返回对节点T所请求的内容的回应;节点T收到返回内容后,验证该内容的真实性并获取回应内容。3.根据权利要求2所述的一种基于区块链与智能合约的身份认证系统,其特征在于,所述请求包括以下三项:请求的内容;节点T的数字签名;节点T的数字证书。4.根据权利要求3所述的一种基于区块链与智能合约的身份认证系统,其特征在于,所述节点B收到请求后,验证该请求的真实性,该验证步骤具体如下:节点B受到请求后,首先利用颁发数字证书的权威机构的公钥解开该数字证书,获得节点T的真实公钥;接着利用从数字证书中获取的节点T的公钥来解析请求中的数字签名,以验证请求内容的真实性与完整性。5.根据权利要求2所述的一种基于区块链与智能合约的身份认证系统,其特征在于,所述验证成功后,节点B返回节点T所请求的内容的回应,该内容包含以下几项:对节点T所请求的内容的回应;节点B的数字签名;节点B的数字证书。6.根据权利要求1-5之一所述的一种基于区块链与智能合约的身份认证系...

【专利技术属性】
技术研发人员:李智星滕磊李子扬周政王驰龙俞冬明韩雨亭李相鹏
申请(专利权)人:重庆邮电大学
类型:发明
国别省市:重庆,50

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

1