首页 / 专利库 / 银行与财务事项 / 加密货币地址 / 用于控制和分发数字内容的区块链实现的方法

用于控制和分发数字内容的链实现的方法

阅读:580发布:2020-05-31

专利汇可以提供用于控制和分发数字内容的链实现的方法专利检索,专利查询,专利分析的服务。并且本公开涉及一种控制数字内容的传输和/或分发的 区 块 链 实现的系统和方法。在说明性 实施例 中,区块链是 比特币 区块链。第一用户(5)与公共地址(23)处的 加密 货币 的存款数额相关联,其中,从公共地址进行花费需要第一用户(5)的第一私钥和第二用户(7)的第二私钥二者的签名。系统(1)包括第一 节点 (15)和第二节点(17)。-第一节点(15)与包括第一处理设备的第一用户(5)相关联,第一处理设备用于:(A)通过通信网络(8)向第二节点(17)发送 请求 ,以从数字内容连载提供数字内容分集;(B)确定用于从公共地址(23)将 加密货币 的支付数额转移到第二用户(7)的支付交易(27),其中,加密货币的支付数额基于由第一用户(5)请求的数字内容连载中的数字内容分集的数额;以及(C)使用第一私钥(V1)签署支付交易(27),随后将支付交易(27)发送到第二节点(17)。第二节点(17)与包括第二处理设备的第二用户(7)相关联,该第二处理设备用于:(I)通过通信网络(8)接收来自第一节点(15)的请求,以提供数字内容分集和使用第一私钥签署的支付交易(27);(II)验证支付交易,包括:验证支付交易包括对第二用户(7)的加密货币的支付数额,并且基于验证的结果,第二处理设备进一步用于:(III)通过通信网络(8)提供对可用于第一节点(15)的数字内容分集(i)的 访问 ;以及(IV)使用第二用户(5)的第二私钥共同签署支付交易,并将共同签署的支付交易发送到 分布式账本 (区块链)(9)。,下面是用于控制和分发数字内容的链实现的方法专利的具体信息内容。

1.一种计算机实现的系统,所述系统被布置为:控制数字内容的传输和/或分发,其中,第一用户(5)与公共地址(23)处的加密货币的存款数额相关联,其中,从所述公共地址进行花费需要所述第一用户(5)的第一私钥(V1)和第二用户(7)的第二私钥(V2)二者的签名,所述系统包括:
-第一节点(15),所述第一节点(15)与第一用户(5)相关联,包括第一处理设备(23),所述第一处理设备(23)用于:
(A)-通过通信网络(8)向第二节点(17)发送请求,以从数字内容连载提供数字内容分集(i);
(B)-确定用于从公共地址(23)将加密货币的支付数额(B2)转移到所述第二用户(7)的支付交易(Ei),其中,所述加密货币的支付数额(B2)基于由所述第一用户(5)请求的所述数字内容连载中的数字内容分集的数额;和
(C)-使用所述第一私钥(V1)签署所述支付交易(Ei),并随后将所述支付交易(Ei)发送到所述第二节点(17);
-第二节点(17),所述第二节点(17)与所述第二用户(7)相关联,包括第二处理设备(23'),所述第二处理设备用于:
(I)-通过所述通信网络(8)接收来自所述第一节点(15)的请求,以提供数字内容分集(i)和使用所述第一私钥(V1)签署的支付交易(Ei);
(II)-验证所述支付交易,包括:验证所述支付交易包括对所述第二用户(7)的所述加密货币的支付数额(B2),并且基于验证的结果,所述第二处理设备还用于:
(III)-通过所述通信网络(8)提供对于对所述第一节点(15)可用的所述数字内容分集(i)的访问;和
(IV)-使用所述第二用户(5)的所述第二私钥(V2)共同签署所述支付交易,并将所述共同签署的支付交易发送到链(9)。
2.根据权利要求1所述的系统,所述第一处理设备还用于:
-通过重复步骤(A)至(C),从所述数字内容连载请求下一数字内容分集,其中,第二处理设备还用于:
-通过重复步骤(I)至(III),接收所述请求并分发所述下一数字内容分集;和其中,对具有包括所述下一分集的数字内容分集的数额的支付交易执行用于共同签署所述支付交易并将所述支付交易发送到所述区块链(9)的步骤(IV)。
3.根据前述权利要求中任一项所述的系统,其中,所述第一用户(5)使用所述第一处理设备将所述加密货币的存款数额(B1)存放在所述公共地址(23)处,所述第一处理设备用于:
-通过通信网络(8)发送第一数据输出(O1),以在区块链(9)上记录所述加密货币的存款数额(B1)从所述第一用户(5)到所述公共地址(23)的第一交易。
4.根据前述权利要求中任一项所述的系统,其中,在指定时间之后,在没有来自所述公共地址(23)的所述加密货币的存款数额的交易的情况下,退还所述加密货币的存款数额(B1),并且所述第一处理设备还用于:
-使用所述第一用户(5)的第一私钥(V1)共同签署用于将所述加密货币的存款数额(B1)从所述公共地址(23)转移到所述第一用户(5)的第二交易;
其中,所述第二处理设备还用于:
-使用所述第二私钥(V2)共同签署所述第二交易,其中,使用所述第一私钥(V1)和所述第二私钥(V2)二者的所述共同签署的第二交易发送到所述区块链(9)并在所述指定时间之后对于退还所述加密货币的存款数额(B1)是有效的;和
-在所述指定时间之前,将所述共同签署的支付交易发送到所述区块链(9)。
5.根据前述权利要求中任一项所述的系统,其中,所述第二处理设备还用于:
-通过所述通信网络发送与来自可用于所述第一用户(5)请求的所述数字内容连载的所述数字内容分集相关联的分集秘密(Si);
其中,所述第一处理设备还用于:
-通过所述通信网络接收所述分集秘密(Si);
-从所述分集秘密(Si)确定分集秘密散列(Hi),
其中,确定用于将所述加密货币的支付数额(B2)转移到所述第二用户(7)的支付交易(Ei)还包括:第一处理设备用于基于以下项确定支付赎回脚本(RS1):
-所述分集秘密散列(Hi);和
-第二公钥(P2),其与所述第二用户(7)的所述第二私钥(V2)成密码对,
其中,当所述第二处理设备验证所述支付交易(Ei)时,所述第二处理设备还用于验证所述支付赎回脚本(RS1)基于所述分集秘密散列(Hi)和所述第二公钥(P2)。
6.根据权利要求5所述的系统,其中,所述第二处理设备还用于:
-确定与来自所述数字内容连载的下一数字内容分集(Si+1)相关联的下一分集秘密(Si+1);
-从所述下一分集秘密(Si)确定下一分集秘密散列(Hi+1);
其中,在用于发送所述数字内容分集的步骤(III)时或之后,所述第二处理设备还用于:
-通过所述通信网络(8)向所述第一节点(15)发送下一分集秘密(Si+1),
其中,所述第一处理设备还用于:
-通过所述通信网络(8)接收所述下一分集秘密(Si+1);
-从所述下一分集秘密(Si+1)确定下一分集秘密散列(Hi+1),并且其中,对应下一支付交易(Ei+1)包括基于以下项的下一支付赎回脚本(RS2):
-所述下一分集秘密散列(Hi+1);和
-所述第二公钥(P2),
其中,当所述第二处理设备验证下一支付交易(Ei+1)时,所述第二处理设备还用于验证所述下一支付赎回脚本(RS2)基于所述下一分集秘密散列(Hi+1)和所述第二公钥(P2)。
7.根据前述权利要求中任一项所述的系统,其中,所述支付交易(Ei)还包括从所述公共地址(23)到所述第一用户(5)的加密货币的改变数额(B3)对所述第一用户(5)的转移,其中,所述加密货币的改变数额(B3)基于所述加密货币的存款数额(B1)减去所述加密货币的支付数额(B2)。
8.根据前述任一项所述的系统,其中,所述第二处理设备还用于:
-确定所述第一节点(15)与所述第二节点(17)之间的公共秘密;
其中,通过所述通信网络提供对所述数字内容分集的访问包括:所述第二处理设备:
-使用基于所述公共秘密的密钥对一个或多个数字内容分集进行加密,以提供一个或多个加密的数字内容分集;和
发送所述一个或多个加密的数字内容分集,
其中,所述第一处理设备还用于:
-确定所述第一节点(15)与所述第二节点(17)之间的公共秘密;
-通过所述通信网络接收所述一个或多个加密的数字内容分集;和
-使用基于所述公共秘密的密钥对所述一个或多个加密的数字内容分集进行解密,以提供所述一个或多个数字内容分集。
9.根据权利要求8所述的系统,当从属于权利要求5时,其中,所述第二处理设备还用于:
-基于使用基于所述公共秘密的密钥加密的所述分集秘密(Si)和/或所述下一分集秘密(Si+1)确定加密的消息,
其中,所述第一处理设备还用于:
-通过使用基于所述公共秘密的密钥对加密的消息进行解密来确定所述分集秘密(Si)和/或所述下一分集秘密(Si+1)。
10.根据前述权利要求中任一项所述的系统,其中,所述系统被布置为:通过以下步骤确定对第一节点和第二节点公共的秘密:
基于至少第一节点主私钥和生成器值确定第一节点第二私钥;
基于至少第二节点主私钥和所述生成器值确定第二节点第二私钥;
其中:
在所述第一节点处确定所述公共秘密(CS)可以基于所述第一节点第二私钥和所述第二节点第二公钥,并且在所述第二节点处确定所述公共秘密(CS)可以基于所述第二节点第二私钥和所述第一节点第二公钥;
并且其中:
所述第一节点第二公钥和所述第二节点第二公钥可以分别至少基于所述第一/第二节点主密钥和所述生成器值。
11.一种接收数字内容的计算机实现的方法,其中,与第一用户(5)相关联的第一节点(15)接收数字内容,回报是对与第二节点(17)相关联的第二用户(7)的支付,其中,所述第一用户(5)与公共地址(23)处的加密货币的存款数额(B1)相关联,其中,从所述公共地址进行花费需要所述第一用户(5)的第一私钥(V1)和所述第二用户(7)的第二私钥(V2)二者的签名,所述方法包括:
(A)-通过所述通信网络(8)向所述第二节点(17)发送请求,以从数字内容连载提供数字内容分集(i);
(B)-确定用于从所述公共地址(23)将加密货币的支付数额(B2)转移到所述第二用户(7)的支付交易(Εi),其中,所述加密货币的支付数额(B2)基于由所述第一用户(5)请求的所述数字内容连载中的数字内容分集的数额;
(C)-使用所述第一私钥(V1)签署所述支付交易(Εi),并随后将所述支付交易(Εi)发送到所述第二节点(17),以使所述第二节点(17)验证所述支付交易;
其中,基于所述第二节点(17)已经验证所述支付交易包括所述加密货币的支付数额(B2),所述方法还包括:
(D)-通过所述通信网络(8)访问所述数字内容分集i。
12.根据权利要求11所述的方法,还包括:通过重复所述步骤(A)至(D),从所述数字内容连载请求下一数字内容分集。
13.根据权利要求11或12所述的方法,其中,所述第一用户(5)通过以下步骤将所述加密货币的存款数额(B1)存放在所述公共地址(23)处:
-通过所述通信网络(8)发送第一数据输出(O1),以在区块链(9)上记录所述加密货币的存款数额(B1)从所述第一用户(5)到所述公共地址(23)的第一交易。
14.根据权利要求11至13中任一项所述的方法,其中,在指定时间之后,在没有来自所述公共地址的所述加密货币的存款数额(B1)的交易的情况下,退还所述加密货币的存款数额(B1),并且其中,所述方法还包括:
-使用所述第一用户(5)的所述第一私钥(V1)共同签署用于将所述加密货币的存款数额(B1)从所述公共地址(23)转移到所述第一用户(5)的第二交易,其中,由所述第二用户(7)使用所述第二私钥(V2)共同签署的所述共同签署的第二交易发送到所述区块链(9)并在所述指定时间之后对于退还所述加密货币的存款数额(B1)是有效的。
15.根据权利要求11至14中任一项所述的方法,还包括:
-通过所述通信网络接收与来自可用于所述第一用户(5)请求的所述数字内容连载的所述数字内容分集相关联的分集秘密(Si);
-从所述分集秘密(Si)确定分集秘密散列(Hi);
其中,在所述支付交易(Ei)中对所述第二用户(7)的所述加密货币的支付数额(B2)包括基于以下项的支付赎回脚本(RS1):
-所述分集秘密散列(Hi);和
-第二公钥(P2),其与所述第二用户(7)的所述第二私钥(V2)成密码对。
16.根据权利要求15所述的方法,其中,在步骤(D)时或之后,所述方法还包括:
-通过所述通信网络(8)接收与来自所述数字内容连载的下一数字内容分集(Si+1)相关联的下一分集秘密(Si+1);
其中,从所述数字内容连载请求所述下一分集包括:从所述下一分集秘密(Si+1)确定下一分集秘密散列(Hi+1),并且其中,对应下一支付交易(Ei+1)包括基于以下项的下一支付赎回脚本(RS2):
-所述下一分集秘密散列(Hi+1);和
-所述第二公钥(P2)。
17.根据权利要求11至16中任一项所述的方法,其中,所述支付交易(Ei)还包括从所述公共地址(23)到所述第一用户(5)的加密货币的改变数额(B3)的转移,其中,所述加密货币的改变数额(B3)基于所述加密货币的存款数额(B1)减去所述加密货币的支付数额(B2)。
18.根据权利要求11至17中任一项所述的方法,还包括:
-确定所述第一节点与所述第二节点之间的公共秘密;和
其中,通过所述通信网络访问所述数字内容分集包括:
-通过所述通信网络接收加密的数字内容分集;和
-使用基于所述公共秘密的密钥对所述加密的数字内容分集进行解密,以提供所述数字内容分集。
19.根据权利要求18所述的方法,其中,确定所述第一节点与所述第二节点之间的公共秘密的所述步骤包括:
基于至少第一节点主私钥和生成器值确定第一节点第二私钥;
基于至少第二节点主私钥和所述生成器值确定第二节点第二私钥;
其中:
在所述第一节点处确定所述公共秘密(CS)可以基于所述第一节点第二私钥和所述第二节点第二公钥,并且在所述第二节点处确定所述公共秘密(CS)可以基于所述第二节点第二私钥和所述第一节点第二公钥;
并且其中:
所述第一节点第二公钥和所述第二节点第二公钥可以分别至少基于所述第一/第二节点主密钥和所述生成器值。
20.根据权利要求18所述的方法,当从属于权利要求15时,其中,接收所述分集秘密(Si)和/或所述下一分集秘密(Si+1)还包括:
-通过使用基于所述公共秘密的密钥对加密的消息进行解密来确定所述分集秘密(Si)和/或所述下一分集秘密(Si+1)。
21.一种控制数字内容的传输和/或分发的计算机实现的方法,其中,与第一用户(5)相关联的第一节点(15)接收数字内容,回报是对与第二节点(17)相关联的第二用户(7)的支付,其中,所述第一用户(5)与公共地址(23)处的加密货币的存款数额(B1)相关联,其中,从所述公共地址进行花费需要所述第一用户(5)的第一私钥(V1)和所述第二用户(7)的第二私钥(V2)二者的签名,所述方法包括:
(I)-通过所述通信网络(8)接收来自所述第一节点(15)的请求,以从数字内容连载提供数字内容分集(i);
(II)-接收使用所述第一私钥(V1)签署的用于从所述公共地址(23)将加密货币的支付数额(B2)转移到所述第二用户(7)的支付交易(Ei),其中,所述加密货币的支付数额(B2)基于由所述第一用户(5)请求的所述数字内容连载中的数字内容分集的数额;
(III)-验证所述支付交易,包括:验证所述支付交易包括对所述第二用户(7)的所述加密货币的支付数额(B2),其中,基于验证的结果,所述方法还包括:
(IV)-通过所述通信网络(8)向所述第一节点(15)提供对所述数字内容分集(i)的访问;和
(V)-使用所述第二用户(5)的所述第二私钥(V2)共同签署所述支付交易,并将所述共同签署的支付交易发送到所述区块链(9)。
22.根据权利要求21所述的方法,还包括:
-通过重复步骤(I)至(IV),从所述数字内容连载分发下一数字内容分集,其中,对包括所述下一分集的数字内容分集的数额的支付交易执行步骤(V)。
23.根据权利要求21或22所述的方法,其中,在指定时间之后,在没有来自所述公共地址的所述加密货币的存款数额的交易的情况下,将所述加密货币的存款数额(B1)退还到所述第一用户(5),并且其中,所述方法还包括:
-使用所述第二用户(7)的所述第二私钥(V1)共同签署用于将所述加密货币的存款数额(B1)所述从公共地址(23)转移到所述第一用户(5)的第二交易,其中,由所述第一用户(5)使用所述第一私钥(V1)共同签署的所述共同签署的第二交易发送到所述区块链(9)并且在指定时间之后对应退还所述加密货币的存款数额(B1)是有效的,
其中,在所述指定时间之前执行将所述共同签署的支付交易发送到所述区块链。
24.根据权利要求21至23中任一项所述的方法,还包括:
-通过所述通信网络发送与来自可用于所述第一用户(5)请求的所述数字内容连载的所述数字内容分集相关联的分集秘密(Si);
-从所述分集秘密(Si)确定分集秘密散列(Hi);
其中,验证所述支付交易(Ei)的所述步骤包括:验证用于将所述加密货币的支付数额(B2)转移到所述第二用户(7)的对应支付赎回脚本(RS1)基于:
-所述分集秘密散列(Hi);和
-第二公钥(P2),其与所述第二用户(7)的所述第二私钥(V2)成密码对。
25.根据权利要求24所述的方法,还包括:
-确定与来自所述数字内容连载的所述下一数字内容分集(Si+1)相关联的下一分集秘密(Si+1);
-从所述下一分集秘密(Si)确定下一分集秘密散列(Hi+1);
其中,在步骤(IV)时或之后,所述方法还包括:
-通过所述通信网络(8)向所述第一节点(15)发送下一分集秘密(Si+1),
其中,当验证用于所述下一分集的下一支付交易时,所述方法还包括:验证用于将所述下一加密货币的支付数额转移到所述第二用户(7)的下一支付赎回脚本(RS2)基于:
-所述下一分集秘密散列(Hi+1)和
-所述第二公钥(P2)。
26.根据权利要求21至25中任一项所述的方法,其中,所述支付交易(Ei)还包括从所述公共地址(23)到所述第一用户(5)的对所述第一用户(5)的加密货币的改变数额(B3)的转移,其中,所述加密货币的改变数额(B3)基于所述加密货币的存款数额(B1)减去所述加密货币的支付数额(B2)。
27.根据权利要求21至26中任一项所述的方法,还包括:
-确定所述第一节点与所述第二节点之间的公共秘密;和
其中,通过所述通信网络提供对所述数字内容分集的访问包括:
-使用基于公共秘密的密钥对所述数字内容分集进行加密;和
-通过所述通信网络发送所述加密的数字内容分集。
28.根据权利要求27所述的方法,当从属于权利要求24时,其中,发送所述分集秘密(Si)和/或所述下一分集秘密(Si+1)还包括:
-基于使用基于所述公共秘密的密钥加密的所述分集秘密(Si)和/或所述下一分集秘密(Si+1)确定加密的消息。
29.根据权利要求27或28所述的方法,其中,确定所述第一节点与所述第二节点之间的公共秘密的所述步骤包括:
基于至少第一节点主私钥和生成器值确定第一节点第二私钥;
基于至少第二节点主私钥和所述生成器值确定第二节点第二私钥;
其中:
在所述第一节点处确定所述公共秘密(CS)可以基于所述第一节点第二私钥和所述第二节点第二公钥,并且在所述第二节点处确定所述公共秘密(CS)可以基于所述第二节点第二私钥和所述第一节点第二公钥;
并且其中:
所述第一节点第二公钥和所述第二节点第二公钥可以分别至少基于所述第一/第二节点主密钥和所述生成器值。

说明书全文

用于控制和分发数字内容的链实现的方法

技术领域

[0001] 本公开涉及支付和分发来自数字内容连载的数字内容系统和方法。本公开可以具有用于在线数字媒体的数字版权管理的应用,但是不受限于此。

背景技术

[0002] 区块链是一种点对点电子账本,它实现为由块组成的基于计算机的去中心化的分布式系统,块进而由交易组成。每个交易是对区块链系统中的参与者之间的数字资产的控制转移进行编码的数据结构,并且包括至少一个输入和至少一个输出。每个块均包含前一个块的散列,使得这些块变为链接在一起,以创建自其开始以来已写入区块链的所有交易的永久的、不可更改的记录。交易包含嵌入其输入和输出中的称为脚本的小程序,这些程序指定如何以及通过谁可以访问交易的输出。在比特币平台上,这些脚本是使用基于栈的脚本语言编写的。
[0003] 为了将交易写入区块链,必须对其进行“证实”。网络节点(矿工)执行工作以确保每个交易是有效的,其中,从网络中拒绝无效交易。安装在节点上的软件客户端通过执行其定和解锁脚本来对未花费的交易(UTXO)执行此验证工作。如果锁定和解锁脚本的执行受评估为TRUE,则交易是有效的并且交易写入区块链。因此,为了将交易写入区块链,其必须i)由接收交易的第一节点证实——如果交易被证实,则节点将其中继到网络中的其他节点;ii)加入由矿工构建的新区块;以及iii)受开采,即加入过去交易的公开账本。
[0004] 尽管区块链技术因加密货币实现方式的使用而最广为人知,但数字企业家已经开始探索使用比特币所基于的加密安全系统以及可以存储在区块链上的数据二者来实现新系统。如果区块链可以用于不限于加密货币领域的自动化任务和过程,那么将是非常有利的。这样的解决方案将能够利用区块链的益处(例如,事件的永久、防篡改记录,分布式处理等),同时在其应用中更通用。
[0005] 目前研究的一个领域是使用区块链来实现“智能合约”。这些是被设计为使得执行机器可读合约或协议条款自动化的计算机程序。与将用自然语言编写的传统合约不同,智能合约是机器可执行程序,其包括可以处理输入以产生结果的规则,其然后可以使得取决于这些结果执行动作。
[0006] 区块链相关兴趣的另一领域是使用“通证”(或“彩色币”),以经由区块链来表示和转移现实世界的实体。潜在的敏感或秘密项目可以由没有可辨别的含义或价值的通证表示。因此,通证用作允许从区块链引用真实世界项目的标识符。
[0007] 数字版权管理涉及控制服从版权的数字媒体,包括限制数字媒体的使用、修改和分发的控制技术。数字媒体可以包括连载的内容,例如诸如杂志、报纸、播客、肥皂剧、电视连续剧等的连贯内容。
[0008] 数字版权管理的实现方式可以包括通过更大的中央系统或多个系统管理版权作品,其中,密钥交换以在与各个用户相关联的节点之间创建信任。这样的系统可能难以管理,并且对访问权限的持续维护可能难以实现。在一些替代方案中,可以使用受信任的第三方(例如证书授权机构)来创建层级。然而,这些系统中的一些可能创建可能对于攻击是脆弱的大型单点故障。
[0009] 在本文档中,我们使用术语“区块链”来包括所有形式的电子、基于计算机的分布式账本。这些包括但不限于基于共识的区块链和交易链技术、许可和未许可的账本、共享账本及其变体。尽管已经提出并开发了其他区块链实现方式,但区块链技术最广为人知的应用是比特币账本。虽然本文中出于方便和说明的目的可以引用比特币,但应注意,本发明不限于与比特币区块链一起使用,并且替代的区块链实现方式和协议落入本发明的范围内。
[0010] 在整个本说明书中,词语“包括(comprise)”或诸如“包括(comprises)”或“包括(comprising)”的变体将被理解为暗示包括所声明的要素、整体或步骤、或成组要素、整体或步骤,但是不排除任何其他要素、整体或步骤、或成组要素、整体或步骤。
[0011] 对本说明书中已经包括的文献、法案、材料、设备、物品等的任何讨论不应视为承认任何或所有这些事项因其在本申请的每个权利要求优先权日之前存在而构成现有技术基础的一部分或者是与本公开相关的领域的公知常识。

发明内容

[0012] 本发明提供如所附权利要求中限定的方法和系统。
[0013] 本发明可以提供一种控制方法和对应系统,其被布置为:控制数据的传输和/或分发。可以经由或通过计算机实现的网络或电信网络进行传输。数据可以是数字内容。本发明可以提供一种结合密码和/或加密技术以使得数据的分发/传输安全的方法/系统。因此,本发明可以提供用于数据通信的增强的安全解决方案。
[0014] 术语“分集”在本文中可以与术语“部分”互换使用。然而,由本发明传输、分发和/或控制的数字内容可以不限于广播媒体或艺术内容的分节、逻辑章节或分集。本文和权利要求中的术语“分集”仅表示数字内容的“部分”或“单元”或“量”。类似地,本文不使用术语“连载”来简单地表示广播连载意义上的连载。该连载可以简单地是数字内容的多个部分、其群组或关联。“连载”不限于或必定指示连续的或时间先后的顺序。此外,本发明不限于数字内容的性质或形式。数字内容可以不限于娱乐媒体,而可以涉及任何类型的数字内容。
[0015] 本发明可以提供一种系统,其中,第一用户与公共地址处的加密货币的数额相关联。加密货币可以称为“存款数额”。地址可以是网络上的地址。它可以是区块链地址。它可以从密码密钥得以推导或与密码密钥相关联。从公共地址进行花费可能需要至少第一用户的第一私钥(V1)和第二用户的第二私钥(V2)的(数字)签名。这可以通过使用给定类型的区块链交易受指定。交易类型可以是区块链协议的一部分,或在区块链协议内受定义。
[0016] 该系统可包括:
[0017] -第一节点,其与第一用户相关联,包括第一处理设备,第一处理设备用于:
[0018] (A)通过通信网络向第二节点发送请求,以从数字内容连载提供数字内容分集(i);
[0019] (B)确定和/或生成用于从公共地址将加密货币的支付数额(B2)转移到第二用户的区块链交易(Εi),其中,加密货币的支付数额(B2)基于由第一用户请求的数字内容连载中的数字内容的分集的数额;和
[0020] (C)使用第一私钥(V1)签署支付交易(Ei),并随后将支付交易(Ei)发送到第二节点;
[0021] -第二节点,其与第二用户相关联,包括第二处理设备,第二处理设备用于:
[0022] (I)通过通信网络接收来自第一节点的请求,以提供数字内容分集(i)和使用第一私钥(V1)签署的支付交易(Ei);
[0023] (II)验证支付交易,包括:验证支付交易包括对第二用户的加密货币支付数额(B2),并且基于验证的结果,第二处理设备还用于:
[0024] (III)通过通信网络提供对于对第一节点可用的数字内容分集(i)的访问;和[0025] (IV)使用第二用户的第二私钥(V2)共同签署支付交易,并将共同签署的支付交易发送到点对点分布式账本。
[0026] 在该系统中,第一处理设备还可以用于:通过重复步骤(A)至(C),从该数字内容连载请求下一数字内容分集。第二处理设备还可以用于:通过重复步骤(I)至(III),接收请求并分发所述下一数字内容分集,其中,对具有包括所述下一分集的数字内容分集的数额的支付交易执行用于共同签署支付交易并将其发送到点对点分布式账本的步骤(IV)。
[0027] 有利地,本发明提供的益处之一是数字内容的每个部分与用于另外或后续部分(或与之相关联)的密码密钥一起被加密。密钥的使用提供技术证据:数字内容的一部分已被解密。因此,可以确定已经访问(例如查看或以某种方式消费/使用)数字内容。
[0028] 在该系统中,第一用户可以使用第一处理设备将加密货币的存款数额(B1)的存放在公共地址处,该第一处理设备用于:通过通信网络发送第一数据输出(O1),以在点对点分布式账本(以下可以简称为“区块链”)上记录加密货币的存款数额(B1)从第一用户到公共地址的第一交易。
[0029] 在该系统中,在指定时间之后,在没有来自公共地址的加密货币的存款数额的交易的情况下,可以退还加密货币的存款数额(B1)。第一处理设备还可以用于:使用第一用户的第一私钥(V1)共同签署第二交易,以将加密货币的存款数额(B1)从公共地址转移到第一用户。第二处理设备还可以用于:使用第二私钥(V2)共同签署第二交易,其中,使用第一私钥(V1)和第二私钥(V2)二者共同签署的第二交易发送到点对点分布式账本,并在指定时间后对于退还加密货币的存款数额(B1)是有效的;以及在指定时间之前,将共同签署的支付交易发送到点对点分布式账本。
[0030] 在该系统中,第二处理设备还可以用于:通过通信网络发送与来自可用于第一用户请求的数字内容连载的数字内容分集相关联的分集秘密(Si)。第一处理设备还可以用于:通过通信网络接收分集秘密(Si);从分集秘密(Si)确定分集秘密散列(Hi)。确定用于将加密货币的支付数额(B2)转移到第二用户的支付交易(Ei)包括:第一处理设备用于基于以下项进一步确定支付赎回脚本(RS1):分集秘密散列(Hi);以及第二公钥(P2),其与第二用户的第二私钥(V2)成密码对。当第二处理设备验证支付交易(Ei)时,第二处理设备还用于:验证支付赎回脚本(RS1)基于分集秘密散列(Hi)和第二公钥(P2)。
[0031] 在该系统中,第二处理设备还可以用于:从该数字内容连载确定与下一数字内容分集(Si+1)相关联的下一分集秘密(Si+1);从下一分集秘密(Si)确定下一分集秘密散列(Hi+1);其中,在发送数字内容分集的步骤(III)时或之后,第二处理设备进一步提供为:通过通信网络向第一节点发送下一分集秘密(Si+1)。第一处理设备还可以用于:通过通信网络接收下一分集秘密(Si+1);从下一分集秘密(Si+1)确定下一分集秘密散列(Hi+1)。对应下一支付交易(Ei+1)包括下一支付赎回脚本(RS2),其基于:下一分集秘密散列(Hi+1);和第二公钥(P2)。当第二处理设备验证下一支付交易(Ei+1)时,第二处理设备还用于验证下一支付赎回脚本(RS2)基于下一分集密钥散列(Hi+1)和第二公钥(P2)。
[0032] 在该系统中,支付交易(Εi)还可以包括从公共地址到第一用户加密货币的改变数额(B3)对第一用户的转移,其中,加密货币的改变数额(B3)基于加密货币的存款数额(B1)减去加密货币的支付数额(B2)。
[0033] 在该系统中,第二处理设备还可以用于:确定第一节点与第二节点之间的公共秘密。通过通信网络提供对数字内容分集的访问还包括:第二处理设备使用基于公共秘密的密钥对一个或多个数字内容分集进行加密,以提供一个或多个加密的数字内容分集;并发送一个或多个加密的数字内容分集。第一处理设备还可以用于:确定第一节点与第二节点之间的公共秘密;通过通信网络接收一个或多个加密的数字内容分集;使用基于公共秘密的密钥对一个或多个加密的数字内容分集进行解密,以提供一个或多个数字内容分集。
[0034] 在该系统中,第二处理设备还可以用于:基于使用基于公共秘密的密钥加密的分集秘密(Si)和/或下一分集秘密(Si+1)来确定加密的消息。第一处理设备还可以用于:通过使用基于公共秘密的密钥对加密的消息进行解密来确定分集秘密(Si)和/或下一分集秘密(Si+1)。
[0035] 一种接收数字内容的计算机实现的方法,其中,与第一用户相关联的第一节点接收数字内容,回报是对与第二节点相关联的第二用户的支付,其中,第一用户与公共地址处的加密货币的存款数额(B1)相关联,其中,从公共地址进行花费需要第一用户的第一私钥(V1)和第二用户的第二私钥(V2)二者的签名,该方法包括:
[0036] (A)通过通信网络向第二节点发送请求,以从数字内容连载提供数字内容分集(i);
[0037] (B)确定用于从公共地址将加密货币的支付数额(B2)转移到第二用户的支付交易(Εi),其中,加密货币的支付数额(B2)基于由第一用户请求的数字内容连载中的数字内容分集的数额;
[0038] (C)使用第一私钥(V1)签署支付交易(Εi),并随后将支付交易(Εi)发送到第二节点,以使第二节点验证支付交易;
[0039] 其中,基于第二节点已经验证支付交易包括加密货币的支付数额(B2),该方法还包括:
[0040] (D)通过通信网络访问数字内容分集(i)。
[0041] 该方法还可以包括:通过重复步骤(A)至(D),从该数字内容连载请求下一数字内容分集。
[0042] 该方法还可以包括:第一用户通过以下步骤将加密货币的存款数额(B1)存放在公共地址处:通过通信网络发送第一数据输出(O1)以在点对点分布式账本上记录加密货币的存款数额(B1)从第一用户到公共地址的第一交易。
[0043] 在该方法的另一示例中,在指定时间之后,在没有来自公共地址的加密货币的存款数额(B1)的交易的情况下,退还加密货币的存款数额(B1),并且其中,该方法还包括:使用第一用户的第一私钥(V1)共同签署用于将加密货币的存款数额(B1)从公共地址转移到第一用户的第二交易,其中,由第二用户使用第二私钥(V2)共同签署的该共同签署的第二交易发送到点对点分布式账本,并且在指定时间之后对于退还加密货币的存款数额(B1)是有效的。
[0044] 该方法还可以包括:通过通信网络从可用于第一用户请求的数字内容连载接收与数字内容分集相关联的分集秘密(Si);从分集秘密(Si)确定分集秘密散列(Hi)。支付交易(Εi)中对第二用户的加密货币的支付数额(B2)包括基于以下项的支付赎回脚本(RS1):分集秘密散列(Hi);以及第二公钥(P2),其与第二用户的第二私钥(V2)成密码对。
[0045] 在步骤(D)时或之后的方法中,该方法还可以还包括:
[0046] 通过通信网络接收与来自该数字内容连载的下一数字内容分集(Si+1)相关联的下一分集秘密(Si+1)。从该数字内容连载请求下一分集包括:从下一分集秘密(Si+1)确定下一分集秘密散列(Hi+1),并且其中,对应下一支付交易(Ei+1)包括基于以下项的下一支付赎回脚本(RS2)):下一分集秘密散列(Hi+1);和第二公钥(P2)。
[0047] 在该方法中,支付交易(Ei)还可以包括加密货币的改变数额(B3)从公共地址向第一用户的转移,其中,加密货币的改变数额(B3)基于加密货币的存款数额(B1)减去加密货币的支付数额(B2)。
[0048] 该方法还可以包括:确定第一节点与第二节点之间的公共秘密;并且其中,通过通信网络访问数字内容分集包括:通过通信网络接收加密的数字内容分集;以及使用基于公共秘密的密钥对加密的数字内容分集进行解密,以提供数字内容分集。
[0049] 当接收到分集秘密(Si)和/或下一分集秘密(Si+1)时,该方法还可以包括:通过使用基于公共秘密的密钥对加密的消息进行解密确定分集秘密(Si)和/或下一分集秘密(Si+1)。
[0050] 一种分发数字内容的计算机实现的方法,其中,与第一用户相关联的第一节点接收数字内容,回报是对与第二节点相关联的第二用户的支付,其中,所述第一用户与在公共地址处的加密货币的存款数额(B1)相关联,其中,从公共地址进行花费需要第一用户的第一私钥(V1)和第二用户的第二私钥(V2)二者的签名,该方法包括:
[0051] (I)通过通信网络接收来自第一节点的请求,以从数字内容连载提供数字内容分集(i);
[0052] (II)接收使用第一私钥(V1)签署的用于从公共地址将加密货币的支付数额(B2)转移到第二用户的支付交易(Ei),其中,加密货币的支付数额(B2)基于由第一用户请求的数字内容连载中的数字内容分集的数额;
[0053] (III)验证支付交易,包括:验证支付交易包括对第二用户的加密货币的支付数额(B2),其中,基于验证的结果,该方法还包括:
[0054] (IV)通过通信网络向第一节点提供数字内容分集(i)的访问;和
[0055] (V)使用第二用户的第二私钥(V2)共同签署支付交易,并将共同签署的支付交易发送到点对点分布式账本。
[0056] 该方法还可以包括:通过重复步骤(I)至(IV),从该数字内容连载分发下一数字内容分集,其中,对包括下一分集的数字内容分集的数额的支付交易执行步骤(V)。
[0057] 在该方法的一个示例中,在指定时间之后,在没有来自公共地址的加密货币的存款数额的交易的情况下,将加密货币的存款数额(B1)退还到第一用户。因此,该方法还可以包括:使用第二用户的第二私钥(V1)共同签署用于将加密货币的存款数额(B1)从公共地址转移到第一用户的第二交易,其中,由第一用户使用第一私钥(V1)共同签署的所述共同签署的第二交易发送到点对点分布式账本,并在指定时间之后对于退还加密货币的存款数额(B1)是有效的。此外,在指定时间之前执行将共同签署的支付交易发送到点对点分布式账本的步骤。
[0058] 该方法还可以包括:通过通信网络发送与来自可用于第一用户请求的数字内容连载的数字内容分集相关联的分集秘密(Si);以及从分集秘密(Si)确定分集秘密散列(Hi)。验证支付交易(Ei)的步骤包括:验证用于将加密货币的支付数额(B2)转移到第二用户的对应支付赎回脚本(RS1)基于:分集秘密散列(Hi);以及第二公钥(P2),其与第二用户的第二私钥(V2)成密码对。
[0059] 该方法还可以包括:确定与来自该数字内容连载的下一数字内容分集(Si+1)相关联的下一分集秘密(Si+1);以及从下一分集秘密(Si)确定下一分集秘密散列(Hi+1)。在步骤(IV)时或之后,该方法还可以包括:通过通信网络向第一节点发送下一分集秘密(Si+1)。当验证用于下一分集的下一支付交易时,该方法还包括:验证用于将下一加密货币的支付数额转移到第二用户的下一支付赎回脚本(RS2)基于:下一分集秘密散列(Hi+1)和第二公钥(P2)。
[0060] 在该方法中,支付交易(Ei)还可以包括从公共地址到第一用户的对第一用户的加密货币的改变数额(B3)的转移,其中,加密货币的改变数额(B3)基于加密货币的存款数额(B1)减去加密货币的支付数额(B2)。
[0061] 该方法还可以包括:确定第一节点与第二节点之间的公共秘密。通过通信网络提供对数字内容分集的访问的步骤可以包括:使用基于公共秘密的密钥对数字内容分集进行加密;以及通过通信网络发送加密的数字内容分集。
[0062] 在该方法中,发送分集秘密(Si)和/或下一分集秘密(Si+1)的步骤还可以包括:基于使用基于公共秘密的密钥加密的分集秘密(Si)和/或下一分集秘密(Si+1)确定加密的消息。
[0063] 以上描述的本发明的任何实施例可以包括用于确定对第一节点和第二节点公共的秘密的方法、和/或用于执行该方法的系统。该方法可以包括(或该系统可以可操作以执行)以下步骤:
[0064] 基于至少第一节点主私钥和生成器值确定第一节点第二私钥;
[0065] 基于至少第二节点主私钥和生成器值确定第二节点第二私钥;
[0066] 其中:
[0067] 确定第一节点处的公共秘密(CS)可以基于第一节点第二私钥和第二节点第二公钥,并且确定第二节点处的公共秘密(CS)可以基于第二节点第二私钥和第一节点第二公钥;
[0068] 以及其中:
[0069] 第一节点第二公钥和第二节点第二公钥可以分别至少基于第一/第二节点主密钥和生成器值。
[0070] 生成器值可以是消息,也可以是从消息推导出的。它可以从存储在区块链交易(Tx)中的元数据得以推导出。
[0071] 一种设备,其包括用于执行上述任何一种方法的处理设备。
[0072] 一种计算机程序,其包括使处理设备实现上述任何一种方法的机器可读指令。
[0073] 关于本发明的一个实施例或方面描述的任何特征也可以应用于本发明的一个或多个其他实施例/方面。结合本发明的系统描述的任何特征可以应用于本发明的方法,反之亦然。附图说明
[0074] 将参考以下附图描述本公开的示例:
[0075] 图1是分发数字内容的示例系统的示意图;
[0076] 图2是示出第一用户、第二用户和公共地址之间的交易的示意图;
[0077] 图3是用于分发和接收数字内容的计算机实现的方法的流程图
[0078] 图4是初始化和创建退款交易的计算机实现的方法的流程图;
[0079] 图5是根据一个示例的用于分发和接收数字内容的计算机实现的方法的详细流程图;和
[0080] 图6示出处理设备的示意性示例。

具体实施方式

[0081] 总概
[0082] 现在将描述用于控制来自一个节点的数字内容的分发和传输以及在另一节点处接收数字内容的系统、设备和方法。图1示出系统1,系统1包括与第一用户5相关联的第一节点15,该第一节点通过通信网络8与和第二用户7相关联的第二节点17通信。在该示例中,第一用户5可以请求在第一节点15处接收数字内容,并且第二用户7经由第二节点17提供对数字内容的访问。第二节点17可以通过多种方式提供对数字内容的访问,所述方式包括:将数字内容从第一数据存储器18发送到第一节点15;以及使得在与内容服务器3相关联的第二数据存储器11处的数字内容经由通信网络8对第一节点15是可用的。
[0083] 第一节点15和/或第二节点17通过通信网络8与点对点分布式账本(区块链)9通信。区块链9可以与一个或多个处理设备19相关联,以接收和记录交易。点对点分布式账本的示例包括区块链,区块链是基于比特币协议的交易(Tx)的分布式账本。因此,与账本相关联的处理设备19可以是由“矿工”使用或与之相关联的处理设备。
[0084] 参考图2,第一用户5可能希望从来自第二用户7的数字内容连载购买未知数量的数字内容。在使数字内容可用于第一用户5之前,第二用户7要求存款,以提供第二用户7将为数字内容被付费的置信度
[0085] 为了提供存款,第一用户5可以执行第一交易21,以将加密货币的存款数额(B1)转移到公共地址23。公共地址23可以是根据比特币协议的付费到脚本散列(P2SH)地址,并且来自公共地址23的花费需要第一用户5的第一私钥(V1)和第二用户7的第二私钥(V2)二者的签名。这是:来自公共地址23的交易必须由第一用户5和第二用户7二者签署,因此双方可以具有置信度:在没有来自双方的授权的情况下,存款将不被花费。应当理解,可以使用替代的多重签名方法来授权来自公共地址23的交易。
[0086] 在一些示例中,存款可以是时间限制的,由此如果第一用户5在指定时间(和/或其他条件)内没有请求接收到数字内容分集,则存款退回到第一用户。在图2中示出作为第二交易25的这种情况的示例,该第二交易25向第一用户5退还加密货币的存款数额(B1)。在一些示例中,这可以通过使第一用户5和第二用户7两者共同签署从公共地址(23)到第一用户5第二交易得以实现,其中,第二交易仅在指定时间之后是有效的。例如,该指定可以是Unix时间表示的将来的d天。然后广播该第二交易,其中,它将在指定时间之后变为有效交易。
[0087] 因此,如果在指定时间之前广播用于从公共地址花费加密货币的存款数额(B1)的竞争交易,则该竞争交易将是有效交易。在指定时间之前广播有效竞争交易符合第二用户7的利益,此后,加密货币的存款数额(B1)将退还到第一用户(5)。在本示例中,这些竞争交易称为支付交易27,27',27",因为它们代表第二用户7可以接收支付的交易。
[0088] 现在将参照图3描述如何分发数字内容(包括创建支付交易27)的简要示例,图3示出由第一节点15和第二节点17执行的各个方法100、200。
[0089] 第一用户5在想要从数字内容连载接收数字内容分集时使用第一节点15来针对数字内容进行请求。第一节点15(其可以是计算机、移动通信设备、电视等)包括第一处理设备23,该第一处理设备23通过通信网络8向第二节点15发送(110)请求,以提供该数字内容分集。
[0090] 第一节点15还确定(120)用于从公共地址(23)将加密货币的支付数额(B2)转移到第二用户7的支付交易(Ei)27。支付数额(B2)基于第一用户5请求的数字内容连载中的数字内容分集的数额。这可以包括先前已经请求(并且已经接收)但其中第二用户7尚未接收到支付的分集。在简化的示例中,第二支付数额(B2)可以是所请求的分集的数量(i)乘以每个分集的价格(p)。
[0091] 然后,第一节点15使用第一私钥(V1)签署(130)支付交易(Ei)27。然后将支付交易(Ei)27发送到第二节点17。由于支付交易(Ei)已经仅仅使用第一私钥(V1)受签署,因此这还不是有效交易,因为它要求第二节点17使用第二私钥(V2)签署。
[0092] 现在转到与第二用户7相关联的第二节点17,第二节点具有第二处理设备23',第二处理设备23'可以包括大型计算机、台式计算机等。第二节点17的第二处理设备通过通信网络8接收(210)来自第一节点15的请求,以提供数字内容分集和使用第一私钥(V1)签署的支付交易(Ei)。
[0093] 在第二节点17使得数字内容分集可用于第一节点15和第一用户5之前,第二节点17需要确定第二用户17将能够接收支付。因此,第二节点17然后验证(220)支付交易(Ei)
27,该操作包括:验证支付交易(Ei)27包括对第二用户7的加密货币的支付数额(B2)。在实际示例中,这可以包括:确定正确的加密货币的量和正确的目的地。
[0094] 基于验证支付交易(Ei)(即,具体地说,第二用户7将被支付),第二节点17然后通过通信网络8提供对第一节点15可用的数字内容分集的访问(230)。进而,这允许第一节点访问(140)数字内容分集。
[0095] 为了实行支付交易(Ei)27,第二节点17然后使用第二用户5的第二私钥(V2)共同签署(240)支付交易(Ei)27,并向区块链9发送共同签署的支付交易。因此,加密货币的支付数额(B2)将从具有加密货币的存款数额(B1)的公共地址(23)被转移。
[0096] 在一些示例中,第一用户5可以有机会请求和接收其他分集。因此,第二用户17可以有机会(从提供给第一用户5的其他分集)接收更多的支付,并且因此可以推迟共同签署(240)并将共同签署的支付交易发送到区块链9的步骤,直到更接近第二交易25的用于退回存款的指定时间的时间。现在将描述分发下一分集的示例。
[0097] 第一节点15通过重复如上所述的步骤110,120和130但是针对下一分集从该数字内容连载请求该下一数字内容分集。重要的是,将调整加密货币的支付数额,以考虑该下一分集(以及尚未支付的连载中的先前分集)。第二节点17类似地接收请求,并通过重复如上所述的步骤210至230来分发该下一数字内容分集。
[0098] 因此,第二节点17具有两个支付交易:第一支付交易(Ei)27,该第一支付交易包括针对数字内容分集的加密货币的支付数额;以及第二支付交易(Ei+1)27',该第二支付交易包括针对并包括下一数字内容分集的加密货币的支付数额。由于第二用户7将有兴趣接收最大支付金额,因此第二节点17应该仅签署(240)并且发送共同签署的支付交易27'而不是包括包含下一分集的支付交易的支付——即第二支付交易(Ei+1)27'。因此,第一支付交易(Εi)27可以被第二节点17放弃。
[0099] 本公开可以提供一种通信、传输和/或分发数字内容的系统,其中,信任级别可以更低。例如,可以最小化第一用户5和/或第二用户7暴露于欺骗行为的级别。在一个示例中,如果第二用户7未能履行其义务,则对第一用户的暴露(例如潜在损失)将是一个数字内容分集的价格(因为剩余金额将被退还)。
[0100] 本公开还可以提供不依赖于其他第三方(例如可能具有单点故障并且对于攻击是脆弱的证书授权机构和层级)的系统。加密技术的使用增强了本发明提供的传输/控制布置的安全性。
[0101] 现在将出于说明的目的描述详细示例。
[0102] 初始化-加密协议
[0103] 第一节点5和第二节点7建立通过通信网络8与彼此的安全通信101、201。这可以包括:使用共享对称加密密钥(S)对通信进行加密。在一些示例中,对称加密密钥基于共享公共秘密。用于确定该公共秘密的技术可以如下:
[0104] 基于至少第一节点主私钥和生成器值确定第一节点第二私钥;
[0105] 基于至少第二节点主私钥和生成器值确定第二节点第二私钥;
[0106] 其中:
[0107] 确定第一节点处的公共秘密(CS)基于第一节点第二私钥和第二节点第二公钥,并且确定第二节点处的公共秘密(CS)基于第二节点第二私钥和第一节点第二公钥。第一节点第二公钥和第二节点第二公钥分别至少基于第一/第二节点主密钥和生成器值。
[0108] 在本说明书的后面更详细地描述用于推导基于共享公共秘密的密钥的方法。
[0109] 将加密货币存放到公共地址
[0110] 为了进行第一交易21中到公共地址的存放,第一节点需要确定公共地址。在支付到脚本散列(P2SH)系统中,这可以基于公钥(对应于用于签署的私钥)。在一个示例中,这包括:确定对应于第一用户5的第一私钥(V1)的第一公钥(P1),其应该对于第一节点5是已知的。这还包括:确定第二用户5的第二公钥(P2),其可以通过从第二节点17、第三方或从数据存储器接收第二公钥(P2)得以确定。尽管在一些示例中,可以使用共享对称加密密钥(S)对第二公钥(P2)进行加密,但不一定需要以安全的方式发送第二公钥(P2)。
[0111] 加密货币的存款数额(B1)可以是由第一用户5和第二用户7相互商定的数额。然而,加密货币的存款数额(B1)可以可期望地等于可以接收的数字内容连载中的数字内容分集的最大金额的成本。这样确保如果第一用户5决定接收并观看所有分集,则存款足以支付所有分集。因此,如果该连载具有多个分集n,并且每分集的价格是p,则加密货币的存款数额(B1)是n×p。
[0112] 下面在表1和2中示出用于转移加密货币的存款数额(B1)的第一交易(A1)21的示例。
[0113] 表1:第一交易(A1)
[0114]
[0115]
[0116] 表2:用于交易(A1)的赎回脚本
[0117]
[0118] 在该示例中,第一交易(A1)21具有来自第一用户(“Alice”)5的先前区块链交易(其需要第一用户的签名)的输入和到公共地址(23)的输出。在该示例中,输出基于赎回脚本的散列,该赎回脚本包括第一用户的公钥(P1,“Alice的公钥”)和第二用户的公钥(P2,“Bob的公钥”)。也就是说,赎回第一区块链交易(A1)21的输出将要求第一用户5使用第一私钥(V1)和第二用户7使用第二私钥(V2)的签名。
[0119] 在如图4所示由第一节点5执行的方法100中示出记录上述第一交易(A1)21,其中,第一节点,其中,第一节点15通过通信网络8发送(103)第一数据输出(O1),以在区块链9上记录加密货币的存款数额从第一用户5到公共地址(23)的第一交易。
[0120] 创建退款交易
[0121] 然后创建第二区块链交易25,使得在指定时间超期之后退还加密货币的存款数额(B1)。
[0122] 这可以包括:第一节点15创建第二交易25,第二交易25包括:将加密货币的存款数额(B1)花费回到第一用户5,但仅在将来的指定时间之后。指定时间可以包括:将第二交易的锁定时间设置为以Unix时间表示的将来d天。
[0123] 以下在表3中示出退还加密货币的存款数额(B1)的第二交易(21)25的示例。
[0124] 表3:第二交易(A2)
[0125]
[0126] 在该示例中,第二交易(A2)25具有来自第一交易(A1)21的输入。解锁来自公共地址(23)23的输入需要使用第一私钥(V1)的第一用户的签名和使用第二私钥(V2)的第二用户的签名。在该示例中,输出将加密货币的存款数额(在这种情况下是np)退还给第一用户5,因此输出仅仅基于第一用户的公钥的散列(P1,“Alice的公钥”)。也就是说,由于第一用户5应该自由地花费他们自己的退款的加密货币,因此赎回第一交易(A1)21的输出将仅需要第一用户5使用第一私钥(V1)的签名。
[0127] 重要的是,第二交易(A2)25仅在指定时间之后是有效的,在这种情况下,指定时间由锁定时间函数实现,其中,交易仅在指定时间之后是有效的。例如,(以Unix时间表示的)d天。
[0128] 记录第二交易(A2)25在图4中示出为由第一节点15执行的步骤105、107和由第二节点17执行的步骤203、205、207。第一节点15使用第一用户5的第一私钥(V1)共同签署(105)第二交易。然后,通过通信网络8将该第二交易(A2)25发送(107)到第二节点17,以使用第二私钥(V2)受签署。进而,第二节点17接收(203)第二交易(A2)25,并且第二节点17进一步使用第二用户7的第二私钥(V2)共同签署(205)第二交易(A2)25。现在使用这两个私钥签署的第二交易(A2)25然后通过通信网络8发送(207)到区块链9,在区块链9中,如果在指定时间之前没有发送其他有效交易(例如支付交易27),则它将在该指定时间之后对于退还加密货币的存款数额(B1)是有效的。
[0129] 应当理解,可以按其他顺序执行这些步骤。例如,第二节点17可以首先签署第二交易,并将其发送到第一节点15,以进行再次签署。应当理解,任一节点可以(在签署之前)创建第二交易,并且任一节点可以将共同签署的交易发送区块链9。在其他示例中,第一节点15和第二节点17可以将交易发送到其他中间节点,其他中间节点进而将其发送到其他节点和/或区块链9。
[0130] 请求数字内容并确定支付交易
[0131] 现在将参考图5描述请求数字内容和创建支付交易的方法。
[0132] 第二节点17针对每个数字内容分集(i)确定对应分集秘密(Si)。该分集秘密(Si)可以用于识别用于知道秘密的人(具体地说,第一用户5和第二用户7)的分集(i)。这对于在信息发送到区块链9的情况下保持隐私可以是有用的。
[0133] 第二节点17向第一节点17发送(208)针对该数字内容连载中的第一数字内容分集的分集秘密(Si)。在该示例中,仅发送可用于第一用户5和第一节点15的后面分集的分集秘密。随后的分集秘密被保留,直到第一节点15访问第一分集。这样确保按顺序访问分集。
[0134] 当发送(208)分集秘密(Si)时,第二节点17可以通过使用共享对称加密密钥(S)对分集秘密(Si)进行加密来创建和发送加密消息,以保持分集秘密(Si)的保密性。然后,第一节点15从第二节点17接收(108)包括分集秘密(Si)的加密的消息。第一节点15然后使用共享对称加密密钥(S)对加密的消息进行解密,以获得分集秘密(Si)。
[0135] 第一节点15可以将分集秘密(Si)存储在数据存储器中,直到第一用户5决定访问第一数字内容分集。假设指定时间尚未超期(即,其在d天之前),则第一节点15处的方法100包括:通过通信网络8向第二节点17发送(110)请求,以提供第一数字内容分集。该请求伴随着在第一节点处确定(120)的针对第一分集的支付交易27,将在下面对此进行描述。
[0136] 确定支付交易
[0137] 如果有效,则支付交易(Ei)27将从公共地址(23)(并且具体地说,来自其的加密货币的存款数额(B1))进行花费,因此需要第一用户5和第二用户7两者的签名。因此,在确定支付交易(Ei)27之后,第一节点15将需要签署支付交易(Ei)27,并将其发送到第二节点17,以用于共同签署,然后发送到区块链9。
[0138] 第一节点15首先从分集秘密(Si)确定(121)分集秘密散列(Hi)。这可以包括:使用散列函数,例如OP_HASH 160(其中,使用SHA-256并且随后使用RIPEMD-160,输入受散列化两次)。应理解,其他散列函数也可以是合适的。
[0139] 在该示例中,支付交易(Ei)27是P2SH的形式。因此,确定支付交易(Ei)27还包括:确定赎回脚本,在这种情况下,该赎回脚本是基于以下项的支付赎回脚本(RS1):分集秘密散列(Hi);和第二用户7的第二公钥(P2)。在赎回脚本中包括分集秘密散列(Hi)可以用作该特定支付交易与特定分集的访问相关(与分集秘密散列(Hi)和分集秘密(Si)相关联)的证据。其次,第二用户7的第二公钥(P2)确保仅具有对应第二私钥(V1)的第二用户7可以花费该支付。
[0140] 确定(120)支付交易(Ei)27还包括:确定对第二用户7的加密货币的支付数额(B2)。在第一分集的情况下,该支付数额将是该第一分集的价格。然而,当第一用户5进一步请求随后分集时,加密货币的支付数额(B2)将基于已经请求的分集而改变。在简化的示例中,这可以是分集的数额乘以每分集的价格。
[0141] 除了对第二用户7的输出之外,支付交易(Ei)27可以还包括回到第一用户5的另一输出。回到第一用户5的该输出可以代表回到第一用户的加密货币的存款数额(B1)的改变。在一个示例中,对第一用户5的加密货币的改变数额(B3)可以基于加密货币的存款数额(B1)减去加密货币的支付数额(B2)。
[0142] 然后,方法100包括:使用第一私钥(V1)签署(130)支付交易(Ei)27,并随后将支付交易(Ei)27发送到第二节点17,以使第二节点17验证支付交易。
[0143] 以下在表4和5中示出支付交易(Εi)的示例。
[0144] 表4:支付交易(Εi)
[0145]
[0146] 表5:输出1支付交易(Εi)的赎回脚本
[0147]赎回脚本 OP_HASH160OP_EQUALVERIFYOP_CHECKSIG
[0148] 对该交易的输入包括解锁脚本,该脚本需要第一用户5的第一私钥(V1)的签名(“Alice的签名”)和第二用户7的第二私钥(V2)的签名(“Bob的签名”),因为从共同地址(23)花费支付交易。
[0149] “输出1”示出对第二用户7的加密货币的支付数额(B2)的输出。该输出可以通过表5中所示的支付赎回脚本(RS1)得以赎回,该脚本基于如上所述的分集秘密散列(Hi)和第二用户公钥(P2)(“Bob的公钥”)。
[0150] “输出2”示出作为回到第二用户7的加密货币的改变数额(B3)的输出。注意,输出脚本基于第一用户的公钥P1(Alice的公钥),因为第一用户应该自由地花费这个加密货币的改变数额(B3)。
[0151] 验证支付交易
[0152] 第二节点17通过通信网络8接收(210)请求,以提供第一数字内容分集。因此,第二节点17还将期望接收使用第一私钥(V1)签署的来自第一节点15的支付交易(Ei)27。
[0153] 在同意该请求以提供数字内容分集之前,第二节点将验证支付交易(Ei),使得第一用户7可以具有置信度:他们将接收支付。
[0154] 第二节点17从分集秘密(Si)确定(121)分集秘密散列(Hi)。这可以包括:以与第一节点15相同的方式使用散列函数。然后,第二节点验证(220)所接收的支付交易(Ei)包括对第二用户7的加密货币的支付数额(B2)。这可以包括:通过验证该值等于分集请求的数额乘以价格来验证输出值(例如表4的“输出1”中的输出值)是正确的值。
[0155] 验证(220)还可以包括:验证支付赎回脚本(RS1)基于分集秘密散列(Hi)和第二公钥(P2)。这可以通过将在接收到的支付交易(Ei)中的输出脚本(其基于赎回脚本)与分集秘密散列(Hi)和第二公钥(P2)的已知(或可推导)的值的对应散列进行比较得以实现。如果该比较示出输出脚本匹配具有正确的分集秘密散列(Hi)和第二公钥(P2)的预期赎回脚本,则第二节点17(和第二用户7)可以具有接收到的支付交易(Ei)的守信的置信度。
[0156] 虽然第二节点17可以签署支付交易(Ei)27并立即将其发送到区块链9,但是第二用户7没有动机这样做,直到随着第一用户5可以进一步请求更多数字内容分集而更接近朝向指定时间。
[0157] 在成功验证之后,第二节点17然后向第一节点15提供对所请求的分集的访问以及向第一节点提供下一分集秘密,以允许第一节点请求其他内容(作为下一分集)。
[0158] 确定下一分集秘密
[0159] 然后,第二节点17确定(221)用于数字内容连载中的下一分集i+1(其是待提供的分集(i)之后的分集)的下一分集秘密(Si+1),除非连载中不再有更多分集。这可以包括:从数据存储器18检索下一分集秘密(Si+1),或者生成新秘密。下一分集秘密(Si+1)用于确定下一分集秘密散列(Hi+1),如果第一用户5决定在将来对下一分集进行请求,则该散列(Hi+1)进而用在下一支付交易中。
[0160] 可以在第二节点提供对当前所请求数字内容分集的访问的同时将下一分集秘密(Si+1)提供给第一节点15。
[0161] 提供对数字内容的访问
[0162] 一旦已经验证支付交易(Ei),第二节点17就向第一节点15提供对数字内容分集的访问230。这可以通过多种方式得以实现。在一个示例中,第二节点17可以使用共享对称加密密钥(S)对数字内容分集进行加密,并且通过通信网络8将加密的数字内容分集发送到第一节点15。在另一示例中,第二节点可以在与内容服务器3相关联的数据存储器11处提供加密的数字内容分集,由此第一节点15可以在对于第一节点15合适的时间接收来自数据存储器11的加密的分集。在又一示例中,第二节点15可以提供分集特定的加密密钥,以对该分集进行解密。
[0163] 在一个示例中,所请求的数字内容分集(i)可以与下一分集秘密(Si+1)串接。然后可以使用共享对称加密密钥对串接进行加密,第二节点17然后提供对加密的串接的访问。
[0164] 然后,第二节点17可以通过通信网络8向第一节点15发送指示所请求的数字内容分集(i)可用于访问的通知。
[0165] 进而,第一节点15然后(例如,通过从数据存储器11下载或直接从第二节点17下载等)访问(140)加密的串接,并使用共享对称加密密钥对其进行解密。这样在第一节点15处提供数字内容分集(i)以及下一分集秘密(Si+1)。重要的是,这为第一用户提供用于消费的数字内容分集和用于获得下一分集的手段(即下一分集秘密(Si+1))。第一节点15可以存储(141)下一分集秘密(Si+1),以供稍后使用。
[0166] 应当理解,在一些替代方案中,下一分集秘密可以在其他时间从第二节点17发送(223)到第一节点15,并且不与数字内容分集串接。这可以包括:通过通信网络发送下一分集秘密(Si+1)作为单独的加密消息。
[0167] 请求下一分集
[0168] 如果第一用户5希望观看下一分集i+1,则第一节点15然后可以重复上述步骤:发送(110)对数字内容分集的请求;确定(120)下一支付交易;和签署(130)下一支付交易。这可以通过下一分集秘密(Si+1)和对应的确定的下一分集秘密散列(Hi+1)得以完成。进而,第二节点15将重复步骤:接收(210)请求和下一支付交易;验证(220)下一支付交易;以及提供对下一分集的访问(230)。
[0169] 可以重复上述步骤,直到第一节点15已经访问所有数字内容分集,或者当它接近或处于指定时间d天的超期。在这些情况下,第二节点15然后将执行以下步骤,以实现对第二用户7的支付。
[0170] 共同签署支付交易
[0171] 当第一节点15已经访问数字内容连载中的所有分集时,第二用户7将受激励以共同签署最新支付交易(Ei)27”,以接收支付,因为将没有其他支付交易27”。或者,如果指定时间的超期时段即将来临,则第二用户7将受激励,以共同签署最新支付交易(Ei)27”,因为第一用户5将不太可能将进行任何其他请求。更重要的是,支付交易(Ei)必须在指定时间之前受共同签署并发送到区块链9,以确保其在第二交易(退款交易)有效之前受记录。
[0172] 因此,方法200包括:第二节点17使用第二私钥(V2)共同签署(240)最新支付交易(Ei)27”,并将共同签署的支付交易发送到区块链9。
[0173] 当第二用户7希望花费加密货币的支付数额(B2)时,第二节点17将通过签署表5中所示的赎回脚本通过使用第二用户私钥(V2)和在支付交易(Ei)中对应于分集秘密散列(Hi)的分集秘密(Si)进行签署来解锁交易。将在下面的表6中的解锁脚本中示出该情况。请注意,表5中所示格式中的赎回脚本可以由第二节点17基于第二用户公钥(P2)和分集秘密(Si)确定,其中,分集秘密(Si)用于推导分集秘密散列(Hi)。
[0174] 表6:第二用户花费加密货币的支付数额
[0175]
[0176] 变型
[0177] 本领域技术人员将理解,在不脱离本公开的广泛的一般范围的情况下,可以对上述实施例进行多种变型和/或修改。因此,本发明的实施例在所有方面都被认为是说明性的而非限制性的。
[0178] 在一个示例变型中,每个支付交易(Ei)均自身可以在其有效之前具有相应支付指定时间。例如,支付指定时间可以是第二交易(即,退款交易)的指定时间(例如,d天)之前的时间(例如,d-1天),使得支付交易(Εi)在第二交易之前是有效交易。
[0179] 因此,在该变型中,第二节点17在验证支付交易时可以立即共同签署支付交易(Tx)并将其发送到区块链9。
[0180] 对于随后支付交易,这些随后支付交易具有早于前一支付交易的指定时间(例如,d-1天)的相应指定时间(例如,d-2天)。因此,随后支付交易一旦共同签署并发送到区块链9就将超过较早支付交易和第二(退款)交易超前并且是有效的。这种变型的优点在于,如果第二节点17在接近第二(退款)交易的指定时间之时失败,则第二用户7仍将接收支付,因为支付交易已经被共同签署并且发送到区块链9。
[0181] 基于共享公共秘密的共享对称密钥
[0182] 现在描述在两个节点之间生成公共秘密的方法。公共秘密可用在生成加密密钥中。
[0183] 确定公共秘密
[0184] 该方法允许在两个节点之间生成公共秘密,而不需要将公共秘密发送到任一个节点和/或从任一个节点发送。每个节点均具有相应非对称密码对(例如椭圆曲线密码对),每对均包括主私钥和主公钥。例如,第一节点可以具有主私钥(V1P)和主公钥(P1P),第二节点可以具有主私钥(V1E)和主公钥(P1E)。可以基于主私钥、主公钥和生成器值来确定每个节点的相应第二私钥和公钥。生成器值(或用于推导生成器值的消息)被传送到节点和/或从节点传送。
[0185] 可以基于第二私钥和公钥在每个节点处确定公共秘密。现在将描述确定第一节点与第二节点之间的公共秘密的示例。第一节点和第二节点二者确定对这两个节点公共的生成器值。生成器值可以由消息接收或者从消息推导。
[0186] 在第一节点处,公共秘密(CS)基于:
[0187] (i)基于第一节点主私钥(V1P)和发生器值(GV)的第一节点第二私钥(V2P);和[0188] (ii)基于第二节点主公钥(P1E)和发生器值(GV)的第二节点第二公钥(P2E)。
[0189] 在第二节点处,可以基于以下项来确定相同的公共秘密(CS):
[0190] (iii)基于第一节点主公钥(P1P)和发生器值(GV)的第一节点第二公钥(P2P);和[0191] (iv)基于第二节点主私钥(V2E)和发生器值(GV)的第二节点第二私钥(V2E)。
[0192] 因此,公共秘密是:
[0193] 公共秘密(CS)=(V2PxP2E)=(P2PxV2E)
[0194] 安全地传输信息
[0195] 可以使用公共秘密来加密用于安全传输的信息。例如,对称密钥可以基于公共秘密。由于两个节点均具有相同的公共秘密,因此它们可以确定相同的对称密钥,该对称密钥可以用于对在两个节点之间(例如,通过不安全的网络)传输的信息进行加密和解密。
[0196] 处理设备
[0197] 如上所述,第一用户5和第二用户7与相应第一节点15和第二节点17相关联。第一节点15和第二节点17可以是电子设备,诸如计算机、平板计算机、移动通信设备,计算机服务器、计算机终端等等。该电子设备可以包括处理设备,因此,第一节点15具有第一处理设备23,第二节点17具有第二处理设备23”。电子设备也可以与数据存储器11、18和用户接口相关联。用户接口的示例包括键盘鼠标、监视器、触摸屏显示器等。区块链9还可以与多个处理设备19相关联。
[0198] 图6示出处理设备19、23的示例。处理设备19、23包括经由总线1530彼此通信的处理器1510、存储器1520和接口设备1540。存储器1520存储用于实现上述方法100、200的指令和数据,并且处理器1510执行来自存储器1520指令(诸如计算机程序)以实现方法100、200。接口设备1540可以包括通信模块,该通信模块促进与通信网络8以及在一些示例中与用户接口和诸如数据存储器11、18的外围设备的通信。应当注意,尽管处理设备1510可以是独立的网络元件,但是处理设备1510也可以是另一网络元件的一部分。此外,由处理设备19、23执行的一些功能可以分布在多个网络元件之间。例如,第一用户5可以与多个处理设备23(例如第一用户的移动通信设备,平板计算机,台式计算机,家庭媒体播放器,电视等等的处理设备)相关联,并且方法100的步骤可以跨越多于一个的这些设备得以执行和分发。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈