CN112187712B - 一种去中心移动众包中对信任的匿名认证方法及系统 - Google Patents
一种去中心移动众包中对信任的匿名认证方法及系统 Download PDFInfo
- Publication number
- CN112187712B CN112187712B CN202010828585.1A CN202010828585A CN112187712B CN 112187712 B CN112187712 B CN 112187712B CN 202010828585 A CN202010828585 A CN 202010828585A CN 112187712 B CN112187712 B CN 112187712B
- Authority
- CN
- China
- Prior art keywords
- trust
- node
- data
- key
- klist
- 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.)
- Active
Links
Images
Classifications
-
- 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/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0407—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the identity of one or more communicating identities is hidden
- H04L63/0421—Anonymous communication, i.e. the party's identifiers are hidden from the other party or parties, e.g. using an anonymizer
-
- 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/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- 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/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network 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
-
- 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/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network 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/0435—Network 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 symmetric encryption, i.e. same key used for encryption and decryption
-
- 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/08—Network architectures or network communication protocols for network security for authentication of entities
-
- 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/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/3247—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 digital signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/83—Indexing scheme relating to error detection, to error correction, and to monitoring the solution involving signatures
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Evolutionary Computation (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Molecular Biology (AREA)
- Bioethics (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明属于数据处理技术领域,公开了一种去中心移动众包中对信任的匿名认证方法及系统,在区块链系统注册的节点生成新的公私钥对,生成密钥变更请求发送给云服务器的可信执行环境,云服务器对节点密钥变更信号进行处理,秘密链接信任评估结果,在所述区块链系统上发布密钥变更结果;签名验证节点用变更后的私钥签名消息通过区块链系统对签名节点进行信任认证。本发明根据需要选择RSA等所有的公钥签名机制,包含的基于行为的信任评估方案,并不限于使用布鲁姆过滤器。包含的基于反馈的信任评估方案,权重的计算可以采用基于博弈论的方法、基于机器学习的方案以及基于信任理论的方法。
Description
技术领域
本发明属于数据处理技术领域,尤其涉及一种基于区块链的去中心移动众包中对信任的匿名认证方法及系统。
背景技术
移动众包(Mobile Crowdsourcing,MCS)是借助移动设备采集数据的新型数据采集系统。传统的MCS基于中心化架构,面临单点故障以及不可信中心实体导致的安全、隐私和信任问题。因此需要设计去中心化的MCS系统。
然而,去中心化的MCS系统缺乏可信中心评估并保证节点信任,因而需要去中心化的信任评估并支持对节点信任的认证。考虑到节点对身份隐私和数据隐私的需求,需要实现对信任的匿名认证,即匿名信任认证。
在MCS中,信任信息有助于选择一组可靠的工作者来完成任务,从而保证采集的数据质量。信任评估是匿名信任认证的基础。现如今,有许多用于评估MCS工作节点和用户的信任的方案。任等人提出了一种基于任务完成质量和工作节点竞标信息的信任评估方案。但是,他们没有考虑工作节点的专业知识、位置等众多属性。Huang等进一步考虑了工作节点的属性,例如专业知识和位置,以提高评估的精确性,但是该方案未考虑信任中的主观因素。因此,以上方案无法评估MCS节点的准确信任。针对这些方案,EndorTrust被提出,该方案同时考虑了工作节点的个人属性以及用户对工作节点任务完成质量的反馈。然而,EndorTrust主要针对于工作节点在任务执行的可信性,而针对工作节点的其他恶意行为,如搭便车攻击、重复数据上传等攻击,EndorTrust无法有效处理。综上所述,缺乏一种综合考虑主观和客观因素的信任评估方案。
匿名认证被应用在很多系统中以在保护隐私的前提下验证系统节点身份的合法性,如VANET,社交网络,移动自组网(MANET)等。其中,一个基本的实现匿名化的方法是使用假名而非节点真实身份进行通信,并经常更改假名以避免恶意跟踪。这种方法的主要缺点是,它给信任评估带来了额外的困难,因为在更换假名时,系统需要将节点信任从该节点撤销的假名映射到其更改后的新假名。现有的工作通常假设存在一个可信中心负责节点假名的维护和信任评估。因此,可信中心能够根据节点的假名追踪节点的活动。因此,基于假名的方案不适用于不存在任何可信中心的去中心化的系统中。
一种流行的实现匿名认证的方法是借助群签名。群签名允许一个节点代表一组节点(简称为群)对消息进行签名。因此,攻击者无法根据签名从群成员中识别签名的生成者,因而无法有效追踪节点的活动。然而,群签名的密钥撤销是一个未解决的问题,目前尚不存在高效的群私钥撤销方法。为了克服群签名的弱点,Jiang等人提出使用基于哈希的消息认证码(HMAC)来实现有效的群私钥撤销。然而,该方案依赖于可信中心以及可信执行环境的使用(Trusted Execution Environment,TEE),因而应用场景有限,且不适用于去中心的系统中。其他一些方案采用环签名来实现匿名,这有助于将真实签名者隐藏在一组用户中。它可以有效保护身份隐私并抵御恶意跟踪。但是,环签名不能在去中心的环境中有效的支持信任评估,这是由于去中心化的系统中,不存在可信实体管理环签名、追踪节点行为以评估节点的信任。总而言之,现有的匿名身份验证方案要么不能以去中心的方式保护节点身份隐私,要么不能支持去中心的精确的信任评估。因此,这些方案不能直接应用于基于区块链的MCS系统。
一种应用于去中心化的MCS系统的匿名认证方案为ZebraLancer。ZebraLancer允许节点使用零知识证明方法向其他节点认证自己身份的合法性,借助于可信的身份管理中心,该方案能够有效阻止匿名工作节点提交重复数据到同一任务以谋取更多利益。然而,基于零知识证明的方法效率较差,且借助可信中心完成节点身份管理引入了单点故障的风险。因此,该方案在安全性和效率上存在缺陷。
通过上述分析,现有技术存在的问题及缺陷为:(1)基于区块链智能合约的信任评估方法成本较高,效率较差,且缺乏对节点信任相关数据的隐私保护。
(2)基于零知识证明的去中心的认证方法,生成证明时间较长,效率较差。
(3)基于区块链构建公钥基础设施(Public Key Infrastructure,PKI)的去中心化的认证方法,由于区块链公开透明特性,无法防止攻击者追踪节点行为。
……
解决以上问题及缺陷的难度为:防追踪的密钥去中心化的更新存在难题。
去中心化的信任评估的隐私保护存在难题。去中心化的信任评估的可信性与效率存在矛盾;基于区块链的移动众包系统的匿名信任认证存在难题。
解决以上问题及缺陷的意义为:能够有效的实现精确的信任评估并支持对隐私的保护,有利于构建实用、可信的去中心化的MCS系统。具体如下:
(1)提出的信任评估从节点反馈和节点行为两个节点评估节点信任,能够实现精确的信任评估,评估的信任能够帮助MCS节点有效鉴别其他节点的可信性,从而做出正确决策。
(2)支持对节点的信任认证,能够帮助MCS用户选择可信度、可靠性较高的工作节点执行任务,从而保证任务的高质量执行。
发明内容
为了解决现有技术存在的问题,本发明提供了一种去中心移动众包中对信任的匿名认证方法及系统,一种基于区块链的去中心移动众包中对信任的匿名认证方法及系统。
本发明是这样实现的,一种去中心移动众包中对信任的匿名认证方法,包括:
区块链系统注册后的节点生成新的公私钥对,生成密钥变更请求发送给云服务器的可信执行环境,所述云服务器对节点密钥变更信号进行处理,并将处理的节点密钥变更信号在所述区块链系统上发布密钥变更结果;
节点中的签名验证端利用所述密钥变更结果中变更后的私钥签名消息对签名端进行信任认证。
进一步,云服务器在区块链系统上发布密钥变更结果的方法进一步包括:
1)节点生成密钥变更信号,发送给ENcs;
2)ENcs处理密钥变更信号,并评估节点信任,生成密钥变更结果;
3)ENcs将密钥变更结果发布在区块链系统上。
进一步,所述步骤1)生成密钥变更信号的方法包括:
所述步骤2)进一步包括:
进一步,所述步骤2.3)的信任评估方法包括:
2.3.3)ENcs向区块链请求对应数据的消息摘要和签名,验证消息的完整性;
进一步,所述步骤2.3.4)的基于反馈的信任评估方法包括:ENcs在每次任务结束后,收集参与该任务的节点互相之间生成的反馈。对于节点Nj,本发明使用TEi→j,r,id表示节点Ni对Nj生成的、关于Nj在任务id中的关于角色r的行为生成的反馈,则信任评估公式为:
其中,是反馈与反馈均值的偏差,wi→j,r,id是根据Ni的收益、信任和历史行为计算得到的反馈TEi→j,r,id的权重。是节点Nj的最新信任值,kj是记录该信任值的区块的编号,ki是当前区块的编号,τ是衡量历史信任在信任评估中的影响的因子;
所述步骤2.3.5)的基于节点行为的信任评估方法包括:
2.3.5.1)对于节点Nj的基于行为的信任评估,ENcs首先请求Nj的行为数据密文,解密后生成Nj的行为集合BEj,用b∈BEj表示节点Nj关于角色r的一个行为;
2.3.5.2)ENcs加载预先记录在区块链上的两个布鲁姆过滤器Bt和Bd,其中Bt存储可信行为模板,Bd存储不可信行为模板;
2.3.5.3)ENcs生成两个变量P和NP,并将值初始化为0;
2.3.5.4)对于Nj的任意一个行为b∈BEj,ENcs依次匹配Bt和Bd中的模板;如果b符合模板pt∈Bt,则ENcs查询pt的权重ωpt并计算P=P+ωpt;如果b符合模板pt∈Bd,则ENcs查询pt的权重ωpt并计算NP=NP+ωpt;ENcs计算Nj基于行为的信任
进一步,所述进行信任认证的方法包括:
(II)Nj验证签名是否合法;
进一步,区块链系统注册节点的方法包括:
步骤1,系统初始化:云服务器下载节点密钥管理与信任评估的代码,建立SGX可信执行环境,生成公私钥,并向区块链系统注册建立的SGX可信执行环境;
步骤2,节点注册:节点生成自己的公私钥对,并向云服务器建立的SGX可信执行环境完成对公钥的注册,云服务器处理节点注册信号,并向区块链注册节点公钥。
本发明的另一目的在于提供一种去中心移动众包中对信任的匿名认证包括:
区块链系统,包括上一个区块Bk-1的哈希值、生成区块Bk的时间戳TSk、不同服务器建立的SGX可信执行环境的公钥、Bk的创建者Mj以及与MCS相关的数据哈希值列表用于BC记录四种与MCS任务相关的数据的摘要,即任务内容、竞拍消息、工作节点酬劳信息、任务完成质量评估结果,全部数据内容以密文形式存储在Sstr中;所有数据哈希均按其任务标识IDTask进行组织;
节点,通过配置云服务器通过可信执行环境ENcs完成节点的密钥更改和信任评估;
外部存储系统,用于MCS相关的数据,包括节点反馈和行为数据。
进一步,所述节点,包括MCS用户端、工作节点、矿工节点、数据存储节点和配置SGX的云服务器并通过各网络相互连接;
其中,MCS用户端使用MCS系统将任务分配给一组工作节点执行任务;
工作节点利用移动设备作为数据收集传感器完成任务;
矿工节点,用于维护区块链系统;
云服务器通过SGX可信执行环境ENcs完成节点的密钥更改和信任评估;
数据存储节点用于存储与节点信任相关的数据,数据拥有端将数据加密后存放在存储系统中,并在区块链上保存消息摘要、存储位置以及签名,以支持数据访问与完整性校验;
区块链系统还用于记录撤销的公钥列表KListrev、变更后的公钥列表KListalt、公钥注册列表KListreg以及密钥变更过程中评估信任输入数据的数据摘要πDT,用于评估KListrev中的公钥信任;KListrev包括撤销的公钥,KListalt中的元素包含变更后的公钥以及对应的信任,KListreg包含所有新注册的公钥。
本发明的另一目的在于提供一种接收用户输入程序存储介质,所存储的计算机程序使电子设备执行所述去中心移动众包中对信任的匿名认证方法,包括下列步骤:(1)系统初始化:具有SGX的云服务器下载节点密钥管理与信任评估的代码,建立SGX可信执行环境,生成公私钥,并向区块链系统注册建立的SGX可信执行环境;
(2)节点注册:节点生成自己的公私钥对,并向云服务器建立的SGX可信执行环境完成对公钥的注册,后者处理节点注册信号,并向区块链注册节点公钥;
(3)密钥更新与撤销:节点生成新的公私钥对,生成密钥变更请求发送给云服务器的SGX可信执行环境,云服务器处理节点密钥变更信号,并在区块链上发布密钥变更结果;
(4)对信任的匿名认证:节点使用变更后的私钥签名消息,签名验证端在区块链的帮助下完成对签名端的信任的认证。
结合上述的所有技术方案,本发明所具备的优点及积极效果为:
本发明提供的基于SGX和区块链的密钥变更方法,能够防止攻击者追踪节点行为,有效保护节点身份隐私;能够有效支持节点之间互相验证信任,保障MCS任务的可信执行,实现可信的去中心MCS系统的构建。
本发明提供的基于SGX和区块链的去中心的具有隐私保护的信任评估,能够保护信任评估过程中节点信任信息的隐私,因此,即使缺乏可信中心提供数据机密性保护,仍然能够有效防止数据泄露,也能够有效提高用户体验,吸引移动节点参与。
本发明提供了一种基于节点反馈和行为的综合信任评估,并提供了一种基于行为模板匹配的信任评估方法。该信任评估机制能够精确评估节点信任,不仅为节点之间的信任认证提供支持,也有助于选取可信工作节点和评估任务完成质量。
相比于现有技术,本发明的优点进一步包括:本发明不依靠任何可信中心,不存在单点故障难题;本发明能够实现高效且保护隐私的信任评估,现有的方案基于智能合约,效率较差;本发明支持对信任的匿名认证,现有的方案大多不支持对信任的认证。
本发明中包含的外部存储系统,可以使用包含云存储、分布式存储等在内的所有存储系统。外部存储系统中使用的加密方案,可以根据需要选择对称加密、公钥加密、基于属性的加密(Attribute-Based Encryption,ABE)、同态/半同态加密、功能加密等所有加密方式。
本发明中使用的签名方案,在实际中可以根据需要选择RSA等所有的公钥签名机制。包含的基于行为的信任评估方案,并不限于使用布鲁姆过滤器。包含的基于反馈的信任评估方案,权重的计算可以采用基于博弈论的方法、基于机器学习的方案以及基于信任理论的方法。
结合实验或试验数据和现有技术对比得到的效果和优点:现有的针对去中心化的MCS的认证方案主要包含基于零知识证明的认证方案,代表方案为ZebraLancer。同ZebraLancer方案相比,本发明的优势在于三点:
(1)本发明的方案能够支持对信任的认证,且能够应用于MCS不同阶段(如节点选择、任务执行结果提交、信任评估等)的认证,而ZebraLancer仅仅适用于任务执行结果提交阶段,且不支持对信任的认证。
(2)本发明的方案不依赖于可信中心,而ZebraLancer需要可信中心完成节点身份注册。
(3)本发明的方案能够根据需要支持不同的签名机制,同ZebraLancer相比,能够大幅度提高效率。具体的,使用RSA签名机制时,本发明的方案中签名生成与验证的时间分别为0.885ms和0.972ms,而ZebraLancer生成证明和证明验证的时间分别为63s和6.2ms。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图做简单的介绍,显而易见地,下面所描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的去中心移动众包中对信任的匿名认证方法流程图。
图2是本发明实施例提供的去中心移动众包中对信任的匿名认证系统图。
图3是本发明实施例提供的区块链系统示意图。
图4是本发明实施例提供的有关MCS节点生成密钥更改信号和云服务器处理密钥更改信号的密钥更改信号的数量的运算时间示意图。
图5是本发明实施例提供绘制的关于签名生成和信任身份验证的消息数的运算时间示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
现有技术中,基于区块链智能合约的信任评估方法成本较高,效率较差。基于零知识证明的去中心的认证方法,生成证明时间较长,效率较差。基于区块链构建公钥基础设施(Public Key Inffrastructure,PKI)的去中心化的认证方法,由于区块链公开透明特性,无法防止攻击者追踪节点行为。
针对现有技术存在的问题,本发明提供了一种去中心移动众包中对信任的匿名认证方法及系统,下面结合附图对本发明作详细的描述。
如图1所示,本发明提供一种去中心移动众包中对信任的匿名认证方法,包括下列步骤:
S101,系统初始化:具有SGX的云服务器下载节点密钥管理与信任评估的代码,建立SGX可信执行环境,生成公私钥,并向区块链系统注册建立的SGX可信执行环境。
S102,节点注册:节点生成自己的公私钥对,并向云服务器建立的SGX可信执行环境完成对公钥的注册,后者处理节点注册信号,并向区块链注册节点公钥。
S103,密钥更新与撤销:节点生成新的公私钥对,生成密钥变更请求发送给云服务器的SGX可信执行环境,云服务器处理节点密钥变更信号,将撤销后的密钥发布在区块链上完成密钥撤销,并将具有相同信任值的更新后的公钥聚集在一起,并将密钥顺序充分混淆后连同信任值一起发布在区块链上。
S104,对信任的匿名认证:节点使用变更后的私钥签名消息,签名验证端对信任的匿名认证:节点使用变更后的私钥签名消息,签名验证端验证签名有效性,并在区块链上查询公钥对应的信任值,从而完成对信任的匿名认证。
下面结合具体实施例对本发明作进一步描述。
实施例
图2是本发明实施例提供的去中心移动众包中对信任的匿名认证系统中,MCS的节点(包括移动设备、个人计算机和服务器)通过各种网络(例如蜂窝网络、MAENT、Wi-Fi等)连接在一起,主要包含5种类型的节点,即MCS用户、工作节点、矿工、数据存储节点和配置SGX的云服务器。其中,用户是无法完成数据收集任务的节点,因此使用MCS系统将任务分配给一组移动用户(即工作节点)以执行该任务;工作节点是利用其移动设备作为数据收集传感器来完成任务的移动用户;矿工共同维护区块链系统。为了方便表述,本发明使用BC={B0,B1,...,Bk}表示区块链,其中Bi(0≤i≤k)表示的区块链的第i个区块。本发明利用区块链来代替中心式的MCS服务提供商来管理MCS任务和节点;配置SGX的云服务器通过SGX可信执行环境ENcs来完成节点的密钥更改和信任评估;存储节点用于存储与节点信任相关的数据,数据拥有者将数据加密后存放在存储系统中,并在区块链上保存消息摘要、存储位置以及签名,以支持数据访问与完整性校验。本发明方案支持多个配置SGX的高性能节点同时工作以抵抗单点故障难题。
在本发明区块链系统中,如图3MCS-Chain+的区块链系统。它由上一个区块Bk-1的哈希值、生成区块Bk的时间戳TSk、不同服务器建立的SGX可信执行环境的公钥、Bk的创建者Mj以及与MCS相关的数据哈希值列表具体的,BC记录了四种与MCS任务相关的数据的摘要,即任务内容、竞拍消息、工作节点酬劳信息、任务完成质量评估结果,而全部数据内容以密文形式存储在Sstr中。所有数据哈希均按其任务标识IDTask进行组织。此外,它还记录撤销的公钥列表KListrev、变更后的公钥列表KListalt、公钥注册列表KListreg以及密钥变更过程中评估信任输入数据的数据摘要πDT,用于评估KListrev中的公钥信任。KListrev包含撤销的公钥,KListalt中的元素包含变更后的公钥以及对应的信任,KListreg包含所有新注册的公钥。
在本发明外部存储系统中,MCS-Chain+包含一个由Sstr标识的额外存储系统。存储系统存储MCS相关的数据,包括节点反馈和行为数据,而BC仅记录数据这些数据的摘要及签名以支持数据完整性验证。具体的,当节点Ni想要存储一条数据dt时,它选择加密密钥K对dt进行加密,并将加密的数据ct发送到Sstr。它还会将dt的哈希值H(dt)以及对H(dt)的签名发送到BC进行记录。当由CS建立的可信执行环境ENcs需要范文dt时,它将通过安全通道从N_i获取解密密钥$K$,并从Sstr请求ct。然后,ENcs可以在可信执行环境中使用K解密ct,并使用BC中的H(dt)和签名验证接收数据的完整性。
在本发明任务执行流程中,MCS-Chain+中任务执行的过程可以描述如下。EU可以将任务发布到BC,并且对该任务感兴趣的工作节点可以使用其属性(例如位置、专业水平、计算能力等)来提交对该任务的请求。被EU选中的工作节点执行任务并将其任务执行结果存储到Sstr中,并在BC上记录消息摘要和签名。所有数据,包括任务请求数据、工作节点属性和任务执行结果,都由外部存储系统Sstr存储,而BC仅记录其摘要。
在本发明提供的去中心移动众包中对信任的匿名认证方法可以为基于SGX的去中心的对信任的匿名认证方案,主要包括以下步骤:
(1)系统初始化:具有SGX的云服务器下载节点密钥管理与信任评估的代码,建立SGX可信执行环境,生成公私钥,并向区块链系统注册建立的SGX可信执行环境。
(2)节点注册:节点生成自己的公私钥对,并向云服务器建立的SGX可信执行环境完成对公钥的注册,后者处理节点注册信号,并向区块链注册节点公钥。
(3)密钥更新与撤销:节点生成新的公私钥对,生成密钥变更请求发送给云服务器的SGX可信执行环境,后者处理节点密钥变更信号,并在区块链上发布密钥变更结果。
(4)对信任的匿名认证:节点使用变更后的私钥签名消息,签名验证者在区块链的帮助下完成对签名者的信任的认证。
在本发明实施例中,本发明步骤(1)中,所示的系统初始化,主要包含如下步骤:
(a)CS从区块链或社区下载用于密钥管理和信任评估的代码code,并使用code建立了一个SGX可信执行环境ENcs。
在本发明实施例中,步骤(2)所示的节点注册,主要包含如下步骤:
(vii)ENcs的公钥注册列表中公钥个数超过阈值时,对KListreg进行签名并发布到区块链上,并清空KListreg。
(viii)当KListreg被记录在区块链后,列表中包含的公钥生效,节点可以使用列表中的公钥进行通信。
在本发明实施例中,步骤(3)所示的密钥更新和撤销,主要包含如下步骤:
1)节点生成密钥变更信号,发送给ENcs。
2)ENcs处理密钥变更信号,并评估节点信任,生成密钥变更结果。
3)ENcs将密钥变更结果发布在区块链上。
在本发明实施例中,步骤1)所示的生成密钥变更信号的过程,主要包含如下步骤
在本发明实施例中,步骤2)中的过程,主要包含如下步骤:
在本发明实施例中,步骤2.3)所示的信任评估过程,主要包含如下步骤
2.3.3)ENcs向区块链请求对应数据的消息摘要和签名,验证消息的完整性。
在本发明实施例中,步骤2.3.4)所示的基于反馈的信任评估过程,主要包含如下步骤:
ENcs在每次任务结束后,收集参与该任务的节点互相之间生成的反馈。对于节点Nj,本发明使用TEi→jr,id表示节点Ni对Nj生成的、关于Nj在任务id中的关于角色r的行为生成的反馈,则信任评估公式为:
其中,是反馈与反馈均值的偏差,wi→j,rid是根据Ni的收益、信任和历史行为计算得到的反馈TEi→j,r,id的权重。是节点Nj的最新信任值,kj是记录该信任值的区块的编号,ki是当前区块的编号,τ是衡量历史信任在信任评估中的影响的因子。
在本发明实施例中,步骤2.3.5)所示的基于节点行为的信任评估过程,主要包含如下步骤:
2.3.5.1)对于节点Nj的基于行为的信任评估,ENcs首先请求Nj的行为数据密文,解密后生成Nj的行为集合BCj,本发明用b∈BEj表示节点Nj关于角色r的一个行为。
2.3.5.2)ENcs加载预先记录在区块链上的两个布鲁姆过滤器Bt和Bd,其中Bt存储可信行为模板,Bd存储不可信行为模板。
2.3.5.3)ENcs生成两个变量P和NP,并将它们的值初始化为0。
2.3.5.4)对于Nj的任意一个行为b∈BEj,ENcs依次匹配Bt和Bd中的模板。如果b符合模板pt∈Bt,则ENcs查询pt的权重ωpt并计算P=P+ωpt;如果b符合模板pt∈Bd,则ENcs查询pt的权重ωpt并计算NP=NP+ωpt。
在本发明实施例中,步骤(4)所示的对信任的匿名认证,主要包含如下步骤:
(II)Nj验证签名是否合法。
改进的方案:本发明基于发明人已提出的基于区块链的去中心化的MCS系统,但同时可以兼容于现有的大部分基于区块链的MCS系统。此外,本发明构建的基础MCS-Chain可以进一步借助区块链分片(Blockchain Sharding)技术进行改进以优化效率。
此外,步骤2.3.5)中的基于反馈的信任评估方案,可以结合机器学习以进行优化。具体如下:
云服务器Enclave(或借助于基于区块链的智能合约)调用预加载的算法分析节点反馈数据,提取节点的反馈行为特征,并使用数据聚类的方法根据节点的反馈行为特征将其划分为若干簇;
(1)对于每个簇x,Encalve(或区块链智能合约)分析节点的反馈行为并建立预测模型fx(·)。对于节点Ni对Nj生成的反馈TBi→j,r,id,fx(·)以TBi→j,r,id、任务信息TIFid(包含任务类型、内容、要求等)、Ni的节点信息IFi(包含Ni的信任等级、能力等)以及Nj的节点信息IFj为输入,输出调整后的反馈以及预测的概率pi→j,r,id,即:
下面结合测试对本发明的技术效果作详细的描述。
测试数据与对比:本发明应用仿真的方法来评估对匿名信任认证方案和信任评估的性能。实验测试平台为运行64位Ubuntu18.04、1.6GHz英特尔酷睿i5Quad-CPU和8G内存的笔记本电脑上;本发明使用英特尔Integrated Performance Primitives函数库在英特尔SGX SDK的模拟模式下进行了关于匿名信任认证的实验。图4和展示了有关MCS节点生成密钥更改信号和云服务器处理密钥更改信号的密钥更改信号的数量的运算时间。从图中可以看出,两种算法的运算时间与密钥变更信号的数量成线性关系。此外,这两个算法的平均运算时间分别为0.842ms和0.965ms。因此,提出的密钥变更非常有效,并且不会对密钥变更请求者或云服务器引入太多计算。图5绘制了关于签名生成和信任身份验证的消息数的运算时间。两种算法的运算时间与消息数成线性关系。为了进一步证明本发明方案的优越性,本发明将本发明的方案与ZebraLancer进行了比较,后者引入了中心式的授权中心,并使用零知识证明进行匿名身份验证。ZebraLancer花费约63s来生成用于匿名身份验证的证明,并且至少需要6.2ms的时间来验证证明的有效性。在本发明的方案中,节点仅需要在消息上生成签名,其他节点可以通过验证签名并基于BC中的公钥查询信任值来验证其信任。签名生成的平均时间为0.885ms,而基于信任的身份验证的平均时间为0.972ms,这比ZebraLancer效率更高。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的硬件平台的方式来实现,当然也可以全部通过硬件来实施。基于这样的理解,本发明的技术方案对背景技术做出贡献的全部或者部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
以上所述仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,都应涵盖在本发明的保护范围之内。
Claims (7)
1.一种去中心移动众包中对信任的匿名认证方法,其特征在于,所述去中心移动众包中对信任的匿名认证方法包括:区块链系统注册后的节点生成新的公私钥对,生成密钥变更请求发送给云服务器的可信执行环境,所述云服务器对节点密钥变更信号进行处理,并将处理的节点密钥变更信号在所述区块链系统上发布密钥变更结果;
节点中的签名验证节点利用所述密钥变更结果中变更后的私钥签名消息对签名端进行信任认证;
云服务器在区块链系统上发布密钥变更结果的方法进一步包括:
1)节点生成密钥变更信号,发送给可执行环境ENCS;
2)ENCS处理密钥变更信号,并评估节点信任,生成密钥变更结果;
3)ENCS将密钥变更结果发布在区块链系统上;
所述步骤1)生成密钥变更信号的方法包括:
所述步骤2)进一步包括:
2.5)当ENCS等待足够时间或KListalt的长度达到阈值时,对KListrev和KListalt进行处理,得到KList′rev和KList′alt;
所述步骤2.3)的信任评估方法包括:
2.3.3)ENCS向区块链请求对应数据的消息摘要和签名,验证消息的完整性;
2.如权利要求1所述的去中心移动众包中对信任的匿名认证方法,其特征在于,所述步骤2.3.4)的基于反馈的信任评估方法包括:
ENCS在每次任务结束后,收集参与该任务的节点互相之间生成的反馈,对于节点Nj,本发明使用TEi→j,r,id表示节点Ni对Nj生成的、关于Nj在任务id中的关于角色r的行为生成的反馈,则信任评估公式为:
其中,是反馈与反馈均值的偏差,wi→j,r,id是根据Ni的收益、信任和历史行为计算得到的反馈TEi→j,r,id的权重,是节点Nj的最新信任值,kj是记录该信任值的区块的编号,ki是当前区块的编号,τ是衡量历史信任在信任评估中的影响的因子;
所述步骤2.3.5)的基于节点行为的信任评估方法包括:
2.3.5.1)对于节点Nj的基于行为的信任评估,ENCS首先请求Nj的行为数据密文,解密后生成Nj的行为集合BEj,用b∈BEj表示节点Nj关于角色r的一个行为;
2.3.5.2)ENCS加载预先记录在区块链上的两个布鲁姆过滤器Bt和Bd,其中Bt存储可信行为模板,Bd存储不可信行为模板;
2.3.5.3)ENCS生成两个变量P和NP,并将值初始化为0;
2.3.5.4)对于Nj的任意一个行为b∈BEj,ENCS依次匹配Bt和Bd中的模板;如果b符合模板pt∈Bt,则NECS查询pt的权重ωpt并计算P=P+ωpt;如果b符合模板pt∈Bd,则NECS查询pt的权重ωpt并计算NP=NP+ωpt;
4.如权利要求1所述的去中心移动众包中对信任的匿名认证方法,其特征在于,区块链系统注册节点的方法包括:
步骤1,系统初始化:云服务器下载节点密钥管理与信任评估的代码,建立SGX可信执行环境,生成公私钥,并向区块链系统注册建立的SGX可信执行环境;
步骤2,节点注册:节点生成自己的公私钥对,并向云服务器建立的SGX可信执行环境完成对公钥的注册,云服务器处理节点注册信号,并向区块链注册节点公钥。
5.一种实施权利要求1~4任意一项所述去中心移动众包中对信任的匿名认证方法的去中心移动众包中对信任的匿名认系统,其特征在于,所述去中心移动众包中对信任的匿名认证包括:
区块链系统,包括上一个区块Bk-1的哈希值、生成区块Bk的时间戳TSk、不同服务器建立的SGX可信执行环境的公钥、Bk的创建者Mj以及与MCS相关的数据哈希值列表用于BC记录四种与MCS任务相关的数据的摘要,即任务内容、竞拍消息、工作节点酬劳信息、任务完成质量评估结果,全部数据内容以密文形式存储在Sstr中;所有数据哈希均按其任务标识IDTask进行组织;
节点,通过配置云服务器通过可信执行环境ENCS完成节点的密钥更改和信任评估;
外部存储系统,用于MCS相关的数据,包括节点反馈和行为数据;
云服务器在区块链系统上发布密钥变更结果的方法进一步包括:
1)节点生成密钥变更信号,发送给可执行环境ENCS;
2)ENCS处理密钥变更信号,并评估节点信任,生成密钥变更结果;
3)ENCS将密钥变更结果发布在区块链系统上;
所述步骤1)生成密钥变更信号的方法包括:
所述步骤2)进一步包括:
2.5)当ENCS等待足够时间或KListalt的长度达到阈值时,对KListrev和KListalt进行处理,得到KList′rev和KList′alt;
所述步骤2.3)的信任评估方法包括:
2.3.3)ENCS向区块链请求对应数据的消息摘要和签名,验证消息的完整性;
6.如权利要求5所述去中心移动众包中对信任的匿名认系统,其特征在于,
所述节点,包括MCS用户端、工作节点、矿工节点、数据存储节点和配置SGX的云服务器并通过各网络相互连接;
其中,MCS用户端使用MCS系统将任务分配给一组工作节点执行任务;
工作节点利用移动设备作为数据收集传感器完成任务;
矿工节点,用于维护区块链系统;
云服务器通过SGX可信执行环境ENCS完成节点的密钥更改和信任评估;
数据存储节点用于存储与节点信任相关的数据,数据拥有端将数据加密后存放在存储系统中,并在区块链上保存消息摘要、存储位置以及签名,以支持数据访问与完整性校验;
区块链系统还用于记录撤销的公钥列表KListrev、变更后的公钥列表KListalt、公钥注册列表KListreg以及密钥变更过程中评估信任输入数据的数据摘要πDT,用于评估KListrev中的公钥信任;KListrev包括撤销的公钥,KListalt中的元素包含变更后的公钥以及对应的信任,KListreg包含所有新注册的公钥。
7.一种计算机可读存储介质,其上存储有计算机指令,所述计算机指令被电子设备执行以实现权利要求1~4任意一项所述的去中心移动众包中对信任的匿名认证方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010828585.1A CN112187712B (zh) | 2020-08-18 | 2020-08-18 | 一种去中心移动众包中对信任的匿名认证方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010828585.1A CN112187712B (zh) | 2020-08-18 | 2020-08-18 | 一种去中心移动众包中对信任的匿名认证方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112187712A CN112187712A (zh) | 2021-01-05 |
CN112187712B true CN112187712B (zh) | 2021-10-22 |
Family
ID=73919134
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010828585.1A Active CN112187712B (zh) | 2020-08-18 | 2020-08-18 | 一种去中心移动众包中对信任的匿名认证方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112187712B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112839046B (zh) * | 2021-01-14 | 2022-09-27 | 暨南大学 | 基于区块链的可追踪的匿名众包方法及系统 |
CN113347000A (zh) * | 2021-06-09 | 2021-09-03 | 哈尔滨工程大学 | 一种面向共谋攻击的真实路况数据聚合方法 |
CN113553612B (zh) * | 2021-06-29 | 2023-08-11 | 福建师范大学 | 一种基于移动群智感知技术的隐私保护方法 |
CN114826684B (zh) * | 2022-03-31 | 2023-06-16 | 西安电子科技大学 | 支持高效隐私保护的去中心化众包方法、系统及终端 |
CN114826572A (zh) * | 2022-03-31 | 2022-07-29 | 西安电子科技大学 | 支持属性隐私保护的去中心化众包方法、系统及终端 |
CN114785518A (zh) * | 2022-04-11 | 2022-07-22 | 江苏慧世联网络科技有限公司 | 一种去中心化的电子公证签名方法、系统以及节点 |
CN115396225B (zh) * | 2022-08-31 | 2023-04-11 | 北京华宜信科技有限公司 | 一种数据平台用户身份认证方法及装置 |
CN116094797B (zh) * | 2023-01-05 | 2024-04-05 | 西安电子科技大学 | 一种基于安全多方计算的分布式身份信任管理方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109726887A (zh) * | 2018-10-12 | 2019-05-07 | 西安电子科技大学 | 基于区块链的移动众包数据数据采集与处理系统及方法 |
CN112039872A (zh) * | 2020-08-28 | 2020-12-04 | 武汉见邦融智科技有限公司 | 基于区块链的跨域匿名认证方法及系统 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2909964B1 (en) * | 2012-10-17 | 2019-04-24 | Nokia Technologies Oy | Method and apparatus for providing secure communications based on trust evaluations in a distributed manner |
EP3014803B1 (en) * | 2013-06-25 | 2019-09-25 | Nokia Technologies Oy | A method and apparatus for anonymous and trustworthy authentication in pervasive social networking |
US9647998B2 (en) * | 2014-03-21 | 2017-05-09 | Venafi, Inc. | Geo-fencing cryptographic key material |
CN105430638B (zh) * | 2015-10-22 | 2018-12-28 | 重庆邮电大学 | 一种带有公钥信任程度感知的数据安全转发方法 |
CN107248980B (zh) * | 2017-06-01 | 2020-06-02 | 西安电子科技大学 | 云服务下具有隐私保护功能的移动应用推荐系统及方法 |
CN108737436B (zh) * | 2018-05-31 | 2020-02-21 | 西安电子科技大学 | 基于信任联盟区块链的跨域服务器身份认证方法 |
CN109104284B (zh) * | 2018-07-11 | 2020-09-29 | 四川大学 | 一种基于环签名的区块链匿名传输方法 |
CN110287726B (zh) * | 2019-06-13 | 2023-03-10 | 上海交通大学 | 一种基于区块链的多域身份认证管理系统及方法 |
CN111405011B (zh) * | 2020-03-07 | 2022-11-25 | 北京工业大学 | 基于区块链的vanet中节点可信加入方法 |
-
2020
- 2020-08-18 CN CN202010828585.1A patent/CN112187712B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109726887A (zh) * | 2018-10-12 | 2019-05-07 | 西安电子科技大学 | 基于区块链的移动众包数据数据采集与处理系统及方法 |
CN112039872A (zh) * | 2020-08-28 | 2020-12-04 | 武汉见邦融智科技有限公司 | 基于区块链的跨域匿名认证方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN112187712A (zh) | 2021-01-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112187712B (zh) | 一种去中心移动众包中对信任的匿名认证方法及系统 | |
Lu et al. | A blockchain-based privacy-preserving authentication scheme for VANETs | |
US20230023857A1 (en) | Data processing method and apparatus, intelligent device, and storage medium | |
US20210377040A1 (en) | Trust and identity management systems and methods | |
CN110493347B (zh) | 基于区块链的大规模云存储中数据访问控制方法及系统 | |
US10411905B2 (en) | Public key infrastructure using blockchains | |
Ahmad et al. | Reputation-aware trust and privacy-preservation for mobile cloud computing | |
Sharma et al. | Blockchain-based cloud storage system with CP-ABE-based access control and revocation process | |
WO2021154157A1 (en) | Blockchain-based data exchange | |
WO2022089420A1 (zh) | 一种基于区块链的投票方法及装置 | |
Zhong et al. | A new message authentication scheme for multiple devices in intelligent connected vehicles based on edge computing | |
Dwivedi et al. | Smart contract and ipfs-based trustworthy secure data storage and device authentication scheme in fog computing environment | |
CN115277010A (zh) | 身份认证方法、系统、计算机设备和存储介质 | |
Ahmad et al. | Efficient time-oriented latency-based secure data encryption for cloud storage | |
Saleem et al. | ProofChain: An X. 509-compatible blockchain-based PKI framework with decentralized trust | |
Xie et al. | A novel blockchain-based and proxy-oriented public audit scheme for low performance terminal devices | |
CN112733179B (zh) | 一种轻量级非交互隐私保护数据聚合方法 | |
CN114168913A (zh) | 基于智能合约众包结果评估与奖励分配方法、系统和介质 | |
Kumar Arora et al. | Blockchain‐inspired lightweight trust‐based system in vehicular networks | |
Mershad et al. | Lightweight blockchain solutions: Taxonomy, research progress, and comprehensive review | |
Seyedi et al. | Verifiable and privacy-preserving fine-grained data management in vehicular fog computing: A game theory-based approach | |
Li et al. | A traceable privacy‐aware data publishing platform on permissioned blockchain | |
Dai et al. | Dizar: An Architecture of Distributed Public Key Infrastructure Based on Permissoned Blockchain | |
Chen et al. | A Vehicular Trust Blockchain Framework with Scalable Byzantine Consensus | |
Kirupanithi et al. | Hierarchical deterministic protocol for the defragmentation of identity in a blockchain-based framework |
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 |