【技术实现步骤摘要】
账户地址的生成方法和校验方法、装置、设备和介质
本申请实施例涉及计算机
,具体涉及区块链技术,尤其涉及一种账户地址的生成方法和校验方法、装置、设备和介质。
技术介绍
区块链中支持用户注册账户,通过账户可实现转账交易,签名背书等各种操作。传统的账户地址是从一个公钥推导而来的。公钥一般是用户注册账户时分配的非对称密钥对中的公钥。当在区块链中进行转账交易时,就需要用到账号地址,作为转入地址和转出地址。随着区块链所支持业务的发展而出现了新的需求,即,多个账户向一个账户进行转账,或者一个账户向多个账户进行转账等情况,这些转账交易之间还可能具有高度关联。面对这些新需求,则需要调整账户地址的生成方式,以便适应不同业务需求。
技术实现思路
本申请实施例提出一种账户地址的生成方法和校验方法、装置、设备和介质,以提出适用于新业务需求的账户地址的生成和校验方式。第一方面,本申请实施例提供了一种账户地址的生成方法,该方法包括:基于至少两个密钥,按照设定地址生成算法生成初始地址;将包括所述地址生成算法的算法标识与初始地址拼接,形成账户地址。本申请实施例通过基于至少两个密钥,按照设定地址生成算法生成初始地址,并将包括地址生成算法的算法标识与初始地址拼接,形成账户地址。由此,实现通过多个密钥推导形成一个账户地址,且推导过程不依赖于多个密钥的顺序,同时基于账户地址还能确定所使用的地址生成算法,使得地址生成算法的使用更加多样灵活,为新业务需求的账户地址生成提供了条件。另外,根据 ...
【技术保护点】
1.一种账户地址的生成方法,其特征在于,包括:/n基于至少两个密钥,按照设定地址生成算法生成初始地址;/n将包括所述地址生成算法的算法标识与初始地址拼接,形成账户地址。/n
【技术特征摘要】
1.一种账户地址的生成方法,其特征在于,包括:
基于至少两个密钥,按照设定地址生成算法生成初始地址;
将包括所述地址生成算法的算法标识与初始地址拼接,形成账户地址。
2.根据权利要求1所述的方法,其特征在于,基于至少两个密钥,按照设定地址生成算法生成初始地址包括:
基于至少两个密钥,分别提取所述密钥中的关键参数;
按照设定地址生成算法对各所述密钥的关键参数进行加法运算,以生成初始地址。
3.根据权利要求1所述的方法,其特征在于,所述密钥为基于同一椭圆曲线生成的非对称密钥中的公钥,则基于至少两个公钥,按照设定地址生成算法生成初始地址包括:
获取每个所述公钥的公钥点坐标Xi和Yi;
将各所述公钥的公钥点坐标Xi和Yi进行累加,以确定总点坐标Xs和Ys;
将总点坐标Xs和Ys作为所述椭圆曲线上的新增公钥点坐标,并转换成为所述新增公钥点坐标对应的公钥字节数组,作为所述初始地址。
4.根据权利要求1所述的方法,其特征在于,所述密钥为基于同一椭圆曲线生成的非对称密钥中的公钥,则基于至少两个公钥,按照设定地址生成算法生成初始地址包括:
创建一个图类型的数据结构;
获取每个所述公钥的公钥点坐标Xi和Yi;
将每个公钥点坐标Xi和Yi分别填入键值对中键域和值域,并将各键值对添加到所述图类型的数据结构中;
将所述图类型的数据结构进行序列化处理,转换为一个字节数组,作为所述初始地址。
5.根据权利要求1所述的方法,其特征在于,所述密钥为基于同一椭圆曲线生成的非对称密钥中的公钥,则基于至少两个公钥,按照设定地址生成算法生成初始地址包括:
对每个所述公钥进行哈希运算,以获取公钥哈希值;
对每个所述公钥哈希值,按字符进行排序;
按排序顺序,将所有所述公钥哈希值拼接到一起,形成一个初始字节数组;
将所述初始字节数组进行哈希运算,得到地址字节数组,作为所述初始地址。
6.根据权利要求1-5任一所述的方法,其特征在于:所述算法标识所标识的算法包括所述地址生成算法和各所述密钥的密码学算法。
7.根据权利要求6所述的方法,其特征在于,将包括所述地址生成算法的算法标识与初始地址拼接,形成账户地址包括:
将作为初始地址的字节数组进行哈希运算,获得字节数组哈希值;
将各所述密钥的密码学算法和所述地址生成算法进行记录,并形成算法标识;
将所述算法标识与所述字节数组哈希值进行拼接;
根据所述拼接结果形成所述账户地址。
8.根据权利要求6所述的方法,其特征在于,将包括所述地址生成算法的算法标识与初始地址拼接,形成账户地址包括:
将包括所述地址生成算法的算法标识与初始地址拼接,形成拼接结果;
将所述拼接结果进行哈希运算,形成拼接哈希值;
将所述拼接哈希值中设定位置的字符抽取出来,作为校验码;
将所述校验码与所述拼接结果进行拼接,形成所述账户地址。
9.根据权利要求6所述的方法,其特征在于,形成账户地址之前,还包括:
将所述算法标识与初始地址拼接后的字符串进行可视化字符编码处理,形成所述账户地址。
10.根据权利要求1所述的方法,其特征在于,基于至少两个密钥,按照设定地址生成算法生成初始地址之前,还包括:
在区块链节点接收到至少两个用户注册生成联合账户的事务请求时,获取所述至少两个用户各自的密钥,并触发账户地址生成操作。
11.一种账户地址的校验方法,其特征在于,包括:
获取待校验账户地址关联的至少两个密钥;
基于至少两个密钥,按照设定地址生成算法生成初始地址;
将包括所述地址生成算法的算法标识...
【专利技术属性】
技术研发人员:荆博,
申请(专利权)人:百度在线网络技术北京有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。