System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于区块链的密码安全托管系统的实现方法技术方案_技高网

一种基于区块链的密码安全托管系统的实现方法技术方案

技术编号:40627079 阅读:8 留言:0更新日期:2024-03-13 21:14
本发明专利技术涉及密码安全托管技术领域,具体为一种基于区块链的密码安全托管系统的实现方法,包括以下步骤:搭建区块链网络;用户身份注册;密码托管智能合约部署;密码信息存储;密码信息获取;有益效果为:本发明专利技术提出的基于区块链的密码安全托管系统的实现方法,利用浏览器插件(钱包程序)和区块链技术,对用户不同网站/平台的密码进行保存和管理,避免了用户人工记忆各种复杂密码或者忘记密码的情况,极大的方便了用户对密码的保存和使用。

【技术实现步骤摘要】

本专利技术涉及密码安全托管,具体为一种基于区块链的密码安全托管系统的实现方法


技术介绍

1、区块链是一种不可篡改的分布式共享账本。在区块链中,数据保存在多方,利用共识算法实现多节点数据的一致性。在区块链中,数据只能追加不能删除或修改。新型区块链是可编程的,利用智能合约可以将业务规则编码到区块链中,规则(代码)像数据一样不能删除或修改,代码在调用时自动执行,不能跳过,执行的结果也写入区块链。由于数据保存在多方,链上数据不可篡改,所以利用区块链可实现多方之间的可信数据共享。

2、现有技术中,非对称加密算法是一种特殊的密码学算法,在加密解密过程中涉及了一对秘钥:公开秘钥(简称公钥)和私有秘钥(简称私钥)。如果用公钥对数据加密,只有用对应的私钥才能解密;如果用私钥对数据加密,则只有用对应的公钥才能解密。因为加密和解密时使用的秘钥不同,所以这种算法叫做非对称加密算法。非对称加密算法消除了最终用户交换秘钥的需要,具有更好的保密性和安全性。

3、但是,目前用户所要管理的密码众多,用户需强行记忆众多密码的同时,难以确保其获取正确的密码登录各个网站或平台。


技术实现思路

1、本专利技术的目的在于提供一种基于区块链的密码安全托管系统的实现方法,以解决上述
技术介绍
中提出的问题。

2、为实现上述目的,本专利技术提供如下技术方案:一种基于区块链的密码安全托管系统的实现方法,所述方法包括以下步骤:

3、搭建区块链网络;

4、用户身份注册;

<p>5、密码托管智能合约部署;

6、密码信息存储;

7、密码信息获取。

8、优选的,搭建区块链网络具体包括:

9、搭建fabric区块链网络,以之作为密码安全托管系统方案的基础;

10、在搭建的fabric区块链网络中,包含了两个组织:平台监管组织和普通用户组织。

11、优选的,平台监管组织及其组织下的peer节点,用于密码安全托管平台的管理者对链上数据进行读取及审查;

12、普通用户组织及其组织下的peer节点,用于普通用户对其密码信息进行写链和读链。

13、优选的,用户身份注册的具体操作如下:

14、安装钱包,安装过程中钱包程序随机生成一对ecdsa公钥、私钥,钱包将公钥、私钥保存到浏览器存储中,同时备份到本机磁盘;

15、钱包程序利用生成的公钥向fabric区块链网络注册身份,注册成功后获取到用户证书,将证书保存浏览器存储中并备份到本机磁盘,身份注册成功后,区块链网络即通过用户证书对用户的身份进行验证。

16、优选的,密码托管智能合约部署时,在已部署的fabric区块链网络上部署密码托管智能合约,密码托管智能合约提供如下调用函数:保存网站/平台用户名信息、获取网站/平台用户名信息、保存已加密密码信息以及获取已加密密码信息。

17、优选的,密码信息存储的具体流程包括:

18、用户首次登录或者注册某个网站/平台时,钱包程序会通过浏览器获取网站/平台的域名host,登录或注册的用户名user和密码pwd;

19、钱包获取到用户私钥sk;

20、钱包使用用户私钥sk、网站/平台的域名host进行编码得到索引键key1,key1的编码方式为:key1=hash(sk+host),其中hash为哈希函数;

21、钱包使用用户私钥sk、网站/平台的域名host和登录或注册的用户名user进行编码,得到密码存储键key2,key2的编码方式为:key2=hash(sk+host+user),其中hash为哈希函数;

22、钱包调用密码托管智能合约的保存网站/平台用户名信息的函数,输入的参数为索引键key1和用户名user;

23、钱包获取到用户的公钥pk;

24、钱包使用用户公钥pk,利用非对称加密算法ecc对密码pwd进行加密,加密后的密码为encode_pwd;

25、钱包使用网站/平台域名host、网站/平台用户名user和加密后的密码encode_pwd拼装得到密码存储value;

26、钱包调用密码托管智能合约的保存已加密密码信息函数,输入的参数为密码存储key和密码存储value。

27、优选的,密码信息获取的具体操作如下:

28、用户再次登录某网站/平台时候,当用户输入完用户名后,钱包程序会自动读取改网站/平台的域名host、输入的用户名user;

29、钱包获取到用户私钥sk;

30、钱包使用用户私钥sk、网站/平台的域名host和用户名user进行编码,得到密码存储key,key的编码方式为:key=hash(sk+host+user),其中hash为哈希函数;

31、钱包调用密码托管智能合约的获取已加密密码信息函数,传入参数key,调用成功执行完毕后会获得密码存储value;

32、钱包从value中提取加密密码encode_pwd,并使用sk以非对称加密算法ecc对encode_pwd进行解密,得到密码pwd;

33、钱包通过浏览器将pwd自动填入密码输入框,从而完成登录。

34、与现有技术相比,本专利技术的有益效果是:

35、本专利技术提出的基于区块链的密码安全托管系统的实现方法,利用浏览器插件(钱包程序)和区块链技术,对用户不同网站/平台的密码进行保存和管理,避免了用户人工记忆各种复杂密码或者忘记密码的情况,极大的方便了用户对密码的保存和使用。密码信息保存在区块链上,不需要担心忘记密码的情况,随时可以从链上读取。密码信息的保存并非明文保存,而是利用非对称加密算法和哈希算法,对密码进行加密编码后写入链上,确保了密码保密性和安全性。

本文档来自技高网
...

【技术保护点】

1.一种基于区块链的密码安全托管系统的实现方法,其特征在于:所述方法包括以下步骤:

2.根据权利要求1所述的一种基于区块链的密码安全托管系统的实现方法,其特征在于:搭建区块链网络具体包括:

3.根据权利要求2所述的一种基于区块链的密码安全托管系统的实现方法,其特征在于:平台监管组织及其组织下的peer节点,用于密码安全托管平台的管理者对链上数据进行读取及审查;

4.根据权利要求1所述的一种基于区块链的密码安全托管系统的实现方法,其特征在于:用户身份注册的具体操作如下:

5.根据权利要求1所述的一种基于区块链的密码安全托管系统的实现方法,其特征在于:密码托管智能合约部署时,在已部署的Fabric区块链网络上部署密码托管智能合约,密码托管智能合约提供如下调用函数:保存网站/平台用户名信息、获取网站/平台用户名信息、保存已加密密码信息以及获取已加密密码信息。

6.根据权利要求1所述的一种基于区块链的密码安全托管系统的实现方法,其特征在于:密码信息存储的具体流程包括:

7.根据权利要求1所述的一种基于区块链的密码安全托管系统的实现方法,其特征在于:密码信息获取的具体操作如下:

...

【技术特征摘要】

1.一种基于区块链的密码安全托管系统的实现方法,其特征在于:所述方法包括以下步骤:

2.根据权利要求1所述的一种基于区块链的密码安全托管系统的实现方法,其特征在于:搭建区块链网络具体包括:

3.根据权利要求2所述的一种基于区块链的密码安全托管系统的实现方法,其特征在于:平台监管组织及其组织下的peer节点,用于密码安全托管平台的管理者对链上数据进行读取及审查;

4.根据权利要求1所述的一种基于区块链的密码安全托管系统的实现方法,其特征在于:用户身份注册的具体操作如下:

5.根...

【专利技术属性】
技术研发人员:张岚时云智
申请(专利权)人:浪潮云信息技术股份公司
类型:发明
国别省市:

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

1