联系hashgameCONTACT hashgame
地址:广东省广州市
手机:13988889999
电话:020-88889999
邮箱:admin@qq.com
查看更多
Rhashgamehashgame
你的位置: 首页 > hashgame

一种区块链中的交易哈希值存储和HASH GAME - Online Skill Game ET 300搜索方法及装置

发布时间:2025-06-04 12:04:12  点击量:

  HASH GAME - Online Skill Game GET 300

一种区块链中的交易哈希值存储和HASH GAME - Online Skill Game GET 300搜索方法及装置

  本发明公开了一种区块链中的交易哈希值存储和搜索方法及装置,其中方法为,客户端获取用户在所述客户端上发起的第N次交易的交易哈希值和所述第N次交易的索引参数,所述客户端获取所述索引参数对应的第N‑1状态字符串,所述客户端将所述第N‑1状态字符串和所述第N次交易的交易哈希值作为第N待加密数据,所述客户端根据第N状态字符串和所述索引参数的搜索令牌确定第N密钥和第N索引位置信息,所述客户端使用所述第N密钥将所述第N待加密数据加密为第N密文,并建立所述第N索引位置信息和所述第N密文的唯一映射关系。上述方法应用于金融科技(Fintech)时,上述方法中交易哈希值的存储更加安全,同时存储时保留了可搜索性。

  [0005] 第一方面,本申请实施例提供一种区块链中的交易哈希值存储方法,客户端获取用户在所述客户端上发起的第N次交易的交易哈希值和所述第N次交易的索引参数,所述索引参数是从交易的交易信息中确定出用于进行交易日志搜索的关键词,N为正整数,所述客户端获取所述索引参数对应的第N‑1状态字符串,所述第N‑1状态字符串是针对第N‑1次交易生成的,所述客户端将所述第N‑1状态字符串和所述第N次交易的交易哈希值作为第N待加密数据,所述客户端生成第N状态字符串,并根据所述第N状态字符串和所述索引参数的搜索令牌确定第N密钥和第N索引位置信息,所述客户端使用所述第N密钥将所述第N待加密数据加密为第N密文,并建立所述第N索引位置信息和所述第N密文的唯一映射关系。

  [0006] 上述方法中,客户端获取用户在所述客户端上发起的第N次交易的交易哈希值和所述第N次交易的索引参数对应的第N‑1状态字符串后,再根据第N状态字符串和索引参数的搜索令牌,确定第N密钥和第N索引位置信息,并使用所述第N密钥将所述第N待加密数据加密为第N密文,由于第N‑1状态字符串是针对第N‑1次交易生成的,也就是说,对于每个N,第N密文都是需要第N‑1状态字符串的参与,这种环环相扣的方式生成的明文保密性较高,另外,由于建立所述第N索引位置信息和所述第N密文的唯一映射关系,可以通过第N索引位置信息搜索到第N密文,因此,上述方法中交易哈希值的存储更加安全,同时存储时保留了可搜索性。

  [001 1 ] 第二方面,本申请提供一种区块链中的交易哈希值搜索方法,包括,索引服务器获取来自客户端的索引参数的搜索令牌和第N状态字符串,所述索引参数是从交易的交易信息中确定出用于进行交易日志搜索的关键词,N为正整数,所述第N状态字符串是用户在所述客户端上发起的第N次交易时生成的,所述索引服务器根据所述索引参数的搜索令牌和所述第N状态字符串,获取所述索引参数的第N索引位置信息,所述第N索引位置信息与第N 密文唯一映射,所述第N密文是所述客户端对所述第N次交易的交易哈希值加密的密文,所述索引服务器根据所述第N索引位置信息,获取所述第N索引位置信息唯一映射的所述第N 密文,所述索引服务器根据所述搜索令牌和所述第N状态字符串,生成第N密钥,所述索引服务器根据所述第N密钥将所述第N密文解密为第N待加密数据,所述索引服务器根据所述第N 待加密数据,提取出所述第N次交易时的交易哈希值,使得完成所述第N次交易时的交易哈希值的搜索。

  [0012] 上述方式下,索引服务器获取来自客户端的索引参数的搜索令牌和第N状态字符串,并根据所述索引参数的搜索令牌和所述第N状态字符串,获取所述索引参数的第N索引位置信息,由于所述第N索引位置信息与第N密文唯一映射,因此可以根据第N索引位置信息搜索到第N密文,并通过搜索令牌和所述第N状态字符串生成第N密钥,再用第N密钥将所述第N密文解密为第N待加密数据,并提取出所述第N次交易时的交易哈希值,从而实现了对第N次交易时的交易哈希值的搜索。

  [0013] 一种可选实施方式中,所述索引服务器根据所述第N待加密数据,提取出所述第N‑1状态字符串,所述索引服务器根据所述索引参数的搜索令牌和所述第N‑1状态字符串,获取所述索引参数的第N‑1索引位置信息,所述索引服务器根据所述第N‑1索引位置信息,获取所述第N‑1索引位置信息唯一映射的第N‑1密文,所述索引服务器根据所述搜索令牌和所述第N‑1状态字符串,将所述第N‑1密文解密为第N‑1待加密数据,所述索引服务器根据所述第N‑1待加密数据,提取出第N‑1次交易时的交易哈希值,使得完成所述第N‑1次交易时的交

  [0017] 第三方面,本申请提供一种区块链中的交易哈希值存储装置,包括,获取模块,用于获取用户在所述客户端上发起的第N次交易的交易哈希值和所述第N次交易的索引参数,所述索引参数是从交易的交易信息中确定出用于进行交易日志搜索的关键词,获取所述索引参数对应的第N‑1状态字符串,所述第N‑1状态字符串是针对第N‑1次交易生成的,N为正整数,加密模块,用于将所述第N‑1状态字符串和所述第N次交易的交易哈希值作为第N待加密数据,生成第N状态字符串,并根据所述第N状态字符串和所述索引参数的搜索令牌确定第N密钥和第N索引位置信息,使用所述第N密钥将所述第N待加密数据加密为第N密文,并建立所述第N索引位置信息和所述第N密文的唯一映射关系。

  [0021 ] 第四方面,本申请提供一种区块链中的交易哈希值存储装置,包括,获取模块,用于获取来自客户端的索引参数的搜索令牌和第N状态字符串,所述索引参数是从交易的交易信息中确定出用于进行交易日志搜索的关键词,所述第N状态字符串是用户在所述客户端上发起的第N次交易时生成的,N为正整数,根据所述索引参数的搜索令牌和所述第N状态字符串,获取所述索引参数的第N索引位置信息,所述第N索引位置信息与第N密文唯一映射,所述第N密文是所述客户端对所述第N次交易的交易哈希值加密的密文,根据所述第N索引位置信息,获取所述第N索引位置信息唯一映射的所述第N密文,解密模块,用于根据所述搜索令牌和所述第N状态字符串,生成第N密钥,根据所述第N密钥将所述第N密文解密为第N 待加密数据,根据所述第N待加密数据,提取出所述第N次交易时的交易哈希值,使得完成所

  [0022] 一种可选实施方式中,所述获取模块还用于,根据所述第N待加密数据,提取出所述第N‑1状态字符串,根据所述索引参数的搜索令牌和所述第N‑1状态字符串,获取所述索引参数的第N‑1索引位置信息,根据所述第N‑1索引位置信息,获取所述第N‑1索引位置信息唯一映射的第N‑1密文,所述解密模块还用于,根据所述搜索令牌和所述第N‑1状态字符串,将所述第N‑1密文解密为第N‑1待加密数据,根据所述第N‑1待加密数据,提取出第N‑1次交易时的交易哈希值,使得完成所述第N‑1次交易时的交易哈希值的搜索。

  [0038] 日志,日志是以太坊定义的一种特殊的数据,日志与智能合约关联,是交易收据的一部分。包含某个特定日志的交易是唯一的,以太坊中的交易一般使用其交易哈希值表示。日志由客户端在执行交易时生成,可以在区块链存储中检索到它们。只要某个区块可以访问,其相关的日志就可以访问。但在合约中,并不能直接访问日志和事件数据(即便是创建日志的合约) ,一般只能通过交易哈希值来访问日志。日志包括主题(topic)和数据(data)两部分,其中topic部分用于快速查找,而data部分用于存储原始日志。

  [0039] 事件,事件是以太坊虚拟机在日志机制的基础上提供的一个接口,通过触发事件可以生成一条日志并将其写入到区块链中。在智能合约开发中,事件机制通常被用来记录用户的操作记录。如定义一个转账事件event transfer(address indexed from,address indexed to,uint value) ,当该事件被触发时,参数from、to和value将会生成一条日志,该条日志将被写入到区块链。应用程序可以通过以太坊客户端的远程过程调用(remote procedure call,RPC)接口监听或调用事件,如图2所示。

  [0040] 事件的参数,在定义一个事件时,需要指定该事件的参数。参数分为两种,一种是被indexed修饰的,另外一种没有被indexed修饰。这两种参数的区别在于前者将被存储在日志的topic字段,而后者将会被存储在日志的data字段中。日志的topic字段可以用作搜索,而data字段不可以用作搜索。如定义一个转账事件event transfer(address indexed from,address indexed to,uint value) ,当该事件被触发时,参数from、to和value将会被写入到区块链的日志中。用户可以通过from或to过滤日志,如“搜索from等于地址A的所有记录(相当于搜索地址A的转出记录)”,而不能使用value进行过滤。

【返回列表页】

顶部

地址:广东省广州市  电话:020-88889999 手机:13988889999
Copyright © 2018-2025 哈希游戏(hash game)官方网站 版权所有 非商用版本 ICP备案编: