CN107113179A - 用于通信验证的多重编码 - Google Patents

用于通信验证的多重编码 Download PDF

Info

Publication number
CN107113179A
CN107113179A CN201580072587.XA CN201580072587A CN107113179A CN 107113179 A CN107113179 A CN 107113179A CN 201580072587 A CN201580072587 A CN 201580072587A CN 107113179 A CN107113179 A CN 107113179A
Authority
CN
China
Prior art keywords
message
argument
key
multiple encoding
knowledge
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201580072587.XA
Other languages
English (en)
Other versions
CN107113179B (zh
Inventor
亚伦.吉利
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Publication of CN107113179A publication Critical patent/CN107113179A/zh
Application granted granted Critical
Publication of CN107113179B publication Critical patent/CN107113179B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/061Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

提供至少一个共享通信信道上的发送者与接收者之间的可验证的安全通信。多重编码的密钥编码器对所述至少一个共享通信信道产生用于秘密密钥的知识变元,并且多重编码的消息编码器提供指示所述秘密密钥的知识能够存取所述多重编码的消息的消息内容的隐式变元。在用于多重编码的密钥内的所述秘密密钥的密钥清单中包括所述知识变元,并且在多重编码的消息的消息清单中包括所述隐式变元。以此方式,发送者可以提供多重编码的消息内的消息内容,并且接收者可以操作解码器以存取所述消息内容。验证器可以使用所述多重编码的密钥和所述多重编码的消息,以验证所述接收者具有对消息内容的存取。

Description

用于通信验证的多重编码
相关申请的交叉引用
该申请是题为“Manicoding For Communication Verification”的2014年11月12日提交的美国申请No.14/539,181的继续,其公开通过其完整引用合并到此。
技术领域
该描述涉及安全通信。
背景技术
存在用于保障交换个人通信的两个或更多个实体之间的这些通信的传统***和技术。具体地说,在数字通信领域,一般高度可能的是,通信可能潜在地被拦截或另外被并非是其所意图的接收方的接收方非法地获得。这些消息必须因此受保障,从而非意图的接收方将不能探测或改动其中所包含的消息内容。
例如,可以通过尝试确保仅所意图的接收方将能够对消息进行解码并且获得其中的消息内容的方式对于待从发送实体发送到接收实体的消息进行编码。因此,即使以对非意图的接收方可存取的方式发送(例如,通过公共互联网发送)所编码的消息,非意图的接收方也将不能够获得或改动正传递的实际消息内容。用于实现公钥/私钥加密的很多已知的技术提供这些情形的特定示例,并且其它示例也是已知的。
然而,在很多情形中,第三方难以或不可能验证这些安全通信的成功完成或其各方面。因此,在这种第三方验证将是必须或有帮助的情形中,不期望的等级的成本和努力一定扩大,或期望的验证可能必须被完全放弃,或可能并非足够可靠。在这些情形中,于是,利润和效率可能减少,并且存储器安全性可能受危及。
发明内容
根据一个普通方面,一种计算机程序产品,包括指令,其记录在非瞬时计算机可读存储介质上,并且当由至少一个处理器执行时被配置为使得所述至少一个处理器:从至少一个共享通信信道接收多重编码的密钥,所述多重编码的密钥包括用于秘密密钥的密钥清单,所述密钥清单提供用于所述秘密密钥的知识变元。所述指令当由所述至少一个处理器执行时进一步使得所述至少一个处理器:从所述至少一个共享通信信道接收多重编码的消息,所述多重编码的消息包括用于所述秘密密钥的消息清单,所述消息清单包括指示所述秘密密钥的知识能够存取所述多重编码的消息的消息内容的隐式变元;以及比较所述密钥清单和所述消息清单,以建立所述秘密密钥和所述多重编码的消息的拥有者具有对所述消息内容的存取。
根据另一普通方面,一种方法,包括:从至少一个共享通信信道接收多重编码的密钥,所述多重编码的密钥包括用于秘密密钥的密钥清单,所述密钥清单提供用于所述秘密密钥的知识变元。所述方法包括:从所述至少一个共享通信信道接收多重编码的消息,所述多重编码的消息包括用于所述秘密密钥的消息清单,所述消息清单包括指示所述秘密密钥的知识能够存取所述多重编码的消息的消息内容的隐式变元。所述方法还包括:比较所述密钥清单和所述消息清单,以建立所述秘密密钥和所述多重编码的消息的拥有者具有对所述消息内容的存取。
根据另一普通方面,一种验证器***,包括存储在非瞬时计算机可读存储介质中并且可由至少一个处理器执行的指令。所述验证器***包括:密钥清单解释器,被配置为:使得所述至少一个处理器从至少一个共享通信信道接收多重编码的密钥,所述多重编码的密钥包括用于秘密密钥的密钥清单,所述密钥清单提供用于所述秘密密钥的知识变元。所述验证器***包括:消息清单解释器,被配置为:使得所述至少一个处理器从所述至少一个共享通信信道接收多重编码的消息,所述多重编码的消息包括用于所述秘密密钥的消息清单,所述消息清单包括指示所述秘密密钥的知识能够存取所述多重编码的消息的消息内容的隐式变元。所述验证器***还包括:清单比较器,被配置为:使得所述至少一个处理器比较所述密钥清单和所述消息清单,以建立所述秘密密钥和所述多重编码的消息的拥有者具有对所述消息内容的存取。
在附图和以下描述中阐述一个或多个实现方式的细节。其它特征从描述和附图以及权利要求将是清楚的。
附图说明
图1是用于关于通信验证的多重编码的***的框图。
图2是示出图1的***的示例操作的流程图。
图3是示出图1的***的第一示例实施例的示意图。
图4是示出图3的第一示例实现方式的示意图。
图5是示出图3的第二示例实现方式的示意图。
图6是示出包括图4和图5的示例实现方式的图3的第三示例实现方式的示意图。
图7是示出将用于构造知识变元的交互式技术变换为非交互式技术的流程图。
图8是示出使用图7的技术的图1的多重编码的消息编码器的示例实现方式的框图。
图9是示出使用图7和图8的技术的图1的验证器的示例实现方式的框图。
图10是表示图1的***的纠缠通信的知识图的框图。
图11是与图10的示例对应的流程图。
图12是示出使用图1的***中的时间变元的依赖性图的框图。
图13是与图12的示例对应的流程图。
图14是用于图1的***中所使用的知识令牌的生命周期图的框图。
图15是示出图14的知识令牌的示例实现方式的流程图。
具体实施方式
图1是用于关于通信验证的多重编码的***100的框图。在***100中,验证器102被配置为:利用共享信道104,以利用多重编码的密钥编码器110提供用于多重编码的消息编码器106与接收方108之间的通信的去中心化验证。如以下详细描述的那样,这些可验证的通信在多种情形中提供优点,包括例如:限制或消除接收方108拒绝接收通信(或其内容的知识)的能力,促进涉及数字货物的贸易,提供正传递的精确/真实信息的确证,提供可超控的联系人的验证(例如意愿),使得可验证的拍卖成为可能,以及使得各方权限的行使能够被遗忘。此外,在此所描述的验证技术可以通过去中心化的方式得以操作,实际上可由希望获得验证的任何实体容易地实现,并且无需使用受信第三方。***100以及有关***的这些和各种其它使用以及优点在以下详细描述,或从以下描述将变得清楚。
在以下描述内,术语“多重编码”、“多重编码的”、“进行多重编码”及其变形通常应理解为指代用于消息知识112的编码/解码技术,其中,这些技术涉及使用对共享信道104公开的至少两个清单(例如图1的消息清单126和密钥清单132,如以下详细描述的那样)。例如,这些清单可以由多重编码的消息编码器106和多重编码的密钥编码器110在共享信道104上提供,并且可以由验证器102组合地利用,以提供恰所引用的并且在此详细描述的类型的通信验证。应理解,为了清楚和一致性而使用这些术语,但可以使用适当的术语描述相同或相似概念。
为了图1的示例的目的而假设多重编码的消息编码器106具有对于待以安全可验证的方式提供给接收方108的消息知识112的存取。因此,多重编码的消息编码器106可以理解为对消息知识112进行编码(例如,对其消息内容进行编码)。在很多实施例中,消息知识112可以表示待编码的特定消息,并且消息知识112可以因此在此称为消息112。在其它实施例中,消息知识112可以表示部分消息或与待编码的消息内容有关的某其它方面,例如,从而在各方106、108、110之间交互式地创建消息内容。在一些实施例中,多重编码的消息编码器106可以对与下级源消息内容有关的消息内容进行编码。也就是说,在很多情况下,正编码的消息内容可以与源消息内容相同,但在其它示例中,源消息内容(例如初始消息)与编码器106实际上所编码以用于由解码器114解码的消息内容之间可以存在不同的关系。例如,多重编码的消息编码器106可以执行源消息内容的盲编码,例如,可以没有源消息内容的完整知识或对源消息内容的存取,并且另外可以将具有某种预定关系的消息内容编码为源消息内容。更具体地说,例如,如下所述,例如,关于图14和图15,随后消息拥有者可以对于初始消息拥有者的源消息内容执行该盲签名。
接收方108如所示包括可操作为对所编码的消息112进行解码的解码器114。这种自身进行的消息编码/解码的特定示例是公知的。然而,在必要或有助于理解***100的操作的情况下,在此提供其多个示例。当然,应理解,这些示例编码/解码技术并非专有或限制,并且可以使用用于执行这种消息编码/解码的很多其它已知的或未来的技术,如从本描述将清楚的那样。
在图1的示例中,编码器106、110和接收方108中的每一个示出为具有对与用于使得在此所描述的安全的可验证的通信成为可能所使用的至少一个秘密密钥有关的秘密密钥知识的存取。具体地说,如所示,多重编码的消息编码器106具有对秘密密钥知识116的存取,接收方108具有对秘密密钥知识118的存取,并且多重编码的密钥编码器110具有对秘密密钥知识120的存取。
在若干示例实施例中,秘密密钥知识116、118、120可以均表示对于所有编码器106、110和接收方108完全可用的秘密密钥。然而,在其它示例实施例中,可能产生的是,接收方108的秘密密钥知识118表示仅对于接收方108已知的秘密密钥,而秘密密钥知识116、120表示该秘密密钥的部分知识或不完整知识。在又其它示例实施例中,可能产生的是,编码器106、110和接收方108皆没有秘密密钥的完整知识,并且另外,在各方106、108、110之间交互式地创建秘密密钥,而无需它们中的任一具有其完整知识。
很多这些各个实施例在以下得以详细描述,或对于本领域技术人员将是清楚的。为了本描述的目的,并且基于前面的解释,应理解,描述为“基于秘密密钥”或“使用秘密密钥”或相似短语的***100的任何操作应理解为任何特定实体基于一个或多个这些秘密密钥的完整的知识、不完整的知识或有关的知识直接或间接使用它们。
此外,在各个实现方式中,如在此所描述的那样,消息知识112可以用作或用于提供仅所指代的类型的秘密密钥。反之,在一些实现方式中,该秘密密钥可以作为包括消息内容而得以发送。例如,使用第一秘密密钥所编码的消息可以充当用于随后第二消息的第二秘密密钥。因此,可以理解,在很多实施例中,在消息知识112与秘密密钥知识116、118、120之间可以鲜有或没有技术差别;此外,消息知识112和秘密密钥知识116、118、120可以主要不同在于均由编码器106、110、解码器114和验证器102(例如解释器136、138之一或二者)使用/解释的方式。
此外,在图1的示例中,共享信道104可以实际上表示所有实体/模块102、106、108、110可接入的任何通信信道。例如,共享信道104可以表示公共可用的通信介质(例如公共互联网(例如其上的特定域))。相似地,共享信道104可以表示仅对所授权的各方可接入的公共互联网上的安全信道(例如虚拟私有网络或VPN)。在其它示例中,共享信道104可以表示私有网络(例如私有局域网(LAN)或私有广域网(WAN))。共享信道104可以包括或表示各实体/模块102、104、106、108(以及其它所授权的各方)之间的硬有线连接。
实际上,于是,共享信道104可以实际上表示可以由各实体/模块102、106、108、110中的任一使用以公布、公开或提供信息从而关于其任何其余实体/模块对该信息进行读取并且使用而可存取的任何有线或无线通信介质。在一些实现方式中,共享信道104应理解为表示两个或更多个这些信道,并且在以下提供这些实现方式的示例。用于与这(些)共享信道或在其之间交换信息的技术通常是公知的。因此,虽然为了说明和理解的缘故在以下引用这些技术的各个示例,但应理解,这些示例既非专有也非限制。
多重编码的消息编码器106可以因此实际上表示或包括可以连接到共享信道104的任何终端(以及关联硬件/软件)。如已经所引用的那样,多重编码的消息编码器106可以被配置为:例如,基于秘密密钥知识116提供关于消息112的各种类型的编码,以由此获得多重编码的消息124。
多重编码的消息编码器106还示出为包括消息清单生成器122,其如上所述被配置为:提供清单126,其包括于多重编码的消息124中或另外与之关联,并且基于用于秘密密钥知识116的秘密密钥的消息。如在此详细描述的那样,消息清单生成器122基于秘密密钥知识116创建消息清单126,并且在其它特征和功能当中,促进验证器102的验证操作。
具体地说,多重编码的密钥编码器110被配置为提供多重编码的密钥130,并且包括密钥清单生成器128,其被配置为提供包括于或多重编码的密钥130中另外与之关联而且基于用于秘密密钥知识120的秘密密钥的密钥清单132。如以下详细描述的那样,多重编码的密钥130结合密钥清单132提供秘密密钥的拥有者或处理器能够对多重编码的消息124进行解码并且由此获得消息112的消息内容的知识变元(或特定关联秘密密钥知识)。
换言之,例如,当多重编码的密钥130和多重编码的消息124(例如在相同时间或在不同时间)都出现在共享信道104上时,结果是:验证器102能够验证拥有多重编码的消息124并且拥有秘密密钥知识118的任何接收方(例如接收方108,如所示)具有用于对多重编码的消息进行解码并且得到消息112的消息内容的拥有性的能力。此外,验证器102可以因此验证接收方108具有对该消息内容的存取,并且接收方108失去用于拒绝具有该存取的能力。此外,作为该验证的结果,实现验证器102的一个或多个实体可以认为一致地更新其信任,从而验证器102的操作因此可以看作这些实体之间的信任同步的处理。
例如,多重编码的消息编码器106的提供者可能希望以特定文档(例如法律公告(例如法庭庭谕))服务于接收方108。多重编码的消息编码器106可以因此对共享信道104公开具有消息清单126的多重编码的消息124。如果多重编码的密钥130和密钥清单132也出现在共享信道104上并且与(以下详细描述的)接收方108的身份关联,则验证器102可以验证接收方108具有不仅用于接收法律公告而且还用于对其内容进行解码并且因此进行处理的能力。在这些示例中,如上所述并且如下所述,多重编码的密钥编码器110可以由多重编码的消息编码器106、接收方108(例如,在接收方108具有法律义务或商业义务以进行该操作的情况下)或分离的实体实现。
在以上示例中,如所引用的那样,假设接收方108的身份是已知的。通常,如下所述,该身份信息可以包括于密钥清单132内或与之关联。在其它示例中,可以分离地提供接收方身份信息,或在又其它示例中,可以产生这样的情况:不提供该身份信息。在后者示例中,验证器102可以利用多重编码的密钥130和多重编码的消息124,以验证:即使该接收方实体可能并非同时唯一地或单独地得以标识,或可能在此时甚至不存在,具有对共享信道104的存取并且拥有秘密密钥知识118的任何实体也将具有对消息112的消息内容的存取。
例如,该接收方实体在多重编码的密钥130和多重编码的消息124都已经公布给共享信道104之时可能没有秘密密钥知识118的拥有性,但可以在稍后时间得到拥有性。相似地,在多重编码的密钥130和多重编码的消息124都已经公布给共享信道104之时,该接收方实体可以具有秘密密钥知识118的拥有性,但可能尚未展现或辩解该知识。因此,图1的接收方108通常应理解为表示所有这些潜在接收方实体(例如未标识的、未知的、尚不存在的和/或尚不拥有秘密密钥知识118的)。
在一些实现方式中,密钥清单132和/或消息清单126可以用于传送多重编码的密钥130和/或多重编码的消息124的附加性质。例如,清单132、126之一或二者可以用于提供消息112的性质、特性、部分或元数据,而不披露消息112的实际消息内容。贯穿本描述,“不披露”一些秘密、机密或受保护的知识的意义是关于秘密、机密或受保护的知识不披露超越对应清单所传送的内容的信息(或披露可忽略的或没有用的信息)。
以此方式,除了接收方108验证消息内容的知识之外,验证器102也可以验证消息内容的各方面,而无需实际上得到其拥有性。例如,实现多重编码的消息编码器106的实体可能希望将数字照片或其它数字元素销售给接收方108,并且可能希望能够验证该交易(及其各方面),而不对验证器102披露图像的内容。以此方式,销售实体可以保留数字图像或其它内容的权限,以用于其未来销售,而任何验证实体可以仍验证已经销售的图像/内容是有效的、完整的和/或正宗的。
相似地,清单126和/或132可以用于通过共享信道104的方式提供与多重编码的密钥130、多重编码的消息124或它们的通信的其它方面有关的特性或元数据。例如,清单132、126之一或二者可以包括用于对多重编码的消息124进行编码的安全性技术的表征,例如,从而支持消息内容是足够安全的变元。使用清单132、126的其它示例在以下得以提供,或将是足够的。
在操作中,验证器102执行所包括信道监视器134,其被配置为:监控共享信道104并且从其获得多重编码的密钥和多重编码的消息。信道监视器134的性质将通常取决于共享信道104的对应性质,但通常,应理解,信道监视器134能够执行共享信道104的主动监控和被动监控以及将(可能重叠的)成对的多重编码的密钥/消息进行相关所需的任何匹配或对应操作。在后者情况下,例如,这些匹配操作可以包括:将充当用于第二消息的秘密密钥的消息与该第二消息进行匹配。因此,在任何给定的密钥或消息可以参与多于一个的匹配操作的意义上,匹配成对的多重编码的密钥/消息(以及关联清单)可以重叠。
此外,从各个实现方式应进一步理解,在很多情况下,提供编码器106、110和接收方108的一些或所有实体将感兴趣于促进验证器102的这些匹配操作。也就是说,各个实体将通常期望使得信道监视器134能够从共享信道上可用的潜在大量的这些多重编码的密钥/消息当中获得/检测匹配多重编码的密钥和多重编码的消息。
例如,参照以上情形,服务于法律公告的一方将希望能够验证法律公告已经得以服务,并且销售数字货物的一方将希望能够验证正宗货物已经得以销售并且传送。因此,这些各方可以主动地将多重编码的密钥130和多重编码的消息124(或其通知)发送到验证器102。在其它情形中,信道监视器134可以在预定时间或响应于所定义的事件而前摄性地监控共享信道104。在所有这些情况下,假设多重编码的密钥130和多重编码的消息124与使得能够进行其匹配的标识符关联。
此后,密钥清单解释器136可以被配置为:处理密钥清单132,并且从其获得上述类型的信息。相似地,消息清单解释器138可以同样被配置为:处理消息清单126,并且从其获得上述类型的信息。然后,清单比较器140可以被配置为:匹配或另外比较所解释的信息并且确定拥有秘密密钥知识118的任何接收方108(其可能在清单126、132内得以标识或不标识为如此,如所描述的那样)将具有消息112的消息内容的知识或另外具有对其的存取。也恰如所描述的那样,清单解释器136、138可以提供其中所包含的任何附加信息(例如接收方108的身份、消息内容或消息112的特性、对消息112进行编码/解码中所使用的安全性技术、或在此描述其一些类型的其它附加信息)。
使用已经描述的特征和功能的变形和/或对其的补充,除了以上所引用的之外,可以关于***100实现很多不同的实现方式和使用情形(及其各方面)。例如,在一些情形中,多重编码的消息124可以比多重编码的密钥130在时间上更早地得以公布,从而多重编码的消息124可以视为对发送消息112的承诺。然后,(即,通过实现多重编码的密钥编码器110)公布多重编码的密钥130的接收方108有效地确认接收消息112并且对其进行解码。反之,在接收方108在公布多重编码的消息124之前的时间点公布多重编码的密钥130的情形中,接收方108对接收多重编码的消息编码器106可以公布给共享信道104的任何匹配多重编码的消息124并且对其进行解码而且在稍后时间确认进行承诺。因此,知识变元提供其提供者成为多重编码的消息的接收方的承诺,并且多重编码的消息提供多重编码的消息已经得以提供给接收方的确认。从操作多重编码的消息编码器106的发送实体的观点来看,如果多重编码的密钥130在秘密密钥知识之前到来,则可以认为发送实体已经获得接收方108对接收将跟随的任何匹配多重编码的消息的承诺。
此外,可以观测到,多重编码的消息编码器106、多重编码的密钥编码器110和接收方108示出为分离的模块。在各个实现方式中,从以上描述可以理解,可以产生这样的情况:每个模块表示独特的单独实体。在其它实现方式中,单个实体可以提供编码器106、110二者。在又其它实现方式中,单个实体可以提供多重编码的密钥编码器110和接收方108二者。相似地,虽然分离地示出验证器102,但可以与编码器106、110和/或接收方108中的一个或多个组合而实现验证器102自身。各个实现方式及其关联使用和功能性提供如下,或将是清楚的。
例如,如下所述,可以利用图1的***100以执行纠缠通信,其中,两个或更多个通信一起成功或失败。在其它示例中,身份信息可以包括于例如密钥清单132中,从而例如与之结合而进行的承诺或确认可以绑定到唯一实体。在有关实施例中,可以实现衰落变元,其随着时间侵蚀恰所引用的身份信息的类型,从而该身份信息最终丢失和/或不再绑定到所讨论的消息(由此支持例如“马上遗忘”情形)。以下更详细地讨论这些和各种其它示例使用情形。
于在此所描述的这些情形中,称为“变元”的所有要素应理解为潜在地包括于消息清单126和/或密钥清单132之一或二者中。也就是说,在各个示例中,清单126、132应理解为表示或包括分别附连到多重编码的消息124和多重编码的密钥130或随之所包括的信息。该信息可以包括多个变元(例如知识的变元)作为清单126、132上的项。例如,如在此所描述的那样,这些变元可以包括与身份、时间信息、有关消息或密钥、有关信道、(例如用于建立消息知识和/或拥有权的)知识令牌或正使用的安全性技术的类型有关的变元。因此,在以下描述中,即使在给定的示例中并未明确地描述为如此,所有这些变元也应理解为潜在地包括于清单126、132中的对应清单中。
此外,在图1中,验证器102示出为使用至少一个处理器102a和非瞬时计算机可读存储介质102b执行。也就是说,图1示出验证器102表示专用计算机,其中,至少一个处理器102a执行介质102b上所存储的指令,以实现验证器102的各个方面,包括图1的示例中并未明确示出的方面。
当然,应理解,可以使用处理器以及关联非瞬时计算机可读存储介质实现任何编码器106、110和接收方108。为了清楚和简明,在图1的简化示例中并未明确示出它们。相似地,应理解,例如用于网络通信、人机输入/输出、功耗以及其它标准计算机有关特征和功能性的各种硬件和软件组件可以用于实现图1的***100的任何各个元件,如对于本领域技术人员将清楚的那样。
图2是示出图1的***的示例操作的流程图。在图2的示例中,操作202-206示出为分离的顺序操作。然而,在各个实现方式中,可以包括附加或替选操作,和/或可以省略一个或多个操作。在各个实现方式中,可以通过部分地或完全地重叠或并行方式或通过嵌套、迭代、循环或分支方式执行两个或更多个操作或部分操作。
在图2中,从至少一个共享通信信道接收多重编码的密钥,多重编码的密钥包括用于秘密密钥的密钥清单,密钥清单提供用于秘密密钥的知识变元(202)。例如,关于图1,密钥清单解释器136可以在共享信道104上通过信道监视器134的方式接收多重编码的密钥130的通知。在一些实施例中,信道监视器134可以关于多重编码的密钥130主动地监控共享信道104。在其它实施例中,信道监视器134可以被动地接收多重编码的密钥130或其通知。例如,将多重编码的密钥130公布给共享信道104的实体(例如多重编码的密钥编码器110)可以将具有多重编码的密钥130的消息发送到验证器102,或通知验证器102检查共享信道104。信道监视器134的附加或替选示例操作在以下得以描述,或对于本领域技术人员将是清楚的。
如在此所描述的那样,多重编码的密钥130表示与秘密密钥知识116、118、120关联的秘密密钥的知识变元。更具体地说,密钥清单132包括基于秘密密钥所计算的在此称为“S”或“类型S变元”的项。该计算明确允许例如与对应于秘密密钥的公钥结合而使用S的验证处理确定能够构造S的任何实体也拥有秘密密钥(或另外具有秘密密钥的足够知识)。在此描述用于构造S的各种技术。因此,在实现方式中,假设密钥清单解释器136获知使用哪种该技术以构造S或具有用于获知使用哪种该技术以构造S的能力。于是,密钥清单解释器136可以被配置为:利用适当的对应验证处理(例如,获得必要公钥)以验证例如能够构造S并且也拥有多重编码的消息124的任何实体具有用于获得多重编码的消息124的消息内容的能力。
可以从至少一个共享通信信道接收多重编码的消息,多重编码的消息包括用于秘密密钥的消息清单,消息清单包括指示秘密密钥的知识能够存取多重编码的消息的消息内容的隐式变元(204)。例如,消息清单解释器138可以通过信道监视器134的方式接收多重编码的消息124和消息清单126。如在此所描述的那样,消息清单126可以包括在此称为“T”或“类型T变元”的项,其是构造为指示秘密密钥的知识暗指用于对多重编码的消息124进行解码并且获得消息112的消息内容的能力的隐式变元。至于S,在此提供用于构造T的技术。
如在此所描述的那样,消息112的消息内容可以与下级源消息内容相同。然而,在一些示例中,在多重编码的消息124的消息内容与下级源消息内容之间可能存在某种其它关系。例如,下级源消息内容可以具有另一安全性层,从而对多重编码的消息124进行解码仅提供要求与附加安全性措施的顺应性的对消息内容的存取,以存取下级源消息内容。
可以比较密钥清单和消息清单,以建立秘密密钥和多重编码的消息的拥有者具有对消息内容的存取(206)。例如,清单比较器140可以从解释器136、138接收所解释的结果,并且可以然后比较这些所解释的结果,以确定例如指示对消息内容的存取的匹配已经得以验证。应进一步理解,清单或其项可以与多于一个的其它清单或其项进行比较,潜在地产生多于一个的匹配。
当然,图2表示图1的***100的示例操作的高级视图,并且不应看作限制附加或替选实施例。例如,如上所述,可以产生:S和T一起或单独地放置在共享信道104上,并且在后者情况下,要么S要么T可以在另一个之前放置在共享信道上。
在其它示例中,在清单126、132中可以包括除了S和T之外还有附加项。例如,清单126、132之一或二者可以包括负责提供S和/或T的实体的(可能加密的)身份。在其它示例中,清单126、132之一或二者可以包括表征(不披露超越所指定的类型或程度的实际消息内容的)消息内容的信息和/或表征采取为防护消息内容的附加安全性措施的信息。如下所述,解释器136、138可以被配置为:解释或另外处理清单132、126内的所有这些项。
因此,使得多重编码的消息编码器106能够以可验证的方式发送消息112。当然,关于该可验证的传输的动机可以变化。例如,多重编码的消息编码器106可能需要展示所允诺的消息对为其进行支付的接收方108的传送,由此极大地减少纠纷的风险。如所描述的那样,虽然多重编码的消息编码器106在编码的处理中使用秘密密钥,但秘密密钥可能通常对于多重编码的消息编码器106并非可见,如秘密密钥知识116所表示的那样。
解码器114可以与希望以可验证的方式接收消息的接收方108的指标关联(图1中未明确示出如此)。至于信道监视器134,只要验证器102具有用于验证接收已经产生的能力,解码器114就可以通过主动方式或被动方式接收这些消息。此外,动机可以变化。在一个示例中,接收方108可能需要展现在传输中消息并未丢失,由此极大地减少纠纷的风险。
验证器102通常假设为由感兴趣于通信***的完整性的实体实现。在此,此外,动机可以变化。例如,在接收方108期望确保任何人可以验证达到其指标的任何消息的情况下,接收方108可以与解码器114结合而实现验证器102,由此极大地减少纠纷的风险。
图3是示出图1的***100的第一示例实施例的示意图。在图3中,假设通信用户设置秘密密钥sk(以充当图1中所使用的秘密密钥)和公钥pk,如设置302所表示的那样。秘密密钥sk和公钥pk无需一定是有关的。如上所述,在图3的加密实施例中,在密钥清单132中利用获知sk的加密变元S。可以在编码器304处通过以下操作将表示消息112的待传送的消息加密为加密文本:首先将消息编码到合适的集合G中的元素M中(如关于图6更详细地描述的那样,并且其中,术语“集合”包括各种结构,可能是加密的,包括乘法群组求模n、椭圆和超椭圆曲线以及很多其它结构),然后在G上构造加密变元T。如上所述,获知sk暗指获知M。T因此表示用于消息清单126的加密文本。在解码器308处通过首先使用T上的sk的知识以恢复M并且然后将M解码回来以获得消息内容将密码文本解密为消息内容。通过在验证器306处验证变元S和T二者获得M的通信的验证。如在此所描述的那样,该上下文中的M因此与多重编码的消息124的消息内容有关,其中,该消息内容与下级源消息内容有关,但可以与之不同。
在图3中,设置302产生G、pk、sk。给定G、pk、sk、M,表示图1的编码器106、110二者的编码器304产生变元S和T。给定G、pk、sk、T,解码器114恢复M。在示例实现方式中,给定G、pk、S、T,验证器306产生接受性比特b。在特定示例中,比特0表示拒绝关联变元,比特1表示接受关联变元。
设置302包括在没有显式输入的情况下并且以安全、随机(或伪随机,其贯穿本描述应理解为由术语“随机”涵盖)方式产生G、pk、sk的一个组件。从图1的描述可以理解,图4示出编码器304包括表示图1的编码器106、110的两个编码器402、404的实现方式。如所示,给定G、pk、sk而非M,编码器402产生S。给定G、pk、sk、M,编码器404产生T。在一些实现方式中,sk可以是与公钥pk对应的秘密密钥,但如在此所描述的那样,并非要求这种对应性。
如图5所示,图3的验证器306可以包括两个组件:与图1的解释器136、138对应的解释器502、504。给定G、pk、S而非T、sk、M,解释器502产生接受性比特b1,而给定G、pk、T而非S、sk、M,解释器504产生接受性比特b2。与图1的清单比较器140对应的比较器506产生最后的接受性比特b。在图5和图6中,比较器506可以操作为其各输入接受性比特的逻辑与,其中,括号表示依赖性,由于s[sk]、T[sk,M],因此比较器506需要用于相同sk的b1[sk]、b2[sk,M],并且输出b[M]。
使用在此所描述的处理确保M安全地从一个用户传递到另一用户,并且包括用于通信的第三方的任何用户可以验证M的通信已经产生。也就是说,可以验证求解特定声明的消息得以传递,其中,假设甚至通过变元S和T关于M难以求解声明。例如,可以利用公知的离散对数问题,以设置G上的形式y=gM的难以求解的声明,其中,y、g、G是已知的,但M不是。
通过如在此所描述的那样所构造S和T,使用S和T使得能够验证通信用户获知对声明的解M。因此,当产生变元S时,我们可以验证通信用户获知sk,并且当产生变元T时,我们可以验证通信用户获知求解声明的M,并且因此通过T传递该M。
在示例实施例中,仅如果变元S和T成功地验证,则产生它们。如下所述,编码器402、404可以通过任何顺序得以应用,并且例如具有初始地对于解码器308未知的sk。这样确保仅如果S和T二者并且因此通信可以得以验证则传递M。这些实施例因此提供用于可验证的通信的交易化(全有或全无)保证。
感兴趣于使用该***接收消息的通信用户执行解码器308。这些用户通过将G、pk、sk的知识应用于T以恢复M对消息进行解码。该处理的具体情况取决于实施例,并且因此在这些实施例的以下描述中更详细地得以描述。
使用在此所描述的处理确保(出于实际目的,例如,这是极度可能的)如果并且仅如果已经接受验证,则M的通信已经产生。换言之,在示例实现方式中,如果并且仅如果比较器506接受,则解码器308恢复M。因此,至少两个变元的组合用于构成可验证的通信。如果通信用户均做出获知M的分离变元,则对于这些用户而非通信验证M的知识。图1–图6的***因此提供通信的验证作为单个本原(primitive)。
在用于例如构造S和T的各个实施例的以下描述中,使用取决于正实现的实施例的标准技术执行设置302。每个实施例描述包括该处理的具体情况。
于在此所描述的实施例中,除非另外明确声明,否则待传送的消息通过其可能的填充式(在加密或非加密意义上)二进制形式以及对应数字M得以标识。如果M不大于给定实施例的集合G的基数,则M通过G的第M元素得以标识。否则,标准技术应用,包括:将***应用于消息的每个足够小的部分,以及关于数据封装使用混合加密***(其中,该***用于密钥封装)和标准对称加密***。如果M用在群生成式的幂中,并且M大于群的基数,则相同技术应用。
在特定实施例中,使用公知的消息。在此情况下,除非另外明确声明,否则相似地通过数字Q和G的第Q元素标识公知的消息。对于选取公知的消息,其它标准技术应用,包括:使用受信方以选取它。为了变元(具体地说,S)的安全性,例如通过将加密散列函数应用于包括pk的数据仅在设置部分完成之后以不可预测的方式选取公知的消息。除非另外声明,否则随机选取表示从集合通过均匀概率进行抽选,这从上下文得以理解。
每个实施例的描述详述用于图1-图5的各个***元素(即G、sk、pk、M、S、T)的显式实现方式。一起取得的S和T验证M的通信。对于每个实施例特定的其它元素也可以出现。对实施例给出的标记仅为了便于引用,而不应理解为以任何方式限制它们。
数学写法服从标准加密注记,除非注明。例如,可能大写或具有上标的字母表示变量,从而A、A′、A″、a、a′、a″是不同的。通常,小写字母表示数字或集合元素,并且大写字母表示对象。pk和sk(可能地,元组)分别表示公钥和秘密密钥。下标表示索引,其为变量注记的部分。上标表示幂指数。大括号表示集合描述。中括号表示索引或依赖性,如从上下文将理解的那样。具有逗号的小括号表示元素或函数应用,如从上下文将理解的那样。同时,mod n表示算术求模n。另外,符号具有标准数学解释。
在用于构造S和/或T的第一示例实施例中,可以结合RSA加密***使用Schnorr协议。在示例中,用户A(例如图1中的接收方108,其中,如所描述的那样,接收方可以表示一个或多个接收方)可能希望从用户B(例如图1的多重编码的消息编码器106,其中,再次,在发送所讨论的消息中,可以涉及一个或多个实体)接收消息。用户A首先构造RSA秘密密钥(d,n)、对应公钥(e,n)以及乘法群求模n的子群的随机生成式g,以用于e、d、n、g的合适选取。一个公知的示例选取是n=pq,p=2p′+1,q=2q′+1,其中,p、q是质数,p′、q′是足够大独特随机质数,并且g=x2mod n,其中,x是满足gcd(x±1,n)=1的随机数,其中,gcd是最大公约数函数。对于该选取,g所生成的子群的乘法阶数o已知为等于p′q′。在该实施例中,可以从(d,n)确定子群的阶数o。
然后,用户A对用户B开放式地传递(e,n,g),并且(例如使用传统加密通信***)安全地传递d。这样建立pk=(e,n,g)作为公钥、sk=d作为用户A和用户B二者共享的秘密密钥,并且乘法群求模n作为集合G。更详细地说,对于RSA,sk还包括p、q,因为可以从它们和pk推导d。如果可应用,则可以从其它变量(例如p′、q′)推导d。在各个实施例中,和/或在此为了描述,可以抑制在sk中包括这些变量。于是,用户A产生获知sk的变元作为Q的签名S,其中,S=Qd mod n。通过检查Se=Q mod n验证变元。
希望将消息M传递到用户A的用户B产生变元T,由此获知sk暗指如下获知M。给定质询c∈C[l],用户B传递(t,y,s,其中,t=gd mod n,y=gM mod n,s=d+cM mod o。在该上下文中,对通信用户的质询c包括所指定的集合中的、该用户并未选取或可行地可预测的、从可能的随机数据推导的并且由用户或第三方提供的元素。该定义包括计算为应用于数据的加密散列函数的质询。集合C[l]一般用于质询,其中,C[l]是足够大的范围的大整数,其设计为确保从其选取的质询有效地将足够的随机性引入到质询出现的公式中。C[l]可以对于某k>log2(l)设置为具有最先1个比特后接k个比特的整数的范围,并且(除非另外声明,否则)l可以如果质询提供方获知o则设置为群阶o,否则另外设置为获知为远高于o的数字。该数字可以典型地是确定的。例如,对于RSA,在公共参数n的情况下,可以设置l=n。在以下所描述的一些实施例中,c是反转求模o,并且对于良好定义的该反转,c必须与o互质。c与o不互质的概率是相当小的,可与因式分解o或简单地通过猜测秘密参数破坏加密***的概率相当。通过检查te=g mod n以及gs=tyc mod n验证变元。用户A将M恢复为(s-d)/c mod o。
在用于构造S和/或T的第二示例实施例中,可以使用盲Schnorr/RSA技术。该实施例是以上实施例的修改,其中,用户A(例如接收方108)构造e、d、n、g一次,并且可以在多个消息的通信中重复使用它们,而加密安全性保持相似。该操作使用类似盲化的技术得以完成(并且可以用在RSA用于构造S的其它实施例中),如下所述。
在示例中,用户A相似地设置e、d、n、g。此外,用户A随机地选取j,r∈C[l],并且传递(u,q,a,b),其中,u=gj mod n,q=Qj mod n,a=gr mod n,b=Qr mod n。给定质询c′∈C[l],用户A传递z,其中,z=r+c′j。这是相同指数j出现在u和q的形式中的变元。通过检查gz=auc′mod n以及Qz=bqc′mod n验证变元。
用户A将k安全地传递到用户B,其中,k=d+j mod o。这样建立pk=(e,n,g,u,q)作为公钥,并且sk=k作为用户A和用户B二者共享的秘密密钥,并且乘法群求模n作为集合G。用户A产生获知sk的变元作为Q的签名S,其中,S=Qk mod n。通过检查Se=Qqe mod n验证变元。希望将消息M传递到用户A的用户B产生变元T,由此获知sk暗指如下获知M。给定质询c∈C[l],用户B传递(t,y,s),其中,t=gk mod n,y=gM mod n,s=d+cM mod o。通过检查te=gue mod n以及gs=tyc mod n验证变元。用户A将M恢复为(s-k)/c mod o。
在用于构造S和/或T的第三示例实施例中,可以使用代表性Schnorr/RSA技术。在该实施例中,第一示例实施例的修改(即,其中,以上第一Schnorr/RSA实施例),但其中,用户B使用用户A的秘密密钥产生S,仿佛其被代表。更一般地,该技术也应用于用户A和用户B共享sk的其它实施例。
在示例中,用户A相似地设置e、d、n、g。用户A相似地对用户B开放式地传递(e,n,g)并且安全地传递d,相似地建立pk=(e,n,g),sk=d以及G。用户B相似地产生获知sk的变元作为Q的签名S。希望将消息M传递到用户A的用户B相似地产生变元T。用户A相似地恢复M。
在用于构造S和/或T的第四示例实施例中,实现(使用盲Schnorr/RSA的)第二示例实施例的修改,其中,用户B是使用用户A的秘密密钥产生S的用户,仿佛其被代表。该技术应用于用户A和用户B共享sk的其它实施例。所展现的是,可以一起使用在此所描述的技术,虽然在此并未以完整或独占的方式阐述这些组合。
在示例中,用户A相似地设置e、d、n、g、j、k、u、q。用户A相似地对用户B开放式地传递(e,n,g,u,q)并且安全地传递k,相似地建立pk=(e,n,g,u,q),sk=k以及G。用户B相似地产生获知sk的变元作为Q的签名S。希望将消息M传递到用户A的用户B相似地产生变元T。用户A相似地恢复M。
在用于构造S和/或T的第五示例实施例中,实现(使用代表性Schnorr/RSA的)第三示例实施例的修改,其中,用户A构造附加k个秘密参数。该技术应用于采用离散对数问题的其它实施例(其变形可以应用于采用其它困难问题的实施例)。对于RSA,从安全性和实际观点来看,k将远小于o。
通过注记的方式,在以下,具有自由下标i的公式应用于所有i∈{1,...,k}。在示例中,用户A相似地设置e、d、n、g。此外,用户A随机地选取mi∈C[l],并且计算用户A相似地对用户B开放式地传递(e,n,g,yi)并且安全地传递(d,mi),相似地建立pk=(e,n,g,yi),sk=(d,mi)以及G。用户B如下产生获知sk的变元。给定质询ci∈C[l],用户B传递(t,si),其中,t=gd mod n,si=d+cimi mod o。通过检查te=g mod n以及验证变元。
希望将消息M传递到用户A的用户B产生变元T,由此获知sk暗指如下获知M。给定质询c,ci′∈C[l],用户B传递(y,s),其中,y=gM mod n,s=d+(∑ci′mi)+cM mod o。通过检查验证变元。用户A将mi恢复为(si-d)/ci mod o,并且将M恢复为(s-d-∑ci′mi)/c mod o。
在用于构造S和/或T的第六示例实施例中,实现(通过Schnorr/RSA实施例的)第一示例实施例的修改,其中,用户A和用户B一起产生变元T,而用户B不获知与pk对应的私钥,其仍为秘密而非在它们之间共享。在该上下文中,对于RSA,不仅d仍为秘密而且还是可以通过pk推导d的变量(例如p、q),并且如果也可应用,则p’、q’也仍为秘密。此外,以下技术应理解为应用于关于T使用类似Schorr的协议的其它实施例。这样展现sk并非与公钥pk对应的私钥的情况。
在示例中,用户A相似地设置RSA参数e、d、n、g和e’、d’、n’、g’的两个集合,确保对于某正整数(大质数,用于增强的安全性)a,ao=n′。例如,一种方式如下。选取p″、q′、从而n=pq,n′=p′q′,p=2p′+1,q=2p′+1,p′=2p″+1,q′=2q″+1并且p、q、p’、q’是质数,并且p”、q”是足够大独特随机质数,并且选取g、g’,从而g=x2p′mod n,g′=x′2 mod n′,其中,x、x’是满足gcd(x±1,n)=1,gcd(x′±1,n′)=1的随机数。对于这些选取,o=q,′a=p′。通过相似方式,我们也可以获得相似设置,其中,与恰所描述的设置相比,其中,a是两个或更多个大质数的乘积。
在示例中,用户A开放式地传递(e,n,g)和(e′,n′,g′)二者,相似地建立pk=(e,n,g,e′,n′,g′),sk=(d,d′)以及G。用户A相似地使用d、d’产生获知sk的变元作为Q的签名配对S。
希望将消息M传递到用户A的用户B产生变元T,由此获知sk暗指如下获知M。
首先,用户B私密地学习r,其中,r=g′d′。通过非限定性示例的方式,用于进行该操作的一种方式如下。用户B随机地选取a′∈C[n′],并且传递b’,其中,b′=g′a′e′mod n′。用户A传递w’,其中,w′=b′d′mod n′。用户B验证w′e′=b′mod n′并且学习r作为w′/a′mod n′。注意,用户B不学习d’或d,并且因此不学习sk的部分。
接下来,用户A随机地选取j′∈C[l],计算k′=d′+j′,并且传递(u′,v′),其中,u′=g′k′mod n′,v′=g′j′mod n′。给定质询c∈C[l],用户B传递(t,y,s),其中,t=gr mod n,y=gM mod n,s=r+cM mod n′。通过检查gn′=1mod n,ue′=g′v′e′mod n′,tv′=gu′mod n,gs=tyc mod n验证变元。用户A将M恢复为(s-r)/c mod o。
在用于构造S和/或T的第七示例实施例中,实现(使用代表性Schnorr/RSA实施例的)第三示例实施例的修改,其中,关于构造T使用类似Diffie-Helman的协议。在示例中,用户A相似地设置e、d、n、g。用户A相似地对用户B开放式地传递(e,n,g)并且安全地传递d,建立pk=(e,n,g)以及sk=d。
用户B相似地产生获知sk的变元作为Q的签名S。希望将消息M传递到用户A的用户B产生变元T,由此获知sk暗指如下获知M。用户B随机地选取j∈C[l],并且传递(j,t),其中,t=gdj mod n。给定质询c∈C[l],用户B传递(y,s),其中,y=gM mod n,s=dj+cM mod o。通过检查te=gj mod n,gs=tyc mod n验证变元。用户A将M恢复为(s-dj)/c mod o。
在用于构造S和/或T的第八示例实施例中,结合第二示例实施例(即盲Schnorr/RSA实施例)使用恰之前的第七示例实施例的修改。
在示例中,用户A相似地设置e、d、n、g。此外,用户A随机地选取j′,r∈C[l],并且传递(u,q,a,b),其中,u=gj′mod n,q=Qj′mod n,a=gr mod n,b=Qr mod n。给定质询c′∈C[l],用户A传递z,其中,z=r+c′j′。这是相同指数j’出现在u和q的形式中的变元。通过检查gz=auc′mod n以及Qz=bqc′mod n验证变元。
用户A相似地对用户B开放式地传递(e,n,g,u,q)以及k,其中,k=dj′,建立pk=(e,n,g,u,q)和sk=k。用户B产生获知sk的变元作为Q的签名S,其中,S=Qk mod n。通过检查Se=q mod n验证变元。
希望将消息M传递到用户A的用户B产生变元T,由此获知sk暗指如下获知M。用户B随机地选取j∈C[l],并且传递(j,t),其中,t=gkj mod n。给定质询c∈C[l],用户B传递(y,s),其中,y=gM mod n,s=kj+cM mod o。通过检查te=uj mod n,gs=tyc mod n验证变元。用户A将M恢复为(s-kj)/c mod o。
在用于构造S和/或T的第九示例实施例中,实现(使用代表性Schnorr/RSA的)第三示例实施例的修改,其中,类似Cramer-Shoup的协议用于构造T。
在示例中,用户A相似地设置RSA参数,但具有两个随机选取的生成式而非一个,产生e、d、n、g1、g2。希望从用户B接收消息的用户A首先随机地选取j1,j2,k1,k2∈C[l],然后在G上设置Cramer-Shoup密钥配对,其中z=d,其中,g1、g2从RSA参数适配,并且其中,对于i∈{1,2},xi=jid mod o,yi=kid mod o。注意,x1、x2、y1、y2运作为参数j1、j2、k1、k2的类似盲化的版本(在其它实施例中,可以应用其它类似盲化的技术)。这样产生公钥(c′,d′,h),其中,h=g1z mod n、秘密密钥(x1,x2,y1,y2,z)以及加密散列函数H。
用户A相似地对用户B开放式地传递(e,n,g1,g2,c′,d′,h,j1,j2,k1,k2,H)并且安全地传递d,建立pk=(e,n,g1,g2,c′,d′,h,j1,j2,k1,k2,H)和sk=d。
用户B相似地产生获知sk的变元作为Q的签名S。希望将消息M传递到用户A的用户B如下产生变元T。用户B随机地选取j,k∈C[l],并且计算u1=g1 k mod n,u2=g2 k mod n,y=g1 M mod n,e′=hk y mod n,α=H(u1,u2,e′),v=c′k d′mod n。给定质询c∈C[l](c可以设置为α的函数),用户B计算s=dj+cM mod o,并且传递(j,y,s,u1,u2,e′,v)。通过以下操作验证变元:将α恢复为H(u1,u2,e′),将t设置为hj,并且检查he=g1mod n,g1 s=tyc mod n,用户A将M恢复为(s-dj)/c mod o。
在用于构造S和/或T的第十示例实施例中,实现(使用Schnorr/RSA的)第一示例实施例的修改,其中,Lamport签名用于构造S。Lamport签名可以用在后量子加密的上下文中。Lamport签名可以使用与以下描述的技术相似的技术代替上述其它实施例中的RSA。
在以下,通过注记的方式,具有自由下标i的公式应用于所有i∈{1,...,k},并且具有自由下标j的公式应用于所有j∈{0,1}。在示例中,用户A选取作为安全性参数的正整数k、l(其中,k≤l),均长度l比特的2k个随机数ri,j、从串到l比特串的单向函数H、作为阶数o>2l的某群的G,对此,离散对数问题难以求解(例如,一些选取G(例如关于某n的乘法群求模n)要求群阶o是难以因式分解的)、G的生成式g以及正整数(大质数,为了安全性)a。用户A计算si,j=H(ri,j),q=ao。用户A对用户B开放式地传递(si,j,ti,j,g,q,H,G)并且安全地传递(ri,j),建立pk=(si,j,ti,j,g,q,H,G)和sk=(ri,j)。
用户B如下产生获知sk的变元作为Q的签名S。给定质询c′∈C[2l],设Q[i]是H(c′,Q)的第i比特。用户B计算ri=ri,Q[i],并且传递ri作为变元S。通过检查H(ri)=si,Q[i]验证变元。
所有用户计算ti=ti,Q[i],t′i=ti,1-Q[i],t′=∏t′i。希望将消息M传递到用户A的用户B如下产生变元T。用户B计算r′i=ri,1-Q[i],r′=∑r′i mod q。给定质询c∈C[l],用户B计算y=gM,s=r′+cM mod q并且传递(y,s)。通过检查ggq=g,gs=t′yc验证变元。用户A将r′恢复为∑r′i,1-Q[i],并且将M恢复为(s-r′)/c mod o。
在用于构造S和/或T的第十一示例实施例中,恰之前的第十示例的修改允许用户A和用户B一起产生变元T,而无需用户B完整地学习仍为秘密的sk。
用户A相似地设置ri,j、si,j、ti,j、g、q、H、G。用户A开放式地传递(si,j,ti,j,g,q,H,G),将其建立为pk,并且将ri,j留作秘密,将其建立为sk。用户A相似地产生获知sk的变元作为Q的签名S。此外,用户A相似地计算r′,并且将其安全地传递到用户B,即,不对用户B披露ri,1-Q[i](其为sk的部分)。所有用户相似地计算ti、t′i、t′。现在,可以通过检查gr′=t′验证r′。希望将消息M传递到用户A的用户B(仅使用r′)相似地产生变元T。用户A相似地恢复M。
在用于构造S和/或T的第十二示例实施例中,可以使用耦合变元。在该上下文中,耦合变元包括取决于共同一条知识的变元。该条需要不为sk或M。在以上所描述的第一实施例-第十一实施例中的每一个中,变元S和T是耦合的。在第一示例实施例中,例如,并且在很多其它情况下,公共一条是d,其碰巧是sk。
对于不同示例,例如,在第六示例实施例和第十一示例实施例中,公共一条分别是r、r’,而非sk。因此,这些示例展示:甚至无需获知sk,并且仅获知例如某其它条知识,我们可以做出获知sk暗指获知M的变元。
通常,耦合是用于构造在某sk上匹配的变元S、T的一种方式,如在此所描述的那样。该耦合允许包括已知的方法或未来的方法的各种加密方法的混合和匹配。
在第十三实施例中,使用隐式变元,其当一个或多个变元的显式可验证的通信产生并非显式地传递但可以仍由任何人验证的其它变元时出现。例如,可以假设所有人获知用户A获知在G上满足ga=y的a并且用户B获知在G上满足gb'=z的b’,其中,g、y、z、G是给定的。然后,当用户A将第一公式所定义的a可验证地传递到用户B时,任何人可以验证用户B不仅获知a而且关于gb=yz还获知b,因为解为b=a+b'。
可验证的通信涉及获知某sk(例如用户B的PKI私钥)暗指获知a的显式变元T,如先前所讨论的那样。然而,在此情况下,任何人可以验证附加变元。例如,一个是获知用于第二公式的T’暗指获知用于第三公式的c;另一个是用于第三公式的c是已知的S’。由于我们不能在T得以传递之前验证T’、S’,因此T’、S’看作在T中得以暗指。
更一般地,隐式变元是并未显式地传递但可以仅在可验证地传递某其它变元之前得以验证的可验证的变元。这可以公式化如下。在此,通过注记的方式,具有自由下标i的公式应用于所有i∈{1,...,k}。
假设k个变元得以可验证地传递。设Ri是所传递的变元,Ei是显式变元的集合{R1,...,Ri},Vi是在传递Ei之后可验证的的变元集合,Vi′是仅在传递Ei之后可验证的变元的集合Vi\Vi-1,其中,V0按惯例是空集。Ri中独占地隐式变元的集合Ii是Vi′\Ei。这些定义可以自然地泛化,以考虑一次同时传递多个变元。
在很多情况下,因为隐式变元可以暗指(至少实质上)随机或无关的知识,所以可以忽略它们。在上述示例中,a、b’、b都是随机的,但关于b,a或b’是随机的足矣,隐式地暗指的知识同样如此。在其它情况下,如下所述,不忽略隐式变元。
如上所述,在各个实施例中,可以产生:仅在成功地做出变元S之后做出变元T。在这些情况下,变元S运作为用户A对从用户B接收消息M的可验证的通信的承诺。换言之,一旦成功地做出变元S,当用户B做出变元T时,用户A就可以不再拒绝接收M。
如所引用的那样,可以产生:仅在成功地做出变元T之后做出变元S。有效地,现在变元T运作为用户B对将消息M的可验证的通信发送到用户A的承诺。换言之,一旦成功地做出变元T,用户B就可以不再背弃M的可验证的通信,当用户A做出变元S时,可以产生该情况。
交换变元的顺序可以实际上应用于任何实施例。***100的结构保留,并且所得可验证的通信亦同。改变仅归因于例如与变元关联的不同承诺而产生对通信用户的不同保证。进而,这样带来出于特定目的的所变换的实施例的不同优点和缺点。
例如,做出第二变元的用户能够避免做出它,由此破坏通信。如果在变元T之前做出变元S,则这种破坏不产生传递消息M,而无论是否可验证地。在破坏的情况下,这一般是期望的结果。
然而,如果在变元S之前做出变元T,则该破坏可能导致不可验证地传递消息M,这一般是不期望的结果。具体地说,当sk是对于解码器114已经获知的私钥(例如与pk对应的私钥)时,该结果可能发生,从而其可以在没有S的情况下对T进行解码。
用于解决该难题的一种方式是,确保sk是与pk无关的秘密密钥,并且变元S建立sk,而非对已知的情况进行变元化。以下描述该构造的更多细节,其中,变元的链用于构造S。然后,破坏可以仅导致建立M满足特定公式,可能地确定其性质中的一些而非确定M自身。实际上,这一般是可接受的并且甚至期望的结果。
恰如所引用的那样,产生例如S的多于一个的变元或例如T的多于一个的变元的实施例可以称为链接变元。例如,用户B可以做出变元T1,由此获知sk暗指获知sk1,并且可以做出变元T2,由此获知sk1暗指获知M(例如,以用于包括于消息清单126内)。然后,当做出变元S时,我们可以验证sk和sk1二者的知识,并且因此验证M的通信。T1和T2一起可以视为构成变元T的两个变元的链,如以上关于图1-图6所描述的那样。
此外,用户A可以做出变元T1,由此获知sk0暗指获知sk,并且做出变元S1,由此sk0是已知的,从而我们可以验证用户A获知sk(例如,以用于包括于密钥清单132内)。在此,此外,S1和T1一起可以视为构成变元S的两个变元的链,如在此所描述的那样。可以构造具有相似效果的较长的变元链。在一些实施例中,不同用户可以构造变元链的不同部分。例如,在用户A和用户B一起构造变元S或T的以上实施例中,潜在地将变元视为变元链,如在此所讨论的那样。
在上述实施例中,用于构造知识变元的协议利用变化等级和类型的交互性(例如不同用户依次执行的至少两个通信)以及至少一个通信对先前通信依赖性。在以下示例中,在提供相似安全性保证的同时,加密知识变元机器(AOKM)用于转换这些协议以变为非交互的知识变元。
两个这样的示例机器是知识的签名(允许NP声明上的变元,其为非确知的多项式变元)和zk-SNARK(允许可表述为算术电路和/或用于机器规范的程序的NP声明上的变元。在此的实施例中的公式可以表述为配合任何机器的算术电路)。在有关部分中,两种机器执行以下功能或其变形:给定形式“获知w使得易于验证x满足有关条件”的声明产生获知w的变元而不披露w。执行该功能是在此什么定义AOKM。该w(可能地,元组)称为满足条件的用于输入x(也可能地,元组)的证据。该机器允许获知该证据w的人做出w的知识变元而不披露w。
为了展示交互性移除,以下描述如图7所示提供在以上实施例中(例如在用于构造S和/或T的第一示例实施例中)使用AOKM将Schnorr协议转换为特定种类的知识的签名的示例。在示例中,假设知识的签名将与用于传递的消息M(例如图1的消息112)不同的用于签名的消息m绑定到某知识。为了该示例的目的,m是任意的并且公开已知的;例如,其可以是空消息。
如以上所引用的那样,Schnoor协议在不一定mod n的具有生成式g的群G上定义其算术运算,并且在三个步骤中工作。为了示例的目的,假设用户B正对用户A做出M的知识变元,从而对于某已知的y,y=gM。用户B选取秘密r并且传递t,其中,t=gr。用户A产生质询c并且传递它。用户B然后传递s,其中,s=r+cM。用户A通过检查gs=tyc验证变元。
协议的示例转换可以因此如下继续。在设置部分期间,使得加密散列函数H是公共的;其目的是移除交互性。给定用于签名的消息m,用户B选取秘密r并且传递(c,s),从而c=H(m,y,g,gr),s=r-cM。通过检查H(m,y,g,gsyc)=c验证变元。
可以使用AOKM变换上述实施例中的每一个以及使用上述技术的组合的实施例。取决于是仅变换变元S还是仅变换变元T还是二者而考虑这些变换的三个示例。作为示例,图7考虑关于用于使用Schnorr协议构造S和/或T的第一示例实施例使用AOKM从交互性到非交互性的变换。如果仅变换S,则结果是AOKM用于构造S而Schnorr协议仍用于构造T的实施例。替代地,如果仅变换T,则结果是RSA用于构造S并且AOKM用于构造T的实施例。最后,AOKM可以用于变换S和T二者。
图7是T而非S的变换的示例。在图7中,用户A相似地设置e、d、n、g(702)。用户A相似地对用户B开放式地传递(e,n,g)并且安全地传递d,相似地建立pk=(e,n,g),sk=d以及G(704)。用户A相似地产生获知sk的变元作为Q的签名S(706)。希望将消息M传递到用户A的用户B使用AOKM产生变元T(708)。有效地,用户B传递证据d是已知的,从而输入(e,n,g,c,s,y,m)满足gd=gsyc mod n,te=g mod n,H(m,y,g,gd)=c,M=(d-s)/c mod o,y=gM mod n。证据w是sk,在此情况下,d。输入x包括pk和非交互通信,在此情况下,(e,n,g,c,s,y,m)。
前面示例讨论通过将S和/或T的交互构造转换为非交互构造来构造S和/或T。附加地或替代地,AOKM可以用于直接构造S、T,而无需变换上述实施例之一。对于变元S,AOKM可以用于提供有效地声明“已知的证据w1使得容易验证某输入x1满足某困难NP声明P1”的变元S,意味着,例如,仅给定输入,这对于寻找(用于满足声明的)证据在计算上是不可行的。存在很多已知的困难NP声明,并且可以设想出远更多。
对于变元T,AOKM用于产生变元T,该变元T有效地声明“当给定w1是x1满足P1的证据时,已知的证据w2使得易于验证某输入x2满足某其它困难NP声明P2”。
为了本描述的目的,w1包括sk而非M,w2包括sk、M,并且x1、x2一起包括pk。因此,因为T的隐式,所以S指示获知sk的用户也获知M。
在不涉及AOKM的上述示例实施例中,变元仅声明传递M,并且其求解困难方程,例如关于离散对数问题的y=gM。使用AOKM,可以做出M满足宽范围的兴趣性质的复杂变元。这些复杂变元可以包括于例如消息清单126中,以提供各种消息性质(例如消息内容性质),而不披露消息内容自身,并且可以在此称为“性质变元”或相似物。
例如,在消息内容包括图像文件的情形中,这些复杂变元(例如性质变元)可以包括M具有特定结构(例如JPEG格式化图像)或特定统计(例如所指定的色彩柱状图)或甚至特定算法结果(例如使用所指定的面部检测算法检测两个面部)的声明。
图8和图9是示出使用恰所引用的基于AOKM的复杂变元的类型的图1的多重编码的消息编码器106和验证器102的示例实现方式的框图。关于图3-图6可以观测到,以T′代替变元T,其中,T′=(T,TA)。因此,类型T变元中包括两个变元。一个是隐式变元T,其传达获知sk暗指获知M,如在此所描述的那样。另一个是新的变元TA,其为机器A索引的性质变元(例如,其中,机器A可以实现于消息清单生成器122内,但在图1的示例中其中并未明确示出)。机器A可以是可使用正采用的AOKM表示的任何机器。于此,可以理解,AOKM变元可能是方便的,但不一定捕获性质。例如,A可以表示为方程组而非机器,如可以例如关于以上用于构造S和/或T的第九示例实施例观测到的那样。
在图8的示例中,编码器802产生S,编码器804产生T。作为AOKM处理的部分,编码器806通过运行具有证据M的A来产生TA,如上所述。因此,TA是关于应用具有证据M的机器A的正确性的变元;因此,类似于T,隐式地取决于M,其仍为对于验证器是未知的。通过注记的方式,其中,中括号表示依赖性,T[sk,M]、TA[M]需要M上的匹配,同样,S[sk]、T[sk,M]需要sk上的匹配。AOKM可以用于做出等效于它们二者的一个变元,例如,“证据(sk,M)是已知的,从而获知sk暗指获知M,并且机器A接受M”。
机器A也可以接受输入(例如配置参数)。例如,这些配置参数可以包括用于在给定的面部检测算法A中检测两个面部的参数、或机器及其输入的描述(例如,某AOKM支持通用机器,其当给定为机器及其输入的描述时在其输入上运行机器)。
在图9中,解释器902和904分别例如关于图5和图6如上所述解释S和T。同时,解释器906(其类似于解释器904可以看作包括于图1的消息清单解释器138中)接受相同消息清单126,并且使用AOKM处理中所使用的验证密钥或其它公共参数(其在图9的示例中可以看作pk的部分)验证其中所包括的TA
在上述实施例中,仅存在明确讨论的仅一个待传送的消息。在一些示例中,通信协议允许验证具有交易保证的该消息的通信(即,可验证的通信要么完全成功要么完全失败)。
当考虑多个消息时,清楚地,每个消息可以分离地可验证地得以传递,在此情况下,每个通信提供分离的交易保证。换言之,可能的是,例如,归因于在可验证地传递仅一些消息之后一个或多个可能不诚实的用户停止与通信协议的协作,仅一些消息将产生成功的可验证的通信。
在以下,在要么完全成功要么完全失败的一个统一交易中,即使每个消息处于不同发源用户与目标用户之间,可验证的通信也扩展为支持传送多个消息。我们将该操作模式称为纠缠通信,但该模式也可以由任何其它适当的命名法(例如原子通信)指代。
通过注记的方式,在以下,自由下标i指代所有i∈{1,...,k}。在示例中,消息Mi待可验证地传递,其中,Mi待从用户Bi传递到到用户Ai。此外,如本描述中其它地方那样,变元T和/或S应理解为在适当的情况下被包括在消息清单126和/或密钥清单132中。
在普通非纠缠实施例中,在集合G对于待做出的所有变元是公共的,并且用户Ai或Bi不一定是独特的情况下,于是设置产生G、pki、ski,编码导致用户Ai产生变元Si,用户Bi产生变元Ti,并且解码导致如果并且仅如果验证产生可接受性则用户Ai恢复Mi。当然,很多变化是可能的的;例如,用户Bi而非用户Ai可以充当前述示例中的产生者。
以上示例可以变换为纠缠实施例,其中,所有消息可验证地一起得以传递。例如,充当交易协调器的或许并非独特的另一用户C设置其自身的公钥pkC和秘密密钥skC。用户Ai通过秘密地对用户C做出变元Si加入交易(对从用户C接收消息的承诺(如上所述))。
用户C在G上传递变元TC,由此获知skC暗指用户Ai获知ski(例如,获知用户Ai的PKI私钥暗指获知消息)(对发送ski的承诺)。该情况利用可以例如使用公式传送ski作为消息的事实。对于RSA,例如,给定t的公式te=g mod n可以用于做出秘密密钥的知识变元sk=d,从而t=gd mod n。
每个用户Bi传递Ti(对在传递Si时(即,在传递ski的知识变元时)发送Mi的承诺)。用户C传递SC。因为SC的最后通信所触发的变元隐式的级联,所以传递每个Si,并且因此,做出Ai获知ski的变元;因此,每个Mi变为立刻对于每个Ai是已知的。此外,所有通信是立刻可验证的。这样完成交易。如果在传递最后变元SC之前的任何点停止统一的交易协议,则交易完全失败,如所意图的那样。
可以布置以上协议以使得所需通信最小化。例如,可以形成有向图,其中,每个节点对应于用户,每个边沿对应于从发源的用户到目标的用户的待传送的消息。每当从单个节点发源的路径可以覆盖边沿集合时,就可以使得边沿集合立刻触发,而无需交易协调器的任何设置。对此,与边沿关联的待传送的消息通过与可以立即从其到达的所有边沿关联的秘密密钥得以扩增(如上所述)。我们可以将上述交易协调看作添加边沿以确保从与交易协调器对应的节点发源的路径覆盖所有给定的边沿。
图10是通过示例的方式表示纠缠通信的知识图的框图。图11是与图10的示例对应的流程图。从以上应理解,Si是ski的知识变元。TC是获知skC暗指获知所有Si的变元。Ti是获知ski暗指获知所有Mi的变元。
因此,在图10中,每个节点1002-1020对应于在此情况下作为秘密密钥或消息的知识并且由其标记,并且每个边沿对应于知识隐式并且由变元标记。符号表示无知识,并且以下在关于所推论的变元的讨论中更详细地并且在上下文中讨论。其用作类型S变元所标记的边沿的源,其中,边沿的目标对应于直接变元化的知识,而非作为另一知识的隐式。
在图11的示例中,如果希望在该交易中接收消息的用户A存在(1102),则用户Ai对用户C秘密地做出变元Si(1104)。该操作继续,直到所有用户Ai做出对应变元Si,并且于是用户C做出变元TC(1106)。
如果希望在同一纠缠交易中发送消息Mi的用户Bi存在(1108),则用户Bi做出变元Ti(1110)。否则,用户C做出变元SC(1112)。
在图11中,甚至在没有TC的情况下,虽然纠缠通信交易的基本要求(即,验证器(例如验证器102)直到做出TC才可以验证Mi的通信)成立,但用户Ai学习Mi。在其它示例实现方式中,使用(关于知识令牌的讨论在此所描述的)用于发送未知消息的技术,例如,从而ski初始地是未知的,并且仅当做出TC时,ski变为可验证地传递到Ai(并且纠缠通信是完全可验证的)。
此外,如上所述,可以按不同顺序或并行进行图11的操作。自由度仅受限于在此所明确描述的依赖性。例如,在示例实施例中,虽然当做出TC时交易可以认为是闭合的(以用于加入更多Ai用户),但在做出所有Si之前不能做出TC。在其它示例实施例中,每个Ai可能需要Bi,或另外,每个非配对的Ai或Bi有效地并非纠缠交易的部分。
在以上和其它示例实现方式中,可以嵌套可验证的通信交易。换言之,可以通过传递暗指其它变元的变元来触发嵌套交易,其中,每个变元进而触发另一嵌套交易。也可以递归地嵌套交易。所涉及的交易中的每一个无论是否嵌套都可以与其自身的交易协调器关联。因此,可以布置具有去中心化编排的高度纠缠的通信。
在上述各个实施例中,描述不同类型的单独变元或简单变元。以下,考虑各变元上的变元(又称为高阶变元)。由于非交互形式的普通变元也仅为数据,因此我们可以做出另一知识变元的知识变元。
因此,通过注记的方式,A[M]用于表示具有与A关联的一些特性的某数据M的知识变元,而不披露M。例如,对于消息M,A[M]是具有一些特性的M的知识变元,A′[A[M]]是具有其它特性的A[M]的知识变元。
注意,A[M]的知识不暗指M的知识。另外,A[M]将是通过某种准则M是有效消息的证据,A′[A[M]]将是通过某种其它准则A[M]是有效证据的证据。因此,前者的输出馈送到后者。A[M]称为一阶变元,A′[A[M]]称为二阶变元。我们可以根据期望获得高阶变元。
于是,在更具体示例中,注记S[M]表示做出类型S变元,其仅为M的知识变元,注记T[sk,M]表示做出类型T变元,其中,sk的知识暗指M的知识。注记S[S[M]]是M的二阶知识变元,注记(T[sk1,sk2]、T[sk2,M])是两个类型T变元的链,注记T[sk1,T[sk2,M]]是获知sk1暗指获知类型T变元的变元,注记T[S[sk],S[M]]是一个类型S变元的知识暗指另一个的知识的变元。
除了S、T之外的注记可以用于表示具有上下文中所描述的对应解释的其它特性。例如,J[M]可以认为是M为JPEG格式化图像的变元。并置可以用于表示多变元;例如,注记SJ[M]=(S[M],J[M])是M为已知并且为JPEG格式化图像的多变元,并且注记ST[sk,M]=(S[sk],T[sk,M])是M的可验证的通信。
与固定(或在其输入中缓慢增长的)大小(例如上述zk-SNARK)结合的更高阶变元可以用于压缩其它变元。给定变元Ri的集合的用于此的示例方法是做出所有Ri通过验证的变元V[Ri]。由于V[Ri]也暗指变元,因此该类型的压缩变元可以嵌套如所期望的那样多的等级。
除了恰所描述的类型的更高阶变元之外,也可以使用作为特殊种类的隐式变元的反转的变元。如上所述,隐式变元通常指代并非显式传递而可以仅在可验证地传递某其它变元之后验证的可验证的变元。于是,使用关于隐式变元以上所描述的注记,给定变元T0=T[sk0,M],其反转的变元为T0 -1=T[M,sk0],其作为隐式变元可以在任何点具有通过验证或失败于验证的状态。
变元及其对应反转的变元均具有独立状态,也就是说,均将独立地通过验证或失败于验证。在二者通过验证的情况下(例如T0=T[sk0,M]和T0 -1=T[M,sk0]通过验证),前者说明给定sk0可以可行地计算M,后者说明给定M可以可行地计算sk0。换言之,不仅存在可能的的秘密密钥与可能的的消息之间的一对一映射,而且该映射在两个方向上是可行地可计算的。
在示例情形中,反转的变元可以首先通过验证,稍后失败于验证。假设给定随机r,并且做出S[sk1]和T0。进一步假设,甚至在没有变元的情况下,获知sk1和r暗指获知sk0;对于作为示例的离散对数问题,当sk0定义为sk1+r时,这是成立的,可以由任何用户通过检查来验证该情况。在此情况下,当sk1是秘密时,sk0是秘密。假设对于i>0,ski是身份i的密钥,这样所有用户获知的是秘密。然后,用户可以推断身份i是获知sk1并且进而还有sk0和T0的仅一个。r的目的因此是允许sk0得以验证为对身份1的拥有者唯一的秘密(如上所述),而不披露其密钥(例如,不比破坏其PKI更可能),除非期望与伙伴进行该操作。因此,T1 -1=T[M,sk1]可以通过验证(变元T0 -1=T[M,sk0]和T[sk1,sk0]也可以通过验证)。倘若做出S[sk2]和T[sk2,sk0],那么任何用户可以验证身份1和身份2都获知sk0,因此T1 -1=T[M,sk1]可以失败于验证。
在各个示例实施例中,可以***性地推导(上述)隐式变元。这样不仅带来知识的变元,而且还带来无知识的变元,又称为无知性的变元。用于获得无知性的变元的示例技术如下。给定关于随机数r的一致性,例如,Blockchain区块散如下所述列化离散对数问题是困难的群组G、以及G的随机生成式g1、g2,于是在异常高的概率的情况下,所有各方是满足g1 x=g2 r的x的无知方。也如上所述,描述用于做出对一个实体独特的知识变元的技术,由此暗指所有其它各方是该知识的无知方。
公知的De Morgan定律可以用于获得包括无知性的变元的隐式变元。在此,使用上述注记,以及表示知识的否定(即无知性),∧表示逻辑乘,并且∨表示逻辑加。
通过这些注记,可以展示定律的使用。变元T[sk,M]等效于做出两个变元R1、R2类似做出变元R1∧R2,或等效地,注意,要求等效性而不仅相似性意味着变元R1、R2将需要展现与R1∧R2相似的性质(例如比如安全性或加密方法的比特)。
因此,等效于虽然已知为可行的,但直接做出变元R1∨R2是更难的。例如,在此所描述的技术可以描述特定类型的变元(例如逻辑与以及逻辑或);然而,可以例如使用下述否定规则来推导更普通的变元。此外,一般而言,可以编写给定变元的逻辑函数。
通过所推导的变元,类型S变元可以视为特定种类的类型T变元。例如,变元S[sk]等同于变元其中,表示没有知识,或等效地无知识或同义反复知识。De Morgan定律可以于是应用于
此外,变元的推导不限于De Morgan定律。可以使用任何推论***,例如比如命题演算、一阶逻辑以及很多其它***。在示例实现方式中,具有对给定信道(例如共享信道104)的接入的所有验证器可以使用相同推论***以用于该信道上的变元,因此它们协定该信道上可验证地传递的隐式变元。
在此描述类型T变元及其对应反转的变元的否定都是可验证的情况。具体地说,假设T0=T[sk,M]以及都是可验证的。前者意味着给定sk可以可行地计算M,后者意味着没有sk对于进行该操作是不可行的。这良好地对应于单向函数(公知概念)的定义。通过添加变元T[(d,M),sk]从而获知d来捕获具有陷门d的陷门单向函数(也是公知概念),我们可以可行地从M计算sk。
在一个示例中,使用无知性的变元(变元T[M,sk])假设为认为获知M暗指获知sk。使用De Morgan定律,无知性的等效变元是其认为sk的无知性暗指M的无知性。当sk是PKI私钥时,变元认为我们必须破坏PKI私钥以学习M。因此,M可以看作具有与PKI私钥相同的安全性等级。
在以下示例中,假设知识对于单方是唯一的。该变元称为源变元,因为其可以视为将该方指定为知识的源。
于是,在第十三示例实施例中,假设全都获知用户A获知在G上满足ga=y的a并且用户B获知在G上满足gb′=z的b’,其中,g、y、z、G是给定的。如上所述,当用户A可验证地将a传递到用户B时,任何人可以验证对于gb=yz,用户B获知b。如果a或b′是随机的(这是当它们之一是PKI私钥时的情况),例如,则第三公式中的b也是随机的,并且(当离散对数问题对于G是困难的时,在异常高的概率的情况下)对于用户B是唯一已知的。用户B可以因此看作b的源,并且所传递的变元是源变元。
在以上示例中,在做出变元T[M,sk]并且sk是PKI私钥的情况下,于是在不危及PKI私钥的程度上,M不能对任何人只能对拥有sk的一方是已知的。我们因此说该方是M的源,并且T[M,sk]是源变元。如果还做出变元T[M′,M],则相同方可以因此确定为也是M′的源。
在这些示例中,源变元是显式的,但从它们提取的唯一知识推论是隐式的。具体地说,该隐式推导可能稍后失败于验证。在恰所讨论的示例中,当做出变元T[sk1,M]、T[sk2,M]时,可能发生该情况,据此sk变为共享的,并且我们可以验证sk、M对于拥有sk1、sk2的各方是已知的。
在上述实施例中,可验证的通信涉及仅关于数据的特性的变元。以下,可验证的通信扩展为启用时间变元(即涉及时间的变元)(例如声明消息M1传递到用户A1然后消息M2传递到用户A2的变元)。时间变元的一个优点是,并非按特定顺序观测(例如,记录)信道上做出的变元的一方可以仍从它们提取时间信息。
假设加密时间戳服务的可用性。例如,BitCoin的Blockchain服务是一种这样的服务,但很多公知的加密加时间戳方法是可用的并且可以得以使用。
可以在依赖性图中捕获时间变元及其关系,如通过示例的方式在图12中所示的那样。每个节点1202-1216对应于时间戳或时间变元。在该上下文中,可以做出时间戳和时间变元二者作为关于时间的变元,因为前者可以描述为仅按时间有序的变元,并且每个边沿对应于其源对其目标的依赖性。依赖性按时间顺序传送;不可行的是,源在目标同时或之前发生,并且依赖性的循环是不可行的,因为其将与变元的可能时间排序矛盾。
在Bitcoin的示例Blockchain服务中,时间戳服务使得区块的链(称为区块链)可用。每个区块通过其内容的加密散列得以标识。除了第一区块(又称为起源区块)之外,每个区块包含对链中的前一区块的参考。参考是前一区块的内容的加密散列。可以存在可以回溯到起源区块的很多链。然而,产生该区块的链的去中心化***被设计为这样的:最长的链占优,并且变为所有***参与方的一致性,较短的链被忽略。
此外,每个区块具有其中所嵌入的加密工作证据,并且因此,链越长,对其就已经证明工作越多。由于在计算资源中测量对工作证明做出的努力,因此我们可能必须拥有至少50%的计算资源,以独占哪些区块得以加入区块链。实际上,该情况鲜有发生,并且甚至当其发生时,不存在用于独占方通过其选取的散列来产生区块的可行方式,只要保持独占,就仅以某速率修改最长链的至少一部分。
禁止独占,链从i的深度(即距该链的开始的第i区块)前往起源区块的概率并非是随着i异常快速地一致下降(换言之,我们沿着链朝向起源区块行进的步长越多,所到达的区块是一致的概率就越高)。因此,加密散列可以视为从某深度i返回作为具有明确时间顺序的时间戳的安全列表。此外,前往起源区块的所有链的有向非循环图可以视为定义时间戳集合上的部分排序,而无论独占性如何。对于多个区块链,通过相互参照可能的是,该图当视为无向图时可以具有多个所连接的分量。
给定该加密时间戳服务,我们可以做出时间变元以根据期望包括于变元S和T中。给定非时间变元R,我们可以构造的一种时间变元是如图12所示作为节点1212并且指示R不比某时间戳t(称为上限时间戳)更晚传递R[-∞,t]。可以通过在服务中放置R或加密散列H(R)实现该操作,这样允许其出现在对某时间戳t散列化的新的区块中。通过检查R为有效并且要么R要么H(R)出现在具有时间戳t的区块中来验证时间变元R[-∞,t]。这可以描述为加密首先提交***。可以在依赖性图中捕获这些时间变元及其关系,如图12所示。
我们可以构造的第二种时间变元是如图12所示作为节点1210并且指示R不比某时间戳t(称为下限时间戳)更早传递的R[t,∞]。通过以t扩增R来实现该操作。通过检查R为有效并且t为有效时间戳来验证时间变元。这可以描述为加密最后提交***。
第三种时间变元是R[t1,t2],其中,t1<t2,其可以解释为R[t1,∞]和R[-∞,t2]的逻辑与。该情况在图12中示出为节点1214,并且仅如果t1和t2按部分排序是可比较的则是良好定义的,也就是说,它们沿着公共链出现。注意,R[t,t]是不可行的,因为于是其包含区块将需要既包括t又对t进行加密散列化,并且R[t2,t1](其中,t1<t2)是不可行的,因为t2对于在添加具有时间戳t1的区块的之时进行预测是不可行的。
时间变元允许在对应于时间戳的时间之前、之后或之间一次做出知识变元。因此,时间变元自身可以视为部分按时间排序(例如,如果一个时间变元具有排序在另一个时间变元的下限时间戳之前的上限时间戳(如果二者都存在),则前者可以排序在后者之前,另外,各时间变元不是可比较的)。在所涉及的时间戳是可比较的程度上,可以构造暗指消息M1传递到用户A1然后消息M2传递到用户A2的变元。我们可以能够通过同样在时间变元中包括壁时钟时间(或某其它可接受的时间测度)来做出更强的时间变元,只要该时间是有效的(例如,其处于关联上限时间戳和下限时间戳所定义的时间范围内)。
也可以嵌套时间变元。由于时间变元也仅是变元,因此我们可以做出各时间变元上的时间变元,产生双时间变元。例如,图12中示出为元素1216的R[-∞,t1][t2,∞]对变元进行变元化:R不比t1更晚传递不比t2更早传递。当考虑通信中的每一个可以是通过不同信道时,该构造的有用性是更清楚的。注意,t1和t2无需是可比较的。此外,我们可以递归地嵌套时间变元,产生多时间变元。
图13是示出可以用于实现时间变元的示例操作的流程图。在图13中,第一用户希望做出时间变元(1302)。如果不可能或不可用,则处理可以结束(1314)。
否则,可以对于变元R(可能地现有时间变元)做出选取(1304)。时间变元的种类(1306)可以是有下限的(1308),在此情况下,可以选取现有时间戳t1并且可以做出变元R[t1,∞]。
对于有上限的变元,在区块链上放置或另外提交R以获得具有时间戳t2的区块以及变元R[∞,t2](1310)。否则,当选取现有时间戳t1、t2时,可以做出变元R[t1,t2](1312)。最后,在图13中,对于上下变元,选取现有的、预先获得的t1,并且将变元R[t1,∞]放置在区块链上,以获得具有时间戳t2并且包括变元R[t1,t2]的区块(1312)。如所示,完成任何操作1308、1310或1312可以将处理返回到操作1302。
在附加或替选实施例中,变元的语义(并非固定的)可以随着时间改变。例如,可以通过规定做出变元的语义(例如可以做出的变元和推断的含义),以用于随后改变。具体地说,可以通过规定做出变元,以通过受控方式稍后变得更弱,仿佛衰落。
可以例如基于上述推论***的类型而构造衰落变元。如所描述的那样,该推论***允许验证器验证隐式变元。
由于隐式变元可以在一个点通过验证并且稍后失败于验证,因此链接到它的显式变元将稍后也失败于验证。此外,例如,因为源变元链接到身份上的更多变元,所以如在源变元的上下文中以上也讨论的链接到源变元的任何显式变元将逐渐变得模糊。从通过验证状态移动到失败于验证状态或增加变元的模糊性在这些示例中定义衰落变元。
可以结合以上关于时间变元所描述的加密时间戳服务使用衰落变元。在此情况下,我们也可以做出包括关于服务的完整历史的声明的变元,从而稍后某变元可以破坏,如以下所描述的那样。更一般地,从以上描绘的第十三示例实施例可以理解,给定稍后失败于验证的隐式变元,可以构造衰落变元。
关于恰所引用的衰落变元类型,可以理解,对于给定的应用/情形,依赖于缺少强保证的推论***可能没有意义。反之,可以实现独占地依赖于加密保证的用于衰落变元的解。也就是说,对于基于稍后失败于验证的隐式变元的恰所引用的衰落变元的类型,以下讨论展示具有加密保证的稍后失败于验证的隐式变元。
在以下示例中,假设例如可以如上所述通过各种加密货币提供或另外提供令牌拥有权服务的可用性。给定该服务,图1的***100可以被配置为跟踪签名令牌的拥有权。具体地说,每个令牌k与签名者关联。签名者是拥有允许产生用于给定消息M的签名Sk(M)的秘密密钥skk的一方。对应公钥pkk允许任何人验证签名者已经做出签名Sk(M)。
当并非签名者(但在一些实现方式中可以是签名者)的变元方持有令牌k的拥有权时,只要保持拥有权,变元方就得以批准用于关于任何消息M从签名者获得盲签名Sk(M)的权限。盲签名是公知的加密原语。签名是盲的表示签名者稍后不能拒绝签名,但也没有关于何人或何时做出签名的记忆。
每个签名交易于是连同迄今保存令牌k的非盲签名集合的加密累加器的更新状态的变元(公知的原语)一起得以可验证地传递。据此,任何人可以验证签名交易(即,可以在不获知消息的情况下验证签名者产生用于正确拥有者的正确签名),并且拒绝稍后出现的具有令牌k的任何其它签名,因为无人可以说明该签名包括于对应累加器中。注意,由于令牌拥有权服务保存所有交易的完整历史,所以任何人可以在任何时间验证这些交易。
拥有令牌k的变元方关于形式R[t,∞]的时间变元请求盲签名,其中,t是当进行请求时的时间戳,如以上例如关于图12和图13所描述的那样。变元方私密地将签名解盲化为Sk(R[t,∞])。当我们提出匿名(或伪匿名,其应理解为贯穿本描述由术语“匿名”覆盖)时,获知的变元Sk(R[t,∞])是有效的,也就是说,连同对应累加器包括签名的证据一起,其示出R不早于t传递,并且在拥有令牌k时签名,而不披露签名或R。只要变元方持有令牌k的拥有权,变元方就可以匿名地使得任何人信服,此外,没有其它人可以已经获得该签名。当变元方放弃令牌k的拥有权并且使用令牌k的更多签名交易得以可验证地传递时,这不再成立。反之,现在存在自从t以来的多于一个的潜在拥有者。这些潜在拥有者越多,变元就变得越弱,仿佛衰落。此外,归因于匿名性,可以通过重复地将令牌k的拥有权传送到受控于同一方的若干匿名身份来控制衰落处理。可以使得衰落在具有很多身份和令牌的***中十分有效。
可以观测到,变元可以是包括关于令牌t的拥有权的声明S的变元。这是因为,该条件可以使用上述AOKM得以表示,并且可包括于密钥清单132中。假设该变元在某时间点是可验证的,那么令牌的衰落可能导致某验证稍后失败。
为了清楚,考虑在时间戳t使用AOKM做出的变元。如所描述的那样,AOKM需要证据w和输入x,以产生形式“我获知w,从而给定x,S得以满足”的变元。在该示例中,w是连同k的加密累加器中包括签名的证据一起由具有时间戳t的令牌k的签名者所提供的签名的解盲化版本。于是,x是包括所有加密累加器的状态历史的上至时间戳t的一致的完整服务历史,S是身份A在时间戳t拥有令牌k并且解盲化的签名对于令牌k是有效的声明。
该变元具有形式R[t,∞],因为随着完整历史增长,x保持在其时间戳t的前缀,并且变元保持有效。对于获知身份A的秘密密钥的变元W,只要身份A对令牌k保持,变元R[t,∞]就暗指W(即,W在变元中是隐式的)。在此情况下,做出AOKM变元的一方确信其获知身份A的秘密密钥。当身份A放弃令牌k并且使用令牌k的更多签名交易得以可验证地传递时,隐式不起作用,并且变元W此后失败于验证。这是因为,现在某其它身份B也可能已经做出AOKM变元。如果做出来自W的隐式的其它变元,则它们的隐式随后也失败于验证。
通常,结合令牌拥有权服务使用衰落变元,我们可以对另一变元的拥有权进行变元化,并且稍后使得拥有权变元衰落。此外,我们可以做出包括关于令牌的拥有权的声明的变元,并且稍后完整地破坏变元。此外,可以通过加密保证来做出这些变元。
在其它实施例中,图1的共享信道104如上所述应看作在一些实现方式中表示两个或更多个共享信道。对于所有这些共享信道,对于每一个而假设所有通信用户观测所讨论的共享信道上的所有通信。于是,当考虑多个信道时,每个通信可以处于分离的信道上,并且由处于该共享信道上的特定通信用户群组观测。
通过注记的方式,在以下,Ci用于表示第i信道,Ui用于表示观测该信道的用户集合,UM用于表示M的接收方集合。于是,变元S可以产生在信道C1上,变元T可以产生在信道C2上。用户仅通过对C1和C2二者的接入(即,通过U1∩U2)来经历M的可验证通信。具有仅对C1(即U1\U2)或仅对C2(即U2\U1)的接入的用户不经历可验证的通信。如果接收方U∈UM具有仅对C1的接入,并且如果U具有仅对C2的接入而且sk(初始地)对于U是未知的,则U一点也不经历通信。如果用户A1做出变元S并且具有仅对C1的接入,则U2中的任何用户可以在信道C2上做出将M可验证地传递到U1∩U2的变元T,而无需用户A1或U1\U2中的任何用户具有其知识。
相似的分析应用于以上所讨论的通信实施例。例如,首先在C1上传递的变元S是对从U1进行接收的承诺。首先在C2上传递的变元T是对发送到U2的承诺。其次传递的变元是关于但仅对于U1∩U2的承诺的传送。
使用多个共享信道的实施例也可以泛化为以上所讨论的变元链的类型。例如,对于关于i=1,...,k并且k>1的Ri(其中,对于i=2,...,k,R1=S[sk1]并且Ri=T[ski-1,ski],并且skk=M),可以在信道Ci上传递第i变元。共享信道可以是或可以不是成对独特的。于是,仅∩Ui(观测所有Ci信道的用户集合)经历M的可验证的通信。
多信道实施例可以泛化或扩展为在此所描述的各个其它实施例。例如,关于纠缠通信,在此所描述的有向图上的每个路径定义沿着路径的边沿的变元的链(见例如图10和图11)。因此,关于多个信道上的变元的链的以上分析应用于每一个。
在恰所描述或引用的各个多信道实施例中,假设成对(或更多)信道具有拥有对二者(或更多)的接入的公共用户集合。在这些情形中,可验证的通信可以受限为发生在一个信道上。在以下讨论中,明确描述穿过信道发生的可验证的通信(称为信道协调)。
在以下示例中实现该信道协调。具体地说,对于具有观测用户Ui的信道Ci,协调C1和C2表示U1∩U2中的用户可以均响应于来自U1\U2或U2\U1中的用户的关于常规变元R(或变元)的询问而传递协调变元。进行询问的用户可以是接收方;然而,注意,如果其它用户观测某信道上的响应,则它们可以是接收方。仅需要在接收方所观测的信道上传递响应,例如,简单选项分别是C2或C1。协调变元使得接收方能够验证它们不能直接观测的分别在C2或C1上传递的常规变元。
因此,协调验证处理得以提供,并且使用图1的验证器102得以实现,以通过针对小量的鉴权数据验证协调变元穿过多个信道验证哪个起作用。在没有该处理的情况下,即使信道中的每一个上所传递的每个常规变元在此得以可验证地传递,仅观测C1、C2之一的用户将也不能够确保在未观测的信道上可验证地传递R。
然而,可验证的协调并非说明在这两个信道上协调所有常规变元;这仅说明例如对此所询问的变元如此。以下待详细描述的协调验证处理所接受的C1上的用于R的协调变元暗指在C2上传递R,并且相似地针对所交换的C1和C2
因此,除了一个信道上所传递的变元之外,还可以在一个或多个信道上传递具有相同内容的变元。为了在各通信之间进行区分,信道Ci上所传递的第j常规变元可以表示为Ri,j。变元Ri,j(设其为类型S或类型T)可以与秘密密钥ski,j以及对应公钥pki,j(Ri,j的通信验证中所所使用的对应公钥)关联。
对于该讨论,以上所讨论的加密时间戳服务可以假设为对于在每个信道上在常规变元的顺序上安全地建立一致性是可用的。服务的一个实例可以服务于一个或多个信道。用于启用给定信道集合的可验证的协调的前提是对于至少这些信道公共的服务的实例,并且为了简化该示例而假设放置在该服务上的交易包括所有Ri,j变元。
在示例中,关于每个服务X保持将密钥映射为值的(例如基于公知的鉴权提交***的)所鉴权的数据结构Fx。在此,Fx的目的是对结构中的给定变元的存在性进行鉴权。Fx中的每个密钥是对应于某公钥pk并且因此也对应于某秘密密钥sk的独特地址密钥ak;例如,对于某加密散列函数H,ak=pk或ak=H(pk)。这样允许使用对应pk定位FX中所包括的并且与公共sk关联的所有变元,而无需获知sk,如下所述。与该密钥关联的值是X中的交易参考的所鉴权的数据结构Dak(例如区块散列、或对区块的某其它参考、以及索引、或对区块内的交易的某其它参考),均包括变元Ri,j,从而ak=aki,j,其中,aki,j对应于pki,j。Fx的根散列的版本由观测X所服务的信道上的变元的用户放置在X中,其中,FX的每个版本通过一个或多个附加的这些变元来扩展前者。具有不正确的版本的区块(即不反映在该信道上可验证地传递的实际变元的区块(例如试图加入X的不诚实用户))将被X的其它诚实用户拒绝(变为一致)。FX的根散列的最新版本是对于对关于与某pk关联的变元针对FX的询问的响应进行鉴权所需的仅鉴权数据,如下所述。
协调验证处理使用所鉴权的数据结构FX。如下完成验证Ci上所观测的变元Ri,j作为Ci′上的某Ri′,j′得以传递,其中,Ci和Ci′都受X服务。首先,计算ak=aki,j。接下来,针对FX鉴权Dak(的根散列)的可能地来自Ui′中的用户的重获。然后,针对Dak鉴权对包括与Ri,j相同的变元的交易参考的可能来自Ui′中的用户的重获。
对重获的响应可能是不诚实的,并且因此,通常,该询问产生对包括某变元Ri′,j′的交易的参考。最后,检查Ri,j=Ri′,j′。如果这些步骤成功,则协调验证处理接受。可以修改最后步骤,以重获Dak所参考的一些或所有变元,这在一些情况下可能是有用的。例如,我们可能希望使用ak重获具有来自获知sk的隐式的所有类型T变元,可能地继续于重获与从sk暗指的知识关联的更多变元,有效地跨越对应于X的知识图。因此,我们可以但无需在关于待重获的任何变元进行询问之前获知它们。此外,在其它示例中,可以将多个询问均发送到不同用户。仅响应之一需要关于询问用户而成功地鉴权,以(从验证响应协调变元)学习在未观测的信道上可验证地传递的正确变元。
此外,以上示例与分布式FX有关,从而FX中的所有Dak结构可以散开并且由很多用户保存。在其它实现方式中,针对FX和Dak的两步鉴权并非强制。反之,可以针对集中式服务所保持的FX直接进行鉴权。
在恰所描述的多个协调的信道的上下文中,协调网络可以从所协调的信道的多个实例的交互而出现。例如,从均服务于多个信道的多个时间戳服务,可以构建协调网络。
于此,多于一个的服务可以服务于信道。两个或更多个服务所服务的信道可以用于在各服务之间中继协调变元。
作为该情况的示例,信道C1、C2可以受服务X1服务,信道C2、C3可以受服务X2服务。Oi,j,k可以于是表示用于信道Ci上所做出的并且对应于常规变元Ri,j的用于服务Xk的协调变元。于是,Ui中的任何用户用户可以做出该变元。如果对于某j、j′,R1,j=R2,j′,并且在做出协调变元O1,j,1并且然后O2,j′,2的情况下,于是前者可以由U1中的任何用户做出并且由U2中的任何用户验证,而后者可以由从O1,j,1学习R1,j的U2中的任何用户做出并且由从O2,j′,2学习R2,j′的U3中的任何用户验证。因此,可验证的协调从X1中继到X2。通常,如果关联服务对关联信道进行服务,则我们可以沿着具有每信道以及每服务一个节点而且具有信道节点与服务节点之间的边沿的无向二部图中的路径进行中继。
可以设计非常大的协调网络。例如,可以通过添加用于它们的信道和服务来增量式地构建它们。此外,由于用户关于是否响应于关于常规变元R的询问具有谨慎性,因此,例如倘若X上的用户对此效果或甚至对用户进行协作(例如,倘若其在秘密密钥之后保持R私有),那么也可以保持R对服务X是私有的。因此,可以模块化地构建协调网络,在协调网络模块外部仅暴露特定信息。
也可以对于简单通信而非可验证的通信构建协调网络。在这些示例中,每个服务定义仅关于其自身的交易的顺序。使用时间变元,并且具体地说,引用多于一个的服务的时间戳的所嵌套的时间(或多时间)变元,可以获得关于跨越所有服务的所有交易的部分顺序。随着信道上所做出的更多变元是具有与服务于该信道的更多服务关联的更多上下限时间戳的时间变元,该部分顺序于是变得更严格。
图14是通过示例的方式的用于知识令牌的生命周期图的框图,图15是示出图14的知识令牌的示例实现方式的流程图。在该上下文中,知识令牌使得能够使用知识对拥有权和拥有权的传送进行建模。知识令牌***是以使用以上都讨论的隐式变元和变元链为基础的。假设通信用户观测共享信道104上的所有通信,如在此所描述的那样。此外,也如上所述,加密时间戳服务可以用于建立关于通信的顺序的一致性。
在示例中,某知识以及该知识的独占拥有者表征知识令牌。该知识可以例如通过以下两种方式之一而出现:要么通过具有随机(唯一已知的)sk的S变元,要么通过隐式变元。前者创建某方所拥有的新的知识令牌,而后者传送其拥有权。
在简单知识令牌***的示例中,可以产生的是,全都获知用户A获知在G上满足ga=y的a并且用户B获知在G上满足gb’=z的b',其中,g、y、z、G是给定的。如在此所讨论的那样(例如,在以上用于构造S和/或T的第十三示例实施例中),当用户A将a可验证地传递到用户B时,任何人可以关于gb=yz验证用户B获知b。因此,用户A已经使得b对于用户B已知,而无需获知b,并且所有用户可以验证该情况。这是可验证的知识交易。
所有用户可验证的该***的规则声明,当该交易完成时,a是无效的,不再表示拥有权,并且b生效,现在表示新的拥有权。如果交易归因于可验证的通信失败而失败,则规则声明:a仍生效,并且b甚至不被识别,如同未可验证地传递那样。
虽然知识改变,但***将该交易视为传送独特知识令牌K,其在交易之前与知识a和拥有者A关联,并且在交易之后与知识b和拥有者B关联。用户B可以现在将该知识令牌传送到另一用户,这将产生与K关联的新的知识以及新的拥有者。
在具有对应于拥有者的节点的图中,在通过K[a,b]所标记的示例中,这种传送可以视为边沿。知识令牌K沿着具有带有b=c的连续边沿K[a,b]、K[c,d]的该图中的路径移动。通过该***的以下规则,观测交易的任何用户可以跟踪令牌拥有权。
在恰所概述的该简单***中,第一种知识是a和b,并且称为密钥知识。该知识必须已经在某时间点与知识令牌K关联。在K的所有这些密钥知识当中,仅最后一个生效,并且其余的是无效的。
第二种知识(即b’)是地址知识。其允许用户(在此情况下,用户B)在b’的知识所表示的地址处接收K。任何用户可以通过简单地做出类型S变元来创建新的地址。
为了创建知识令牌,***定义工作证明问题。例如,该问题可以包括区块链工作证明问题,其中,该问题在于发现目前,从而若干近来交易的区块的散列具有特定比特模式。替代地,其可以包括要求解的对于人类更有用的问题。此外,作为用于避免各用户之间的竞争以求解同一问题的一种方式,问题可以包括求解方的PKI私钥,使得问题对于每个用户是特定的。
通常,问题应是不可预测的,并且一个交易与另一交易是不同的。用户A当传递对通过某a的知识变元所扩增的问题的解的知识变元时被赋予知识令牌;与密钥知识a和拥有者A关联的新的知识令牌得以创建。如果例如对于将某值与令牌进行关联是有用的,则问题或其各方面也可以与令牌关联。
很多其它知识令牌***是可能的。例如,可以使用除了离散对数之外的难问题或通过某种其它类型的变元对密钥知识和地址知识进行变元化。可以采用上述复杂变元以设置很多其它计算问题,在此情况下,隐式变元将得以不同地推论。
在第二示例中,多于一个的密钥知识可以变为无效,或通过一个交易成为生效。可以在***的规则中定义该情况,以用于处理例如以上所描述的纠缠通信交易所触发的多个边沿。
在第三示例中,可以通过附加要求或效果来扩增知识交易。可以在***的规则中定义该情况,以用于处理对通信所扩增的以上所讨论的复杂变元。
可以通过很多方式设计交易。其可以被设计为失败,除非其中包括多个授权签名。其可以被设计为考虑工作证明问题或与令牌关联的某种其它类型的变元,例如,以关于求解更难的问题更好地补偿求解方。其也可以被设计为影响失败于不足资金的值的传送,虽然这样要求关于可以从例如加密时间戳服务获得的交易顺序的一致性。
作为最后示例,假设定义用于指定用于处理给定交易的规则的语言,那么可以在交易自身的通信中对该规则进行编码。可以通过对知识令牌的拥有者所批准的实质上任何权限来保佑知识令牌。其可以是具有某值的加密币,或其可以是某智能资产或某其它权限。权限自身可以但无需由知识令牌***表示;权限受***参与方尊重或具有有用的法定效力是足够的。此外,知识交易可以被配置为同样通过任何权限在完成时保佑其留下的令牌中的每一个。
图14是示出上述示例知识令牌***中的知识令牌的生命周期图的框图。在图14中,每个节点1402-1410标记有并且对应于密钥知识,并且每个居间边沿标记有地址知识而且对应于知识令牌交易,其标记对于该地址出现在对应边沿之下。
在开始时,令牌与对应于边沿的源的源密钥知识并且与获知它的拥有者关联。在结束时,令牌与对应于边沿的目标的目标密钥知识并且与获知它的拥有者关联。归因于交易,边沿的地址密钥知识以及变为无效的源密钥知识组合,以产生变为生效的目标密钥知识。确定该组合的方式取决于例如使用上述示例中的离散对数问题对这些知识进行变元化的方式。
图15是示出图14的示例实现方式的流程图。在图15的示例中,获得/选取秘密密钥sk,并且创建新的令牌(1502),并且秘密密钥与令牌关联(1504)。
如果随后交易不是知识令牌交易,则处理可以结束(1506、1514)。为了知识令牌交易继续(1506),获得用于交易的地址密钥ak(1508),将sk和ak组合为sk’(1510),将sk设置为sk’(1512),并且处理返回到操作(1504),如所示那样。
在本描述中,通常假设已知的或将来的加密技术是可用的并且足以提供期望的安全性等级。然而,使用任何单个加密方法所构建的变元可能在原理上受破坏该方法的将来攻击危及。因此,如果对于增强安全性是必要或期望的,则可以使用分散式变元。在该上下文中,分散式变元指代包括均使用不同加密方法所构建的多个共享的变元,从而我们可以仅如果我获知至少特定数量的共享则可以恢复知识。通过注记的方式,在以下,具有自由下标i的公式应用于所有i∈{1,...,k}。
对于某sk的t分散式知识变元,首先,秘密共享方法(例如单独地或与公知的Rabin信息分散算法(IDA)组合的公知的Shamir秘密共享方法)用于在共享s1,...,sk上分散sk。其次,计算使用独立加密方法的si的知识的变元Si。在该上下文中,独立性表示破坏一种加密方法实质上独立于破坏另一种加密方法的事件。
然后,计算变元T,至少t个共享的知识暗指具有相同秘密共享方法的sk的知识。然后,我们做出变元R=(S1,...,Sk,T)。因此,该示例提供分散的可验证的通信,而不披露共享。
作为示例,考虑这样的情况:k=2、t=2,并且S1和S2分别依赖于RSA加密***和Lamport签名,如上所述。如果在将来的某点,RSA加密***被破坏,但Lamport签名保持无损,则虽然由于现在任何人可能已经恢复s1因此S1现在受危及,但归因于S2是良好的导致变元R仍是有效的。换言之,因为现在受危及的共享的数量c为1,所以c<t,这对于验证是足够的。可以实质上对于任何变元而不仅对于获知sk的变元做出分散式变元。例如,可以做出递归分散式变元。注意,甚至当仅一种加密方法用于所有共享时也可以使用分散;在此情况下,分散保护抵抗破坏特定数量的具体共享(而非破坏方法)。
实际上,可以随意并且通过如所需要或期望的那样多的加密方法来做出分散式变元。t、k的选取至少影响安全性、计算复杂度、变元大小以及所共享的秘密的可用性。为了使得安全性最大化,我们可以使得t最大化。为了使得可用性最大化,我们可以使得k最大化。t=k的选取对应于全有或全无变换(公知的概念)。当在多个可能协调的信道上散开共享时,t<k可以是有用的。在此情况下,t个信道需要对于该t散开的变元的可验证的通信是可用的。为了危及共享的秘密,我们将需要危及若干信道中的共享,而不仅若干加密方法。此外,在该情形中,可以可能的的是,倘若可以更新共享,则使用公知的主动秘密共享的方法来修复比t个共享更少的危害。
以下提供各种使用情况情形的示例,以上引用其中的一些,但其全都不应看作限制或涵盖在此所描述的示例实施例(或其变形)的可能的使用。例如,***100可以用于提供接收方不能(可行地)辩驳的已经做出的法律服务公告。具体地说,可验证的通信的这种应用使得能够获得在任何时间通信可以服务于接收方的保证。换言之,接收方不能延迟或拒绝受服务。一旦已经做出可以一次强制的关于接收方的变元S,任何其它方就可以现在可验证地传递保证接收方现在获知可能地满足参照图7-图9所讨论的一些性质并且因此(例如,通过法律通告(例如法庭庭谕或发送方希望确认接收的任何其它文档或传送))已经受服务的消息的变元T。
在用于某种形式的支付或用于其它虚拟货物的交换中,一些实现方式包括并且启用虚拟货物或数字物品的可验证的贸易。在此的优点是,任何人可以确认交换已经发生,而无需获知虚拟货物的内容。例如,我们可以关于另一人所拍摄并且拥有的照片进入某信用额度(例如使用标准***或加密货币交易所实现的金融信用)的交换。上述复杂变元可以提供交易保证,由此全有或全无以下情况已经产生:所意图的资金是可用的并且已经根据意图得以转账,所意图的照片已经根据意图得以传送,并且任何人可以验证该情况而无需获知照片,并且如果配置如此,则也无需获知所涉及的人的额度或身份。由于照片对于其它人仍为未知的,因此其可以重新销售,一般是期望的结果。消除关于受信第三方的需要的去中心化验证是尤其有利的。此外,通过使用关于图10和图11所描述的纠缠通信,我们可以增量式地设置虚拟货物的多方交易。该应用可以处理的虚拟货物的其它非限定性示例是文档或文件、原始数据或所推导的数据、音频或视频记录、虚拟游戏物品以及很多更多物品。
在另一示例中,可验证的通信使得我们能够做出某信息是真实的变元。具体地说,假设公司正报价以销售从其内部数据集合推导的某分析;一般不存在信息是真实的而且未编造的保证。有效地,买家将需要信任卖家达某种程度。然而,使用可验证的通信,公司将能够做出所传递的信息是真实的可验证的变元,而不披露源数据集合或要求信任自身。用于进行该操作的一种方式是做出声明同一信息传递到已经使用良好地建立的方法以处理同一信息并且得到可以细查的一些所公开的结果的其它可尊重的公司的变元。这样,一致地构建信息是真实的信任。去中心化的验证有效地消除对于接收方与发送者之间的预先建立的信任关系的需要。该应用可以处理的真实信息的其它非限定性示例是医疗信息、承保人或保单信息、信用或贷款信息、自身量化的信息以及很多更多东西。
在另一示例中,使用参照图12和图13所描述的最后提交***的时间变元使得能够进行可以通过多方的签名所超控的可超控的合同(例如意向或合同)的可验证的通信。在这些情形中,某人对某受信方(例如人、商业或法律实体,或在其它示例中,被设计为当其停止从其人类操作者接收实况信号时提出合同的软件)可验证地传递在某时间点声明人们的意愿的以加密方式签名的消息。当所涉及的时间戳是独特的并且出现在一致链上时,最后提交***保证最新超控占优,因为提出具有某时间戳的意愿抵销具有更早时间戳的所有意愿。注意,虽然我们可以使用首先提交***实现可超控的合同,但例如归因于将数据放置在区块链上的成本,与该解决方案关联的成本可能较高。用于该应用的可验证的通信优于简单地对加密合同进行签名的优点是:即使合同的内容可以并非对于所有人是已知的,但合同的通信对于所有人也是已知的(虽然,在这些实施例中,可以使用图7-图9的技术可验证地传递最新版本的内容改变的特性,而不披露实际内容改变)。使用该***,拒绝成功地传递的合同的存在性以及时间最后提交性质变得不可行。我们也可以将其应用于非可超控的合同。上述衰落变元以及加密衰落变元可以用于实现待运用的马上遗忘。在一些情况下,可以在无需信任第三方或依赖于法律对此进行强制的情况下完成该操作。通过可验证地传递衰落变元,一方能够对任何人确证变元的拥有权。例如,某人可以匿名地并且可验证地传递包括私有照片的变元,并且保持与之关联的拥有权令牌。只要令牌得以保持,该人就可以(例如通过表明获知用于它的有效解盲化签名,如上所述)对任何人确证拥有令牌的匿名身份是照片的发源方。为了使得照片的拥有权被遗忘,该人使得关联变元衰落,从而无人可以将身份或人链接到照片。马上遗忘应用可以通过自然的方式扩展到多方以及多个拥有权。我们也可以将对应于其它拥有权的其它变元链接到衰落变元,以使得它们在衰落时同样被遗忘。
在衰落变元和加密衰落变元的的另一应用中,在一些情况下,使得一方能够运行马上撤销,而无需信任第三方或依赖于法律对其进行强制。该应用可以描述为恰所描述的马上遗忘应用的修改,其中,拥有令牌并且拥有解盲化的签名的一方可以是独特的。令牌拥有者能够使得关联变元衰落,由此撤销签名拥有者用于对任何人确证变元的拥有权的能力。令牌拥有者也可以通过将新的(例如具有最新可用时间戳的)签名颁发给同一签名拥有者来解除撤销,这是复原。马上撤销应用可以相似地扩展到多方以及多个拥有权。我们也可以相似地将其它变元链接到衰落变元,以使得它们在衰落时同样被撤销。
在示例实施例中为了实现总账网络,上述协调网络可以用于基于加密时间戳服务(例如区块链)解决总账解决方案中固有的可分级性问题。这种可分级性问题源于低(平均)工作证明时间与放弃新的区块的低概率之间的固有冲突。降低工作证明时间允许更少的时间用于新的区块传输通过网络,并且因此增加某网络节点在生成链接到较旧节点的区块时将起作用的概率。因此,区块链节点将拒绝更多所生成的区块,并且更多的计算努力将被浪费。
目前,BitCoin中的工作证明时间设置为大约10分钟。归因于较不完整的网络传输,当工作证明时间显著小于该值时,浪费显著增加。为了解决可分级性问题,可以构建协调网络,其中,每个服务掌控其自身的总账,其与全局总账相比在大小方面可以远更小,具有远更少的节点、远更低的网络传输时间、远更低的工作证明时间以及远更低的新的区块被拒绝的概率。将此推到极端产生具有实质上无浪费的每方的总账。与总账分离地保持的网络协调产生一起取得的所有总账的一致状态。
对于通过减少浪费来解决这种可分级性问题的加密时间戳服务,可分级性可以源自仅一个节点在给定时间生成区块的限制。即使交易发源方可以确定节点并且将交易路由至其,总体***生产率也受限于单个节点的容量(如果所指定的节点具有总体容量的显著部分,则或许因为其由大资源池支援,所以于是总体***受关注并且其完整性降级,这是比初始可分级性问题更糟的问题)。可以通过构建协调网络解决可分级性问题,其中,由于可以作为分离的处理而执行协调,因此可以同时利用很多节点的容量。
在总账对经济或另外各账户之间的交易的顺序有意义的***进行建模的情况下,用于建构网络的一种方式是使用均管理总账中的独特账户集合的隔断并且当穿过隔断边界传送值时使用协调。我们也可以递归地再划分隔断,从而子隔断显现为其超级隔断中的账户。该结构与在银行级管理个人账户并且在另一等级管理银行间余额的方式一致。此外,可以可能的的是,优化该结构以使得(实际或期待的)交叉隔断协调最小化。其它模块化网络结构同样是可能的。
在前面实施例的版本中,可以使用知识令牌和纠缠通信。前者使得能够通过与之关联的各种可验证的通信能力使用知识令牌实现总账,而后者使得能够以分布式和模块化方式在这些总账内设置高度复杂的交易。
在与使用总账有关的另一使用情况情形中,更高阶变元可以用于使得能够安全压缩总账,保持其完整性。用于进行该操作的一种方式是通过在账户的余额上做出检查点变元。通过使用自从每个账户的检查点以来的用于每个账户的至少一个先前检查点变元和交易变元作为输入来做出验证账户集合的当前余额的检查点变元,我们可以确证当前检查点余额是有效的。使用复杂变元,检查点可以还包括例如用于检查点中所包括的交易数据量的附加验证,以增强安全性或其它特征。通过该方法,检查点变元比先前检查点更高一阶。如果因为先前检查点不存在,所以当前检查点是第一检查点,则初始地可以对于其中所包括的所有账户假设零余额。当检查点变为一致时,我们可以丢弃其中所包括的交易变元的记录,并且因此压缩总账。该操作有效地是清算以及和解的可验证的通信的处理。其也可以应用于使用上述协调网络的多个信道,其中,检查点包括其得以变元化的信道中所消息的账户的余额,如在此所引用的那样。
在可验证的中继的示例实现方式中,协调网络使得能够进行穿过中继的可验证的通信,其可能经受失败或另外不受信任。示例是可验证的电子邮件传送,其中,传统上,中继点包括发送方和接收方的电子邮件服务器。在一些情况下,例如在(公知的)混合网络中,可以涉及很多更多的服务器。通过处理该电子邮件的协调网络,在保持针对第三方进行的拦截或改动的安全性的同时,即使中继与多个信道相交,各方也可以得到可信的接收证明,而接收方不能够拒绝它。
在用于可验证的拍卖的示例实现方式中,纠缠通信和协调网络可以用于使得能够以模块化方式潜在地穿过多个信道组织匿名的、公平的、安全的、可验证的并且无信任的拍卖。在非限定性示例中,拍卖协调者将拍卖组织为纠缠通信交易。拍卖设置为这样的:可验证地传递参与方中的每一个进行的竞价,需要对应竞价密钥的知识。该密钥秘密地传递到拍卖协调者,拍卖协调者然后可验证地传递它,要求公共拍卖密钥的知识。拍卖协调者通过可验证地传递公共拍卖密钥来作用于交易。为了避免让拍卖协调者获知竞价,使用仅对于参与方已知的密钥来保证竞价安全可以是足够的;替代地,可以使用知识令牌,从而拍卖协调者传递未知的竞价密钥。注意,参与方可以加入拍卖,直到其关闭,也就是说,其交易受作用,这一般是期望的。此外,由于可以嵌套纠缠通信交易,因此我们可以组织嵌套的可验证的拍卖,其中,每个竞价可以发源于所嵌套的可验证的拍卖。
在又一示例实现方式中,知识令牌可以用于从恢复服务恢复遗忘的秘密密钥,而无需服务获知秘密密钥。在示例中,首先,用户选取地址密钥ak。为了节约,用户选取恢复密钥rk,将秘密密钥sk计算为rk、正采用的知识令牌***所定义的ak的组合,并且可能地开放式地将rk连同标识符一起传递到设备。在一些情况下,rk和标识符可以是相同的,并且易于收回。假设用户遗忘sk。为了恢复sk,用户请求服务执行关于相同标识符的恢复。响应于此,服务可验证地传递rk。因此,仅用户学习sk,并且任何人可以验证该情况。因此,恢复服务可以在极大地减少纠纷的风险的同时对其服务进行收费(或另外被赊购)。我们可以通过以下操作来增强该应用:使用多个恢复服务,其中,恢复密钥rk可以被复制或穿过它们(例如,使用在此所引用的分散式变元)而分散;使用恢复密钥与正采用的知识令牌***所定义的秘密密钥之间的一对多关系或多对一关系或多对多关系;以及使用多个信道,从而信道可以用于每个rk或其分散式共享。类似信任web的设置(其中,每个用户恢复其朋友)是另一选项。也可以使用纠缠通信以将一个交易中的多个恢复包裹在一起。
在最后的示例实现方式中,可以使用图1的***100提供全局分布式数据库。例如,扩展总账压缩和总账网络的数据库如上所述使得能够在保持数据安全性和完整性的同时实现能够掌控物理上贯穿全局网络而定位的节点上的极度数据量的安全的分布式数据库(例如全局分布式数据库)。
使用交易来修改数据库的状态。每个交易表示为可能地链接或纠缠的一个或多个变元,其在一个或多个信道上得以可验证地传递并且协调到一个或多个其它信道。对于数据分布,每个信道关于状态的部分处理交易,并且处理中的任何重叠在各信道之间得以协调。对于数据可用性,可以通过地理上分散的信道来处理一部分。此外,优化该结构可以是可能的,从而使得协调最小化。因此,变元的加密可以提供数据安全性,并且模块化协调网络可以提供对于极度数据量的支持。
因为可以做出变元作为有上下限的多时间变元,所以对应交易在时间上在部分排序方面是可比较的。通过该部分排序,当交易的应用于状态的顺序有意义时,交易可能识别为冲突,并且它们在部分排序方面不是可比较的。仅当验证器可以确定这种冲突不存在或可能稍后产生时,允许交易进入一致性,当用于每个处理信道的一致的最新时间戳(或时间)已经关于同一信道前进超越与交易关联的对应上限时间戳(或时间)时,该情况得以保证。当这种冲突是不可能的时,交易可以按对于这些交易良好地定义的部分排序所定义的顺序应用于状态。因此,可以通过拒绝任何潜在冲突来提供数据完整性。
在此所描述的各种技术的实现方式可以实现于数字电子电路中、或计算机硬件、固件中,或其组合中。实现方式可以实现为计算机程序产品(即在非瞬时信息载体中(例如机器可读存储设备(计算机可读介质)中)有形地实施的计算机程序),以用于由数据处理装置(例如可编程处理器、一台计算机或多台计算机)处理,或控制其操作。可以通过任何形式的编程语言(包括编译语言或解释语言)来写计算机程序(例如上述计算机程序),并且可以通过任何形式(包括作为单机程序或作为模块、组件、子例程、或适合于在计算环境中使用的其它单元)来部署它。计算机程序可以被部署为在一个地点或穿过多个地点而分布并且通过通信网络而互连的一台计算机或多台计算机上受处理。
可以通过执行计算机程序的一个或多个可编程处理器来执行方法步骤,以通过对输入数据进行操作并且生成输出来执行功能。方法步骤也可以由专用逻辑电路(例如FPGA(现场可编程门阵列)或ASIC(专用集成电路))执行,并且装置可以实现为它们。
通过示例的方式,适合于处理计算机程序的处理器包括通用和专用微处理器、以及任何种类的数字计算机的任何一个或多个处理器。通常,处理器将从只读存储器或随机存取存储器或二者接收指令和数据。计算机的元件可以包括用于执行指令的处理器以及用于存储指令和数据的一个或多个存储器设备。通常,计算机也可以包括用于存储数据的一个或多个大规模存储设备(例如磁盘、磁光盘或光盘),或可操作地耦合以从其接收数据或将数据传递至其或对其接收并且传递数据。适合于实施计算机程序指令和数据的信息载体包括所有形式的非易失性存储器,通过示例的方式包括示例半导体存储器设备(例如EPROM、EEPROM和闪存设备);磁盘(例如内部硬盘或可拆卸盘);磁光盘;以及CD-ROM和DVD-ROM盘。处理器和存储器可以由专用逻辑电路补充或合并在其中。
为了提供与用户的交互,实现方式可以实现在具有用于将信息显示给用户的显示设备(例如阴极射线管(CRT)或液晶显示器(LCD)监视器)以及用户可以将输入提供给计算机的键盘和点击设备(例如鼠标或轨迹球)的计算机上。其它种类的设备同样可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感觉反馈(例如视觉反馈、听觉反馈、或触觉反馈);并且可以通过任何形式(包括声学、话音或触觉输入)来接收来自用户的输入。
可以在包括后端组件(例如数据服务器)或包括中间件组件(例如应用服务器)或包括前端组件(例如具有用户可以与实现方式进行交互的图形用户接口或Web浏览器的客户机计算机)或这些后端组件、中间件组件、或前端组件的任何组合的计算设备中实现各实现方式。组件可以通过任何形式的数字数据通信的介质(例如通信网络)而互连。通信网络的示例包括局域网(LAN)和广域网(WAN)(例如互联网)。
除了已知的计算资源的恰引用的使用之外,应理解,将来的技术可以用于实现在此所描述的各个实施例及其变形。例如,量子计算设备可以用作关于恰所描述的各种计算***的部分替代或完全替代。
虽然已经在此如所描述的那样示出所描述的实现方式的特定特征,但很多修改、替换、改变和等同现将对于本领域技术人员产生。因此,应理解,所附权利要求旨在覆盖落入实施例的范围内的所有这些修改和改变。应理解,它们已经仅通过示例而非限制的方式被提出,并且可以进行形式和细节方面的各种改变。除了互斥组合之外,可以通过任何组合来组合在此描述的装置和/或方法的任何部分。在此描述的实施例可以包括所描述的不同实施例的功能、组件和/或特征的各种组合和/或部分组合。

Claims (51)

1.一种计算机程序产品,包括指令,其记录在非瞬时计算机可读存储介质上,并且当由至少一个处理器执行时被配置为使得所述至少一个处理器:
从至少一个共享通信信道接收多重编码的密钥,所述多重编码的密钥包括用于秘密密钥的密钥清单,所述密钥清单提供用于所述秘密密钥的知识变元;
从所述至少一个共享通信信道接收多重编码的消息,所述多重编码的消息包括用于所述秘密密钥的消息清单,所述消息清单包括指示所述秘密密钥的知识能够存取所述多重编码的消息的消息内容的隐式变元;以及
比较所述密钥清单和所述消息清单,以建立所述秘密密钥和所述多重编码的消息的拥有者具有对所述消息内容的存取。
2.如权利要求1所述的计算机程序产品,其中,在所述多重编码的消息的发送者与接收者之间交互地构造用于所述秘密密钥的所述知识变元。
3.如权利要求1所述的计算机程序产品,其中,由所述多重编码的消息的发送者或接收者并非交互地构造用于所述秘密密钥的所述知识变元。
4.如权利要求1所述的计算机程序产品,其中,所述隐式变元得以包括作为构造为指示所述秘密密钥的知识暗指用于对所述多重编码的消息进行解码的能力的所述消息清单中的项。
5.如权利要求1所述的计算机程序产品,其中,所述知识变元由所述多重编码的消息的接收方所操作的多重编码的密钥编码器与用于对所述多重编码的消息进行解码的解码器结合而产生并且提供给所述至少一个共享通信信道。
6.如权利要求1所述的计算机程序产品,其中,所述知识变元由所述多重编码的消息的发送者所操作的多重编码的密钥编码器产生并且提供给所述至少一个共享通信信道。
7.如权利要求1所述的计算机程序产品,其中,在将所述消息清单内的所述隐式变元提供给所述至少一个共享通信信道之前,将所述密钥清单内的所述知识变元提供给所述至少一个共享通信信道。
8.如权利要求7所述的计算机程序产品,其中,所述知识变元提供其提供者成为所述多重编码的消息的接收方的承诺,并且所述多重编码的消息提供所述多重编码的消息已经提供给所述接收方的确认。
9.如权利要求1所述的计算机程序产品,其中,在将所述密钥清单内的所述知识变元提供给所述至少一个共享通信信道之前,将包括所述隐式变元的所述消息清单提供给所述至少一个共享通信信道。
10.如权利要求9所述的计算机程序产品,其中,所述隐式变元提供其提供者成为所述多重编码的消息的发送者的承诺,并且所述密钥清单内的所述知识变元提供所述多重编码的消息已经提供给作为所述秘密密钥的拥有者的接收方的确认。
11.如权利要求1所述的计算机程序产品,其中,所述密钥清单指定作为所述秘密密钥的所述拥有者的所述多重编码的消息的接收方的身份。
12.如权利要求1所述的计算机程序产品,其中,所述消息清单指定所述多重编码的消息的发送者的身份。
13.如权利要求1所述的计算机程序产品,其中,作为用于生成所述知识变元的生成处理的部分,生成所述秘密密钥。
14.如权利要求1所述的计算机程序产品,其中,所述消息清单还包括标识所述消息内容的性质的性质变元。
15.如权利要求14所述的计算机程序产品,其中,在不提供所述消息内容的情况下标识所述性质。
16.如权利要求1所述的计算机程序产品,其中,所述指令当执行时进一步被配置为:
从所述至少一个共享通信信道接收第二多重编码的消息;
比较所述第二多重编码的消息的第二消息清单以建立所述秘密密钥和所述第二多重编码的消息的所述拥有者具有对所述第二多重编码的消息的消息内容的存取;以及
验证需要所述多重编码的消息和所述第二多重编码的消息二者的纠缠通信已经成功。
17.如权利要求1所述的计算机程序产品,其中,所述指令当执行时进一步被配置为:
从所述至少一个共享通信信道接收第二多重编码的消息;
比较来自所述消息清单的第一时间变元与来自所述第二多重编码的消息的第二消息清单的第二时间变元;以及
使用所述第一时间变元和所述第二时间变元确定关于在所述至少一个共享信道上放置所述多重编码的消息和所述第二多重编码的消息的顺序的时间排序信息。
18.如权利要求1所述的计算机程序产品,其中,所述消息清单和所述密钥清单中的至少一个包括初始地与身份关联但随着时间变得较不与所述身份关联的衰落变元。
19.如权利要求1所述的计算机程序产品,其中,所述至少一个共享通信信道包括至少两个共享通信信道,并且所述多重编码的密钥是从第一共享通信信道接收的,所述多重编码的消息是从第二共享通信信道接收的。
20.如权利要求1所述的计算机程序产品,其中,所述消息内容与用于产生所述多重编码的消息的源消息内容有关但不同。
21.如权利要求20所述的计算机程序产品,其中,使用建立所述消息内容而非所述源消息内容的拥有权的知识令牌变元建立所述消息内容的拥有权。
22.一种方法,包括:
从至少一个共享通信信道接收多重编码的密钥,所述多重编码的密钥包括用于秘密密钥的密钥清单,所述密钥清单提供用于所述秘密密钥的知识变元;
从所述至少一个共享通信信道接收多重编码的消息,所述多重编码的消息包括用于所述秘密密钥的消息清单,所述消息清单包括指示所述秘密密钥的知识能够存取所述多重编码的消息的消息内容的隐式变元;以及
比较所述密钥清单和所述消息清单,以建立所述秘密密钥和所述多重编码的消息的拥有者具有对所述消息内容的存取。
23.如权利要求22所述的方法,其中,在所述多重编码的消息的发送者与接收者之间交互地构造用于所述秘密密钥的所述知识变元。
24.如权利要求22所述的方法,其中,由所述多重编码的消息的发送者或接收者并非交互地构造用于所述秘密密钥的所述知识变元。
25.如权利要求22所述的方法,其中,所述隐式变元得以包括作为构造为指示所述秘密密钥的知识暗指用于对所述多重编码的消息进行解码的能力的所述消息清单中的项。
26.如权利要求22所述的方法,其中,所述知识变元由所述多重编码的消息的接收方所操作的多重编码的密钥编码器与用于对所述多重编码的消息进行解码的解码器结合而产生并且提供给所述至少一个共享通信信道。
27.如权利要求22所述的方法,其中,所述知识变元由所述多重编码的消息的发送者所操作的多重编码的密钥编码器产生并且提供给所述至少一个共享通信信道。
28.如权利要求22所述的方法,其中,在将所述消息清单内的所述隐式变元提供给所述至少一个共享通信信道之前,将所述密钥清单内的所述知识变元提供给所述至少一个共享通信信道。
29.如权利要求22所述的方法,其中,在将所述密钥清单内的所述知识变元提供给所述至少一个共享通信信道之前,将包括所述隐式变元的所述消息清单提供给所述至少一个共享通信信道。
30.如权利要求22所述的方法,其中,所述密钥清单指定作为所述秘密密钥的所述拥有者的所述多重编码的消息的接收方的身份。
31.如权利要求22所述的方法,其中,所述消息清单指定所述多重编码的消息的发送者的身份。
32.如权利要求22所述的方法,其中,所述消息清单还包括标识所述消息内容的性质的性质变元。
33.如权利要求22所述的方法,其中,所述消息清单和所述密钥清单中的至少一个包括初始地与身份关联但随着时间变得较不与所述身份关联的衰落变元。
34.如权利要求22所述的方法,其中,所述至少一个共享通信信道包括至少两个共享通信信道,并且所述多重编码的密钥是从第一共享通信信道接收的,所述多重编码的消息是从第二共享通信信道接收的。
35.如权利要求22所述的方法,其中,所述消息内容与用于产生所述多重编码的消息的源消息内容有关但不同。
36.如权利要求35方法,其中,使用建立所述消息内容而非所述源消息内容的拥有权的知识令牌变元建立所述消息内容的拥有权。
37.一种验证器***,包括非瞬时计算机可读存储介质上所存储的并且可由至少一个处理器执行的指令,所述验证器***包括:
密钥清单解释器,被配置为:使得所述至少一个处理器从至少一个共享通信信道接收多重编码的密钥,所述多重编码的密钥包括用于秘密密钥的密钥清单,所述密钥清单提供用于所述秘密密钥的知识变元;
消息清单解释器,被配置为:使得所述至少一个处理器从所述至少一个共享通信信道接收多重编码的消息,所述多重编码的消息包括用于所述秘密密钥的消息清单,所述消息清单包括指示所述秘密密钥的知识能够存取所述多重编码的消息的消息内容的隐式变元;以及
清单比较器,被配置为:使得所述至少一个处理器比较所述密钥清单和所述消息清单,以建立所述秘密密钥和所述多重编码的消息的拥有者具有对所述消息内容的存取。
38.如权利要求37所述的验证器***,其中,在所述多重编码的消息的发送者与接收者之间交互地构造用于所述秘密密钥的所述知识变元。
39.如权利要求37所述的验证器***,其中,由所述多重编码的消息的发送者或接收者并非交互地构造用于所述秘密密钥的所述知识变元。
40.如权利要求37所述的验证器***,其中,所述隐式变元得以包括作为构造为指示所述秘密密钥的知识暗指用于对所述多重编码的消息进行解码的能力的所述消息清单中的项。
41.如权利要求37所述的验证器***,其中,所述知识变元由所述多重编码的消息的接收方所操作的多重编码的密钥编码器与用于对所述多重编码的消息进行解码的解码器结合而产生并且提供给所述至少一个共享通信信道。
42.如权利要求37所述的验证器***,其中,所述知识变元由所述多重编码的消息的发送者所操作的多重编码的密钥编码器产生并且提供给所述至少一个共享通信信道。
43.如权利要求37所述的验证器***,其中,在将所述消息清单内的所述隐式变元提供给所述至少一个共享通信信道之前,将所述密钥清单内的所述知识变元提供给所述至少一个共享通信信道。
44.如权利要求37所述的验证器***,其中,在将所述密钥清单内的所述知识变元提供给所述至少一个共享通信信道之前,将包括所述隐式变元的所述消息清单提供给所述至少一个共享通信信道。
45.如权利要求37所述的验证器***,其中,所述密钥清单指定作为所述秘密密钥的所述拥有者的所述多重编码的消息的接收方的身份。
46.如权利要求37所述的验证器***,其中,所述消息清单指定所述多重编码的消息的发送者的身份。
47.如权利要求37所述的验证器***,其中,所述消息清单还包括标识所述消息内容的性质的性质变元。
48.如权利要求37所述的验证器***,其中,所述消息清单和所述密钥清单中的至少一个包括初始地与身份关联但随着时间变得较不与所述身份关联的衰落变元。
49.如权利要求37所述的验证器***,其中,所述至少一个共享通信信道包括至少两个共享通信信道,并且所述多重编码的密钥是从第一共享通信信道接收的,所述多重编码的消息是从第二共享通信信道接收的。
50.如权利要求37所述的验证器***,其中,所述消息内容与用于产生所述多重编码的消息的源消息内容有关但不同。
51.如权利要求50所述的验证器***,其中,使用建立所述消息内容而非所述源消息内容的拥有权的知识令牌变元建立所述消息内容的拥有权。
CN201580072587.XA 2014-11-12 2015-11-10 用于通信验证的方法、***及非瞬时计算机可读存储介质 Active CN107113179B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/539,181 2014-11-12
US14/539,181 US9749297B2 (en) 2014-11-12 2014-11-12 Manicoding for communication verification
PCT/US2015/060018 WO2016122740A1 (en) 2014-11-12 2015-11-10 Manicoding for communication verification

Publications (2)

Publication Number Publication Date
CN107113179A true CN107113179A (zh) 2017-08-29
CN107113179B CN107113179B (zh) 2021-01-15

Family

ID=55913147

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580072587.XA Active CN107113179B (zh) 2014-11-12 2015-11-10 用于通信验证的方法、***及非瞬时计算机可读存储介质

Country Status (4)

Country Link
US (5) US9749297B2 (zh)
EP (2) EP3627797B1 (zh)
CN (1) CN107113179B (zh)
WO (1) WO2016122740A1 (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107833135A (zh) * 2017-10-30 2018-03-23 中山大学 一种基于区块链的公平电子投票协议
CN108521590A (zh) * 2018-04-10 2018-09-11 北京息通网络技术有限公司 一种防止虚假视频数据中继的方法与***
CN111433803A (zh) * 2017-12-01 2020-07-17 快特网络有限公司 区块链通信和排序
CN111434084A (zh) * 2017-10-20 2020-07-17 慧与发展有限责任合伙企业 来自实体的访问信息的许可
CN115118429A (zh) * 2022-03-22 2022-09-27 西安电子科技大学 可验证且完全可编辑的区块链***、方法、设备及终端
US11604890B2 (en) 2017-10-20 2023-03-14 Hewlett Packard Enterprise Development Lp Accessing information based on privileges
US11848920B2 (en) 2014-11-12 2023-12-19 Yaron Gvili Manicoding for communication verification
US12032716B2 (en) 2023-01-24 2024-07-09 Hewlett Packard Enterprise Development Lp Accessing information based on privileges

Families Citing this family (69)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8874477B2 (en) 2005-10-04 2014-10-28 Steven Mark Hoffberg Multifactorial optimization system and method
US10230526B2 (en) * 2014-12-31 2019-03-12 William Manning Out-of-band validation of domain name system records
US20160191508A1 (en) * 2014-12-31 2016-06-30 Nexenta Systems, Inc. Methods and Systems for Block Sharding of Objects Stored in Distributed Storage System
US10158480B1 (en) * 2015-03-16 2018-12-18 Winklevoss Ip, Llc Autonomous devices
WO2016179334A1 (en) 2015-05-05 2016-11-10 ShoCard, Inc. Identity management service using a block chain
US10114970B2 (en) * 2015-06-02 2018-10-30 ALTR Solutions, Inc. Immutable logging of access requests to distributed file systems
US9881176B2 (en) 2015-06-02 2018-01-30 ALTR Solutions, Inc. Fragmenting data for the purposes of persistent storage across multiple immutable data structures
US10121019B2 (en) * 2015-06-02 2018-11-06 ALTR Solutions, Inc. Storing differentials of files in a distributed blockchain
EP3110065A1 (de) * 2015-06-24 2016-12-28 medisite Technology GmbH Verschlüsselungsfilter
US20220358185A1 (en) 2015-12-02 2022-11-10 Wells Fargo Bank, N.A. Traversing data structures for compliance
US10833843B1 (en) * 2015-12-03 2020-11-10 United Services Automobile Association (USAA0 Managing blockchain access
CN115391749A (zh) * 2016-02-23 2022-11-25 区块链控股有限公司 使用分布式散列表和区块链保护计算机软件的方法及***
US10587609B2 (en) 2016-03-04 2020-03-10 ShoCard, Inc. Method and system for authenticated login using static or dynamic codes
US10509932B2 (en) 2016-03-07 2019-12-17 ShoCard, Inc. Large data transfer using visual codes with feedback confirmation
US10007826B2 (en) 2016-03-07 2018-06-26 ShoCard, Inc. Transferring data files using a series of visual codes
US10135616B2 (en) * 2016-05-07 2018-11-20 Keir Finlow-Bates Revocation of cryptographic keys in the absence of a trusted central authority
US9979718B2 (en) * 2016-05-11 2018-05-22 Bank Of America Corporation System for managing security and access to resource sub-components
CA3026405C (en) * 2016-06-01 2023-03-28 Archive360, Inc. Methods and systems for archiving and retrieving data
US10411905B2 (en) * 2016-07-01 2019-09-10 Intel Corporation Public key infrastructure using blockchains
US10498741B2 (en) 2016-09-19 2019-12-03 Box, Inc. Sharing dynamically changing units of cloud-based content
US10367645B2 (en) * 2016-10-26 2019-07-30 International Business Machines Corporation Proof-of-work for smart contracts on a blockchain
FR3058292B1 (fr) * 2016-10-31 2019-01-25 Idemia Identity And Security Procede de fourniture d'un service a un utilisateur
US10891370B2 (en) * 2016-11-23 2021-01-12 Blackberry Limited Path-based access control for message-based operating systems
US10523421B2 (en) * 2016-11-30 2019-12-31 International Business Machines Corporation Checkpoints for permissionless blockchains
US10586210B2 (en) 2016-11-30 2020-03-10 International Business Machines Corporation Blockchain checkpoints and certified checkpoints
US10498541B2 (en) 2017-02-06 2019-12-03 ShocCard, Inc. Electronic identification verification methods and systems
USRE49968E1 (en) 2017-02-06 2024-05-14 Ping Identity Corporation Electronic identification verification methods and systems with storage of certification records to a side chain
US10397002B2 (en) * 2017-02-10 2019-08-27 International Business Machines Corporation Signature scheme for homomorphic message encoding functions
WO2018153486A1 (en) * 2017-02-24 2018-08-30 NEC Laboratories Europe GmbH Method for signing a new block in a decentralized blockchain consensus network
CN107360206B (zh) * 2017-03-29 2020-03-27 创新先进技术有限公司 一种区块链共识方法、设备及***
CN110494875A (zh) 2017-04-11 2019-11-22 区块链控股有限公司 用于动态节点群组的私钥的安全再使用
EP3683707A4 (en) * 2017-09-14 2020-10-14 Sony Corporation INFORMATION PROCESSING DEVICE, INFORMATION PROCESSING PROCESS AND PROGRAM
JP7405745B2 (ja) * 2017-11-02 2023-12-26 エヌチェーン ライセンシング アーゲー ブロックチェーンをデジタルツインのセットにリンクするための、コンピュータにより実施されるシステム及び方法
US11270318B1 (en) * 2017-11-08 2022-03-08 Brand Therapy Llc System and method for identifying virtual goods
EP4120620A1 (en) 2017-12-08 2023-01-18 Ping Identity Corporation Methods and systems for recovering data using dynamic passwords
US10715323B2 (en) 2017-12-29 2020-07-14 Ebay Inc. Traceable key block-chain ledger
US10896418B2 (en) 2017-12-29 2021-01-19 Ebay Inc. Secure management of data files using a blockchain
US10659217B2 (en) 2018-01-05 2020-05-19 Bank Of America Corporation Blockchain-based automated user matching
US10817829B2 (en) * 2018-02-23 2020-10-27 Bank Of America Corporation Blockchain-based supply chain smart recall
CN108737403A (zh) * 2018-05-10 2018-11-02 阿里巴巴集团控股有限公司 一种区块链数据处理方法、装置、处理设备及***
US11436620B2 (en) * 2018-06-25 2022-09-06 NortonLifeLock Inc. Facilitating third party utilization of personal computing resources in exchange for software usage
WO2020019270A1 (en) * 2018-07-27 2020-01-30 Nokia Solutions And Networks Oy Method, device, and system for network traffic analysis
KR20200034020A (ko) 2018-09-12 2020-03-31 삼성전자주식회사 전자 장치 및 그의 제어 방법
CN109361661B (zh) * 2018-10-08 2020-07-10 莆田市烛火信息技术有限公司 一种依附相关链算力的区块链的共识装置
US11301452B2 (en) 2018-10-09 2022-04-12 Ebay, Inc. Storing and verification of derivative work data on blockchain with original work data
US11082221B2 (en) 2018-10-17 2021-08-03 Ping Identity Corporation Methods and systems for creating and recovering accounts using dynamic passwords
US10979227B2 (en) 2018-10-17 2021-04-13 Ping Identity Corporation Blockchain ID connect
US11240001B2 (en) * 2018-11-06 2022-02-01 International Business Machines Corporation Selective access to asset transfer data
CN109377229B (zh) * 2018-11-23 2021-03-02 全链通有限公司 一种交易共识方法、节点及区块链***
US11082406B2 (en) * 2018-11-29 2021-08-03 Secret Double Octopus Ltd System and method for providing end-to-end security of data and metadata
CN109801071B (zh) * 2019-01-17 2020-09-29 厦门美图之家科技有限公司 密码重置方法及装置
US10764029B1 (en) * 2019-04-02 2020-09-01 Carey Patrick Atkins Asymmetric Encryption Algorithm
US11654635B2 (en) 2019-04-18 2023-05-23 The Research Foundation For Suny Enhanced non-destructive testing in directed energy material processing
US11165560B2 (en) * 2019-05-20 2021-11-02 The Quantum Group, Inc. Secure transmission of electronic health records via blockchain
WO2019228549A2 (en) 2019-08-12 2019-12-05 Alibaba Group Holding Limited Blockchain-based service of process
US11626983B1 (en) 2019-09-10 2023-04-11 Wells Fargo Bank, N.A. Systems and methods for post-quantum cryptography optimization
US11343270B1 (en) 2019-09-10 2022-05-24 Wells Fargo Bank, N.A. Systems and methods for post-quantum cryptography optimization
US11240014B1 (en) 2019-09-10 2022-02-01 Wells Fargo Bank, N.A. Systems and methods for post-quantum cryptography optimization
US11477016B1 (en) 2019-09-10 2022-10-18 Wells Fargo Bank, N.A. Systems and methods for post-quantum cryptography optimization
WO2020180365A1 (en) * 2019-12-05 2020-09-10 Futurewei Technologies, Inc. System and method of establishing a trusted relationship in a distributed system
US11322050B1 (en) * 2020-01-30 2022-05-03 Wells Fargo Bank, N.A. Systems and methods for post-quantum cryptography optimization
US11533175B1 (en) 2020-01-30 2022-12-20 Wells Fargo Bank, N.A. Systems and methods for post-quantum cryptography on a smartcard
US11449799B1 (en) 2020-01-30 2022-09-20 Wells Fargo Bank, N.A. Systems and methods for post-quantum cryptography optimization
US11838410B1 (en) 2020-01-30 2023-12-05 Wells Fargo Bank, N.A. Systems and methods for post-quantum cryptography optimization
US11546161B2 (en) 2020-02-21 2023-01-03 Hong Kong Applied Science and Technology Research Institute Company Limited Zero knowledge proof hardware accelerator and the method thereof
KR102222080B1 (ko) * 2020-02-24 2021-03-04 한국전자통신연구원 양자 개체 인증 장치 및 방법
CN112383381B (zh) * 2020-10-30 2023-08-25 刘锋 适应万物互联的编码方法、装置和电子设备
CN112926087B (zh) * 2021-03-09 2023-05-05 南京信息工程大学 基于二维码具有验证功能与高嵌入容量的秘密共享方法
US11170130B1 (en) 2021-04-08 2021-11-09 Aster Key, LLC Apparatus, systems and methods for storing user profile data on a distributed database for anonymous verification

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6396928B1 (en) * 1996-10-25 2002-05-28 Monash University Digital message encryption and authentication
US20020143710A1 (en) * 2001-04-03 2002-10-03 Gary Liu Certified transmission system
WO2003081840A1 (en) * 2002-03-19 2003-10-02 Melih Abdulhayoglu Method and system relating to a non-repudiation message exchange
CN101164086A (zh) * 2005-03-07 2008-04-16 诺基亚公司 能够使用无线网络实现***个人化的方法、***和移动设备
CN101505195A (zh) * 2008-02-08 2009-08-12 纳格维逊股份有限公司 用于授权对条件接收数据的访问的方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4200770A (en) * 1977-09-06 1980-04-29 Stanford University Cryptographic apparatus and method
US4405829A (en) 1977-12-14 1983-09-20 Massachusetts Institute Of Technology Cryptographic communications system and method
US5315658B1 (en) 1992-04-20 1995-09-12 Silvio Micali Fair cryptosystems and methods of use
AU721497B2 (en) 1996-10-25 2000-07-06 Monash University Digital message encryption and authentication
US8726009B1 (en) * 2010-01-26 2014-05-13 David P. Cook Secure messaging using a trusted third party
US9749297B2 (en) 2014-11-12 2017-08-29 Yaron Gvili Manicoding for communication verification

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6396928B1 (en) * 1996-10-25 2002-05-28 Monash University Digital message encryption and authentication
US20020143710A1 (en) * 2001-04-03 2002-10-03 Gary Liu Certified transmission system
WO2003081840A1 (en) * 2002-03-19 2003-10-02 Melih Abdulhayoglu Method and system relating to a non-repudiation message exchange
CN101164086A (zh) * 2005-03-07 2008-04-16 诺基亚公司 能够使用无线网络实现***个人化的方法、***和移动设备
CN101505195A (zh) * 2008-02-08 2009-08-12 纳格维逊股份有限公司 用于授权对条件接收数据的访问的方法

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11848920B2 (en) 2014-11-12 2023-12-19 Yaron Gvili Manicoding for communication verification
CN111434084A (zh) * 2017-10-20 2020-07-17 慧与发展有限责任合伙企业 来自实体的访问信息的许可
US11582040B2 (en) 2017-10-20 2023-02-14 Hewlett Packard Enterprise Development Lp Permissions from entities to access information
US11604890B2 (en) 2017-10-20 2023-03-14 Hewlett Packard Enterprise Development Lp Accessing information based on privileges
CN107833135A (zh) * 2017-10-30 2018-03-23 中山大学 一种基于区块链的公平电子投票协议
CN111433803A (zh) * 2017-12-01 2020-07-17 快特网络有限公司 区块链通信和排序
CN108521590A (zh) * 2018-04-10 2018-09-11 北京息通网络技术有限公司 一种防止虚假视频数据中继的方法与***
CN108521590B (zh) * 2018-04-10 2022-08-26 北京息通网络技术有限公司 一种防止虚假视频数据中继的方法与***
CN115118429A (zh) * 2022-03-22 2022-09-27 西安电子科技大学 可验证且完全可编辑的区块链***、方法、设备及终端
US12032716B2 (en) 2023-01-24 2024-07-09 Hewlett Packard Enterprise Development Lp Accessing information based on privileges

Also Published As

Publication number Publication date
CN107113179B (zh) 2021-01-15
US20180255031A1 (en) 2018-09-06
US11848920B2 (en) 2023-12-19
EP3219050A4 (en) 2017-11-29
WO2016122740A1 (en) 2016-08-04
US11388152B2 (en) 2022-07-12
US20170359316A1 (en) 2017-12-14
EP3627797A1 (en) 2020-03-25
EP3219050A1 (en) 2017-09-20
US20200259804A1 (en) 2020-08-13
EP3627797B1 (en) 2021-06-23
US9749297B2 (en) 2017-08-29
EP3219050B1 (en) 2019-10-02
US20160134593A1 (en) 2016-05-12
US20220337564A1 (en) 2022-10-20
US9961050B2 (en) 2018-05-01

Similar Documents

Publication Publication Date Title
CN107113179A (zh) 用于通信验证的多重编码
CN109889504B (zh) 去中心化数据访问权交易方法及***
US11842317B2 (en) Blockchain-based authentication and authorization
CN108389047B (zh) 区块链中母链与子链交易的方法及区块链网络
CN113411384B (zh) 针对物联网数据安全共享过程中隐私保护的***及方法
CN110419053B (zh) 用于信息保护的***和方法
US20200127813A1 (en) Method and system for creating a user identity
JP2022031817A (ja) 分散型トランザクション伝播および検証システム
TW202107377A (zh) 基於區塊鏈的資料授權方法及裝置
KR20180115764A (ko) 블록체인에서 교환을 구현하기 위한 토큰화 방법 및 시스템
WO2020051710A1 (en) System and process for managing digitized security tokens
US11818266B2 (en) Methods and systems for distributed cryptographically secured data validation
Yi et al. Blockchain Foundations and Applications
CN117290887B (zh) 基于账户区块链的可问责隐私保护智能合约实现方法
Emami et al. A blockchain-based privacy-preserving anti-collusion data auction mechanism with an off-chain approach
CN112259190B (zh) 基于区块链的医疗信息可信流转方法、装置及***
US20210319479A1 (en) Blockchain-based system and method for peer-to-peer online advertising auction
US20230131250A1 (en) Methods of operating a distributed database, network, nodes, computer program product and data carrier suitable for such methods
US20230419274A1 (en) Fully Collateralized Automated Market Maker
Piccolo Distributed ledger technology in the capital market: Shared versus private information in a permissioned blockchain
Shanthi Block Chain Based Health Care System
De Cnudde Analyzing Privacy-Preserving Smart Contracts
CN118333759A (zh) 一种基于跨链环境的多属性数据交易方法
CN112633890A (zh) 一种基于区块链的隐匿权益证明的验证方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant