掌桥专利:专业的专利平台
掌桥专利
首页

一种基于区块链快速生成账户的方法和装置

文献发布时间:2023-06-19 12:18:04


一种基于区块链快速生成账户的方法和装置

技术领域

本发明涉及到区块链技术领域,具体而言,涉及一种快速生成账户的方法、一种快速生成账户的装置、一套服务终端,一系列计算机可读存储介质。

背景技术

区块链技术是一种分布式数据结构的全新技术;它由四个核心技术组成,它们分别是:

1.分布式账本-储存功能;

2.共识机制-统筹节点,数据处理;

3.密码学-数据的安全,验证数据的归属,不可篡改可追溯;

4.智能合约-执行应用。

在区块链的发展历史中,区块链技术的运用在前些年首先主要涉及到的是分布式账本、共识机制和密码学等技术;其中最具代表性的是在比特币中的应用,作为最成功的数字货币的发明,比特币具有以下优点:

一.完全的去中心化:比特币作为区块链现存最安全和流行的一种数字货币的原因之一就是它完全的去中心化的特点;从中本聪创建第一个区块开始,到如今现存的区块数已经有无数多个;而比特币系统的每个区块都是由挖矿胜出的矿工才具有它的记账权;每个矿工即为一个节点,各节点之间是完全平等的,它们互相记录和检测其他节点将要写入的交易是否合法,只有当大部分节点都同意该交易是合法的以后,该交易才会被写入区块;所以在这种模式情况下,一个或者少数几个节点想要作弊是不可能的。

二.不可篡改性:写入比特币区块链的交易是不可能篡改的;除了一中的去中心化原因以外,还有就是比特币区块中的交易具有一种特殊的数据结构:梅克尔树的数据结构,梅克尔树的特征是对每笔交易进行一次哈希运算,构成梅克尔树的树枝;树枝之间两两哈希,当所有交易的哈希值计算完成以后,再对刚计算出的第二层哈希值进行两两哈希运算,这样到最后合成一个哈希:即梅克尔根值;其中作为树枝上的任何一个哈希值发生变化,就会引起梅克尔树根值的变化;当一个区块被攻击时,会向其他区块发出确认信息,其他区块会根据自己的信息进行比对,只要不一样,其他区块是不会同意这种改动的;所以说作弊者控制一个区块或者少数区块,是不可能对区块中的数据发动改动的;除非作弊者能控制比特币区块链中区块的将近一半数量,但这是绝对不可能的;因此比特币区块链的交易在现实中时不可能被篡改的。

三.在交易上的独立性和伪匿名性,特别是在国际交易中的便捷性和快速性。

但是作为第一代区块链产品,比特币区块链还有很多缺点:

(1)交易效率较低:比特币产生一个新区块的时间是10分钟;新区块产生的以后,获胜的矿工才会把这段时间打包的交易写入区块,交易才算完成;也就是在正常情况下,一笔交易所需要等候的时间差不多是10分钟;这种速度的确是很慢的了。

(2)产生的比特币数量有限,所以只能在一部分拥有比特币的人中使用。

(3)比特币的区块越来越多,交易数量越来越多,比特币系统的性能一直在降低。

如上所述比特币系统有它的很多优点,同样也有它的很多致命缺点;针对这些缺点区块链上智能合约的应用得到广泛推广;作为改进后的区块链技术,智能合约具有自治、信任、备份、安全、速度、储蓄节省成本和准确性的特点;简单来说拥有智能合约的区块链相比比特币区块链,不单单是建立在货币交易这一种形式了;智能合约区块链还可以用于审计、股票、公证和自动化运行领域。

区块链技术在账户方面的运用,也是一种智能合约的区块链技术;如今已经有些关于区块链在公私钥(账户的另一种说法)的运用,但是技术过程有些太简单不够安全;

有些生成账户速度慢,只能单个生成。

发明内容

针对以上存在的问题,本发明基于在特定时间生成不同区块链,区块链区块哈希生成随机数的一系列技术体系;形成一个快速、安全和稳定的生成账户的区块链系统。

为此,本发明的目的在于提供一种基于区块链快速生成账户的方法、一种基于区块链快速生成账户的装置和一种服务器。

为实现上述技术目的,本发明的目的之一是提供了一种基于区块链快速生成账户的方法,适用于服务器;该方法包括:

节点特定时间生成区块链;选中所有区块,提取哈希值,将哈希值整数化,生成随机数;随机数和个人身份信息结合生成私钥,即用户密码;所述生成的区块链为私有链;所述特定时间生成区块链指在特定时间生成不同的私有链,包括生成首区块链和子区块链;所述将哈希值整数化的方法为:选择任意一种将哈希值整数化的方法,目的能够生成足够随机的整数。

所述节点特定时间生成区块链还包括:各节点在一天中的任何特定时间生成区块链;如公司规定的每天上班时间。

所述在特定时间生成不同的私有链指:在特定时间生成不同的区块链,包括首区块链和子区块链;其中,生成的第一个区块链叫做首区块链,首个生成的区块链后,以后的每天生成的区块链为子区块链,各区块链之间平行排列。

所述哈希值为各区块的块头哈希值;区块哈希值包括各交易哈希值、梅克尔根哈希值、父哈希值和总哈希值,其中总哈希值即为块头哈希值;所述哈希值的整数化,生成随机数,能够选择任意一种哈希值整数化的方式,我们选择将哈希值去符号整型得到整数的方法,整数化后整数的取值在0到2

所述生成随机数还包括:生成随机数后的账户生成问题;将生成的随机数和个人身份信息(身份证号)结合,生成用户的私钥;私钥作为用户的密码,用户可以根据自己的喜好更改密码,更改后的密码和形成的私钥是一一对应的。

一种基于区块链快速生成账户的装置,适用于机构账号的快速办理,其特征在于:该装置包括:

节点配置单元,用于生成首区块链和子区块链;

信息检测单元,用于检测用户信息是否合法以及用户办理该业务的次数;

信息录入单元,用于用户基本信息的录入;

账号信息记录单元,用于记录用户所办理的账号信息,以及每个用户信息对应的每个区块,每个区块链中的每个区块与用户是相互对应的。

所述节点配置单元还包括:节点配置完成后需要在各节点之间形成一个约定;当每天的某个时间点到来时,各节点会根据最新的交易信息,重新形成一条子区块链;各区块链区块中保存的交易信息是按时间顺序随机分配的,其中时间戳是区块的形成时间。

所述信息录入单元包括:信息录入单元对应机构基本信息数据库,当获得用户注册信息后,系统会发送用户信息,并把用户信息提交给基本信息数据库。

所述信息检测单元,具体地,包括当用户信息发送给基本信息数据库时,信息检测单元将被激活,将自动对照基本信息数据库和申请的用户信息;第一步看用户信息是否合法,符合公司用户注册的标准;第二步查看用户注册的次数,可根据公司具体情况,合理安排用户注册次数上限。

所述账号信息记录单元还包括:当用户账号注册完成以后,会形成一个与区块相互对应的数据块;其中每个数据块包含一个或者几个账户,一个数据块对应一个区块。

上述技术方案实现以下技术效果:

(1)与有用户申请账号的时候,才会激活随机数生成流程相比;该方案在每天特定时间,批量首先产生大量随机数;在用户申请账户时,可以按预先设定的规则,快速的进行随机数和用户信息的组合,生成账户密码;很明显这样更加快速,稳定。

(2)在传统区块链概念的基础上,形成首区块链和子区块链稳定相连网状结构,加大了区块链系统的稳定性和安全性。

(3)与其他区块链中的区块信息完全不可更改的技术相比:在原有区块链的基础上,该方案在区块中设置了智能合约:不可更改区和可更改区两部分,其中可更改区信息的更改首先要通过不可更改区的验证;不但保留了原有区块链存储信息的安全性,还增加了区块链保存信息的灵活性。

附图说明

图1:账户生成流程。

图2:区块链网状结构图。

图3:区块中可更改和不可更改区。

具体实施方式

为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。

在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。

下面是基于区块链快速生成账户的方法的一种具体实施例。

如图1所示:为该方法生成账户的流程图,该方法包括:布置节点,特定时间生成区块链;选中所有区块,提取哈希值,将哈希值整数化,提取随机数;随机数和个人身份信息相结合,生成私钥。

该方法生成区块链的步骤为:配置电脑端节点:根据业务的需求(包括人流、地址)在适当的地方配置多个电脑端节点;电脑端节点要尽量多些,只有节点足够多,才能增加区块链系统的安全性;随后在各节点之间建立智能合约:在特定时间(或者服务器闲暇时间)生成区块链。

优选地,生成区块链的一种方式如下:把所有的交易信息按交易时间顺序打包,按交易数量均分成N份(打包后按时间的编号是1到N);这里的N最好是以往一天用户注册数量的最大值,也可以比用户注册数量最大值大,但也不能太大,太大会拖长区块链的形成时间;交易打包完成以后,同时激活第一个区块,随机选择一个节点,将打包后的第一份交易写入区块;写入区块完成以后激活下一个区块,同时系统随机选择另一个节点,作为记账者,把第二份交易写入该区块;往后的步骤类似,这样便形成了区块数量为N的区块链。

如图2所示:为该方法生成的区块链网状结构,该网状结构包括:首区块、区块链2、区块链3、直到第a天的区块链a;区块链T

在每天特定时间重复上述任一实施例中形成区块链的步骤,每天可以形成一条新的区块链,各区块链之间是平行的关系,构成网状结构,没有主次之分。

在每天的最新的区块链形成以后,选中该区块链的所有区块,提取哈希值,将哈希值整数化,生成随机数组;这里提供一种生成随机数组的具体方案:

首先,提取各区块中的哈希值,哈希值为H

随机数组与区块链中区块是一一对应的,当系统录入用户信息后,合约将优先选择靠近首区块方向对应的随机数与用户信息结合,经过适当转变,生成与用户账号相对应的密码;这里的计算是由多个节点同时对多个不同用户进行运算,所以能大大的增加用户申请账号的速度。

最后介绍基于区块链快速生成账户的一种装置。

该系统首先涉及到生成区块链的节点,节点既是服务器的选取,终端的选取;选取节点数量要做到适当的越多越好,太少区块链系统安全性不高;节点的主要作用是每天生成新的下游区块链和执行智能合约生成随机数。

其次,涉及到账号申请用户检测单元的配置,检测单元中储存着该公司全部的用户信息,其中包括正常用户和黑名单用户;当一个用户申请发出以后,检测单元会首先自动核对黑名单;如果申请用户处在黑名单中,则系统会拒绝申请,手机端注册的用户,则会收到拒绝申请的短信和原因;若申请人不在黑名单中,则系统会核对正常用户中的名单;若正常用户中有该用户,则观察该用户拥有账号次数是否超过账号上限;若没有超过上限,则同意申请;若超过上限,则拒绝用户申请。若正常用户名单中没有该用户,则证明该用户为首次申请,同意用户申请,并在正常用户名单中,增加该用户。

配置用户录入单元:当确定用户的注册信息符合要求的时候,系统会把用户的信息呈递给区块链信息暂存区域;待用户申请完毕,且经过区块链上其他区块的大部分认同之后,才会将暂存区的用户信息和账号密码信息写入区块链。

下面是银行情景下的一个实施例:

某用户要注册一个该系统下的银行账户;则用户需要填写自己的基本信息,然后提交申请。系统会根据上述实施例中的检测规则,检测该用户是否符合账号的申请条件;若符合则区块链系统将按照预设合约生成与该用户账号唯一对应的密码,还可以由账号生成用户钱包。该用户完成注册以后,他不喜欢系统给他自动生成的密码;则用户可以登录银行系统,找到个人主页,选定账号和安全,进行修改密码的操作。

优选地,需要介绍一种如图3所示的区块链区块可更改区域的引入,图中把区块链信息分为可更改区域和不可更改区域两部分保存信息;当用户点击修改密码的申请,系统将申请请求发送给区块链系统;区块链系统找到用户信息标记的区块,首先进行用户手机号的验证,这里可以是手机号验证码;手机号验证码通过以后,区块会向可更改区域发送更改密码的要求,同时锁定可更改区域密码区;这时系统就会向用户发出修改密码的指令,用户就可以设置自己喜爱的密码了。

用户密码修改完成以后系统会把新修改的密码发送到区块链,同时更改可更改区域的用户密码;同时可更改区域的哈希值也发生变化。

根据本发明的实施例的一种基于区块链快速生成账户的方法和装置,其可以运用到需要快速办理账户的机构或者公司。

以上所述仅为本发明的一个优选实施例而已,并不能用于限制本发明,对于本领域的技术人员,本发明可以由各种变形和更改。凡是在本发明的精神和创作原则之内,所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

相关技术
  • 一种基于区块链快速生成账户的方法和装置
  • 一种基于区块链的账户锁定/解锁方法及装置
技术分类

06120113240608