CN112236987A - 用于分布式网络中的分散式信任评估的方法和装置 - Google Patents
用于分布式网络中的分散式信任评估的方法和装置 Download PDFInfo
- Publication number
- CN112236987A CN112236987A CN201880093776.9A CN201880093776A CN112236987A CN 112236987 A CN112236987 A CN 112236987A CN 201880093776 A CN201880093776 A CN 201880093776A CN 112236987 A CN112236987 A CN 112236987A
- Authority
- CN
- China
- Prior art keywords
- node
- new
- nodes
- trust
- chunk
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 123
- 238000011156 evaluation Methods 0.000 title claims abstract description 96
- 238000004891 communication Methods 0.000 claims description 61
- 238000004422 calculation algorithm Methods 0.000 claims description 44
- 238000003860 storage Methods 0.000 claims description 22
- 230000003993 interaction Effects 0.000 claims description 9
- 238000007726 management method Methods 0.000 description 55
- 230000015654 memory Effects 0.000 description 20
- 230000006855 networking Effects 0.000 description 14
- 230000006870 function Effects 0.000 description 12
- 230000007246 mechanism Effects 0.000 description 10
- 230000003287 optical effect Effects 0.000 description 9
- 238000004364 calculation method Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 230000008901 benefit Effects 0.000 description 6
- 238000013461 design Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 238000005065 mining Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 230000004931 aggregating effect Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 230000003997 social interaction Effects 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 239000000126 substance Substances 0.000 description 3
- 230000002776 aggregation Effects 0.000 description 2
- 238000004220 aggregation Methods 0.000 description 2
- 238000012550 audit Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000013523 data management Methods 0.000 description 2
- 238000012854 evaluation process Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 238000011835 investigation Methods 0.000 description 2
- 238000000682 scanning probe acoustic microscopy Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000009412 basement excavation Methods 0.000 description 1
- 238000013476 bayesian approach Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000001149 cognitive effect Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 239000004020 conductor Substances 0.000 description 1
- 235000014510 cooky Nutrition 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005315 distribution function Methods 0.000 description 1
- 230000005284 excitation Effects 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000008450 motivation Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000010287 polarization Effects 0.000 description 1
- 229920001690 polydopamine Polymers 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 238000012502 risk assessment Methods 0.000 description 1
- 230000011273 social behavior Effects 0.000 description 1
- 238000012358 sourcing Methods 0.000 description 1
- 238000000528 statistical test Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
- H04L9/0637—Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/577—Assessing vulnerabilities and evaluating computer system security
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
- H04L63/126—Applying verification of the received information the source of the received data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/008—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3066—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
- H04L9/3073—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves involving pairings, e.g. identity based encryption [IBE], bilinear mappings or bilinear pairings, e.g. Weil or Tate pairing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
- H04L9/3239—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3297—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving time stamps, e.g. generation of time stamps
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/56—Financial cryptography, e.g. electronic payment or e-cash
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Mathematical Physics (AREA)
- Pure & Applied Mathematics (AREA)
- Algebra (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
一种用于分布式网络中的分散式信任评估的方法和装置。用于分布式网络中分散式信任评估的方法包括:获得区块链的当前区块,其中区块链的当前区块包括区块链的前一个区块的哈希值、当前区块的创建时间戳、向创建区块链的前一个区块的节点发行的令牌、指示多个节点中的每个节点的当前信任值的信任值列表,以及指示基于其得出信任值列表中的信任值的证据的信息,该证据在创建区块链的前一个区块之后得出;以及从当前区块中提取多个节点中的至少一个节点的当前信任值。该方法可以进一步包括以下步骤:收集新证据,创建区块链的新区块,选择批准的新区块,向获胜者节点发行令牌,以及基于记录在区块链中的信任值执行访问控制。
Description
技术领域
本发明总体上涉及通信网络的安全性,并且更具体地,涉及分布式网络中的分散式信任评估。
背景技术
社交网络已经成为人们生活中不可或缺的一部分。毫无疑问,信任在其中扮演着至关重要的角色,因为它协助人们对社交活动做出决定。
然而,建立真正的信任关系和以分散方式评估信任仍然不是一件容易的事,特别是在不同地方的人们之间没有任何面对面的交流。这个问题在分布式网络中变得更加严重和关键。在这样一个与传统在线社交网络不同的社交网络中,它通常缺乏集中服务器来帮助信息收集,社交数据聚合和信任/信誉生成。如何以纯粹的分散方式实现信任评估和认证仍然是一个开放的研究课题。
因此,提供一种在通信网络中,特别是在分布式网络中实现分散式信任评估的方法将是本领域的进步。
发明内容
为了克服上述问题,以及克服在阅读和理解现有技术时显而易见的限制,本公开提供了一种用于分布式网络中的分散式信任评估的方法和装置。
根据本公开的一个方面,提供了一种用于分布式网络中的分散式信任评估的方法。分布式网络包括多个节点,该方法包括:获得区块链的当前区块,其中,区块链的当前区块包括区块链的前一个区块的哈希值、当前区块的创建时间戳、向创建区块链的前一个区块的节点发行的令牌、指示多个节点中的每个节点的当前信任值的信任值列表,以及指示基于其得出信任值列表中的信任值的证据的信息,该证据在创建区块链的前一个区块之后得出;以及从当前区块中提取多个节点中的至少一个节点的当前信任值。
在示例性实施例中,该方法可以进一步包括在创建区块链的当前区块之后获得新证据;以及在多个节点之间共享新证据。
在示例性实施例中,得出新证据可以进一步包括:收集多个节点之间的统计通信信息;以及基于多个节点之间的统计通信信息以及基于多个节点中的其它节点上的本地信任值,得出新证据。
在示例性实施例中,统计通信信息可以进一步包括多个节点之间的交互次数和通信数据量。
在示例性实施例中,该方法可以进一步包括采用共享新证据的节点的私钥对新证据进行签名。
在示例性实施例中,该方法可以进一步包括:创建区块链的新区块;以及在多个节点之间共享新区块。
在示例性实施例中,创建区块链的新区块包括:收集新证据,其中,新证据在创建当前区块之后得出;以及基于新证据计算多个节点中的每个节点的新信任值。
在示例性实施例中,其中,在证据的大小达到证据阈值的情况下,可以基于新证据来计算多个节点中的每个节点的新信任值。
在示例性实施例中,基于新证据计算多个节点中的每个节点的新信任值可以进一步包括:基于新证据与新证据的平均值之间的偏差以及多个节点中的每个节点的当前信任值,计算多个节点中的每个节点的新信任值。
在示例性实施例中,该方法可以进一步包括验证新证据的正确性。
在示例性实施例中,创建区块链的新区块可以进一步包括将创建新区块的节点的公钥***到新区块中。
在示例性实施例中,该方法可以进一步包括将新证据的数据***到新区块中。
在示例性实施例中,该方法可以进一步包括:***用于新证据的数据的指针和新证据的数据的哈希值,其中,该指针指向新证据的数据可用的位置,并且新证据的数据存储在新区块外部。
在示例性实施例中,新证据的数据可以存储在云存储中。
在示例性实施例中,该方法可以进一步包括采用创建新区块的节点的私钥对新区块进行签名。
在示例性实施例中,该方法可以进一步包括:获得由多个节点中的至少一个节点创建的至少一个新区块;从多个节点中的至少一个节点中选择一个获胜者节点,其中,由获胜者节点创建的新区块被当作批准的新区块。
在示例性实施例中,选择批准的新区块可以包括基于节点创建新区块的创建时间选择获胜者节点。
在示例性实施例中,选择批准的新区块可以包括基于由节点拥有的令牌数量选择获胜者节点。
在示例性实施例中,选择批准的新区块可以包括基于节点的信任值选择获胜者节点。
在示例性实施例中,选择批准的新区块可以包括基于节点已计算出的节点信任值的数量选择获胜者节点。
在示例性实施例中,选择批准的新区块可以包括基于节点的公钥选择获胜者节点。
在示例性实施例中,选择批准的新区块可以包括选择最早创建新区块的节点作为获胜者节点。
在示例性实施例中,选择最早创建新区块的节点作为获胜者节点可以包括选择由节点拥有的令牌的数量超过令牌阈值的节点以外的最早创建新区块的节点作为获胜者节点。
在示例性实施例中,选择批准的新区块可以进一步包括在至少两个节点同时创建新区块的情况下,选择创建具有最高信任值的新区块的节点作为获胜者节点。
在示例性实施例中,选择创建具有较高信任值的新区块的节点作为获胜者节点可以包括选择由节点拥有的令牌的数量超过令牌阈值的节点以外的创建具有最高信任值的新区块的节点作为获胜者节点。
在示例性实施例中,选择批准的新区块可进一步包括:在创建新区块的至少两个节点具有相同信任值的情况下,选择拥有较少令牌数量的节点作为获胜者节点。
在示例性实施例中,选择批准的新区块可进一步包括:在由创建新区块的至少两个节点拥有的令牌数量相同的情况下,选择创建计算较少节点信任值的新区块的节点作为获胜者节点。
在示例性实施例中,选择批准的新区块可以进一步包括:在创建新区块的至少两个节点已计算出相同数量的信任值的情况下,选择创建具有最大或最小公钥的新区块的节点作为获胜者节点。
在示例性实施例中,该方法可以进一步包括采用共享选择结果的节点的私钥对选择结果进行签名。
在示例性实施例中,该方法可以进一步包括:获得选择结果;选择批准的新区块作为区块链的下一个区块;以及向创建下一个区块的节点发行令牌。
在示例性实施例中,在选择创建下一个区块的节点作为获胜者节点的节点的当前信任值之和达到信任值阈值的情况下,该方法可以选择批准的新区块作为区块链的下一个区块。
在示例性实施例中,在选择创建下一个区块的节点作为获胜者节点的节点数量达到节点阈值的情况下,该方法可以选择批准的新区块作为区块链的下一个区块。
在示例性实施例中,信任值阈值可以与每个节点的当前信任值和多个节点的数量有关。
在示例性实施例中,节点阈值可以与每个节点的当前信任值和多个节点的数量有关。
在示例性实施例中,向创建下一个区块的节点发行令牌可包括:基于区块链的当前区块的哈希值、创建下一个区块的节点的公钥、选择创建下一个区块的节点作为获胜者节点的节点的私钥的签名、以及选择创建下一个区块的节点作为获胜者节点的节点的公钥,生成向创建下一个区块的节点发行的令牌。
在示例性实施例中,该方法可以进一步包括基于节点的当前信任值来执行对节点的访问控制。
在示例性实施例中,基于当前信任值执行对节点的访问控制可以包括:允许对其当前信任值满足访问策略的节点的访问权限。
在示例性实施例中,允许访问权限可以包括基于基于属性的加密算法、公钥加密算法或同态加密算法,采用允许的节点的私钥对将要由允许的节点访问的信息进行加密。
在示例性实施例中,分布式网络可以是普适社交网络。
在示例性实施例中,新证据可以与上下文信息有关。
在示例性实施例中,多个节点中的每个节点的新信任值可以与上下文信息有关。
在示例性实施例中,上下文信息可以与社交应用有关。
在示例性实施例中,上下文信息可以与社交目的有关。
根据另一方面,提供了一种用于分布式网络中的分散式信任评估的装置。分布式网络包括多个节点。该装置包括:信任模块,其被配置为获得区块链的当前区块,其中,区块链的当前区块包括区块链的前一个区块的哈希值、当前区块的创建时间戳、向创建区块链的前一个区块的节点发行的令牌、指示多个节点中的每个节点的当前信任值的信任值列表,以及指示基于其得出信任值列表中的信任值的证据的信息,该证据在创建区块链的前一个区块之后得出;以及用户界面模块,其被配置为从当前区块中提取多个节点中的至少一个节点的当前信任值以及示出区块链信息。
在示例性实施例中,该装置可以进一步包括:区块链管理模块,其被配置为在创建区块链的当前区块之后得出新证据;以及信任模块可以进一步被配置为在多个节点之间共享新证据。
在示例性实施例中,信任模块可以进一步被配置为收集多个节点之间的统计通信信息;以及区块链管理模块可以进一步被配置为基于多个节点之间的统计通信信息以及基于多个节点中的其它节点的本地信任值来得出新证据。
在示例性实施例中,统计通信信息可以包括多个节点之间的交互次数和通信数据量。
在示例性实施例中,该装置可以进一步包括密钥管理模块,该密钥管理模块被配置为采用共享新证据的节点的私钥来对新证据进行签名。
在示例性实施例中,区块链管理模块可以进一步被配置为创建区块链的新区块;以及信任模块可以进一步被配置为在多个节点之间共享新区块。
在示例性实施例中,信任模块可以进一步被配置为收集新证据,其中新证据在创建当前区块之后得出;以及区块链管理模块可以进一步被配置为基于新证据计算多个节点中的每个节点的新信任值。
在示例性实施例中,区块链管理模块可以进一步被配置为:在证据的大小达到证据阈值的情况下,基于新证据计算多个节点中的每个节点的新信任值。
在示例性实施例中,信任模块可以进一步被配置为基于新证据和新证据的平均值之间的偏差以及多个节点中的每个节点的当前信任值来计算多个节点中的每个节点的新信任值。
在示例性实施例中,密钥管理模块可以进一步被配置为验证新证据的正确性。
在示例性实施例中,密钥管理模块可以进一步被配置为将创建新区块的节点的公钥***到新区块中。
在示例性实施例中,区块链管理装置可以进一步被配置为将新证据的数据***新区块中。
在示例性实施例中,区块链管理模块可以进一步被配置为***用于新证据的数据的指针和新证据的数据的哈希值,其中,该指针指向新证据的数据可用的位置,并且新证据的数据存储在新区块外部。
在示例性实施例中,新证据的数据可以存储在云存储中。
在示例性实施例中,密钥管理模块可以进一步被配置为采用创建新区块的节点的私钥对新区块进行签名。
在示例性实施例中,信任模块可以进一步被配置为获得由多个节点中的至少一个节点创建的至少一个新区块;区块链管理模块可以进一步被配置为从多个节点中的至少一个节点中选择一个获胜者节点,其中,由获胜者节点创建的新区块被当作批准的新区块;以及信任模块可以进一步被配置为在多个节点之间共享选择结果。
在示例性实施例中,区块链管理模块可以进一步被配置为基于节点创建新区块的创建时间选择获胜者节点。
在示例性实施例中,区块链管理模块可以进一步被配置为基于由节点拥有的令牌数量选择获胜者节点。
在示例性实施例中,区块链管理模块可以进一步被配置为基于节点的信任值选择获胜者节点。
在示例性实施例中,区块链管理模块可以进一步被配置为基于节点已计算出的节点信任值的数量选择获胜者节点。
在示例性实施例中,区块链管理模块可以被配置为基于节点的公钥选择获胜者节点。
在示例性实施例中,区块链管理模块可以被配置为选择最早创建新区块的节点作为获胜者节点。
在示例性实施例中,区块链管理模块可以进一步配置为选择由节点拥有的令牌数量超过令牌阈值的节点以外的最早创建新区块的节点作为获胜者节点。
在示例性实施例中,区块链管理模块可以进一步被配置为:在至少两个节点同时创建新区块的情况下,选择创建具有最高信任值的新区块的节点作为获胜者节点。
在示例性实施例中,区块链管理模块可以进一步被配置为选择由节点拥有的令牌数量超过令牌阈值的节点以外的创建具有最高信任值的新区块的节点作为获胜者节点。
在示例性实施例中,区块链管理模块可以进一步被配置为:在创建新区块的至少两个节点具有相同信任值的情况下,选择拥有较少令牌数量的节点作为获胜者节点。
在示例性实施例中,区块链管理模块可以进一步配置为:在由创建新区块的至少两个节点拥有的令牌数量相同的情况下,选择创建计算出较少节点信任值的新区块的节点作为获胜者节点。
在示例性实施例中,区块链管理模块可以进一步被配置为:在创建新区块的至少两个节点已计算出相同数量的信任值的情况下,选择创建具有最大或最小公钥的新区块的节点作为获胜者节点。
在示例性实施例中,密钥管理模块可以进一步被配置为采用共享选择结果的节点的私钥对选择结果进行签名。
在示例性实施例中,信任模块可以被进一步配置为获得选择结果;区块链管理模块进一步被配置为选择批准的新区块作为区块链的下一个区块,以及向创建下一个区块的节点发行令牌。
在示例性实施例中,区块链管理模块可以进一步被配置为:在选择创建下一个区块的节点作为获胜者节点的节点的当前信任值之和达到信任值阈值的情况下,选择批准的新区块作为区块链的下一个区块。
在示例性实施例中,区块链管理模块可以进一步被配置为:在选择创建下一个区块的节点作为获胜者节点的节点的数量达到节点阈值的情况下,选择批准的新区块作为区块链的下一个区块。
在示例性实施例中,信任值阈值可以与每个节点的当前信任值和多个节点的数量有关。
在示例性实施例中,节点阈值可以于每个节点的当前信任值和多个节点的数量有关。
在示例性实施例中,区块链管理模块可以进一步被配置为基于区块链的当前区块的哈希值、创建下一个区块的节点的公钥、选择创建下一个区块的节点作为获胜者节点的所有节点的私钥的签名、以及选择创建下一个区块的节点作为获胜者节点的所有节点的公钥,生成向创建下一个区块的节点发行的令牌。
在示例性实施例中,信任模块可以进一步被配置为基于节点的当前信任值来执行对节点的访问控制。
在示例性实施例中,信任模块可以被进一步配置为允许对当前信任值满足访问策略的节点的访问权限。
在示例性实施例中,密钥管理模块可以进一步被配置为基于基于属性的加密算法、公钥加密算法或同态加密算法,采用允许的节点的私钥对将要由允许的节点访问的信息进行加密。
在示例性实施例中,分布式网络可以是普适社交网络。
在示例性实施例中,新证据可以与上下文信息有关。
在示例性实施例中,多个节点中的每个节点的新信任值可以与上下文信息有关。
在示例性实施例中,上下文信息可以与社交应用有关。
在示例性实施例中,上下文信息可以与社交目的有关。
在示例性实施例中,该装置可以进一步包括被配置为提供上下文信息的应用模块。
在示例性实施例中,该装置可以进一步包括被配置为存储区块链的当前区块的数据的信任数据库。
根据另一方面,提供了一种装置,该装置包括用于执行根据上述方法的方法的部件。
根据另一方面,提供了一种非暂态计算机可读存储介质,其存储指令,当该指令由一个或多个处理器执行时,使处理器执行根据上述方法的方法。
通过下面的详细描述,仅通过示出许多特定的实施例和实施方式,包括用于执行本发明而设想的最优模式,本发明的其它方面、特征和优点将显而易见。本发明还能够具有其它和不同的实施例,并且可以在各种明显的方面修改其几个细节,而所有这些都不脱离本发明的精神和范围。因此,附图和描述本质上应被认为是说明性的,而不是限制性的。
附图说明
在附图的图中通过示例而非限制的方式示出了本发明的实施例:
图1示出根据本公开的实施例的用于分布式网络中的分散式信任评估的***模型;
图2示出根据本公开的实施例的用于分布式网络中的分散式信任评估的区块链的区块的结构;
图3示出根据本公开的实施例的用于分布式网络中的分散式信任评估的获胜者节点选择的逻辑配置;
图4示出根据本公开的实施例的用于分布式网络中的分散式信任评估的方法;
图5示出根据本公开的实施例的用于分布式网络中的分散式信任评估,特别是收集新证据的方法;
图6示出根据本公开的实施例的用于分布式网络中的分散式信任评估,特别是创建区块链的新区块的方法;
图7示出根据本公开的实施例的用于分布式网络中的分散式信任评估,特别是选择批准的新区块的方法;
图8示出根据本公开的实施例的用于分布式网络中的分散式信任评估,特别是向获胜者节点发行令牌的方法;
图9示出根据本公开的实施例的用于分布式网络中的分散式信任评估,特别是执行访问控制的方法;
图10示出根据本公开的实施例的用于分布式网络中的分散式信任评估的装置;
图11示出可以在其上实现本公开的实施例的计算机***;以及
图12示出可以用于实现本公开的实施例的芯片组。
具体实施方式
公开了用于分布式网络中的分散式信任评估的方法和装置的示例。在下面的描述中,出于解释的目的,阐述了许多具体细节以便提供对本发明的实施例的透彻理解。然而,对于本领域技术人员显而易见的是,可以在没有这些具体细节或具有等效布置的情况下实践本发明的实施例。在其它情况下,以框图形式示出了公知的结构和设备,以避免不必要地使本发明的实施例不清楚。
由互联网、移动蜂窝网络和自组织移动Ad hoc网络(MANET)组织的异构网络受到特别关注,因为它们能够为时间关键型或任务关键型应用建立即时通信平台。作为一个具体的应用示例,作为分布式网络类型的普适社交网络(PSN)通过在基于用户需求的异构网络之间进行切换,可以随时随地以智能和上下文感知的方式支持即时社交活动。不仅人与人之间有联系,而且陌生人在物理上接近,可以形成一个社会群体,以普遍的方式进行各种社会活动。
诸如PSN的分布式网络是互联网在线社交联网的重要补充,具有“随时随地”的特性,因此对移动用户非常有价值。当互联网在线社交网络暂时不可用或访问成本高时,诸如PSN的分布式网络尤其重要。分布式网络的当前趋势是分散化,因为分布式网络中的节点既可以是服务提供商又可以是消费者。在实践中分布式网络还可以提供即时建议,快速协助和紧急救援。
信任评估是代表用于数字处理的信任的技术方法,其中影响信任的因子由连续或离散的实数评估,称为信任值。嵌入信任评估机制对于在未来的计算和联网***中提供信任情报是必要的。信任评估是数字化信任研究的主要方面。在已知技术中,贝叶斯推理、(加权)平均模型、Dempster-Shafer理论、主观逻辑、模糊逻辑、基于熵的模型、模糊认知图、博弈论、云理论、信息理论框架、PeerTrust等被应用于在各个领域进行信任评估。
首先,传统社交网络缺乏真正的分散式信任评估。关于社交网络中信任评估的许多现有工作通常依靠可信任的第三方来收集社交通信数据或社交联网行为数据来执行信息融合和聚合,以便进行信任评估或信誉生成。基于本地收集但不完整的信息对特定节点的信任评估通常不准确,存在偏差。信誉生成需要依赖单个节点或一方。因此,信任认证必须依靠集中的一方。总之,过去关于信任评估和信任认证的解决方案是集中的。在信任评估技术或理论中,实际使用中信任评估的数据收集和处理大都是集中的。它无法承受单个节点的攻击。一个节点崩溃可能会导致整个***崩溃。IoT、PSN、分布式联网/计算、众包和跨运营商服务中特别需要分散式解决方案。需要用于分布式网络或PSN的有效且纯粹分散的信任评估和认证方案。
其次,信任评估必须是可信任的。用户希望信任评估是透明的,公开的,可追溯的并且不可被否认,因此可以保证信任评估的可信度。然而,一些现有的分布式信任评估解决方案无法实现这一目标,因为人们无法确定信任评估是否合理而没有任何缺陷。因此,很难确保基于本地信任的集合信任或信誉是可信的。如何支持信任评估的公共审计仍是一个悬而未决的问题。
P2P信誉***是最近在分布式网络中出现的用于信任评估的方法。当前存在的代表性P2P信誉***(诸如eBay和PeerTrust***)专注于信任管理,以保护电子商务应用中的商品交易。其它***专注于通用P2P应用,诸如P2P文件共享和基于Web服务的共享平台。
eBay(www.ebay.com)用户反馈***应用集中式数据库来存储和管理信任分数。数据向公众开放,所以新手可以轻松获得同伴评分。这是一个使用分布式客户资源和集中服务器两者的混合P2P***。此类***试图通过向用户提供有限数量的数据来方便用户,但是另一方面所提供和处理的信息不完整并且不提供完整的图片。还提供了使用贝叶斯方法的分布式信誉***,其中二手信誉评分仅在与主要评分兼容时才被接受。这种信誉方案可以检测ad hoc网络中的错误行为节点。但是这个方案不透明,不可能追踪和审计整个信任评估过程。
PeerTrust模型基于五个同伴(peer)反馈因子的加权总和:同伴记录、范围、可信度、交易背景和社区背景。PeerTrust是分布式的,为信任传播使用覆盖,用于保护远程分数的公钥基础结构,并防止同伴的某些恶意滥用。
诸如使用EigenTrust算法的另一***在满意交易数量中捕获同伴信誉,并且然后在所有参与同伴中对其进行归一化。该算法通过所有原始信誉分数的加权总和来聚合分数。该完全分布式***假定***启动时存在预置信任同伴。它使用多数投票来检查报告的错误信誉分数。其他研究人员还提出了许多方法,诸如用于P2P应用的可信中间件,该中间件由两个模型组成:基于多币种的经济模型(M-CUBE)和个人化信任模型(PET),以及一种P2P网络中的信任推理方案,该信任推理由本地信任推理和分布式搜索两部分组成。在信任中间件中的M-CUBE模型为支持高级别P2P资源管理服务提供了一个通用且灵活的基础。PET从长期信誉评估和短期风险评估中获得同伴的可信度。每次交易后,用于P2P网络中信任推理的信任方案生成cookie以记录同伴之间的直接信任。它还使用信任图来推断沿同伴链的传递信任。
Credence是一个强大且分散的***,用于评估P2P文件共享***中文件的信誉(检索自http://www.cs.cornell.edu/people/egs/credence/index.html)。其目标是让同伴自信地衡量文件的真实性,即文件内容与其所广告的内容的匹配程度。在最基本的层面上,Credence采用简单的全网投票方案,其中用户可以对文件进行积极和消极的评估。最重要的是,客户使用统计测试来衡量来自其他同伴的投票的重要性。它允许客户与其他同伴分享选定的信息。通过不以协议中的任何方式收集或使用任何个人身份信息来确保隐私。每个配备Credence的客户端都提供了一个唯一的随机生成的密钥对,该密钥对不会绑定到用于加密操作的任何个人信息。
关于社交网络信任和信誉,在易失性环境(诸如ad hoc网络)中引入了数据中心信任的概念,以基于数据评估节点信任。实用的信誉***通常应用中央服务器来收集信誉生成的反馈(例如,eBay,雅虎拍卖)。然而,许多现有的***(例如亚马逊和eBay)缺乏对用户评分可信度的考虑。这极大地影响了所产生的信誉的质量。假名的使用及其变化的容易性通过允许参与者有效地抹去其先前历史来增加画像的复杂性。提供了混合信誉***架构,其中信誉以分布式方式进行评估,但受集中式可信服务器的支持。在ad hoc网络中共享信誉信息会带来额外的通信成本。信誉共享的目的是使节点的信誉对所有其它节点都是已知的,并减少检测时间。因此,维护和传播间接信誉信息会在单个节点和网络两者上产生开销。在通过将本地经验和全局经验汇总在一起来关注本地和全局的信誉的混合信誉***架构中,都需要集中方的支持。
然而,以上研究均不能直接应用于分布式网络,特别是PSN,因为它们不能为分布式网络或PSN提供分散式信任评估和认证方案。即使它们提供了实现分散式信任评估和认证功能的一部分的***,信任评估也不是透明且可追溯的。
第三,在信任评估中也应考虑隐私,这是很难以分散的方式实现的。
关于分布式网络,特别是PSN中的信任评估,近年来出现了许多关于信任评估的研究。提供了一种基于因子丰富的混合信任框架,用于电子商务在线社交网络中的信任度量。在此类混合信任框架中,使用三个信任级别来建立个人之间对其交易的可信的意见:1)私人信誉,个人之间关于其动态进化特征方面的主观可信印象;2)共同信誉,集体和可共享信任度,并提出了两个因子,一致性因子和连续性因子,用于提高共同信誉的可靠性;以及3)提出了基于私人信誉和共同信誉获得整体可信展示的混合信任,并提出了反欺诈因子和置信因子以进一步确定混合信任的可信度。另一个示例是名为GFTrust的基于流程的信任评估方案。它使用网络流来建模信任的路径依赖,并且建模信任衰减和与每个节点关联的泄漏,从而将具有路径依赖和信任衰减的信任评估任务转换成广义网络流问题。还提出了一个层次评估***来支持具有多个可变节点的安全可靠的PSN。但上述工作并没有讨论如何以纯粹分散的方式实施信任评估方案。
在用于在线社交网络的基于信任的隐私保护朋友推荐方案中,各种属性用于经由多跳信任链来找到匹配的朋友并与陌生人建立社交关系,但是如何将该方案应用于分布式网络需要进一步调查。通过考虑社交上下文,上下文感知信任模型和应用模糊语言技术,将信任从一个移动用户语义推导到可能不直接连接到MSN的信任图中的另一个移动用户。然而,该解决方案主要集中在如何评估信任,但没有考虑评估过程的透明度和可信度。信任质量(QoT)的新概念考虑诸如信任、社会关系和推荐角色的属性。该概念将具有多个端到端QoT约束条件的最优社会信任路径选择问题建模为多约束最优路径(MCOP)选择问题,并提出了最优社会信任路径选择算法。但是这项研究并没有讨论如何在PSN的背景下支持分散和公共审计。
区块链首先由Nakamoto提出。这是构建比特币***的关键技术。最近,由于其支持分散功能的先进性,它已被学术界和工业界广泛关注。区块链最初是一个不断增长的区块列表,其中一些信息被连续记录。它是由多方共同维护的分布式账本,不依赖于集中方。区块通过使用哈希函数进行链接。通常,每个区块包含作为到其前一个区块的链接的哈希指针,记录在区块中的时间戳和信息。以这种方式,可以容易地检测对前一个区块的任何修改。受其在比特币中的应用的启发,区块链正在被热切地研究,以便在物联网(IoT)、云计算、数据管理等提供分散式安全解决方案。
用于比特币区块链的共识机制基于工作量证明(Proof-of-Work),但效率不高且花费大量的计算资源。比特币的激励机制是让制造新区块的矿工赢得一些比特币。
基于区块链的应用仍处于起步阶段。例如,基于最近提出的区块链的新信誉***可以在P2P***中运行,并且希望可以在任何联网情境中运行。创建的新区块链存储数据以从完成的交易中生成信誉,例如文件共享。该***缺乏关于其通用性的证明。与比特币***链接意味着它对广泛使用的限制,因为它过多地依赖于比特币***。客户端处的信誉计算以透明方式不利于信任认证。另一方面,该***关于可伸缩性和效率具有许多限制,难以部署在移动设备中。因此,在分布式网络(特别是PSN)中,没有合适的分散式信任评估的***。
在本公开中,申请人应用区块链以分散的方式来建立可信赖的分布式网络环境,特别是PSN环境。在这种情况下,分布式网络中的多个节点可以基于自组织的异构分布式网络来执行社交联网。没有任何集中式服务器总是可用的。每个节点都会生成自己的公钥和私钥对,用于分布式网络。区块链用于存储与信任评估有关的数据,并保存节点信任进化的记录。
在区块链中,每个区块包含前一个块的ID,即前一个区块的哈希值、底层区块的创建时间、用于社交联网的节点中每个节点的信任值列表以及指示基于其得出信任值列表中的信任值的信任评估的证据的多条信息(证据在创建区块链的前一个区块之后得出)、向前一个区块的创建者发行的令牌以及其它基本数据(诸如区块创建者的撤销的公钥和更新的公钥的撤销列表)。本公开中的共识和激励方法以及区块内容结构与传统比特币区块链不同。本公开中的区块链可以应用于实现分散式信任评估和信任认证。
关于应用于区块生成的共识机制,执行挖掘的许多节点(即,矿工)通过验证并聚合在创建前一个区块之后收集的足够证据以执行信任评估,以便基于预先约定的公共算法通过诸如计算来得出节点的相关信任值。在上下文中,术语“矿工”仅用于指示与其它节点相比创建区块链的新区块的节点,而不是定义不同类型的节点。
创建新区块的节点将新区块共享或宣布给其它节点。如果用于创建新区块的节点的挖掘工作可以被其它节点(以下称为批准节点)批准,当批准节点的信任值之和大于阈值并且批准节点的总数大于预期数时,则将新区块确定为下一个区块。该设计遵循的原则是,足够数量的信誉节点决定区块链的正确性。
可以向创建新区块的该节点授予令牌,该令牌应该由批准新区块的所有批准节点签名。令牌可以用于特定的社交活动(例如,广告)或获得一些好处(例如,优惠券),这至少应由其信任值在新区块中升级的节点所允许。应注意,可以将其它用法或权限授予令牌持有者。
就创建新区块的时间而言,它可以定义为:当所有新收集的证据的大小达到预期水平的阈值(可以被所有节点验证)时,节点可以开始创建下一个区块。
在本公开的实施例中,可以将算法应用于唯一地选择获胜者节点,以便确保信任评估管理的分散并避免区块链分叉。具体地,一个节点不能总是获胜,并且可以基于节点的总数来限制特定时间段内单个节点的获胜总数。
可以从拥有最新区块链的任何节点中检查分布式网络中任何节点的当前信任值。因此,对于社交联网的分布式网络中的每个节点,信任评估的公共验证变得公开透明。可以撤销或更新公钥,这也记录在区块链中。
信任评估可以是上下文感知的。为了支持这个特征,可以将上下文ID(例如,由社交应用ID加社交目的ID表示)引入证据和本地信任值中。因此,上下文ID对于节点而言可以通过将信任值链接到具体上下文来计算信任值。例如,如果用户使用消息传递应用进行会议,则上下文ID可以通过“消息传递”表示为应用ID,并且可以通过“会议”表示为目的ID。在另一种情况下,如果用户使用在线银行应用进行支付,则上下文ID可以通过“在线银行”表示为应用ID,并通过“支付”表示为目的ID。可以通过基于来自区块链的节点的公钥检查节点的信任值的历史记录来执行信任认证。基于信任值的数据访问控制也可以基于记录在区块链中的开放信任分类帐来实现。
图1示出根据本公开的实施例的示例性***模型。分布式网络***10可以包括多个节点101,该多个节点101利用异构分布式网络100进行社交联网,特别是普适社交联网。节点101的数量可以是N,其中N是大于一的整数。一些节点101还充当矿工,以分散的方式维护用于信任评估和认证的区块链。任何节点101都可以充当矿工。任何节点101都可以执行信任评估、区块创建、获胜者节点选择等功能中的至少一项。矿工也可以仅执行挖掘工作,而无需任何其它功能。在一些实施例中,节点101可以是服务器、包括固定终端和移动终端(诸如移动电话,优选为智能电话、PDA、笔记本等)的终端、接口、网络设备等。每个节点101包含多个基本功能模块。
***模型10的安全模型是节点101彼此不信任,并且节点行为合理,并基于记录在区块链中的事实做出决策。最有信誉的节点共同做出决策,以便实现预期的信任。假设每个节点可以(例如,从公共GPS信号中)获得同步时间戳,并且它可以以安全的方式生成其公钥-私钥对。
表1总结了在本公开中使用的符号。
表1符号和定义
区块结构
在图2中设计并示出了根据本公开的实施例的用于信任评估和认证的区块链的区块k 200的结构。区块k 200包含区块k 200的前一个区块的ID 201,B_IDk,其是区块k-1数据CBk-1的哈希值,即B_IDk=H(CBk-1);区块k 200的时间戳202,Tk,其是区块k 200的创建时间;发行给区块k-1的矿工i'的令牌203,TOi’,k-1,其由预期数量的信任值之和超过信任值阈值ThrT的节点来签名,令牌203的项可以进一步包括使用的令牌(使用的令牌的区块ID)和为该区块中的令牌指定的分红;信任值列表204,其记录具有新近更新的信任值的节点的信任值TVi,k;证据205,其记录在创建前一个区块之后由节点报告的证据。信任值列表204可以记录所有节点或部分节点的信任值。证据205还可记录由节点报告的所有证据,或所报告的证据的一部分。证据205可以基于不同节点上的证据(诸如由节点的公钥所标识)来排序。证据205也可以基于其它规则来排序。例如,规则可以是节点的前一个信任值,也可以是由节点拥有的令牌。在一些实施例中,在创建新区块之前没有任何社交互动发生的情况下,对于一些节点,证据可以为空。
信任值列表204可以被定义为每个节点的信任值与节点的公钥的集合。例如,信任值列表可以表示为{(TVj,PKj)}(j=1,...,J),其中TVj是节点j的信任值,PKj是节点j的公钥,并且J是代表分布式网络中节点数的正整数。因此,如果获得了区块链的当前区块,则可以从区块链的当前区块的信任值列表204中提取每个节点的当前信任值。
在创建区块链的当前区块之后,节点中的每个节点都可以得出新证据,并且可以在节点之间共享新证据。节点可以自发地或响应于创建新区块的其它节点的请求(即矿工的请求)来获得新证据。例如,可以从节点之间的统计通信信息以及本地信任值LTVi→j的可信度中得出新证据。例如,统计通信信息可以包括节点(即INi→j)之间的通信交互次数和通信数据量(即CVi→j)。可以从网络收集统计通信信息。从该节点自身的观点来看,本地信任值LTVi→j可以是一个节点在其它节点上提供的信任值。例如,从节点Ni自身的观点来看,在节点Nj上的节点Ni的本地信任值LTVi→j可以是节点Ni提供的信任值。还可以根据节点Ni的观点,基于当前信息和前一个的本地信任值或来自信任值列表的信任值TVi→j来提供或产生的本地信任值。
为了节省区块链的存储成本,可以自发地或通过矿工的请求提供证据205。在一些实施例中,证据205也可以保存在区块链中或另一个地方(例如,云或验证的在线数据库)中。例如,***可以自己或响应于用户的请求将证据205的内容保存在另一个地方。该证据205可以是关于通信的交互次数和由节点发布的通信数据量的一组签名,其提供了两个节点之间的社交的事实。可以将该设计应用于抵抗对信任评估的恶意攻击的目的,例如,恶意攻击和不公平评分攻击。同时,证据205不公开社交联网内容的细节,只是统计。为了保留分布式网络(例如,PSN)中的用户隐私,社交联网方的真实身份也被隐藏。
节点的公钥对可以通过向矿工发布以下消息来由新的密钥对更新:{PK,PK′i,SIG((PKi,PK′i),SKi)}。PK’i 206是替代了旧公钥PKi的新公钥。如果PKi为空,则意味着PKi被其所有者撤销。
信任评估
在本公开中,用于信任评估的证据TEi→j是通过使用INi→j、CVi→j以及本地信任值LTVi→j的可信度来做出的。在示例中,通过以下公式获得TEi→j:
TEi→j=F(INi→j,CVi→j,LTVi→j)=θ1(INi→j)*θ2(CVi→j)*LTVi→j
在此,θ()是瑞利累积分布函数。将用于建模数量g的影响,可以将σ分别设置为θ1(x)和θ2(x)中的不同值,以缩放TEi→j上的INi→j和CVi→j的影响。证据可以由其提供者例如以的形式签名,其中是生成证据TEi→j的时间。因此,区块中的证据205可以表示为其中I和J均为代表分布式网络中节点的数量的正整数。
为了克服信任评估中的恶意攻击,可以将节点Nj上的节点Ni的新证据与节点Nj上所有节点的证据的平均值之间的偏差以及前一个信任值应用于定制单个证据TEi→j对创建新区块的信任值计算的贡献。矿工可以基于以下公式在创建新区块的过程期间对节点Nj(j=1,…,J)上的每个节点Ni(i=1,…,I)执行信任评估:
其中,是新证据的偏差。I是向矿工Nj提供新证据的节点数。参数τ用于控制时间衰减,以便使以后的信任值在信任评估中发挥更大的作用。ki是区块链中出现的最新TVi,k的区块号。(1-dvi,j)用于定制TEi→j,以便克服由恶意攻击引起或由恶意/不信任的证据提供节点提出的对信任评估的负面影响。
在区块链的第一区块中,所有节点都没有令牌,它们的信任值可以全部为0,证据区域为空。假设信任值可以是[0,1]范围内的实数,其中0代表完全不信任,而1代表完全信任。B_IDk-1在第一区块中为空。
创建新区块的时间可以定义为:在创建前一个区块之后,所有收集的证据量(例如,所有的大小)达到预期水平。例如,预期水平可以是证据阈值(表示为EV)。因此,所有矿工都可以验证在创建新区块的过程期间应当被用于信任评估的证据。EV可基于矿工的协议进行调节。
本公开的实施例可以扩展为支持上下文感知信任评估。可以基于社交上下文来执行以上评估信息,其可以由与社交上下文有关的上下文ID(Cxt_ID)指示。可以通过社交应用(由App_ID指示)和社交目的(由Pur_ID指示)进一步指定社交上下文。在区块链中,证据和信任值附有上下文ID,因此可以执行上下文感知信任评估和上下文感知信任认证。上下文ID的示例在上面的区块结构部分中介绍,因此将不再讨论。
共识机制
在此,本公开的实施例不使用工作量证明来达成共识,因为它效率不高并且消耗大量的计算资源。矿工通过评估和汇总证据以基于预先设计的算法计算相关节点信任值来进行信任评估。完成下一个区块的节点会向其它节点宣告下一个区块,并且如果该节点的挖掘工作可以被其它节点批准,则该节点可以被授予令牌。这些节点可以称为批准节点,即,这些节点选择完成下一个区块的节点作为获胜者节点。可以由当前信任值的总和达到信任阈值的足够数量的节点对授予的令牌进行签名。足够数量的节点也可意味着数量达到节点阈值。基于区块链的状态,例如,根据节点的总数和节点的信任值,动态地调节信任阈值(有关细节,参见下面讨论的算法3)。令牌可用于节点允许的社交广告(例如,其信任值在新区块中升级)。设计被发行给节点i’的令牌用于创建区块k-1的贡献如下:
TOi',k={B_IDk-1,PKi',SIG(H(B_IDk-1,PKi'),SKX,PKX}
其中,SKX是用于对令牌进行签名的所有或部分批准节点的一系列私钥,并且PKX是用于对令牌进行签名的所有或部分批准节点的一系列公钥。令牌包含底层区块的ID和获胜者节点的公钥。它由预期数量的其它节点签名,该数量由节点信誉值的总和决定,否则,令牌无效。但是该令牌出现在下一个区块k中,以便证明已接受前一个区块的创建,并且还基于区块链的优势提供了令牌发行的可追溯性。该设计激发了初始区块的创建,因为创建者可以获得适用于所有节点的令牌(初始信任值为0)。对于令牌的使用,通过检查区块链,很容易知道其适用性和正确性。
算法1:区块k的创建
算法1被设计为通过基于新收集的足够证据评估分布式网络中节点的信任值来创建新区块。在算法1的过程中,对区块链正确性的验证也遵循相同的方式。
自从创建了区块链的当前区块以来,每个节点都可以得出新证据,并在节点之间共享新证据。此类得出和共享可以自发地或响应于矿工的要求而完成。矿工可以基于收集的节点之间的统计通信信息(即INi→j和CVi→j)以及来自每个节点的本地信任值LTVi→j的可信度来接收新证据TEi→j=F(INi→j,CVi→j,LTVi→j),(i=1,...,I;j=1,...,J),其中I和J都是分别代表分布式网络中的节点数的正整数。来自节点的新证据用得出该新证据的节点的私钥进行签名。
如果由矿工TEi→j(i=1,...,I;j=1,...,J)收集的证据的大小或量达到证据阈值EV,则矿工可以验证证据上所有签名的正确性。当已经验证正确性后,矿工基于收集的新证据TEi→j=F(INi→j,CVi→j,LTVi→j)开始计算节点中每个节点的新信任值。
在实施例中,如果新区块的公钥被更新,则矿工还可以通过验证相应的签名来检查所有更新的公钥的正确性。
矿工可以将新证据的数据***到新区块Bk的内容CBk中。可替代地,新证据的数据可以存储在新区块CBk外部,例如,在云存储中。矿工可以将用于新证据的数据的指针和新证据的数据的哈希值***到新区块CBk中,其中该指针指向新证据的数据可用的位置。
在上述计算之后,矿工通过计算B_IDk-1、Tk并***发行给区块k-1的创建者的令牌TOi',k来基于区块结构封装Bk。应注意,Tk是Bk的创建者的签名时间。
然后,矿工输出并共享区块k Bk,其公钥作为新区块的创建者的公钥,并且CBk上的其公钥的其签名作为创建者的签名。
区块k的示例性创建的伪代码如下所示:
输入:TEi→j=F(INi→j,CVi→j,LTVi→j),(i=1,...,I;j=1,...,J);Bl(l=1,...,k-1),其中,I和J均为代表分布式网络中的节点数的正整数;
当所有收集的TEi→j(i=1,...,I;j=1,...,J)的大小达到EV时,进行:
验证证据上所有签名的正确性;
对于所有i=1,...,I;j=1,...,J,进行:
收集TEi→j=F(INi→j,CVi→j,LTVi→j)
基于TEi→j计算dvi,j
通过验证相应的签名来检查所有更新的公钥的正确性;
通过计算B_IDk-1、Tk并***被发行给区块k-1的创建者的令牌TOi',k来基于区块结构封装Bk;
输出:区块k Bk,创建者的公钥以及CBk上的创建者签名。
应该理解,用于基于所收集的证据计算信任值的其它算法可以应用于本公开的实施例中。以上示例性算法仅仅是示例性方法。
算法2:挖掘获胜者选择
在多个矿工计算出新区块的情况下,本公开应用算法2来选择获胜者节点,即分别在创建新区块的矿工中选择获胜者,以便避免区块链分叉。由获胜者节点创建的新区块被当作批准的新区块。
在实施例中,可以基于节点创建新区块的创建时间、由该节点拥有的令牌数量、节点的信任值、节点已计算出的节点信任值的数量、节点的公钥或以上条件的任何组合来选择获胜者节点。
在实施例中,可以基于节点创建新区块的创建时间来选择获胜者节点。例如,最早创建新区块的节点获胜。应用该规则旨在确保区块链创建的效率。在实施例中,在最新时间创建新区块的节点也可以被认为是获胜者。但是,如果节点拥有太多令牌,则***会优先考虑另一个节点,以便确保分散化,并避免区块链受少数节点控制的这种情况。因此,可以基于创建新区块的节点具有的令牌数量来选择获胜者节点。在实施例中,在至少两个节点同时创建区块的情况下,***给予具有最高社会信任值的节点更高的优先级,因为持有最高信任值的节点具有更多的动机诚实地进行区块创建。因此,可以基于创建新区块的节点的信任值来选择获胜者节点。但是,如果信誉良好的节点持有太多令牌,则***可以避免再次对该节点给予优先级。例如,***可以将优先级给予另一个节点,以便确保分散化并避免区块链受少数节点控制的此类情况。在实施例中,具有最高社会信任值的节点可以具有更高的优先级。
在实施例中,在至少两个节点同时创建区块并且具有相同的信任值的情况下,***向具有较少的令牌数量的节点给予更高的优先级。该规则旨在避免由少数矿工生成区块的情况,以变确保分散化。在两个节点创建的区块具有相同令牌数量的情况下,***让在过去计算较少的节点信任值的矿工获胜。应注意,“过去”可以指自创建前一个区块以来,或自创建前一些区块以来,自创建区块链的第一区块以来,或自由用户或***选择的特定时间点开始的持续时间。因此,可以基于该节点过去已计算出的节点信任值的数量来选择获胜者节点。应用该规则是为了平衡整个***中的计算贡献,这是确保分散化的另一种策略。在创建新区块的两个节点具有节点在上述过程中在过去再次计算出的相同数量的节点信任值(即两个矿工Ni和Nj计算出相同数量的信任值)的情况下,具有较大(或较小)公钥的节点将获胜。因此,可以基于创建新区块的节点的公钥来选择获胜者节点。两个矿工具有相同公钥的可能性很小。
在多个矿工同时创建新区块的情况下,***通过遵循上述类似规则来选择获胜者。选择获胜者节点的节点可以用其私钥对选择结果进行签名并共享选择结果。
图3示出用于从节点Ni和Nj选择获胜者节点的示例性实施例。
首先,在步骤301处,批准节点获得由两个节点Ni和Nj创建的两个新区块。然后,在步骤302处,批准节点分别确定这些节点Ni和Nj的创建时间TNi和TNj是否是相同的。如果它们的创建时间不相同,则该方法前进到步骤303。如果TNi大于TNj,这意味着节点Nj早于节点Ni来创建新区块,则该方法前进到步骤304,否则该方法前进到步骤305。在步骤304中,进一步将由节点拥有的令牌数量与令牌阈值进行比较。如果由节点Nj拥有的令牌数量不超过令牌阈值,则获胜者节点为节点Nj,否则获胜者节点为节点Ni。步骤305应用与步骤304相同的逻辑确定。在步骤305中,如果由节点Ni拥有的令牌数量不超过令牌阈值,则获胜者节点为节点Ni,否则为节点Nj。
如果在步骤302中这两个节点的创建时间相同,则该方法前进到步骤306,以比较节点的当前信任值。如果当前信任值不相同,则该方法前进到步骤307。如果节点Ni的信任值(即TVi)大于节点Nj的当前信任值(即TVj),则该方法前进到步骤308以继续比较它们拥有的令牌数量,否则该方法前进到步骤309。如果由节点Ni拥有的令牌数量不超过令牌阈值,则获胜者节点为节点Ni,否则获胜者节点为节点Nj。步骤309应用与步骤308相同的逻辑确定。在步骤309中,如果由节点Nj拥有的令牌数量不超过令牌阈值,则获胜者节点为节点Nj,否则为节点Ni。
如果在步骤306中两个节点的当前信任值相同,则该方法前进到步骤310以进一步比较它们所拥有的令牌数量。如果由这些节点拥有的令牌数量不相同,则该方法前进到步骤311。在步骤311中,如果由节点Ni拥有的令牌数量大于节点Nj,则获胜者节点为节点Nj,这意味着具有较少令牌数量的节点将已经获胜,否则获胜者节点为节点Ni。
如果在步骤310中由两个节点拥有的令牌数量相同,则该方法前进到步骤312以继续比较由两个节点计算出的信任值数量。如果由两个节点计算出的信任值数量不同,则该方法前进到步骤313。在步骤313中,具有较少数量的计算出的信任值的节点获胜。
在步骤312中,如果由两个节点计算出的信任值数量相同,则该方法前进到步骤314以进一步比较它们的公钥。如果它们的公钥不相同,则该方法前进到步骤315。在步骤315中,具有较大公钥的节点将获胜。两个节点具有相同公钥的可能性很小,使得将不考虑节点Ni和Nj的公钥相同的情况。
应注意,为了确保分散化,一个矿工不能总是获胜,***可以基于节点的总数来限制特定时间段内单个矿工的获胜总数。例如,在特定时间段内,矿工不能赢得超过M个令牌,其中M是已注册节点的总数。算法2确保只能找到新区块创建的一个获胜者,因此不会发生区块链分叉。可以找到并解决有关区块创建的任何错误。
算法3:共识策略和阈值设定
为了达成共识,需要建立一个良好的决策解决方案,该解决方案应当适应***情况。在实施例中,基于所有注册节点的信任值和节点数量来自动设定节点阈值ThrM和信任值阈值ThrT。***策略可以是,在新区块创建中选择矿工(即批准矿工)作为获胜者节点的节点的信任值总和越高,则选择矿工作为获胜者节点所需的这些节点数量越少。例如,***可以进一步设定ThrT以便确保选择矿工作为获胜者节点的节点的信任值总和应高于预期水平,例如该设计旨在提高共识效率并增强区块创建的可信度,因为***试图确保新区块创建应由足够数量的具有足够信誉的节点批准。在最初创建区块链时,节点的所有信任值均为0,因此第二区块的创建应由所有节点批准。
输入:TVm:矿工Nm的信任值;M:节点总数。
设定
输出:ThrM和ThrT。
激励机制
发行并授予令牌以成功创建新区块。令牌可以用于特定的社交活动(例如,广告)或获得一些好处(例如,优惠券),至少由在新区块中信任值被升级的节点所允许。请注意,其它使用或权限可被授予给令牌持有者。
以激励机制为例,令牌可以用于分布式网络(特别是PSN)广告。使用令牌,广告不能被视为垃圾邮件(SPAM),并且不应该在其上反馈一个负面的本地信任值,至少由其信任值在相应区块中升级的节点反馈。为此类广告发送冲突的本地信任被视为无效。因此,这种节点信任的负面证据不会被计入节点信任评估中。***使用该激励机制来鼓励矿工维护区块链,因为广告的许可可以帮助节点获得额外的分红。请注意,令牌使用信息也可以被记录在区块链中以克服真正的垃圾邮件。令牌持有者只能使用其令牌执行指定的事情或声明特定的分红。
基于信任认证和信任值的数据访问控制
在本公开的实施例中设计的区块链用作公开分类账,以记录诸如信任值的信任信息。通过访问区块链,每个节点都可以获得具有其进化历史的节点的所有信任信息,并可以验证当前和过去的信任值是否得到正确评估。因此,***为信任认证提供了一种开放透明的方式。
例如,当节点Nj想要控制其通信数据访问时,它可以采用密钥DEKj加密其消息,并通过检查区块链将其信任值满足其访问策略的节点发行DEKj。具体地,用PKi加密DEKj,其中PKi的持有者的信任值与节点Nj的访问策略一致。由Nj传递的消息mj的通信包为{ECN(mj,DEKj),ENC(DEKj,PKi)},因此只有具有其信任值满足访问策略的PKi的节点才能访问mj。加密算法可以例如是基于属性的加密算法(ABE)、基于身份的加密算法(IBE)或基于身份的加密和签名算法(IBES)、公钥加密算法或同态加密算法,或其它加密方案。
图4示出根据本公开的实施例的用于分布式网络中的分散式信任评估的示例性方法,包括以下步骤:
S410:获得区块链的当前区块;以及
S420:从当前区块中提取多个节点中的至少一个节点的当前信任值。
区块链的当前区块包括区块链的前一个区块的哈希值、当前区块的创建时间戳、向创建区块链的前一个区块的节点发行的令牌、指示多个节点中的每个节点的当前信任值的信任值列表,以及指示基于其得出信任值列表中的信任值的证据的信息,该证据在创建区块链的前一个区块之后得出。
图5是根据本公开的实施例的用于分布式网络中的分散式信任评估,特别是收集新证据的示例性方法,包括以下步骤:
S510:在创建区块链的当前区块之后得到新证据;以及
S520:在多个节点之间共享新证据。
得出新证据可以包括在多个节点之间收集统计通信信息;以及基于多个节点之间的统计通信信息以及基于多个节点中的其它节点上的本地信任值,得出新证据。在实施例中,统计通信信息包括多个节点之间的交互次数和通信数据量。该方法还包括采用共享新证据的节点的私钥对新证据进行签名。
在图6中,示出了根据本公开的实施例的用于分布式网络中的分散式信任评估,特别是创建区块链的新区块的示例性方法。该方法包括以下步骤:
S610:创建区块链的新区块;以及
S620:在多个节点之间共享新区块。
S610可以进一步包括收集新证据,其中,新证据在创建当前区块之后得出;以及基于新证据计算多个节点中的每个节点的新信任值。在证据的大小达到证据阈值的情况下,可以执行信任值的计算。
在实施例中,对信任值的计算可以包括基于新证据与新证据的平均值之间的偏差以及多个节点中的每个节点的当前信任值,计算多个节点中的每个节点的新信任值。该方法还可以包括验证步骤,诸如验证新证据的正确性。创建新区块的节点还可以将其公钥***新区块和/或采用创建新区块的节点的私钥对新区块进行签名。
关于证据的数据,可以将其***到新区块中,或者可以存储在新区块外部,诸如存储在云存储中,其中用于新证据的数据的指针和新证据的数据的哈希值被***到新区块中,该指针指向新证据的数据可用的位置。
图7示出根据本公开的实施例的用于分布式网络中的分散式信任评估的示例性方法,特别是选择批准的新区块。该方法包括以下步骤:
S710:获得由多个节点中的至少一个节点创建的至少一个新区块;
S720:从多个节点中的至少一个节点中选择一个获胜者节点,其中,将由获胜者节点创建的新区块作为批准的新区块;以及
S730:在多个节点之间共享选择结果。
可以基于节点创建新区块的创建时间、由节点拥有的令牌数量、节点的信任值、节点已计算出的节点信任值的数量、节点的公钥,以及以上策略的任何组合来进行选择。例如,可以基于如图3中所示的策略来进行选择。进行选择的节点也可以采用其私钥对其选择结果进行签名。
图8示出根据本公开的实施例的用于分布式网络中的分散式信任评估的示例性方法,特别是向获胜者节点发行令牌。该方法包括以下步骤:
步骤810:获得选择结果;
步骤820:选择批准的新区块作为区块链的下一个区块;以及
步骤830:向创建下一个区块的节点发行令牌。
如果选择将创建下一个区块的节点作为获胜者节点的节点的当前信任值的总和达到信任值阈值(该信任值阈值与每个节点的当前信任值和多个节点的数量有关),或者如果选择将创建下一个区块的节点作为获胜者节点的节点数量达到节点阈值(该节点阈值与每个节点的当前信任值和多个节点的数量有关),则可以例如确定新区块的获胜者节点。
在实施例中,可以基于区块链的当前区块的哈希值、创建下一个区块的节点的公钥、选择将创建下一个区块的节点作为获胜者节点的节点的私钥签名,以及选择将创建下一个区块的节点作为获胜者节点的节点的公钥,生成发行的令牌。
图9是根据本公开的实施例的用于分布式网络中的分散式信任评估的示例性方法,特别是执行访问控制。该方法包括以下步骤:
步骤910:获得区块链的当前区块;
步骤920:从当前区块中提取多个节点中的至少一个节点的当前信任值;以及
步骤930:基于节点的当前信任值,执行对节点的访问控制。
具体地,执行访问控制的节点可以允许对其当前信任值满足访问策略的节点的访问权限,并进一步基于基于属性的加密算法、公钥加密算法或同态加密算法,采用允许的节点的私钥对将要由允许的节点访问的信息进行加密。
在本公开的一些实施例中,证据和信任值和与社交应用和社交目的有关的上下文信息有关。
本公开的实施例还提供了一种如图10中所示的用于分布式网络中的分散式信任评估的装置1000,其中分布式网络包括多个节点。
装置1000可以包括用户界面模块1010、区块链管理模块1020、信任数据库1030、信任模块1040、密钥管理模块1050、应用模块1060以及未示出的其它必需模块。模块中的每个模块都通过数据和/或命令彼此通信。
在图10中所示的示例性结构中,装置1000可以是图1中的节点i 101。
用户界面模块1010用于显示区块链的内容并示出区块链信息。例如,用户界面模块1010可以是用于显示区块链的区块的内容的可视化用户界面(UI)。用户界面1010还能够从区块中提取内容。在一些实施例中,用户界面模块1010可以是具有输入设备的显示器,诸如小键盘、指向设备、触摸屏等。
如果底层节点想要成为矿工,则区块链管理模块1020可以负责执行应当由矿工完成的任务。如果节点想要选择一个节点作为创建区块链的批准区块的获胜者节点,则区块链管理模块1020可以进一步负责执行应当完成的任务。区块链管理模块1020可以进一步负责执行图1中的节点101想要生成证据并在所有节点101之间共享的应当完成的任务。区块链管理模块1020可以进一步负责执行节点101想要基于与其它节点101的信任值来执行访问控制的任务。
信任模块1040可以应用于收集和记录统计通信信息,诸如社交联网数据统计。信任模块1040可以进一步被应用于处理图1中的节点i 101和其它节点101之间的通信。信任模块1040可以进一步被应用于在节点101之间共享信息。在实施例中,信任模块1040可以进一步被应用于向图1中的矿工报告本地信任值和证据。
密钥管理模块1050可用于生成个人密钥对,负责对数据进行哈希处理,检查数据完整性,签名/验证签名,将个人密钥***到区块中以及与安全性有关的其它事件中的任何一种。
应用模块1060可以用于执行用于分布式社交联网,特别是PSN的一些应用,或者它可以用于执行用于不同社交目的的不同种类的社交联网。在一些实施例中,相应地,App_ID用于表示社交联网的种类,而Pur_ID用于表示社交目的。
如果节点需要在本地保存副本、分布式网络的本地记录、公钥-私钥对等,则与装置1000的上述功能模块有关的所有信息,例如区块链的区块的最新内容,可以存储在Trust数据库1030处。
假定Trust数据库1030可以被很好地保护并且是安全的。未授权方无法访问它。在本地存储受限的情况下,一些内容可以存储在另一个地方,例如具有基本保护(如加密)的云。指向远程存储内容的链接(诸如指针)可以保留在本地。合适的矿工可能是具有足够计算和存储资源的一些边缘设备。
这些列出的模块对于一些功能不是全部必需的。例如,用于获得至少一个节点的信任值的装置1000可以至少包括信任模块1040和用户界面模块1010。用于得出新证据,或用于创建区块链的新区块,或用于选择获胜者节点,或用于发行令牌,或用于访问控制的装置1000,可以至少包括信任模块1040、用户界面模块1010和区块链管理模块1020。装置1000可以根据以下功能的要求包括这些模块的其它组合。
信任模块1030可以被配置为获得区块链的当前区块,并且用户界面模块1010可以被配置为从当前区块中提取多个节点中的至少一个节点的当前信任值并示出区块链信息。
例如,在收集新证据的功能中,可以将区块链管理模块1020配置为在创建了区块链的当前区块之后得出新证据;并且信任模块1040可以进一步被配置为在多个节点之间共享新证据。信任模块1040可以收集多个节点之间的统计通信信息,并且区块链管理模块1030可以基于多个节点之间的统计通信信息以及多个节点中的其它节点上的本地信任值来得出新证据。密钥管理模块1050可以采用共享新证据的节点的私钥来对新证据进行签名。
在新区块创建的实施例中,区块链管理模块1020可以进一步创建区块链的新区块;并且信任模块1040可以在多个节点之间共享新区块。具体地,信任模块1040可以收集新证据;并且优选在证据的大小达到证据阈值的情况下,区块链管理模块1020可以进一步基于新证据计算多个节点中的每个节点的新信任值。例如,区块链管理模块1020可以基于新证据与新证据的平均值之间的偏差以及多个节点中的每个节点的当前信任值,来计算多个节点中的每个节点的新信任值。此外,密钥管理模块1050可以验证新证据的正确性,将创建新区块的节点的公钥***到新区块中,或者采用创建新区块的节点的私钥对新区块进行签名。
关于新证据的数据,区块链管理模块1020可以将新证据的数据***到新区块中,或者***用于新证据的数据的指针和新证据的数据的哈希值。指针可以指向新证据的数据可用的位置,并且新证据的数据可以存储在新区块外部,诸如在云存储中。
在用于选择批准的新区块的实施例中,信任模块1040可以进一步获得由多个节点中的至少一个节点创建的至少一个新区块,并且区块链管理模块1020可以从多个节点中的至少一个节点中的至少一个获胜者节点中选择一个获胜者节点,其中由获胜者节点创建的新区块被当作批准的新区块,使得信任模块1040可以在多个节点之间共享选择结果。可以基于节点创建新区块的创建时间、由节点拥有的令牌数量、节点的信任值、节点已计算出的节点信任值的数量、节点的公钥,以及以上策略的任何组合来进行获胜者节点的选择。例如,可以基于如图3中所示的策略来进行选择。密钥管理模块1050还可以采用共享选择结果的节点的私钥来对选择结果进行签名。
关于发行令牌的过程,信任模块1040可以进一步被配置为获得选择结果,并且区块链管理模块1020可以选择批准的新区块作为区块链的下一个区块,并向创建下一个区块的节点发行令牌。如果将创建下一个区块的节点选择作为获胜者节点的节点的当前信任值的总和达到信任值阈值和/或将创建下一个区块的节点选择作为获胜者节点的节点数量达到节点阈值,则区块链管理模块1020可以选择批准的新区块作为区块链的下一个区块。区块链管理模块1020还可以基于区块链的当前区块的哈希值、创建下一个区块的节点的公钥、具有将创建下一个区块的节点选择作为获胜者节点的节点的私钥的签名,以及将创建下一个区块的节点选择作为获胜者节点的节点的公钥,生成向创建下一个区块的节点发行的令牌。
在执行访问控制的实施例中,信任模块1040可以允许对其当前信任值满足访问策略的节点的访问权限。例如,密钥管理模块可以被配置为基于基于属性的加密算法、公钥加密算法或同态加密算法,采用允许的节点的私钥对允许的节点要访问的信息进行加密。
在本公开的一些实施例中,应用模块1060可以提供与社交应用和社交目的有关的上下文信息。证据和信任值可以与上下文信息有关。
信任数据库1030可以存储区块链的当前区块的数据。
由于用于分布式网络(特别是PSN)中的分散式信任评估的***、方法和装置是基于信任评估和认证的,因此它们可以在效率、分散化保证和区块链分叉问题方面克服比特币区块链的传统问题。它为矿工创建新区块提供了动力,而无需设定任何计算难度。算法2可以决定并轻松验证唯一的区块创建者,从而避免考虑区块链分叉。此外,它在算法2的设计中考虑了如何确保分散化。为了提高效率,算法3被设计为在新区块创建过程中寻求具有足够信誉和足够数量批准者的共识,并且同时还要注意效率。
关于安全性,在信任评估的设计中应用具有其可信度、证据偏差和过去信任值的信任证据,以便克服对信任评估的攻击,例如恶意攻击和不公平评分攻击。该***的安全性还得益于其自身的优势,因此高度依赖于区块链自身所应用的安全性理论。
关于Sybil攻击,一些节点可以重新生成新密钥对,以便移除过去的不良社交历史记录,或者保留许多密钥对以发起一些攻击。为了克服这个问题,***使新节点的初始信任值最低为零,并使信任值重视分布式网络的行为和事实。因此,不值得使用新的密钥对重新启动。在新信任值评估中,过去的信任值会随时间衰减而被考虑。同时,可以支持上下文感知信任评估。因此,节点不必使用多个密钥对。
可以基于以下机制来增强隐私:1)密钥对不链接到节点或用户的任何个人信息或个人身份;2)社交和社交行为证据经过哈希运算和签名,社交互动细节未公开。唯一公开的信息是一些统计信息:社交互动时间和交流数据量。
例如,由于基于区块链的解决方案在物联网、银行、健康服务和数据管理中变得非常流行,因此本发明可以应用于下一代移动和无线通信***的移动设备业务和产品中。已经进行了一些调查以支持生产支持区块链的移动设备。
图11示出可以在其上实现本公开的实施例的计算机***1100。尽管相对于特定设备或装备描绘了计算机***1100,但是可以预期,图11中的其它设备或装备(例如,网络元件、服务器等)可以部署***1100的所示硬件和组件。计算机***1100被设计和编程(例如,经由计算机程序代码或指令)以用于如在此所述的分布式网络中的分散式信任评估,并且包括通信机制,诸如总线1110,用于在计算机***1100的其它内部和外部组件之间传递信息。信息(也称为数据)表示为可测量现象的物理表达,通常是电压,但在其它实施例中还包括诸如磁性、电磁、压力、化学、生物学、分子、原子、亚原子和量子相互作用的现象。计算机***1100或其一部分构成用于在虚拟化网络中执行安全和信任技术及解决方案的一个或多个步骤的部件。
总线1110包括一个或多个并行的信息导体,使得在耦合到总线1110的设备之间快速传输信息。用于处理信息的一个或多个处理器1102与总线1110耦合。
处理器1102对如在此所述的分布式网络中的与分散式信任评估有关的计算机程序代码所指定的信息执行一组操作。该计算机程序代码是用于处理器和/或计算机***执行指定功能的操作的一组指令或提供指令的语句。例如,该代码可以用计算机编程语言编写,该计算机编程语言被编译成处理器的本机指令集。也可以使用本机指令集(例如,机器语言)直接编写代码。该组操作包括从总线1110引入信息并将信息放置在总线1110上。该组操作通常还包括比较两个或更多个信息单元,移动信息单元的位置以及组合两个或更多个信息单元,诸如通过加法或乘法或逻辑运算,如OR、异或(XOR)和AND。可以由处理器执行的一组操作中的每个操作由称为指令的信息(诸如一个或多个数字的操作代码)表示给处理器。由处理器1102执行的一系列操作,诸如一系列操作代码,构成处理器指令,也称为计算机***指令,或者简称为计算机指令。处理器可以单独或组合地实现为机械、电气、磁性、光学、化学或量子组件。
计算机***1100还包括耦合到总线1110的存储器1104。诸如随机存取存储器(RAM)或其它动态存储设备的存储器1104存储信息,包括如在此所述的用于分布式网络中的分散式信任评估的处理器指令。动态存储器允许由计算机***1100改变其中存储的信息。RAM允许独立于相邻地址处的信息来存储和检索存储在被称为存储器地址的位置处的信息单元。处理器1102还使用存储器1104在处理器指令的执行期间存储临时值。计算机***1100还包括只读存储器(ROM)1106或耦合到总线1110的其它静态存储设备,用于存储计算机***1100未改变的包括指令的静态信息。一些存储器由易失性存储器组成,断电会丢失存储在其上的信息。还耦合到总线1110的是非易失性(永久性)存储设备1108,诸如磁盘、光盘或闪存卡,用于存储包括指令的信息,即使计算机***1100被关闭或断电,该信息仍然存在。
信息,包括如在此所述的用于分布式网络中的分散式信任评估的指令,被从外部输入设备1112(诸如包含由人类用户操作的字母数字键的键盘,或传感器)提供给总线710以供处理器使用。主要用于与人互动的耦合到总线1110的其它外部设备包括显示设备1114,诸如阴极射线管(CRT)或液晶显示器(LCD),或用于呈现文本或图像的等离子屏幕或打印机,以及指向设备1116,诸如鼠标或轨迹球或光标方向键或运动传感器,用于控制显示器1114上显示的小光标图像的位置并发出与显示器1114上呈现的图形元素相关联的命令。在一些实施例中,例如,在其中计算机***1100在没有人工输入的情况下自动执行所有功能的实施例中,省略了外部输入设备1112、显示设备1114和指向设备1116中的一个或多个。
在所示的实施例中,诸如专用集成电路(ASIC)1120的专用硬件耦合到总线1110。专用硬件被配置为出于专用目的足够快地执行处理器1102未执行的操作。专用IC的示例包括:图形加速卡,用于生成用于显示器1114的图像;加密板,用于对通过网络发送的消息进行加密和解密;语音识别;以及与特殊外部设备的接口(诸如机械臂和医疗扫描装备,它们重复执行可以在硬件中更有效地实现的一些复杂的操作序列)。
计算机***1100还包括耦合到总线1110的通信接口1170的一个或多个实例。通信接口1170提供单向或双向通信耦合到以其自己的处理器进行操作的各种外部设备,诸如打印机、扫描仪和外部磁盘。通常,耦合是通过网络链接进行的,该网络链接连接到本地网络,具有自己处理器的各种外部设备都连接到该本地网络。例如,通信接口1170可以是个人计算机上的并行端口或串行端口或通用串行总线(USB)端口。在一些实施例中,通信接口1170是集成服务数字网络(ISDN)卡或数字用户线路(DSL)卡或电话调制解调器,其提供到对应类型的电话线的信息通信连接。在一些实施例中,通信接口1170是电缆调制解调器,该电缆调制解调器将总线1110上的信号转换成用于通过同轴电缆进行通信连接的信号或者转换成用于通过光纤电缆进行通信连接的光信号。作为另一示例,通信接口1170可以是局域网(LAN)卡,以提供到诸如以太网的兼容LAN的数据通信连接。无线链路也可以实现。对于无线链路,通信接口1170发送或接收或同时发送和接收电、声或电磁信号,包括红外和光信号,其携带信息流,诸如数字数据。例如,在诸如手机的移动电话的无线手持设备中,通信接口1170包括称为无线电收发机的无线电频带电磁发射机和接收机。在某些实施例中,如在此所述,通信接口1170使得能够连接到虚拟网络以用于分布式网络中的分散式信任评估。
如在此所使用的,术语“计算机可读介质”是指参与向处理器1102提供信息(包括用于执行的指令)的任何介质。此类介质可以采取许多形式,包括但不限于计算机可读存储介质(例如,非易失性介质、易失性介质)和传输介质。非暂态介质,诸如非易失性介质,包括例如光盘或磁盘,诸如存储设备1108。易失性介质包括例如动态存储器704。传输介质包括例如同轴电缆、铜缆电线、光导纤维以及在空间中传播而没有电线或电缆的载波,诸如声波和电磁波,包括无线电波、光波和红外波。信号包括通过传输介质传输的幅度、频率、相位、极化或其它物理特性的人为瞬态变化。计算机可读介质的常见形式包括,例如,软盘、柔性盘、硬盘、磁带、任何其它磁介质、CD-ROM、CDRW、DVD、任何其它光学介质、打孔卡、纸带、光学标记纸、带有孔图案或其它光学可识别标记的任何其它物理介质、RAM、PROM、EPROM、FLASH-EPROM、任何其它存储芯片或盒、载波或计算机可以从中读取的任何其它介质。在此使用的术语计算机可读存储介质指代除传输介质之外的任何计算机可读介质。
在一种或多种有形介质中编码的逻辑包括计算机可读存储介质上的处理器指令和专用硬件(诸如ASIC 1120)中的一个或二者。
本公开的至少一些实施例涉及用于实现在此描述的一些或全部技术的计算机***71100的使用。根据本公开的一个实施例,那些技术由计算机***1100响应于处理器1102执行包含在存储器1104中的一个或多个处理器指令的一个或多个序列来执行。此类指令(也称为计算机指令、软件和程序代码)可以从诸如存储设备1108或网络链路的另一计算机可读介质将其读取到存储器1104中。存储器1104中包含的指令序列的执行使处理器1102执行在此所述的一个或多个方法步骤。在替代实施例中,可以使用诸如ASIC 1120的硬件代替软件或与之结合来实现本发明。因此,本发明的实施例不限于硬件和软件的任何特定组合,除非在此另有明确说明。
在网络链路和其它网络上通过通信接口1170传输的信号携带往返计算机***1100的信息。计算机***1100可以通过网络通过通信接口1170发送和接收信息,包括程序代码。接收的代码可以在接收到时由处理器1102执行,或者可以存储在存储器1104中或存储在存储设备1108中或其它非易失性存储装置中以供以后执行,或同时在两者中存储。以这种方式,计算机***1100可以获得以载波上的信号形式的应用程序代码。
图12示出可以在其上实现本公开的实施例的芯片组1200。如在此所述,芯片组1200被编程为在分布式网络中的分散式信任评估,并且包括例如关于结合在一个或多个物理封装(例如,芯片)中的图11描述的处理器和存储器组件。举例来说,物理封装包括一种或多种材料、组件和/或结构组件(例如,主板)上的电线的布置,以提供一种或多种特征,诸如物理强度、尺寸节省和/或或电相互作用的限制。预期在某些实施例中,芯片组可以在单个芯片中实现。芯片组1200或其一部分构成用于在同一通信会话中执行用于执行多种形式的通信的一个或多个步骤的部件。
在一个实施例中,芯片组1200包括诸如总线1201的通信机制,用于在芯片组1200的各个组件之间传递信息。处理器1203具有到总线1201的连接性,以执行存储在例如存储器1205中的指令和处理信息。处理器1203可以包括一个或多个处理核,每个核被配置为独立执行。多核处理器可在单个物理封装内实现多处理。多核处理器的示例包括两个、四个、八个或更多数量的处理核。可替代地或另外地,处理器803可包括经由总线801串联配置的一个或多个微处理器,以使得能够独立执行指令、流水线化和多线程化。处理器1203还可以带有一个或多个专用组件以执行某些处理功能和任务,诸如一个或多个数字信号处理器(DSP)1207或一个或多个专用集成电路(ASIC)1209。DSP 1207通常被配置为独立于处理器1203而实时处理现实世界的信号(例如,声音)。类似地,ASIC 1209可被配置为执行通用处理器不容易执行的专用功能。有助于执行在此描述的发明功能的其它专用组件包括一个或多个现场可编程门阵列(FPGA)(未示出)、一个或多个控制器(未示出)或一个或多个其它专用计算机芯片。
处理器1203和所附组件具有经由总线1201到存储器1205的连接性。存储器1205包括动态存储器(例如,RAM、磁盘、可写光盘等)和静态存储器(例如,ROM、CD-ROM等),用于存储可执行指令,该可执行指令在执行时实施在此所述的发明性步骤,以在同一通信会话中执行多种形式的通信。存储器1205还存储与发明步骤的执行相关联或由其生成的数据。
本公开包括明确公开或其任何概括的在此公开的任何新颖特征或特征的组合。当结合附图阅读时,鉴于前述描述,对本公开的前述示例性实施例的各种修改和更改对于相关领域的技术人员而言可变得显而易见。然而,任何和所有修改仍将落入本发明的非限制性和示例性实施例的范围内。
Claims (90)
1.一种用于分布式网络中的分散式信任评估的方法,所述分布式网络包括多个节点,所述方法包括:
获得区块链的当前区块,其中,所述区块链的所述当前区块包括所述区块链的前一个区块的哈希值、所述当前区块的创建时间戳、向创建所述区块链的所述前一个区块的节点发行的令牌、指示所述多个节点中的每个节点的当前信任值的信任值列表,以及指示基于其得出所述信任值列表中的所述信任值的证据的信息,所述证据在创建所述区块链的所述前一个区块之后得出;以及
从所述当前区块中提取所述多个节点中的至少一个节点的当前信任值。
2.根据权利要求1所述的方法,进一步包括:
在创建所述区块链的所述当前区块之后得出新证据;以及
在所述多个节点之间共享所述新证据。
3.根据权利要求2所述的方法,其中,得出所述新证据包括:
收集所述多个节点之间的统计通信信息;以及
基于所述多个节点之间的所述统计通信信息以及基于所述多个节点中的其它节点上的本地信任值,得出所述新证据。
4.根据权利要求2或3所述的方法,其中,所述统计通信信息包括所述多个节点之间的交互次数和通信数据量。
5.根据权利要求2至4中任一项所述的方法,进一步包括:
采用共享所述新证据的所述节点的私钥对所述新证据进行签名。
6.根据权利要求1至5中任一项所述的方法,进一步包括:
创建所述区块链的新区块;以及
在所述多个节点之间共享所述新区块。
7.根据权利要求6所述的方法,其中,创建所述区块链的新区块包括:
收集新证据,其中,所述新证据在创建所述当前区块之后得出;以及
基于所述新证据计算所述多个节点中的每个节点的新信任值。
8.根据权利要求7所述的方法,其中,
在所述证据的大小达到证据阈值的情况下,基于所述新证据来计算所述多个节点中的每个节点的所述新信任值。
9.根据权利要求7或8所述的方法,其中,基于所述新证据计算所述多个节点中的每个节点的新信任值包括:
基于所述新证据与所述新证据的平均值之间的偏差以及所述多个节点中的每个节点的所述当前信任值,计算所述多个节点中的每个节点的新信任值。
10.根据权利要求7至9中任一项所述的方法,进一步包括:
验证所述新证据的正确性。
11.根据权利要求7至10中任一项所述的方法,其中,创建所述区块链的新区块进一步包括:
将创建所述新区块的所述节点的公钥***到所述新区块中。
12.根据权利要求7至11中任一项所述的方法,进一步包括:
将所述新证据的数据***到所述新区块中。
13.根据权利要求7至12中任一项所述的方法,进一步包括:
***用于所述新证据的所述数据的指针和所述新证据的所述数据的哈希值,其中,所述指针指向所述新证据的所述数据可用的位置,并且所述新证据的所述数据存储在所述新区块外部。
14.根据权利要求13所述的方法,其中,将所述新证据的所述数据存储在云存储中。
15.根据权利要求7至14中任一项所述的方法,进一步包括:
采用创建所述新区块的所述节点的所述私钥对所述新区块进行签名。
16.根据权利要求1至15中任一项所述的方法,进一步包括:
获得由所述多个节点中的至少一个节点创建的至少一个新区块;
从所述多个节点中的所述至少一个节点中选择一个获胜者节点,其中,由所述获胜者节点创建的所述新区块被当作批准的新区块;以及
在所述多个节点之间共享选择结果。
17.根据权利要求16所述的方法,其中,选择所述批准的新区块包括:
基于所述节点创建所述新区块的创建时间选择所述获胜者节点。
18.根据权利要求16或17所述的方法,其中,选择所述批准的新区块包括:
基于由所述节点拥有的令牌数量选择所述获胜者节点。
19.根据权利要求16至18中任一项所述的方法,其中,选择所述批准的新区块包括:
基于所述节点的所述信任值选择所述获胜者节点。
20.根据权利要求16至19中任一项所述的方法,其中,选择所述批准的新区块包括:
基于所述节点已计算出的节点信任值的数量选择所述获胜者节点。
21.根据权利要求16至19中任一项所述的方法,其中,选择所述批准的新区块包括:
基于所述节点的所述公钥选择所述获胜者节点。
22.根据权利要求16至21中任一项所述的方法,其中,选择所述批准的新区块包括:
选择最早创建所述新区块的所述节点作为所述获胜者节点。
23.根据权利要求22所述的方法,其中,选择最早创建所述新区块的所述节点作为所述获胜者节点包括:
选择由节点拥有的令牌的数量超过令牌阈值的节点以外的最早创建所述新区块的所述节点作为所述获胜者节点。
24.根据权利要求22或23所述的方法,其中,选择所述批准的新区块进一步包括:
在至少两个节点同时创建新区块的情况下,选择创建具有最高信任值的所述新区块的所述节点作为所述获胜者节点。
25.根据权利要求24所述的方法,其中,选择创建具有最高信任值的所述新区块的所述节点作为所述获胜者节点包括:
选择由节点拥有的令牌数量超过令牌阈值的节点以外的创建具有最高信任值的所述新区块的所述节点作为所述获胜者节点。
26.根据权利要求24或25所述的方法,其中,选择所述批准的新区块进一步包括:
在创建所述新区块的至少两个节点具有相同信任值的情况下,选择拥有较少令牌数量的所述节点作为所述获胜者节点。
27.根据权利要求26所述的方法,其中,选择所述批准的新区块进一步包括:
在由创建所述新区块的所述至少两个节点拥有的所述令牌数量相同的情况下,选择创建计算较少节点信任值的所述新区块的所述节点作为所述获胜者节点。
28.根据权利要求27所述的方法,其中,选择所述批准的新区块进一步包括:
在创建所述新区块的至少两个节点已计算出相同数量的信任值的情况下,选择创建具有最大或最小公钥的所述新区块的所述节点作为所述获胜者节点。
29.根据权利要求16至28中任一项所述的方法,进一步包括:
采用共享所述选择结果的所述节点的所述私钥对所述选择结果进行签名。
30.根据权利要求1至29中任一项所述的方法,进一步包括:
获得选择结果;
选择批准的新区块作为所述区块链的下一个区块;以及
向创建所述下一个区块的所述节点发行令牌。
31.根据权利要求30所述的方法,其中,在选择创建所述下一个区块的所述节点作为所述获胜者节点的所述节点的所述当前信任值之和达到信任值阈值的情况下,选择批准的新区块作为所述区块链的所述下一个区块。
32.根据权利要求30或31所述的方法,其中,在选择创建所述下一个区块的所述节点作为所述获胜者节点的所述节点的所述数量达到节点阈值的情况下,选择批准的新区块作为所述区块链的所述下一个区块。
33.根据权利要求30至32中任一项所述的方法,其中,所述信任值阈值与每个节点的所述当前信任值和所述多个节点的数量有关。
34.根据权利要求30至33中任一项所述的方法,其中,所述节点阈值与每个节点的所述当前信任值和所述多个节点的所述数量有关。
35.根据权利要求30至34中任一项所述的方法,其中,向创建所述下一个区块的所述节点发行令牌包括:
基于所述区块链的所述当前区块的哈希值、创建所述下一个区块的所述节点的所述公钥、采用选择创建所述下一个区块的所述节点作为所述获胜者节点的所述节点的所述私钥的所述签名、以及选择创建所述下一个区块的所述节点作为所述获胜者节点的所述节点的所述公钥,生成向创建所述下一个区块的所述节点发行的所述令牌。
36.根据权利要求1至35中任一项所述的方法,进一步包括:
基于所述节点的所述当前信任值,执行对节点的访问控制。
37.根据权利要求36所述的方法,其中,基于所述当前信任值来执行对所述节点的访问控制包括:
允许对其当前信任值满足访问策略的节点的访问权限。
38.根据权利要求37所述的方法,其中,允许所述访问权限包括:
基于基于属性的加密算法、公钥加密算法或同态加密算法,采用允许的节点的所述私钥对将要由所述允许的节点访问的所述信息进行加密。
39.根据前述权利要求中任一项所述的方法,其中,所述分布式网络是普适社交网络。
40.根据前述权利要求中任一项所述的方法,其中,所述新证据与上下文信息有关。
41.根据前述权利要求中任一项所述的方法,其中,所述多个节点中的每个节点的所述新信任值与上下文信息有关。
42.根据权利要求40或41所述的方法,其中,所述上下文信息与社交应用有关。
43.根据权利要求40至42中任一项所述的方法,其中,所述上下文信息与社交目的有关。
44.一种用于分布式网络中的分散式信任评估的装置,所述分布式网络包括多个节点,所述装置包括:
信任模块,其被配置为获得区块链的当前区块,其中,所述区块链的所述当前区块包括所述区块链的前一个区块的哈希值、所述当前区块的创建时间戳、向创建所述区块链的所述前一个区块的节点发行的令牌、指示所述多个节点中的每个节点的当前信任值的信任值列表,以及指示基于其得出所述信任值列表中的所述信任值的证据的信息,所述证据在创建所述区块链的所述前一个区块之后得出;以及
用户界面模块,其被配置为从所述当前区块中提取所述多个节点中的至少一个节点的当前信任值以及示出区块链信息。
45.根据权利要求44所述的装置,其中,所述装置进一步包括:
区块链管理模块,其被配置为在创建所述区块链的所述当前区块之后得出新证据;以及
所述信任模块进一步被配置为在所述多个节点之间共享所述新证据。
46.根据权利要求45所述的装置,其中
所述信任模块进一步被配置为收集所述多个节点之间的统计通信信息;以及
所述区块链管理模块进一步被配置为基于所述多个节点之间的所述统计通信信息以及基于所述多个节点中的其它节点上的本地信任值来得出所述新证据。
47.根据权利要求45或46所述的装置,其中,所述统计通信信息包括所述多个节点之间的交互次数和通信数据量。
48.根据权利要求45至47中任一项所述的装置,进一步包括:
密钥管理模块,其被配置为采用共享所述新证据的所述节点的所述私钥对所述新证据进行签名。
49.根据权利要求44至48中任一项所述的装置,其中
所述区块链管理模块进一步被配置为创建所述区块链的新区块;以及
所述信任模块进一步被配置为在所述多个节点之间共享所述新区块。
50.根据权利要求49所述的装置,其中,
所述信任模块进一步被配置为收集新证据,其中,所述新证据在创建所述当前区块之后得出;以及
所述区块链管理模块进一步被配置为基于所述新证据计算所述多个节点中的每个节点的新信任值。
51.根据权利要求50所述的装置,其中,所述区块链管理模块进一步被配置为:在所述证据的大小达到证据阈值的情况下,基于所述新证据计算所述多个节点中的每个节点的新信任值。
52.根据权利要求50或51所述的装置,其中
所述区块链管理模块进一步被配置为基于所述新证据与所述新证据的平均值之间的偏差以及所述多个节点中的每个节点的所述当前信任值来计算所述多个节点中的每个节点的新信任值。
53.根据权利要求50至52中任一项所述的装置,其中
所述密钥管理模块进一步被配置为验证所述新证据的正确性。
54.根据权利要求50至53中任一项所述的装置,其中
所述密钥管理模块进一步被配置为将创建所述新区块的所述节点的公钥***所述新区块中。
55.根据权利要求50至54中任一项所述的装置,其中,所述区块链管理装置进一步被配置为将所述新证据的所述数据***所述新区块中。
56.根据权利要求50至55中任一项所述的装置,其中,所述区块链管理模块进一步被配置为***用于所述新证据的所述数据的指针和所述新证据的所述数据的哈希值,其中,所述指针指向所述新证据的所述数据可用的位置,并且所述新证据的所述数据存储在所述新区块外部。
57.根据权利要求56所述的装置,其中,将所述新证据的所述数据存储在云存储中。
58.根据权利要求50至57中任一项所述的装置,其中,所述密钥管理模块进一步被配置为采用创建所述新区块的所述节点的所述私钥对所述新区块进行签名。
59.根据权利要求44至58中任一项所述的装置,其中
所述信任模块进一步被配置为获得由所述多个节点中的至少一个节点创建的至少一个新区块;
所述区块链管理模块进一步被配置为从所述多个节点中的所述至少一个节点中选择一个获胜者节点,其中,由所述获胜者节点创建的所述新区块被当作批准的新区块;以及
所述信任模块进一步被配置为在所述多个节点之间共享选择结果。
60.根据权利要求59所述的装置,其中,所述区块链管理模块进一步被配置为基于所述节点创建所述新区块的所述创建时间选择所述获胜者节点。
61.根据权利要求59或60所述的装置,其中,所述区块链管理模块进一步被配置为基于由所述节点拥有的令牌数量选择所述获胜者节点。
62.根据权利要求59至61中任一项所述的装置,其中,所述区块链管理模块进一步被配置为基于所述节点的所述信任值选择所述获胜者节点。
63.根据权利要求59至62中任一项所述的装置,其中,所述区块链管理模块进一步被配置为基于所述节点已计算出的节点信任值的数量选择所述获胜者节点。
64.根据权利要求59至63中任一项所述的装置,其中,所述区块链管理模块被配置为基于所述节点的所述公钥选择所述获胜者节点。
65.根据权利要求59至64中任一项所述的装置,其中,所述区块链管理模块被配置为选择最早创建所述新区块的所述节点作为所述获胜者节点。
66.根据权利要求65所述的装置,其中,所述区块链管理模块进一步被配置为选择由节点拥有的所述令牌数量超过令牌阈值的节点以外的最早创建所述新区块的所述节点作为所述获胜者节点。
67.根据权利要求65或66所述的装置,其中,所述区块链管理模块进一步被配置为在至少两个节点同时创建新区块的情况下,选择创建具有最高信任值的所述新区块的所述节点作为所述获胜者节点。
68.根据权利要求67所述的装置,其中,所述区块链管理模块进一步被配置为选择由节点拥有的所述令牌数量超过令牌阈值的节点以外的创建具有最高信任值的所述新区块的所述节点作为所述获胜者节点。
69.根据权利要求67或68所述的装置,其中,所述区块链管理模块进一步被配置为:在创建所述新区块的至少两个节点具有相同信任值的情况下,选择拥有较少令牌数量的所述节点作为所述获胜者节点。
70.根据权利要求69所述的装置,其中,所述区块链管理模块进一步被配置为:在由创建所述新区块的所述至少两个节点拥有的所述令牌数量相同的情况下,选择创建计算出较少节点信任值的所述新区块的所述节点作为所述获胜者节点。
71.根据权利要求70所述的装置,其中,所述区块链管理模块进一步被配置为:在创建所述新区块的至少两个节点已计算出相同数量的信任值的情况下,选择创建具有最大或最小公钥的所述新区块的所述节点作为所述获胜者节点。
72.根据权利要求59至71中任一项所述的装置,其中,所述密钥管理模块进一步被配置为采用共享所述选择结果的所述节点的所述私钥对所述选择结果进行签名。
73.根据权利要求44至72中任一项所述的装置,其中
所述信任模块进一步被配置为获得选择结果;
所述区块链管理模块进一步被配置为选择批准的新区块作为所述区块链的下一个区块,以及向创建所述下一个区块的所述节点发行令牌。
74.根据权利要求73所述的装置,其中,所述区块链管理模块进一步被配置为:在选择创建所述下一个区块的所述节点作为所述获胜者节点的所述节点的所述当前信任值之和达到信任值阈值的情况下,选择批准的新区块作为所述区块链的所述下一个区块。
75.根据权利要求73或74所述的装置,其中,所述区块链管理模块进一步被配置为:在选择创建所述下一个区块的所述节点作为所述获胜者节点的所述节点的数量达到节点阈值的情况下,选择批准的新区块作为所述区块链的所述下一个区块。
76.根据权利要求73至75中任一项所述的装置,其中,所述信任值阈值与每个节点的所述当前信任值和所述多个节点的数量有关。
77.根据权利要求73至76中任一项所述的装置,其中,所述节点阈值与每个节点的所述当前信任值和所述多个节点的所述数量有关。
78.根据权利要求73至77中任一项所述的装置,其中,
所述区块链管理模块进一步被配置为基于所述区块链的所述当前区块的哈希值、创建所述下一个区块的所述节点的所述公钥、采用选择创建所述下一个区块的所述节点作为所述获胜者节点的所述节点的所述私钥的所述签名、以及选择创建所述下一个区块的所述节点作为所述获胜者节点的所述节点的所述公钥,生成向创建所述下一个区块的所述节点发行的所述令牌。
79.根据权利要求44至78中任一项所述的装置,其中,所述信任模块进一步被配置为基于所述节点的所述当前信任值来执行对节点的访问控制。
80.根据权利要求79所述的装置,其中,所述信任模块进一步被配置为允许对其当前信任值满足访问策略的节点的访问权限。
81.根据权利要求80所述的装置,其中,所述密钥管理模块进一步被配置为基于基于属性的加密算法、公钥加密算法或同态加密算法,采用允许的节点的所述私钥对将要由所述允许的节点访问的所述信息进行加密。
82.根据前述权利要求中任一项所述的装置,其中,所述分布式网络是普适社交网络。
83.根据前述权利要求中任一项所述的装置,其中,所述新证据与上下文信息有关。
84.根据前述权利要求中任一项所述的装置,其中,所述多个节点中的每个节点的所述新信任值与上下文信息有关。
85.根据权利要求83或84所述的装置,其中,所述上下文信息与社交应用有关。
86.根据权利要求83至85中任一项所述的装置,其中,所述上下文信息与社交目的有关。
87.根据权利要求83至86中任一项所述的装置,进一步包括:
应用模块,其被配置为提供所述上下文信息。
88.根据前述权利要求中任一项所述的装置,进一步包括:
信任数据库,其被配置为存储所述区块链的所述当前区块的数据。
89.一种装置,包括用于执行根据权利要求1至43中任一项所述的方法的部件。
90.一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储指令,所述指令在由一个或多个处理器执行时使所述处理器执行根据权利要求1至43中任一项所述的方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2018/089497 WO2019227457A1 (en) | 2018-06-01 | 2018-06-01 | Method and apparatus for decentralized trust evaluation in a distributed network |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112236987A true CN112236987A (zh) | 2021-01-15 |
Family
ID=68696798
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880093776.9A Pending CN112236987A (zh) | 2018-06-01 | 2018-06-01 | 用于分布式网络中的分散式信任评估的方法和装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20210160056A1 (zh) |
EP (1) | EP3804279A4 (zh) |
CN (1) | CN112236987A (zh) |
WO (1) | WO2019227457A1 (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113329204A (zh) * | 2021-08-03 | 2021-08-31 | 北京电信易通信息技术股份有限公司 | 一种基于终端信任管理的数据安全传输方法及*** |
CN114666067A (zh) * | 2022-05-23 | 2022-06-24 | 成都信息工程大学 | 基于区块链的跨域细粒度属性访问控制方法及*** |
US20220327503A1 (en) * | 2019-06-06 | 2022-10-13 | Xi'an University Of Posts & Telecommunications | Distributed consensus algorithm and apparatus for rapidly generating block |
WO2023010880A1 (zh) * | 2021-08-03 | 2023-02-09 | 华为技术有限公司 | 一种数据传输方法及相关设备 |
WO2024078258A1 (zh) * | 2022-10-13 | 2024-04-18 | 华为技术有限公司 | 一种路径建立方法及装置 |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11924323B2 (en) * | 2018-07-02 | 2024-03-05 | International Business Machines Corporation | On-chain governance of blockchain |
GB201811263D0 (en) * | 2018-07-10 | 2018-08-29 | Netmaster Solutions Ltd | A method and system for managing digital using a blockchain |
US11582024B2 (en) * | 2018-07-28 | 2023-02-14 | Kan Yang | Blockchain-based decentralized public key management system |
US11314749B2 (en) | 2018-10-03 | 2022-04-26 | International Business Machines Corporation | Blockchain implementing reliability database |
US11226971B2 (en) * | 2018-10-03 | 2022-01-18 | International Business Machines Corporation | Blockchain implementing reliability database |
US11243917B2 (en) * | 2018-10-03 | 2022-02-08 | International Business Machines Corporation | Blockchain implementing reliability database |
CN109584066B (zh) * | 2018-10-31 | 2020-09-01 | 阿里巴巴集团控股有限公司 | 基于区块链的隐私交易及其应用方法和装置 |
US20200167779A1 (en) * | 2018-11-27 | 2020-05-28 | Akamai Technologies, Inc. | High performance distributed system of record with confidence-based consensus |
US11595441B2 (en) * | 2019-04-04 | 2023-02-28 | Cisco Technology, Inc. | Systems and methods for securing network paths |
US11115420B2 (en) * | 2019-04-26 | 2021-09-07 | Visa International Service Association | Distributed ledger data verification network |
JP7221799B2 (ja) * | 2019-05-31 | 2023-02-14 | 株式会社日立製作所 | 情報処理システム、及び情報処理システムの制御方法 |
US11165787B2 (en) * | 2019-08-26 | 2021-11-02 | Bank Of America Corporation | System for authorization of electronic data access and processing functions within a distributed server network |
KR102260093B1 (ko) * | 2019-08-30 | 2021-06-02 | 연세대학교 산학협력단 | 내결함성 블록체인 네트워크의 신뢰도 기반 샤드 분배 장치 및 방법 |
US11405394B2 (en) * | 2019-10-30 | 2022-08-02 | Pulse Secure, Llc | Trust broker system for managing and sharing trust levels |
CN111402079A (zh) * | 2020-03-24 | 2020-07-10 | 中国南方电网有限责任公司 | 电力区块的获取方法、装置、计算机设备和存储介质 |
US20230121852A1 (en) * | 2020-04-01 | 2023-04-20 | Nokia Technologies Oy | Method and apparatus for trust management in integrated networks based on blockchain |
CN112738728B (zh) * | 2020-12-25 | 2022-03-11 | 北京航空航天大学 | 大范围城市路网下基于时空可信度的群智感知节点选择方法 |
CN114124990A (zh) * | 2021-09-29 | 2022-03-01 | 安徽江淮汽车集团股份有限公司 | 基于区块链的车联网信任管理方法 |
CN114422141A (zh) * | 2021-12-28 | 2022-04-29 | 上海万向区块链股份公司 | 基于区块链的电商平台商品评价管理方法和*** |
CN114338243B (zh) * | 2022-03-10 | 2022-05-20 | 中科边缘智慧信息科技(苏州)有限公司 | 一种本地数据可信存储的方法及装置 |
CN114826572A (zh) * | 2022-03-31 | 2022-07-29 | 西安电子科技大学 | 支持属性隐私保护的去中心化众包方法、***及终端 |
CN114726529A (zh) * | 2022-04-06 | 2022-07-08 | 湘潭大学 | 一种基于信誉度共识机制的智能电网数据聚合方法 |
CN115118494B (zh) * | 2022-06-27 | 2023-11-17 | 天津大学 | 一种融合边缘计算的智能家居访问控制信任评估方法 |
US20240095724A1 (en) * | 2022-09-12 | 2024-03-21 | Capital One Services, Llc | Techniques to provide secure cryptographic authentication of contactless cards by distributed entities |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105493438A (zh) * | 2013-07-01 | 2016-04-13 | 诺基亚技术有限公司 | 用于社交联网中对信任的匿名认证的方法和装置 |
US20170232300A1 (en) * | 2016-02-02 | 2017-08-17 | Bao Tran | Smart device |
US20170243193A1 (en) * | 2016-02-18 | 2017-08-24 | Skuchain, Inc. | Hybrid blockchain |
CN107273410A (zh) * | 2017-05-03 | 2017-10-20 | 上海点融信息科技有限责任公司 | 基于区块链的分布式存储 |
CN107665405A (zh) * | 2017-09-26 | 2018-02-06 | 北京邮电大学 | 一种车辆信誉管理方法及装置 |
US20180082256A1 (en) * | 2016-09-19 | 2018-03-22 | Sap Se | Decentralized credentials verification network |
Family Cites Families (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104221321A (zh) * | 2012-03-31 | 2014-12-17 | 诺基亚公司 | 用于安全社交网络的方法和装置 |
WO2014205645A1 (en) * | 2013-06-25 | 2014-12-31 | Nokia Corporation | A method and apparatus for anonymous and trustworthy authentication in pervasive social networking |
US9477839B2 (en) * | 2014-04-04 | 2016-10-25 | Palo Alto Research Center Incorporated | Methods for centralized privacy-preserving collaborative threat mitigation |
US10380702B2 (en) * | 2015-05-01 | 2019-08-13 | Monegraph, Inc. | Rights transfers using block chain transactions |
MX2018009616A (es) * | 2016-02-08 | 2019-03-28 | Moloney Lindsay | Sistema y metodo para la verificacion de la autenticidad de la informacion de documentos. |
US20170270527A1 (en) * | 2016-03-17 | 2017-09-21 | John Rampton | Assessing trust to facilitate blockchain transactions |
US11455627B2 (en) * | 2016-04-13 | 2022-09-27 | Haventec Pty Ltd | System of security using blockchain protocol |
EP3455996A4 (en) * | 2016-05-09 | 2020-01-22 | Nokia Technologies Oy | BLOCK CHAIN-BASED RESOURCE MANAGEMENT |
CN105956490B (zh) * | 2016-05-17 | 2018-12-18 | 苏州超块链信息科技有限公司 | 一种在网络环境中生成、维护可信数据的方法 |
US20180005235A1 (en) * | 2016-06-29 | 2018-01-04 | Ca, Inc. | Electronic transaction risk assessment based on digital identifier trust evaluation |
GB201611698D0 (en) * | 2016-07-05 | 2016-08-17 | Eitc Holdings Ltd | Blockchain-implemented control method and system |
US11276038B2 (en) * | 2016-08-07 | 2022-03-15 | Verifi Media, Inc. | Distributed data store for managing media |
US10868674B2 (en) * | 2016-08-12 | 2020-12-15 | ALTR Solutions, Inc. | Decentralized database optimizations |
US10923215B2 (en) * | 2016-09-20 | 2021-02-16 | Nant Holdings Ip, Llc | Sample tracking via sample tracking chains, systems and methods |
AU2016425359A1 (en) * | 2016-09-27 | 2019-01-17 | Visa International Service Association | Distributed electronic record and transaction history |
WO2018098598A1 (en) * | 2016-12-02 | 2018-06-07 | Stack Fintech Inc. | Digital banking platform and architecture |
US11429921B2 (en) * | 2016-12-19 | 2022-08-30 | International Business Machines Corporation | Tracking shipments with a local and remote blockchain |
US11321681B2 (en) * | 2017-02-06 | 2022-05-03 | Northern Trust Corporation | Systems and methods for issuing and tracking digital tokens within distributed network nodes |
EP3361672B1 (en) * | 2017-02-10 | 2020-06-17 | Nokia Technologies Oy | Blockchain-based authentication method and system |
EP3583530B1 (en) * | 2017-02-17 | 2022-10-19 | Nokia Technologies Oy | Voting-consensus distributed ledger |
CN110832825B (zh) * | 2017-05-22 | 2022-10-21 | 维萨国际服务协会 | 通过防篡改数据提高验证速度的网络的方法和节点 |
US20180357683A1 (en) * | 2017-06-08 | 2018-12-13 | International Business Machines Corporation | Rating data management |
CN107819749A (zh) * | 2017-10-26 | 2018-03-20 | 平安科技(深圳)有限公司 | 基于以太坊的区块链***和交易数据处理方法 |
US11108557B2 (en) * | 2017-11-30 | 2021-08-31 | Cable Television Laboratories, Inc. | Systems and methods for distributed trust model and framework |
CN107944740A (zh) * | 2017-12-07 | 2018-04-20 | 刘大宇 | 基于区块链技术的能力评价方法 |
EP3522088B1 (en) * | 2018-02-05 | 2022-03-16 | Nokia Technologies Oy | Securing blockchain access through a gateway |
US10803540B2 (en) * | 2018-03-14 | 2020-10-13 | Motorola Solutions, Inc. | System for validating and appending incident-related data records in a distributed electronic ledger |
US20220366494A1 (en) * | 2018-05-06 | 2022-11-17 | Strong Force TX Portfolio 2018, LLC | Market orchestration system for facilitating electronic marketplace transactions |
CN111066020B (zh) * | 2019-07-02 | 2023-08-04 | 创新先进技术有限公司 | 用于创建去中心化标识的***和方法 |
EP3669281B1 (en) * | 2019-07-11 | 2024-04-03 | Advanced New Technologies Co., Ltd. | Shared blockchain data storage |
US11336455B2 (en) * | 2019-09-25 | 2022-05-17 | International Business Machines Corporation | Consensus protocol for blockchain DAG structure |
-
2018
- 2018-06-01 EP EP18920267.4A patent/EP3804279A4/en active Pending
- 2018-06-01 US US17/058,058 patent/US20210160056A1/en active Pending
- 2018-06-01 CN CN201880093776.9A patent/CN112236987A/zh active Pending
- 2018-06-01 WO PCT/CN2018/089497 patent/WO2019227457A1/en unknown
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105493438A (zh) * | 2013-07-01 | 2016-04-13 | 诺基亚技术有限公司 | 用于社交联网中对信任的匿名认证的方法和装置 |
US20170232300A1 (en) * | 2016-02-02 | 2017-08-17 | Bao Tran | Smart device |
US20170243193A1 (en) * | 2016-02-18 | 2017-08-24 | Skuchain, Inc. | Hybrid blockchain |
US20180082256A1 (en) * | 2016-09-19 | 2018-03-22 | Sap Se | Decentralized credentials verification network |
CN107273410A (zh) * | 2017-05-03 | 2017-10-20 | 上海点融信息科技有限责任公司 | 基于区块链的分布式存储 |
CN107665405A (zh) * | 2017-09-26 | 2018-02-06 | 北京邮电大学 | 一种车辆信誉管理方法及装置 |
Non-Patent Citations (1)
Title |
---|
刘文杰;刘保汛;刘亚军;: "区块链现状与未来发展趋势", 电子世界, no. 04, 23 February 2018 (2018-02-23) * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220327503A1 (en) * | 2019-06-06 | 2022-10-13 | Xi'an University Of Posts & Telecommunications | Distributed consensus algorithm and apparatus for rapidly generating block |
US11893552B2 (en) * | 2019-06-06 | 2024-02-06 | Xi'an University Of Posts & Telecommunications | Distributed consensus algorithm and apparatus for rapidly generating block |
CN113329204A (zh) * | 2021-08-03 | 2021-08-31 | 北京电信易通信息技术股份有限公司 | 一种基于终端信任管理的数据安全传输方法及*** |
CN113329204B (zh) * | 2021-08-03 | 2021-10-01 | 北京电信易通信息技术股份有限公司 | 一种基于终端信任管理的数据安全传输方法及*** |
WO2023010880A1 (zh) * | 2021-08-03 | 2023-02-09 | 华为技术有限公司 | 一种数据传输方法及相关设备 |
CN114666067A (zh) * | 2022-05-23 | 2022-06-24 | 成都信息工程大学 | 基于区块链的跨域细粒度属性访问控制方法及*** |
WO2024078258A1 (zh) * | 2022-10-13 | 2024-04-18 | 华为技术有限公司 | 一种路径建立方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
EP3804279A4 (en) | 2022-01-19 |
EP3804279A1 (en) | 2021-04-14 |
US20210160056A1 (en) | 2021-05-27 |
WO2019227457A1 (en) | 2019-12-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112236987A (zh) | 用于分布式网络中的分散式信任评估的方法和装置 | |
Truong et al. | Blockchain meets metaverse and digital asset management: A comprehensive survey | |
Bhutta et al. | A survey on blockchain technology: Evolution, architecture and security | |
Idrees et al. | Security aspects of blockchain technology intended for industrial applications | |
Mosakheil | Security threats classification in blockchains | |
Pasdar et al. | Connect API with blockchain: A survey on blockchain oracle implementation | |
Smith | The blockchain litmus test | |
Pieroni et al. | Blockchain and IoT convergence—a systematic survey on technologies, protocols and security | |
Han et al. | A survey on blockchain-based integrity auditing for cloud data | |
Ali et al. | Blockchain and the future of the internet: A comprehensive review | |
Dahiya et al. | A comprehensive analysis of blockchain and its applications in intelligent systems based on IoT, cloud and social media | |
ul Hassan et al. | Blockchain and the future of the internet: a comprehensive review | |
Bergquist | Blockchain technology and smart contracts: privacy-preserving tools | |
Platt et al. | Sybil attacks on identity-augmented Proof-of-Stake | |
Pouwelse et al. | Laws for creating trust in the blockchain age | |
How et al. | Blockchain-enabled searchable encryption in clouds: a review | |
Dash et al. | Artificial intelligence models for blockchain-based intelligent networks systems: Concepts, methodologies, tools, and applications | |
Yan et al. | Blockchain abnormal behavior awareness methods: a survey | |
Lisi et al. | Practical application and evaluation of atomic swaps for blockchain-based recommender systems | |
Hussein et al. | Evolution of blockchain consensus algorithms: a review on the latest milestones of blockchain consensus algorithms | |
Liu et al. | Trust as a service: building and managing trust in the internet of things | |
Sousa-Dias et al. | A review of cybersecurity concerns for transactive energy markets | |
Anwar et al. | A Comprehensive Insight into Blockchain Technology: Past Development, Present Impact and Future Considerations | |
Alghamdi et al. | A Survey of Blockchain based Systems: Scalability Issues and Solutions, Applications and Future Challenges | |
Tang et al. | A Survey on Blockchain-Based Federated Learning: Categorization, Application and Analysis. |
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 |