1.一种用于区块挖掘的方法,所述区块包括区块头部,作为应用在所述区块头部的选定的散列函数的函数,所述选定的散列函数包括扩展操作和压缩操作,所述方法包括以下步骤:
[1] 开发m个中间状态,每个中间状态作为有选择地改变所述区块头部的选定的第一部分的函数;
[2] 对所述区块头部的选定的第二部分执行所述扩展操作以产生消息表;以及
[3] 对于所述m个中间状态中的每一个,对所述中间状态与所述消息表执行压缩操作以产生相应的m个结果中的一个。
2.如权利要求1所述的方法,其特征在于,所述区块头部的第一部分包括所述区块头部的最前面的4个字节。
3.如权利要求1所述的方法,其特征在于,所述区块头部的第一部分包括交易的摘要。
4.如权利要求3所述的方法,其特征在于,产量交易包括多个交易中的一个;并且所述步骤[1]进一步的特征为改变所述产量交易。
5.如权利要求3所述的方法,其特征在于,所述步骤[1]进一步的特征为改变选定的交易员的选定的部分。
6.如权利要求3所述的方法,其特征在于,所述步骤[1]进一步的特征为改变多个交易的订单。
7.如权利要求1所述的方法,其特征在于,所述第一部分包括树数据结构的根部。
8.如权利要求7所述的方法,其特征在于,所述树数据结构包括Merkle树。
9.如权利要求7所述的方法,其特征在于,所述步骤[1]进一步的特征为包括以下步骤:
[1.1.1] 从多个第一候选子树散列中选择左子树散列;
[1.1.2] 从多个第二候选子树散列中选择右子树散列;以及
[1.1.3] 从所述左子树散列和所述右子树散列开发所述树数据结构的根部。
10.如权利要求1所述的方法,其特征在于,所述步骤[1]进一步的特征为包括以下步骤:
[1.1] 通过改变所述区块头部的第一部分开发候选区块头部;
[1.2] 将过滤函数应用到所述候选区块头部,并且:
[1.2.1] 如果所述候选区块头部未能通过所述过滤函数,丢弃所述候选区块头部;以及
[1.2.1] 否则,开发作为所述候选区块头部的函数的中间状态;以及
[1.3] 重复步骤[1.1]至[1.2]以开发m个中间状态,每个中间状态作为各自候选区块头部的函数。
11.如权利要求10所述的方法,其特征在于:
在步骤[1.1]中,所述候选区块头部的第一部分包含28个字节,所述候选区块头部的第二部分包含4个字节;以及
在步骤[1.2.1]中,所受过滤函数还用于根据所述第二部分选择丢弃候选区块头部。
12.如权利要求1所述的方法,其特征在于,所述步骤[2]进一步的特征为:
[2] 对所述区块头部执行扩展操作,以产生包含有序的消息表元素序列的消息表;
以及所述步骤[3]进一步的特征为:
[3] 对于所述m个中间状态中的每一个,对所述消息表元素序列执行压缩操作,以产生相应的m个结果中的一个。
13.如权利要求1所述的方法,其特征在于,还包括以下步骤:
[4] 通过改变所述区块的选定部分来有选择地开发修改的区块头部;以及
[5] 有选择地重复步骤[2]至[4]。
14.一种适合用于区块挖掘以创建Merkle树的根部的方法,所述树具有多个节点,所述方法包括以下步骤:
[1] 通过重新排列一组选定的节点来创建多个候选子树散列;
[2] 从多个第一候选子树散列选择左子树散列;
[3] 从多个第二候选子树散列选择右子树散列;以及
[4] 从所述左子树散列和所述右子树散列开发所述树数据结构的根部。
15.一种用于实施上述任一项权利要求所述的方法的装置。
16.一种包含可执行指令的计算机可读介质,所述可执行指令在处理系统中执行时,使所述处理系统执行根据权利要求1-14中任一项所述方法的步骤。