基于区块链的短信验证方法技术

技术编号:26976662 阅读:92 留言:0更新日期:2021-01-06 00:14
本发明专利技术属于通信技术领域,旨在解决现有的短信验证方式的安全性较低的问题。为此目的,本发明专利技术提供了一种基于区块链的短信验证方法,该短信验证方法包括:客户端随机生成序列号并对序列号进行加密;客户端将手机号和加密的序列号发送给服务端;服务端将手机号和加密的序列号发送给短信运营端并存储到区块链的智能合约中;短信运营端随机生成验证码并将验证码发送给客户端;短信运营端对验证码进行加密并将手机号、加密的序列号和加密的验证码对应地存储到区块链的智能合约中。本发明专利技术能够避免服务器和短信运营商在用户验证之前冒充用户进行短信验证,提高短信验证的安全性。

【技术实现步骤摘要】
基于区块链的短信验证方法
本专利技术属于通信
,具体提供一种基于区块链的短信验证方法。
技术介绍
短信验证是一种目前常用的验证方式,传统的短信验证方式为用户通过客户端将请求发送给服务器,服务器随机生成短信验证码,然后将短信内容发送给短信运营商,短信运营商将短信发布给用户,用户根据短信中的验证码进行验证,在此过程中,即用户在验证之前,服务器和短信运营上都已经知道了验证码的具体内容,这两方都可能冒充用户进行验证,而且,一旦服务器的数组遭到破坏或者篡改,可能导致用户无法进行正常的验证操作,由此可见,传统的短信验证方式的安全性较低。因此,本领域需要一种新的基于区块链的短信验证方法来解决上述问题。
技术实现思路
为了解决现有技术中的上述问题,即为了解决现有的短信验证方式的安全性较低的问题,本专利技术提供了一种基于区块链的短信验证方法,短信验证方法包括:客户端随机生成序列号并对序列号进行加密;客户端将手机号和加密的序列号发送给服务端;服务端将手机号和加密的序列号发送给短信运营端并存储到区块链的智能合约中;短信运营端随机生成验证码并将验证码发送给客户端;短信运营端对验证码进行加密并将手机号、加密的序列号和加密的验证码对应地存储到区块链的智能合约中。在上述短信验证方法的优选技术方案中,在“短信运营端将手机号、加密的序列号和加密的验证码对应地存储到区块链的智能合约中”之后,短信验证方法还包括:客户端将手机号、验证码和加密的序列号发送给服务端;服务端将手机号、验证码和加密的序列号发送给区块链的智能合约;区块链的智能合约进行验证并将验证结果反馈给服务端。在上述短信验证方法的优选技术方案中,“区块链的智能合约进行验证并将验证结果反馈给服务端”的步骤包括:区块链的智能合约通过服务端发送过来的手机号和加密的序列号调取出对应的验证码;将调取出来的验证码与服务端发送过来的验证码进行比对;若比对结果一致,则将验证通过的结果反馈给服务端;若比对结果不一致,则将验证不通过的结果反馈给服务端。在上述短信验证方法的优选技术方案中,“对序列号进行加密”的步骤包括:对序列号进行MD5或者SHA加密。在上述短信验证方法的优选技术方案中,“对验证码进行加密”的步骤包括:对验证码进行MD5或者SHA加密。在另一方面,本专利技术还提供了一种基于区块链的短信验证方法,短信验证方法包括:客户端随机生成序列号并对序列号进行加密;客户端将手机号和加密的序列号发送给服务端,以便服务端将手机号和加密的序列号发送给短信运营端并存储到区块链的智能合约中;客户端接收短信运营端随机生成的验证码,其中,该验证码在被短信运营端加密后与手机号和加密的序列号一起被对应地存储到区块链的智能合约中。在上述短信验证方法的优选技术方案中,在“客户端接收短信运营端随机生成的验证码”之后,短信验证方法还包括:客户端将手机号、验证码和加密的序列号发送给服务端,以便服务端将手机号、验证码和加密的序列号发送给区块链的智能合约进行验证并接收区块链的智能合约反馈的验证结果。在又一方面,本专利技术还提供了一种基于区块链的短信验证方法,短信验证方法包括:在客户端随机生成序列号并对序列号进行加密之后,服务端接收客户端发送过来的手机号和加密的序列号;服务端将手机号和加密的序列号发送给短信运营端并存储到区块链的智能合约中,以便短信运营端随机生成验证码并将验证码发送给客户端以及对验证码进行加密并将手机号、加密的序列号和加密的验证码对应地存储到区块链的智能合约中。在上述短信验证方法的优选技术方案中,在“服务端将手机号和加密的序列号发送给短信运营端并存储到区块链的智能合约中以及短信运营端随机生成验证码并将验证码发送给客户端以及对验证码进行加密并将手机号、加密的序列号和加密的验证码对应地存储到区块链的智能合约中”之后,短信验证方法还包括:服务端接收客户端发送过来的手机号、验证码和加密的序列号;服务端将手机号、验证码和加密的序列号发送给区块链的智能合约进行验证;服务端接收区块链的智能合约反馈的验证结果。在又一方面,本专利技术还提供了一种基于区块链的短信验证方法,短信验证方法包括:短信验证方法包括:在客户端随机生成序列号并对序列号进行加密以及将手机号和加密的序列号发送给服务端之后,短信运营端接收服务端发送过来的手机号和加密的序列号,其中,手机号和加密的序列号还被服务端存储到区块链的智能合约中;短信运营端随机生成验证码并将验证码发送给客户端;短信运营端对验证码进行加密并将手机号、加密的序列号和加密的验证码对应地存储到区块链的智能合约中。本领域技术人员能够理解的是,在本专利技术的优选技术方案中,通过将验证信息分成两部分,一部分为序列号,另一部分为验证码,并且序列号是由客户端进行加密的,因此短信运营商无法得到序列号原文,短信运营商无法冒充用户进行验证,另外,短信运营商生成的验证码被加密后存储在区块链的智能合约中,使得在用户验证之前服务器无法得到验证码,不存在服务器泄露验证码或者篡改验证码的可能,服务器也无法冒充用户进行验证,即服务器和短信运营商在用户验证之前都无法冒充用户进行验证,此外,由于序列号和验证码都是加密后存储到区块链的智能合约中,即使在公开的环境下,验证码和序列号也不会存在被盗用的风险,通过这样的短信验证方式,可以极大地提高短信验证的安全性。附图说明图1是现有技术中短信验证方法的流程图;图2是本专利技术的短信验证方法的流程图;图3是本专利技术的短信验证方法的发送过程的示意图;图4是本专利技术的短信验证方法的验证过程的示意图。具体实施方式下面参照附图来描述本专利技术的优选实施方式。本领域技术人员应当理解的是,这些实施方式仅仅用于解释本专利技术的技术原理,并非旨在限制本专利技术的保护范围。基于
技术介绍
指出的现有的短信验证方式的安全性较低的问题,本专利技术提供了一种基于区块链的短信验证方法,旨在提高短信验证的安全性。具体地,如图1所示,本专利技术的短信验证方法包括:客户端随机生成序列号并对序列号进行加密;客户端将手机号和加密的序列号发送给服务端;服务端将手机号和加密的序列号发送给短信运营端并存储到区块链的智能合约中;短信运营端随机生成验证码并将验证码发送给客户端;短信运营端对验证码进行加密并将手机号、加密的序列号和加密的验证码对应地存储到区块链的智能合约中。其中,客户端对序列号的加密方式可以采用MD5不可逆加密算的加密方式,也可以采用MD3、MD4或SHA不可逆加密算的加密方式,当然,还可以采用其他不可逆加密算的加密方式,本领域技术人员可以在实际应用中灵活地设置客户端对序列号的具体加密方式,这种客户端对序列号具体的加密方式的调整和改变不构成对本专利技术的限制,均应限定在本专利技术的保护范围之内。类似地,短信运营端对验证码的加密方式可以采用MD5不可逆加密算的加密方式,也可以采用MD3、MD4或者SHA不可逆加密算的加密方式,当然,还可以采用其他不可逆加密算的加密方式,本领域技术人员可以在实际应用中灵活地设置短信运营端对验证码的加密方式,这种短信运本文档来自技高网
...

【技术保护点】
1.一种基于区块链的短信验证方法,其特征在于,所述短信验证方法包括:/n客户端随机生成序列号并对序列号进行加密;/n客户端将手机号和加密的序列号发送给服务端;/n服务端将手机号和加密的序列号发送给短信运营端并存储到区块链的智能合约中;/n短信运营端随机生成验证码并将验证码发送给客户端;/n短信运营端对验证码进行加密并将手机号、加密的序列号和加密的验证码对应地存储到区块链的智能合约中。/n

【技术特征摘要】
1.一种基于区块链的短信验证方法,其特征在于,所述短信验证方法包括:
客户端随机生成序列号并对序列号进行加密;
客户端将手机号和加密的序列号发送给服务端;
服务端将手机号和加密的序列号发送给短信运营端并存储到区块链的智能合约中;
短信运营端随机生成验证码并将验证码发送给客户端;
短信运营端对验证码进行加密并将手机号、加密的序列号和加密的验证码对应地存储到区块链的智能合约中。


2.根据权利要求1所述的短信验证方法,其特征在于,在“短信运营端将手机号、加密的序列号和加密的验证码对应地存储到区块链的智能合约中”之后,所述短信验证方法还包括:
客户端将手机号、验证码和加密的序列号发送给服务端;
服务端将手机号、验证码和加密的序列号发送给区块链的智能合约;
区块链的智能合约进行验证并将验证结果反馈给服务端。


3.根据权利要求2所述的短信验证方法,其特征在于,“区块链的智能合约进行验证并将验证结果反馈给服务端”的步骤包括:
区块链的智能合约通过服务端发送过来的手机号和加密的序列号调取出对应的验证码;
将调取出来的验证码与服务端发送过来的验证码进行比对;
若比对结果一致,则将验证通过的结果反馈给服务端;
若比对结果不一致,则将验证不通过的结果反馈给服务端。


4.根据权利要求1所述的短信验证方法,其特征在于,“对序列号进行加密”的步骤包括:
对序列号进行MD5或者SHA加密。


5.根据权利要求1所述的短信验证方法,其特征在于,“对验证码进行加密”的步骤包括:
对验证码进行MD5或者SHA加密。


6.一种基于区块链的短信验证方法,其特征在于,所述短信验证方法包括:
客户端随机生成序列号并对序列号进行加密;
客户端将手机号和加密的序列号发送给服务端,以便服务端将手机号和加密的序列号发送给短信运营端并存储到区块链的智能合约中;
客户端接收短信运营端随机生成的验证码,

【专利技术属性】
技术研发人员:李洋单志刚赵晨冷合礼孟毅吴鹏飞王晓卫林克均林克新
申请(专利权)人:青岛海链数字科技有限公司青岛海尔洗衣机有限公司海尔智家股份有限公司
类型:发明
国别省市:山东;37

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

1