• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    Distributed Trusted Computing for Blockchain-Based Crowdsourcing

    2021-12-14 06:03:20YihuaiLiangYanLiandByeongSeokShin
    Computers Materials&Continua 2021年9期

    Yihuai Liang,Yan Li and Byeong-Seok Shin

    Department of Electrical and Computer Engineering,Inha University,Incheon,22212,Korea

    Abstract:A centralized trusted execution environment(TEE)has been extensively studied to provide secure and trusted computing.However,a TEE might become a throughput bottleneck if it is used to evaluate data quality when collecting large-scale data in a crowdsourcing system.It may also have security problems compromised by attackers.Here,we propose a scheme,named dTEE,for building a platform for providing distributed trusted computing by leveraging TEEs.The platform is used as an infrastructure of trusted computations for blockchain-based crowdsourcing systems,especially to securely evaluate data quality and manage remuneration:these operations are handled by a TEE group.First,dTEE uses a public blockchain with smart contracts to manage TEEs without reliance on any trusted third parties.Second,to update TEE registration information and rule out zombie TEEs,dTEE uses a reporting mechanism.To attract TEE owners to join in and provide service of trusted computations,it uses a fair monetary incentive mechanism.Third,to account for malicious attackers,we design a model with Byzantine fault tolerance,not limited to a crash-failure model.Finally,we conduct an extensive evaluation of our design on a local cluster.The results show that dTEE finishes evaluating 10,000 images within one minute and achieves about 65 tps throughput when evaluating Sudoku solution data with collective signatures both in a group of 120 TEEs.

    Keywords:Crowdsourcing;blockchain;distributed trusted execution environment;Byzantine fault tolerance

    1 Introduction

    A trusted execution environment (TEE) [1]has been used in many applications [2-4]to provide secure and trusted computing.It is widely used to be a secure component to address the performance issues of blockchain-based systems [4-8],in which a common architecture adopted by the systems is to decouple the TEE from the blockchain to provide off-chain trusted computing.Its design extends trust from the blockchain to the TEE to improve system performance.The same concept using the off-chain TEE can be applied to a blockchain-based crowdsourcing system [9,10],especially to evaluate data quality and manage remuneration securely.

    However,if one or several TEEs under a centralized architecture are used to evaluate data quality when collecting large-scale data in a crowdsourcing system,the centralized TEE system might become a throughput bottleneck.It can also suffer single-point failures,causing service availability problems and even the loss of workers’data and remuneration.A centralized TEE also has security problems if attackers attack the TEE specifically.Its security may be compromised because of implementation vulnerabilities and congenital defects,such as side-channel attacks [5]and rollback attacks [11].Therefore,applying a centralized TEE to a blockchain-based system is a tradeoff between system security and efficiency.

    To address those problems,we propose a blockchain-based distributed trusted computing scheme via TEEs for crowdsourcing applications,named dTEE,aiming at being used to collect large-scale data with security and high availability.dTEE is designed according to its special responsibilities in crowdsourcing,especially to evaluate the quality of sourcing data and to manage remuneration.It has the following properties:

    (1) Scalability.The data evaluation and remuneration management of a crowdsourcing task are handled by a specified TEE group.The more TEEs join in,the more groups exist to provide services of trusted computations.It uses a group of TEEs rather than a single one to handle a task,thereby guaranteeing availability.More importantly,it significantly reduces management overhead by keeping TEE registration information transparent and consistent by storing it in the blockchain,which gives all TEEs the same view.This means the same grouping result can be calculated locally without the need for communication across groups nor reliance on a centralized management service.

    (2) Self-government.dTEE is blockchain-based without reliance on any trusted third parties.To update the TEE registration information and rule out zombie TEEs,it uses smart contracts [12]with a reporting mechanism.To attract TEE owners to offer their computing services,dTEE uses a fair monetary incentive mechanism.

    (3) Byzantine fault tolerance.A crowdsourcing task is handled by a group.It usesm-of-nsignatures [13,14]to manage the remuneration,which means the remuneration is available even when some TEEs within the group are not functioning.The remuneration is also safe when some TEEs are compromised by attackers.To ensure that the results are honestly generated based on the actual quality of the sourcing data,dTEE evaluates the data repeatedly usingkdifferent TEEs within the group (calledk-repeated evaluation),accepting only the result produced by the majority of theknumber of TEEs.

    dTEE is suitable for blockchain-based crowdsourcing applications that need to collect largescale data with a security guarantee.On the one hand,keeping unauthorized people from getting access to the sourcing data is highly desirable because the data may contain sensitive information about workers,and the data is an asset to the requester;On the other hand,the requester requires integrity guarantee of the program that evaluates data quality in remote servers.By using a group of TEEs for a crowdsourcing task,the TEEs work parallelly to collect and evaluate large-scale data submitted by workers.This also overcomes problems of single-point failures and improves system availability.In summary,dTEE can be used in crowdsourcing systems to collect large-scale data with security and high availability.

    This paper makes the following contributions:

    (1) We propose a novel scheme for building a platform for distributed trusted computing via TEEs.The platform aims at being infrastructure of trusted computing for blockchain-based crowdsourcing systems to collect large-scale data with high availability.

    (2) dTEE’s design has three novel characteristics:(1) Self-government without relying on trusted third parties through a reporting mechanism for self-updates,as well as a fair monetary incentive mechanism to attract TEEs to join.(2) Security with Byzantine fault tolerance,not limited to crash fault tolerance.(3) Scalability and availability.

    The remainder of this paper is structured as follows.In Section 2,we present related work.In Section 3,we provide the system overview,including workflow and architecture.In Section 4,we present our proposal in detail.In Section 5,we describe the implementation and experiments.Finally,Section 6 concludes the paper.

    2 Related Work

    Blockchain-Based Crowdsourcing.A few existing works [10,14-18]have used blockchains [19]to replace the role of trusted third parties in crowdsourcing applications [20]to address issues of fairness,privacy preservation [21],and service availability.An essential operation in a crowdsourcing system is to evaluate the sourcing data uploaded by workers to confirm the data meet the requester’s requirements.The protocols of these works [10,16-18]evaluate the quality of sourcing data using smart contracts [22].Although Zebralancer [15]uses smart contracts to verify thezeroknowledge proofsgenerated by requesters rather than to evaluate sourcing data,it still requires workers to submit the encrypted sourcing data to the blockchain.This causes significant overheads when propagating large-scale sourcing data over the peer-to-peer blockchain network.

    TEE and Blockchains.A TEE is a tamper-resistant processing environment that runs on a separation kernel.It guarantees the authenticity of the executed code,the integrity of the runtime states (e.g.,CPU registers,memory,and sensitive I/O),and the confidentiality of the code,data,and runtime states stored in persistent memory.Besides,it provides remote attestation of its trustworthiness to third parties.The content of the TEE is not static;it can be securely updated [23].There are several existing TEE implementations,such as TrustZone [24],Sanctum [25],and Intel Software Guard Extensions (SGX) [1].

    To improve the blockchain’s performance and guarantee its security,previous works [4-7]have used a TEE as an off-chain component,decoupling from the blockchain to provide efficient computation and eventually persisting the state data in the blockchain.Matetic et al.[5]presented an approach that protects the privacy of light clients in Bitcoin by leveraging TEEs.Fastkitten [4]leverages the power of TEEs to efficiently execute arbitrarily complex smart contracts at a low cost over distributed cryptocurrencies (e.g.,Bitcoin) designed to support only simple transactions.Yan et al.[3]use TEEs to execute smart contracts for consortium blockchains to address confidentiality and efficiency problems,while Ekiden [8]combines blockchains with TEEs and separates consensus from execution by executing smart contracts inside TEE enclaves,which addresses the problems of lack of confidentiality and poor performance of smart contracts in current blockchain systems.Those systems use a common design concept that decouples the TEE from the blockchain to provide efficient off-chain computation without losing security.This paper adopts this design concept and applies it to crowdsourcing applications.However,a centralized TEE module could result in a throughput bottleneck for the system and is vulnerable to single-point failures,implementation bugs,and targeted attacks.

    3 System Overview

    In this section,we first present the workflow overview of our system.Then we present the architecture,as well as the consideration of system security,availability,and efficiency.It isnoteworthy that in this paper we only focus on the construction and management of distributed TEEs,which are used as an infrastructure of trusted computing for blockchain-based crowdsourcing.Therefore,our goal is to design robust distributed TEEs with properties of security and high availability.Designing a protocol of blockchain-based crowdsourcing is outside the scope of this paper.

    3.1 Workflow and Architecture

    We present the system architecture in Fig.1a and the workflow overview in Fig.1b,which is described as follows:(1) A TEE registers the platform via the blockchain for providing trusted computations.A smart contract is responsible for verifying the TEE’s eligibility before joining in.(2) A requester downloads all registration information of TEEs from the blockchain and calculates the target TEE group locally.Then,the requester publishes a task smart contract (TSC) on the blockchain,including a deposit and parameters for selecting the group.(3) The requester sendscodetaskand auxiliary data to the TEEs in the target group to set up the crowdsourcing task,wherecodetaskis a program created by the requester and used to evaluate the quality of sourcing data.The program’s digest is stored on TSC.(4) The TEEs also download all the registration information from the blockchain and calculate the target group locally to confirm whether the TEEs themselves belong to the group.Then they confirm if the TSC and the deposit are accepted by the blockchain.If all the confirmations pass,the TEEs installcodetaskand initialize the program to be ready to provide trusted computation for the task.(5) During the crowdsourcing task,the group securely evaluates the quality of sourcing data and manages remuneration inside enclaves.(6) Finally,the group can publish a transaction with the remuneration records on the blockchain to get the remuneration or to transfer money.

    Based on the workflow described above,dTEE is responsible for two main operations:to manage remuneration and to evaluate the quality of sourcing data.We usem-of-nsignatures for remuneration management andk-repeated evaluation (see Section 4.2) to evaluate the sourcing data.We specifically cluster all TEEs based on their registration information and group the TEEs in each cluster (Fig.1a),such that requests ofm-of-nsignatures andk-repeated evaluation can be processed by a specified group.Moreover,grouping the TEEs enables efficient and clear calculation of the service fee in a fine-grained way and enables system scalability.

    Figure 1:(a) System architecture,(b) operation sequences of our proposal

    To address the possibility that attackers may adaptively compromise and corrupt the majority of TEEs within a group,making the group insecure,we shuffle and regroup all TEEs at the end of each epoch.Oneepochis a system parameter that can be set as one day or one week.To avoid chaos or allowing a specified group to serve a worker across multiple epochs,the following two operations need to be finished.First,at the end of each epoch before shuffling,each TEE needs to calculate its total service remuneration and ask all its group members to sign it.The collective signature acts as proof,allowing the TEE to receive its remuneration via the blockchain.Second,after shuffling,any TEE that moves to another group should send all its state data back to the TEE taking its place.Thus,intuitively,we shuffle the TEEs rather than the state data stored in those TEEs.Thus,we can find state data in the same group index before and after shuffling.

    We use a reporting mechanism to punish zombie TEEs that stop working before the promised time.We qualify some TEEs to be challengers and report zombie TEEs.A challenger publishes a challenge transaction to the blockchain,and the zombie TEE must respond to the challenge to prove it is alive.If the challenger succeeds,they can take the deposit of the zombie TEE.This process will also trigger a function of a TEE Committee smart Contract (TCC) to mark the information registered by the zombie TEE as invalid,such that in the next epoch,this zombie TEE will not belong to any group.

    Grouping does not require communication among TEEs because all the registration information is transparent in the blockchain.Each TEE can locally perform group operations based on preset parameters contained in the registration information,obtaining the same result.To achieve that,all TEEs use the last block’s hash value of the previous epoch as aseedto re-group all TEEs.The seed is a random number used to generate a random permutation [26].Parties that use the same seed and the same permutation generator will obtain the same permutation.

    3.2 Threat Model

    We assume that an attacker can gain full control of a TEE and assume the integrity and confidentiality of a TEE can be compromised,but this requires significant computational resources and time from attackers because the TEE itself is a hardware security environment.Therefore,the attacker can only compromise a very small fraction of all TEEs.Moreover,a group becomes insecure only the security of the majority of TEEs is compromised.Our system shuffles the group periodically to prevent the majority of TEEs within a group from being compromised.Furthermore,attackers can choose which TEE to corrupt (e.g.,stop or restart the TEE;modify,reorder or delay network messages arbitrarily).We assume the attacker can only corrupt no more than half of TEEs in a group.Thus,by selecting a larger group,the requester has a securer guarantee but needs to spend more fees,which is a trade-off decided by the requester.

    Our system is built on a blockchain.Thus,it also has the security assumptions made by the underlying blockchain system.A (possibly adversarial) host application facilitates all communications between enclaves and the blockchain.Thus,the host application might isolate the TEE and trick it into verifying a fake transaction on an easily minable forked chain.We assume the blockchain is capable of producing proof of publication to let the TEE confirm a specified transaction is accepted by the blockchain if the proof passes the verification.Practically in Ethereum for instance,the TEE can use Simple Payment Verification [27]or Flyclient [28]to verify the proof of publication produced by a set of full nodes,at least one of which is honest.

    4 dTEE:Distributed Trusted Computing Scheme

    In this section,we first present how a new TEE joins the platform and then explain why anm-of-nsignature andk-repeated evaluation are used,as well as why we group TEEs.Next,we present how to associate a group with a crowdsourcing task and the details of group shuffling.We describe details of Byzantine fault tolerance and the calculation of TEE service remuneration.Finally,we explain the reporting mechanism.

    4.1 TEE Registration

    Individuals and organizations with eligible TEE machines can join the platform by registering some information via a shared TCC.The registration information includesSepoch,Sprice,Z,the TEE’s IP address,and the TEE master public key (mpk),whereSepochis the epoch number the TEE promises to serve (i.e.,time duration),Spriceis the service price,and Z is the group size the TEE is expected to join.We define theremaining service epoch(RSE) of a TEE as the TEE’sSepochminus the epoch number that the TEE has already served.Thus,a newly registered TEE’s RSE is equal toSepoch.Furthermore,the TEE needs to deposit a specified number of coins in the TCC to guarantee it will provide the computation service continuously until itsRSE=0.If the TEE has finished registering but does not provide an actual computing service or exits the platform before the promised time,it may lose its deposit based on our reporting mechanism (see Section 4.7).To confirm that a TEE is eligible,meaning it has been authenticated by the TEE hardware manufacturer,it must get proof through a certificate authority (CA),such as the Intel Attestation Service (IAS),and post this proof in the TCC during registration.The TCC uses the public key of the CA to verify the signature on that proof and confirm the validity of the TEE.Each TEE should finish its registration in the previous epoch.

    4.2 M-of-n Signature&k-Repeated Evaluation&Grouping

    Anm-of-nsignature is a collective signature that requires anymkeys from a set ofnkeys to sign a transaction.Workers store their remuneration within a group temporarily and use anm-of-nsignature to spend the remuneration.Using 1-of-1 signatures is insecure because some TEEs could be compromised by attackers and behave maliciously.Also,if a TEE stops working,the workers cannot spend the remuneration and may even lose them forever.In contrast,when anm-of-nsignature is used,workers can still spend their remuneration even if (n-m) TEEs stop working,while even if (m-1) TEEs are compromised,attackers still cannot steal the money.

    A requester may require workers to repeat the evaluation of data quality inknumber of TEEs because some TEEs could be compromised.Thek-repeated evaluation results are compared,and the requester accepts only the majority one as the final result.This gives the requester more confidence that the sourcing data has been evaluated by honest TEEs.The valuekis specified by the requester when she publishes a TSC in the blockchain.A greaterkprovides greater confidence for the requester,but greater expenses for the services of trusted computing.

    We divide the TEEs into various sizes of groups to handle them-of-nsignatures and k-repeated evaluations specifically for the following two reasons:(1) By grouping the TEEs,we achieve fine-grained management of them-of-nsignature andk-repeated evaluation processes.Grouping makes the platform scalable and the management of many TEEs more efficient.(2) A worker needs to pay only the TEEs in the group that provides a service rather than TEEs in other groups.Thus,grouping makes calculating the TEE service fees clearer and more efficient.

    All TEEs in a group store the same state data and are responsible for providing collective signatures.The group size is equal tonof them-of-nsignature.A requester can specify a specified group size corresponding to the numbernof them-of-nsignature,while workers can selectmto spend their remuneration while registering the task.

    dTEE uses an efficient functiongroupingAllto group all TEEs presented in Algorithm 2.This process does not require communication among TEEs,and each TEE calculates the same grouping result.Specifically,each TEE gets all valid registration information from the TCC,i.e.,e0,e1,...,en-1,then clusters the TEEs that have the same RSE,Sprice,and Z.A cluster consists of multiple groups,while a group consists of multiple TEEs (Fig.1a).To get a determinate grouping result,each TEE sorts the elements in a cluster bympk,then sorts all clusters in the cluster list.A seed is used to shuffle the TEEs,which does not affect each TEE’s ability to get the same grouping result because the seed is the last block hash in the previous epoch.

    4.3 Associate a Group with a Task

    A requester publishes a TSC and specifies some parameters to select a group,such as Z,the maximum TEE service price the requester can afford,and the parameterk.Each TEE locally calculates all candidate groups that meet the requester’s requirements,sorts the candidate groups and stores them in an array,and finally calculates the index of the target group within the array byIgroup←H(addrTSC)%ng,whereH(addrTSC)is the hash value of the TSC‘s address,andngis the number of candidate groups.The group whose index isIgroupwill serve the requester’s task corresponding with TSC.

    UsingH(addrTSC)to calculate the target group for a crowdsourcing task makes it randomly select a group in the candidate set.This prevents malicious requesters from selecting a specific group to maximize their benefits.It also means the group in the candidate set has the same probability of being selected to serve a task,which is good for load balance.

    4.4 Shuffle TEE Groups

    Some TEEs in a group might be compromised by attackers.The group becomes insecure if the majority of its TEEs are compromised or corrupted.To address this problem,we shuffle the groups within a cluster to distribute the compromised TEEs evenly across the groups [2].

    We present the details of how groups within a cluster are shuffled in Algorithm 1,as well as how all groups are shuffled in Algorithm 2.All TEEs within a cluster (and group),as mentioned,have the same RSE,Sprice,and Z values.Each TEE executes the shuffle process locally without interactions with others and obtains the same shuffling result.Because all TEEs have the same view of the TEE registration information,as well as the same seed for shuffling.

    TheSepochof the newly registered TEE must be the same as the RSE of the cluster,in which the TEE joins.Because all TEEs within a cluster have the same RSE,those TEEs will stop their service simultaneously after the RSE becomes 0.If the new TEE cannot find a proper cluster with the same RSE,Sprice,and Z,it becomes a new cluster itself.A new TEE that joins an existing group should synchronize state data from its group members to make sure all TEEs in the group have the same view.

    ?

    ?

    The process of group shuffling creates a new issue,which is that some TEEs and their state data are in different groups after shuffling,making it chaotic for workers to track the TEEs that have provided the services in previous epochs.This also creates difficulties in calculating service fees for those TEEs.Our approach intends to keep state data always with the same group index,even when the TEEs that store this state data move to other groups.Thus,a TEEnathat changes to another group must send the state data back to the TEEnbthat is currently in the old position ofna.For example,as shown in Fig.2a,TEE2 is in the old position of TEE6,so TEE6 must send its state data to TEE2.A TEE that changes position within the same group does not need to synchronize state data with others.Moreover,some TEEs might stop working or crash,causing the failure of the state data synchronization in two cases:(1) if the receiver crashes,the sender simply ignores the synchronization;(2) if the sender crashes,the receiver contacts a previous group member of the sender to get the state data.For example,as shown in Fig.2a,TEE2 cannot receive state data from TEE6 because TEE6 has crashed already.TEE2 can ask TEE4,which was in the same group as TEE6 in epoch 1,to synchronize the state data.After shuffling and state synchronization,the TEEs can delete state data that belongs to other groups.

    Figure 2:(a) Collective signatures are needed within a group before shuffling occurs.After shuffling,TEEs that move to another group,send the state data to the TEE in its previous position.(b) A worker submits the same sourcing data to three TEEs for instance.Those TEEs evaluate the data quality and ask the other four TEEs to sign the evaluation results

    4.5 Byzantine Fault Tolerance

    A TEE might be compromised by attackers.It might maliciously send tampered state data to other TEEs during state synchronization.Thus,a way for the receiver to verify whether state data has been tampered with is required.To address this issue,our approach intends for the receiver never to trust an individual but to trust that the majority of TEEs in a group are honest.A TEE needs to generate proof of honesty by obtaining a collective signature from its group.Specifically,the sender asks all its group members to collectively sign the state data using theirmskand get a collective signature (co-sign),then send this co-sign to the receiver.The receiver verifies the co-sign using those signers’mpk.The sender’s group members will refuse to sign the state data if the data is different from that stored in their local enclaves.For example,as shown in Fig.2a,co-sig2 is the collective signature on the state data of epoch 1 signed by the TEEs in Group2.TEE4 and TEE6 send co-sig2 to TEE3 and TEE2,respectively.It is noteworthy that the TEEs need not communicate with others while verifying the co-sign,because all TEEs have the same view of the registration information.

    In a group,only theknumber of TEEs that evaluate sourcing data can gain the service fee.It is necessary to let all TEEs within the group know whichkTEEs are selected.Otherwise,if a TEE,which is not within thek-selected TEEs,is compromised by attackers,it could use results from thosek-selected TEEs and maliciously broadcast it to other group members to earn the service fee deceitfully.A strawman solution is to always select thekfirst TEEs within the group.This solution is simple but creates a load imbalance problem.Our solution is that,before submitting sourcing data,the worker signs anonceusing their secret keyskand calculates the first TEE index byI0←nonce%n,wherenis the group size,such thatI0%n,(I0+1)%n,...,(I0+k-1)%nare the indexes of thekselected TEEs used to evaluate the data (Fig.2b).

    Security analysis.First,A compromised TEE that is not thek-selected TEE cannot trick the group to obtain the service fee for data evaluation.This is because all TEEs in the group can verify the worker’s signature.Second,if the compromised TEE is thek-selected TEE,it cannot gain the service fee by generating an arbitrary evaluation result because the group accepts only the result in the majority.The worker might sign a specificnonceon purpose.But the worker cannot gain any extra benefits.Moreover,ifnonceis selected randomly,each TEE within the group has the same probability of evaluating the sourcing data,so the group is load-balanced.In summary,the operation ofk-repeated evaluation is secure if the majority ofknumber of TEEs in the group are honest.

    4.6 Calculate TEE Service Remuneration

    dTEE uses a monetary incentive to attract TEE owners to join and provide computation services.The more service that a TEE provides,the greater remuneration the TEE can gain.At the end of each epoch before the group shuffle,each TEE needs to calculate and update its total service remuneration.

    A TEE can get remuneration by providing two kinds of services.The first is to manage remuneration by participating in producing a collective signature to transfer the remuneration via the blockchain based on state data stored in the enclaves;the second is to evaluate the data quality.A worker submits the data tokTEEs within a group (Fig.2b) fork-repeated evaluation,and each TEE sends the evaluation result to other members.The group members store the state data (amnt,epoch,receiver) in enclaves,whereamntis the remuneration that the TEE gains for this quality evaluation service andreceiveris the TEE whose evaluation result is in the majority.Based on the state data,the group can transfer a specified amount of coins to the receiver via the blockchain.All TEEs within a group store the same state data.

    To calculate the value ofamnt,we assume there is a function (Sprice F→pricegas) that can calculate thegaspricepricegasby inputtingSprice,where gas is the concept adopted from Ethereum [29].A gas indicates a unit that measures the amount of computational effort it takes to execute certain operations,such thatamnt←pricegas*amntgas,whereamntgasis the amount of gas used to evaluate the sourcing data.

    A TEE also needs to store its total service remuneration proof (TSRP) in the form of a collective signature to prove its total remuneration.Different TEEs might gain various service remunerations depending on their service time,Sprice,Z,and so forth.Thus,the TSRP of those TEEs could be different even though they are in the same group.

    ?

    At the end of each epoch,TEEs need to liquidate and update their TSRP to the current epoch.We present the details in Algorithm 3,which is executed in a TEEethat needs to update its TSRP.Specifically,coSig0is the TSRP ofeup to the previous epoch,which also means its collective signature is signed bye’s group members from the previous epoch.In the current epoch,e’s group members need to verifycoSig0,calculatee’s service fee for the current epoch,add up alle’s service fees,and finally sign it.eneeds to keep only the new collective signaturecoSig1,which provides evidence of the total service remunerationehas gained up to the current epoch.Recursively,eupdates its TSRP until itsRSE=0,finally using the latestcoSig1to get the remuneration payment.

    4.7 Exit TEE Committee and Reporting Mechanism

    Much management cost and many difficulties will be introduced if TEEs can arbitrarily stop working or exit,which also leads to zombie TEEs and ruins the availability guarantee.Thus,a TEE can exit or stop working only after the amount of time the TEE has promised (i.e.,untilRSE=0),otherwise,the TEE could lose its deposit.Inspired by FastKitten [4],we propose a reporting mechanism to challenge a registered TEE that stops serving.If someone finds a TEE that has stopped working,they publish a transaction on the blockchain to challenge the TEE.If the TEE cannot respond to the challenge within a certain amount of time,the challenger can take the TEE’s deposit.This challenge-response process requires TEEs to monitor the underlying blockchain to timely respond to the challenge.

    dTEE encourages users to report and challenge potential zombie TEEnzbut needs to prevent excessive reporting.Therefore,dTEE allows only the TEE whose group size is greater than a thresholdθ1to challengenz.All challengers need to get a collective signature over the challenge transaction within their group,which requires the approval of the majority of group members.The challenger then publishes the transaction on the blockchain to trigger a function of TCC using {encrypt(nonce,mpkz),mpkz} as input,wherempkzcorresponds to the TEE to be reported andnonceis a random value.If the TEE is alive,it can detect the transaction and use its correspondingmskzto decrypt the data and getnonce;it then calls a function of TCC usingnonceas input to respond to the challenge.If the challenger succeeds,it can take thenz’s deposit and trigger a function of TCC to mark the registration information ofnzas invalid.

    4.8 Security Analysis

    Our system uses a group of TEEs to handle a crowdsourcing task.The group size is specified by the crowdsourcing requester,wherein the trade-off between security and cost is decided by the requester.The group specifically is used to evaluate data quality and manage remuneration.It uses the way ofk-repeated evaluation for data evaluation while usingm-of-nsignatures for the remuneration management.Both need group signatures,and the parametersnandkare decided by the requester,while parametermis decided by the workers.The group signatures guarantee security and availability even if some TEEs crash or are compromised.Attackers might compromise the security of the majority of TEEs within a group to make the group insecure.Our system shuffles the group periodically to present such attacks based on the assumption presented in Section 3.2.

    5 Implementation and Performance Evaluation

    5.1 dTEE Implementation

    We use Ethereum as the blockchain and create a smart contract as a TCC to provide the functions that allow TEEs to register for the platform and store their registration information.A newly registered TEE transfers its deposit to the address of the TCC.A requester who publishes a new crowdsourcing task creates a smart contract as a TSC and also transfers the deposit to the address of the TSC.The workers then register the task by calling a function of the TSC if they want to participate in the task.

    A requester’s deposit is associated with a group index,which means only the specified group can spend it.If the majority of TEEs in a group are compromised by attackers,the deposit could be stolen,but the deposits associated with other groups are still safe.We achieve this using a function in the TCC to verify the group index before a group spends its deposit.Moreover,before a group’s RSE becomes zero,the deposit associated with that group should be liquidated:the worker and the TEEs should be paid,and the rest money should be returned to the requester.

    Within a group,we do not specifically select one of the TEEs to be the leader but make the TEE that receives the client’s request be responsible for replying to the client.First,if the request is for getting remuneration,the TEE needs to broadcast the request to other members,create a payment transaction with a collective signature,publish the transaction in the blockchain,and finally reply to the client.The client can select another TEE in the group if the previous TEE does not respond.Second,if the request is to evaluate the sourcing data,the TEE,which receives the request,evaluates the data inside its enclave,broadcasts the result to its group members,collects replies from the members,and responds to the worker.In our implementation,the worker directly submits the sourcing data toknumber of TEEs,rather than submitting the data only to one TEE and having this TEE forward the data to others because in this case,the receiver could be malicious and tamper with the data before forwarding it.

    5.2 Experimental Setup

    Our experimental platform consists of six physical computers located in one room,each equipped with Intel Core 3 GHz CPUs and 32 GB RAM and running on a Windows 10 operating system.We use Intel’s SGX as the TEE implementation and runcodeevalinside enclaves.Since SGX is not available for all these machines,we configured the software development kit (SDK)to run in simulation mode.We measured the latency of each SGX operation,running under Windows 10 on an Intel Core i5-8500 CPU clocked at 3.00 GHz with 32.0 GB RAM and SGXenabled BIOS support,and injected it into the simulation.The network latency between two of the six machines is less than 1 ms,and each machine executes 20 virtual TEEs.Thus,we insert 10 ms network latency into the simulation so that each virtual TEE has about 10 ms network latency to communicate with the others.

    Measuring blockchain access times is orthogonal to our approach because blockchain writing latency depends on parameters inherent to its implementation,such as about 13 s for Ethereum to create a block.

    5.3 Results

    TEES stores state data for workers and themselves.This state data contains rewards of the workers and the service remuneration of the TEEs.After a TEE receives a request for getting rewards from a worker,the TEE broadcasts it to all group members for verification of the request;each member then creates a signature based on the state data stored locally.The TEE,which received the request,is responsible for collecting the signatures from its group members,and creating a payment transaction with the collective signature,and publishing it in the blockchain.Fig.3a shows the throughput of the operationget rewardswith various group sizes.It shows that dTEE achieves about 65tpsthroughput when the group size is 120.The throughput value does not decrease much when the group size increases.This is because all TEEs within the group work in parallel.The latency of this operation is less than 50 ms within a group of 120,as shown in Fig.3b.

    To prove the remunerations owned by a TEE,the TEE must send its previous TSRP to its group members and ask them to generate a newly updated TSRP (i.e.,a collective signature) at the end of each epoch before group shuffling.Each group member must verify the previous TSRP and sign the new TSRP.We evaluate the throughput of generating TSRP with various group sizes,finding that the throughput decreases,and the latency increases with greater group size (Fig.3).This is because,in our experiment,a TSRP contains simply the signatures of each group member,meaning that TSRP size increases with greater group size.In the future,we will attempt to use Schnorr multi signatures [30]to merge the signatures in a TSRP to reduce its size and accelerate the verification process.

    Figure 3:Evaluation results of TEEs’ability to get rewards and generate a new TSRP in terms of (a) throughput and (b) latency

    To evaluate the throughput and latency of evaluating the quality of sourcing data,we use two different sizes of sourcing data in the scenario that a request buys a lot of sourcing data via dTEE in a crowdsourcing task.The first dataset is classic Sudoku solution data;a Sudoku solution is a nine-by-nine matrix containing 81 integers.The second dataset is from the Modified National Institute of Standards and Technology (MNIST) [31]and consists of 10 classes of 28 by 28 grayscale images.The MNIST test set consists of 10,000 images,while the training set consists of 60,000 images.To recognize objects in the images and evaluate whether an image submitted by the worker meets the requirements,we built a convolutional neural network (CNN) model to be thecodetaskexecuted inside the enclave.The CNN model consists of about 1,240 lines of C++code and contains five layers,including two convolutional layers,two pool layers,and one output layer.We trained the CNN model using the training set and tested it using the test set,achieving about 97% accuracy.

    In the experiment,each time the client submits a Sudoku solution toknumber of TEEs in a group.ThekTEEs perform the same evaluation process and generatekevaluation results,then broadcast the results to all group members.The group members verify the signature over each result and generate a response message with their signatures.Fig.4 shows the throughput and the latency of the process of evaluating a Sudoku solution with various group sizes.When we only use one TEE (k=1) within the group to evaluate the data,the throughput is about 65tps,and the latency is less than 50 ms when both groups are of 120.When we setk=5,the throughput is about 12tpsand the latency is about 110 ms with a group of 120.

    Figure 4:Results of evaluating Sudoku solution data in terms of (a) throughput and (b) latency

    In Fig.5a,we show the quality evaluation latency of submission with 50 images with various group sizes and variouskvalues fork-repeated evaluation.In Fig.5b,we show the processing time of evaluating the quality of MNIST images usingk=5 TEEs with various group sizes.Each time,the client submits 50 images to 5 TEEs fork-repeated evaluation.The client repeats the submission until the total image number is 2,000,4,000,6,000,8,000 or 10,000.The evaluation results show that dTEE can finish evaluating 10,000 images in less than one minute.Moreover,the processing time does not change much even when the group size increases.

    Figure 5:(a) Quality evaluation latency of submission with 50 images with various group sizes and various k values for k-repeated evaluation;(b) processing time to evaluate images with k=5 and various group sizes

    To evaluate the effect of variouskvalues fork-repeated evaluation on dTEE performance,we fix the group size to 120 and calculate the processing time for evaluating images and the latency of submission with 50 images or one Sudoku solution,using variouskTEEs fork-repeated evaluation (Fig.6).The results show that the processing time increases with a greaterkvalue.However,practically speaking,it is rarely necessary to perform ak-repeated evaluation with a bigkvalue.This is a tradeoff between security and speed (or cost) determined by the crowdsourcing requesters.

    Figure 6:(a) Results of evaluating image quality with group size 120 and various k values for k-repeated evaluation;(b) The quality evaluation latency of submission with 50 images once,as well as a submission with 1 Sudoku solution,with various k values for k-repeated evaluation

    6 Conclusion

    In this paper,we proposed dTEE,for building a platform for distributed trusted computing via TEEs.It aims at being infrastructure of trusted computing for blockchain-based crowdsourcing applications to collect large-scale sourcing data with high availability.It is Byzantine fault-tolerant and self-governing without reliance on any trusted third parties.

    Funding Statement:This work was supported by the National Research Foundation of Korea(NRF) grant funded by the Korea government (No.NRF-2019R1A2C1090713).

    Conflicts of Interest:The authors declare that they have no conflicts of interest to report regarding the present study.

    午夜精品一区二区三区免费看| 最近2019中文字幕mv第一页| 男插女下体视频免费在线播放| 中文字幕制服av| 亚洲在线观看片| 成人免费观看视频高清| 婷婷色麻豆天堂久久| 777米奇影视久久| 91久久精品国产一区二区成人| 国产成人aa在线观看| 观看免费一级毛片| 免费观看av网站的网址| 精品一区二区免费观看| 在线观看免费高清a一片| 成人鲁丝片一二三区免费| 国产伦精品一区二区三区四那| 你懂的网址亚洲精品在线观看| 男女下面进入的视频免费午夜| 青青草视频在线视频观看| 国内精品宾馆在线| 久久6这里有精品| 国产色婷婷99| 国产精品人妻久久久久久| 国产白丝娇喘喷水9色精品| 夜夜看夜夜爽夜夜摸| 国产成人精品久久久久久| 人妻夜夜爽99麻豆av| 男女边摸边吃奶| 草草在线视频免费看| 日韩中字成人| 97在线视频观看| 欧美xxxx黑人xx丫x性爽| 热99国产精品久久久久久7| 日韩av免费高清视频| 一区二区三区免费毛片| 国产综合懂色| h日本视频在线播放| 国产真实伦视频高清在线观看| 国产精品人妻久久久影院| 一区二区三区乱码不卡18| 亚洲精品乱码久久久v下载方式| 亚洲欧美日韩东京热| 免费高清在线观看视频在线观看| 我要看日韩黄色一级片| 男人狂女人下面高潮的视频| 国产毛片a区久久久久| 欧美日韩在线观看h| 久久影院123| 亚洲精品第二区| 国产伦精品一区二区三区四那| 欧美精品人与动牲交sv欧美| 亚洲最大成人av| 丝袜脚勾引网站| 天堂网av新在线| 亚洲精华国产精华液的使用体验| 国产综合精华液| 成年版毛片免费区| 亚洲经典国产精华液单| 九草在线视频观看| 免费人成在线观看视频色| 色综合色国产| 高清日韩中文字幕在线| 男插女下体视频免费在线播放| 丝袜喷水一区| 中文天堂在线官网| 国产精品精品国产色婷婷| 国产精品99久久99久久久不卡 | 中国三级夫妇交换| 中文乱码字字幕精品一区二区三区| 尤物成人国产欧美一区二区三区| 亚洲成色77777| 国产精品秋霞免费鲁丝片| 国产免费一区二区三区四区乱码| 国产成人a区在线观看| 制服丝袜香蕉在线| 精品一区在线观看国产| 一级av片app| 亚洲在久久综合| 国产 一区精品| 日本av手机在线免费观看| 免费看av在线观看网站| 黄色日韩在线| 777米奇影视久久| 久久久久精品性色| 色5月婷婷丁香| 91aial.com中文字幕在线观看| 国产精品女同一区二区软件| 内地一区二区视频在线| 免费观看av网站的网址| 我要看日韩黄色一级片| 亚洲国产精品国产精品| 欧美精品一区二区大全| 97在线视频观看| 99热这里只有是精品在线观看| 人人妻人人爽人人添夜夜欢视频 | 人人妻人人爽人人添夜夜欢视频 | 亚洲国产日韩一区二区| 国产午夜精品久久久久久一区二区三区| 一级二级三级毛片免费看| 美女视频免费永久观看网站| 国产老妇女一区| 高清日韩中文字幕在线| 亚洲国产精品成人久久小说| 国产成人freesex在线| 欧美日韩精品成人综合77777| 久久97久久精品| 日韩制服骚丝袜av| 色播亚洲综合网| 国产精品蜜桃在线观看| 欧美最新免费一区二区三区| 国产一区二区三区av在线| 欧美亚洲 丝袜 人妻 在线| 丰满少妇做爰视频| 天天躁日日操中文字幕| 一本久久精品| 欧美丝袜亚洲另类| videossex国产| 热99国产精品久久久久久7| 性插视频无遮挡在线免费观看| 欧美亚洲 丝袜 人妻 在线| 久久99蜜桃精品久久| 神马国产精品三级电影在线观看| 亚洲真实伦在线观看| 免费不卡的大黄色大毛片视频在线观看| 亚洲aⅴ乱码一区二区在线播放| 欧美xxxx性猛交bbbb| 成人一区二区视频在线观看| 在线观看一区二区三区激情| av女优亚洲男人天堂| 人妻少妇偷人精品九色| 毛片女人毛片| 男人狂女人下面高潮的视频| 久久精品熟女亚洲av麻豆精品| 精品熟女少妇av免费看| 视频区图区小说| 精品一区二区免费观看| 一本一本综合久久| 欧美人与善性xxx| 九九久久精品国产亚洲av麻豆| 最后的刺客免费高清国语| 成人美女网站在线观看视频| 国产乱人视频| 国产成人a∨麻豆精品| 国产亚洲av片在线观看秒播厂| 成年女人看的毛片在线观看| 久久影院123| 99热这里只有精品一区| 交换朋友夫妻互换小说| 女人十人毛片免费观看3o分钟| 亚洲av在线观看美女高潮| 午夜福利在线观看免费完整高清在| 国产黄a三级三级三级人| 亚洲精品第二区| 国产欧美亚洲国产| 国产av不卡久久| 韩国av在线不卡| 成人免费观看视频高清| 久久久久久久午夜电影| 欧美成人精品欧美一级黄| 夫妻性生交免费视频一级片| 国产精品爽爽va在线观看网站| 美女视频免费永久观看网站| 欧美精品一区二区大全| 国产免费一区二区三区四区乱码| 国产精品人妻久久久久久| 在线观看一区二区三区| 久久久色成人| 国产一区二区三区综合在线观看 | 欧美性猛交╳xxx乱大交人| 特大巨黑吊av在线直播| 国产女主播在线喷水免费视频网站| 舔av片在线| 狠狠精品人妻久久久久久综合| 最近中文字幕2019免费版| 一边亲一边摸免费视频| 亚洲av在线观看美女高潮| 九九在线视频观看精品| 精品久久久久久久久亚洲| 国产一区亚洲一区在线观看| 亚洲高清免费不卡视频| av在线app专区| 欧美精品人与动牲交sv欧美| 欧美xxxx黑人xx丫x性爽| 国产高清三级在线| 美女主播在线视频| 国产人妻一区二区三区在| 日韩,欧美,国产一区二区三区| 我的女老师完整版在线观看| 成人鲁丝片一二三区免费| 美女脱内裤让男人舔精品视频| 国产亚洲最大av| 国产欧美日韩一区二区三区在线 | 啦啦啦啦在线视频资源| 亚洲av日韩在线播放| 校园人妻丝袜中文字幕| 亚洲在线观看片| 精品人妻视频免费看| 最后的刺客免费高清国语| 久久久欧美国产精品| 26uuu在线亚洲综合色| 国产精品熟女久久久久浪| 别揉我奶头 嗯啊视频| 国产乱人偷精品视频| 91午夜精品亚洲一区二区三区| 欧美日韩精品成人综合77777| 国产综合精华液| 国产免费一区二区三区四区乱码| 国产一级毛片在线| 日韩视频在线欧美| 久久久久久九九精品二区国产| 国产精品国产三级国产av玫瑰| 亚洲色图综合在线观看| 成人欧美大片| 一区二区av电影网| 色视频www国产| 99精国产麻豆久久婷婷| 久久97久久精品| 免费人成在线观看视频色| 久久精品国产自在天天线| 亚洲av免费高清在线观看| 91狼人影院| 成人国产av品久久久| 精品国产一区二区三区久久久樱花 | 免费看a级黄色片| 欧美xxxx黑人xx丫x性爽| kizo精华| 国产成人精品婷婷| 日日啪夜夜爽| 在线观看一区二区三区| 女人被狂操c到高潮| 成年女人看的毛片在线观看| 大片免费播放器 马上看| 最近最新中文字幕大全电影3| 日本与韩国留学比较| 亚洲精品国产av成人精品| 另类亚洲欧美激情| 日韩制服骚丝袜av| 久久久久久久大尺度免费视频| 永久免费av网站大全| 91在线精品国自产拍蜜月| 国产日韩欧美在线精品| 少妇人妻久久综合中文| 如何舔出高潮| 亚洲欧美精品专区久久| 午夜激情福利司机影院| 亚洲欧美一区二区三区黑人 | 欧美性猛交╳xxx乱大交人| 男女那种视频在线观看| 国产精品秋霞免费鲁丝片| 麻豆乱淫一区二区| 天天躁夜夜躁狠狠久久av| 女人十人毛片免费观看3o分钟| 午夜视频国产福利| 亚洲精品色激情综合| 中文字幕亚洲精品专区| 午夜日本视频在线| 色婷婷久久久亚洲欧美| 精品国产一区二区三区久久久樱花 | 一边亲一边摸免费视频| 国产精品麻豆人妻色哟哟久久| 亚洲精品,欧美精品| 免费观看的影片在线观看| 日韩国内少妇激情av| 久久久久久久午夜电影| 大又大粗又爽又黄少妇毛片口| 精品国产乱码久久久久久小说| 亚洲欧美一区二区三区国产| 天堂中文最新版在线下载 | 91狼人影院| 2018国产大陆天天弄谢| 99久久人妻综合| 成人黄色视频免费在线看| 最近2019中文字幕mv第一页| 91久久精品电影网| 丰满少妇做爰视频| 老司机影院毛片| 青青草视频在线视频观看| 亚洲丝袜综合中文字幕| 亚州av有码| 在线亚洲精品国产二区图片欧美 | 新久久久久国产一级毛片| 街头女战士在线观看网站| 丝袜脚勾引网站| 在线天堂最新版资源| 日本爱情动作片www.在线观看| 可以在线观看毛片的网站| 精品久久久久久电影网| 亚洲不卡免费看| 只有这里有精品99| 少妇人妻精品综合一区二区| 91午夜精品亚洲一区二区三区| 亚洲最大成人手机在线| 国产午夜福利久久久久久| 欧美成人a在线观看| 国产毛片在线视频| 有码 亚洲区| av在线app专区| 26uuu在线亚洲综合色| 成年免费大片在线观看| 国产黄色免费在线视频| 亚洲精品成人av观看孕妇| 永久免费av网站大全| 一本久久精品| 国产精品久久久久久久电影| 女人十人毛片免费观看3o分钟| 国产毛片在线视频| 一本色道久久久久久精品综合| 亚洲av免费高清在线观看| 色网站视频免费| 国产黄片视频在线免费观看| 亚洲人成网站在线观看播放| 精品一区在线观看国产| 国产又色又爽无遮挡免| 中国三级夫妇交换| 老司机影院成人| 亚洲精品成人av观看孕妇| 美女xxoo啪啪120秒动态图| 水蜜桃什么品种好| 成年女人在线观看亚洲视频 | 久久久成人免费电影| 69av精品久久久久久| 国产探花在线观看一区二区| 亚洲国产欧美在线一区| 亚洲精品一区蜜桃| 国内揄拍国产精品人妻在线| 极品教师在线视频| 国产精品无大码| 一级黄片播放器| 亚洲av日韩在线播放| 最后的刺客免费高清国语| 五月开心婷婷网| 91久久精品国产一区二区三区| 国产色婷婷99| 2018国产大陆天天弄谢| 亚洲三级黄色毛片| 亚洲自偷自拍三级| 国产色爽女视频免费观看| 九九久久精品国产亚洲av麻豆| 晚上一个人看的免费电影| 国产极品天堂在线| 在线免费观看不下载黄p国产| 制服丝袜香蕉在线| 色婷婷久久久亚洲欧美| 国产精品久久久久久久电影| 高清欧美精品videossex| 在线a可以看的网站| 视频中文字幕在线观看| 久久这里有精品视频免费| 各种免费的搞黄视频| 别揉我奶头 嗯啊视频| 看非洲黑人一级黄片| 免费看日本二区| 久久久午夜欧美精品| 麻豆成人午夜福利视频| 夜夜看夜夜爽夜夜摸| 能在线免费看毛片的网站| .国产精品久久| 丝袜美腿在线中文| 岛国毛片在线播放| 国产av国产精品国产| 91狼人影院| 在线观看国产h片| 午夜免费男女啪啪视频观看| a级毛片免费高清观看在线播放| 黄色欧美视频在线观看| 亚洲内射少妇av| 99热这里只有是精品50| 日韩三级伦理在线观看| 夜夜爽夜夜爽视频| 777米奇影视久久| 国产成人a区在线观看| 亚洲一级一片aⅴ在线观看| 亚洲精品国产av蜜桃| 久久国产乱子免费精品| 国产精品久久久久久精品古装| 国产精品国产三级专区第一集| 国产美女午夜福利| 日日啪夜夜撸| 99热这里只有是精品在线观看| 日日啪夜夜撸| 免费看av在线观看网站| 3wmmmm亚洲av在线观看| 蜜桃久久精品国产亚洲av| 亚洲精品成人久久久久久| 久久精品久久久久久久性| 国产黄频视频在线观看| 嘟嘟电影网在线观看| av免费观看日本| 香蕉精品网在线| 深夜a级毛片| 男人狂女人下面高潮的视频| 日韩伦理黄色片| 欧美 日韩 精品 国产| 深夜a级毛片| 亚洲精品中文字幕在线视频 | 十八禁网站网址无遮挡 | 欧美日韩国产mv在线观看视频 | 久久久久精品久久久久真实原创| av线在线观看网站| 国产精品国产三级国产av玫瑰| 丝袜喷水一区| 国产国拍精品亚洲av在线观看| 久久精品国产鲁丝片午夜精品| 国产精品久久久久久精品电影| 日本三级黄在线观看| 亚洲伊人久久精品综合| 99热这里只有是精品50| 国产av不卡久久| av专区在线播放| 一级a做视频免费观看| 国产在线男女| 中国国产av一级| 国产成人一区二区在线| 日日摸夜夜添夜夜爱| 三级经典国产精品| 日韩欧美精品免费久久| 在线看a的网站| 丝袜脚勾引网站| 日韩av不卡免费在线播放| 狂野欧美激情性bbbbbb| 国产精品无大码| 特大巨黑吊av在线直播| 亚洲国产精品专区欧美| 国产成人a区在线观看| 亚洲av.av天堂| 中文字幕人妻熟人妻熟丝袜美| 国产成人免费观看mmmm| 国产精品麻豆人妻色哟哟久久| 午夜激情久久久久久久| 人妻 亚洲 视频| 激情 狠狠 欧美| 国产精品99久久久久久久久| 国精品久久久久久国模美| 一个人看的www免费观看视频| 亚洲国产最新在线播放| 成人毛片60女人毛片免费| av女优亚洲男人天堂| 亚洲精品视频女| 免费在线观看成人毛片| 国产 一区精品| 亚洲久久久久久中文字幕| 亚洲欧洲国产日韩| 国产大屁股一区二区在线视频| 大码成人一级视频| 久热这里只有精品99| 91久久精品国产一区二区三区| 麻豆成人av视频| 嫩草影院新地址| 三级男女做爰猛烈吃奶摸视频| 一区二区三区乱码不卡18| 97超视频在线观看视频| 亚洲国产精品国产精品| 一级片'在线观看视频| 亚洲av中文字字幕乱码综合| 观看美女的网站| 成人免费观看视频高清| 亚洲va在线va天堂va国产| 大话2 男鬼变身卡| 久久久久性生活片| 哪个播放器可以免费观看大片| 亚洲精品国产av蜜桃| 国产成人免费观看mmmm| 99久久精品一区二区三区| 国产亚洲最大av| 不卡视频在线观看欧美| 性色avwww在线观看| 寂寞人妻少妇视频99o| 熟女人妻精品中文字幕| 国产 一区精品| 久久精品国产a三级三级三级| 亚洲av免费在线观看| 亚洲av中文字字幕乱码综合| 观看美女的网站| h日本视频在线播放| 大香蕉97超碰在线| 日韩一本色道免费dvd| 天堂俺去俺来也www色官网| 亚洲成人中文字幕在线播放| 亚洲天堂国产精品一区在线| 精品久久国产蜜桃| 人妻一区二区av| 国产精品久久久久久av不卡| 国产精品一区二区性色av| 99热全是精品| 亚洲av成人精品一二三区| 最近最新中文字幕大全电影3| 亚洲欧洲日产国产| 欧美人与善性xxx| 亚洲精品影视一区二区三区av| 寂寞人妻少妇视频99o| 韩国av在线不卡| 少妇丰满av| 亚洲人成网站高清观看| 精品一区在线观看国产| 99久久九九国产精品国产免费| 丰满少妇做爰视频| 亚洲激情五月婷婷啪啪| 国产欧美日韩一区二区三区在线 | 久久亚洲国产成人精品v| 色播亚洲综合网| 制服丝袜香蕉在线| 久久精品久久久久久久性| 国产精品秋霞免费鲁丝片| 成人综合一区亚洲| 欧美性猛交╳xxx乱大交人| 一个人看的www免费观看视频| 好男人在线观看高清免费视频| 欧美日韩在线观看h| 国产大屁股一区二区在线视频| 欧美另类一区| 国产精品.久久久| 国产精品久久久久久精品电影小说 | 黄片wwwwww| 乱码一卡2卡4卡精品| 精品久久久久久久久av| 亚洲国产日韩一区二区| 男人爽女人下面视频在线观看| 中文欧美无线码| av在线老鸭窝| 观看美女的网站| 成年女人看的毛片在线观看| 国产精品久久久久久精品古装| 97超视频在线观看视频| 国产精品99久久久久久久久| 久久国内精品自在自线图片| 国产精品偷伦视频观看了| 老师上课跳d突然被开到最大视频| 亚洲最大成人av| 欧美日韩综合久久久久久| 国产中年淑女户外野战色| 精品国产乱码久久久久久小说| 久久精品熟女亚洲av麻豆精品| 亚洲欧美日韩卡通动漫| 国产精品一区二区性色av| 成人鲁丝片一二三区免费| 91aial.com中文字幕在线观看| 日本一本二区三区精品| 免费大片18禁| 亚洲电影在线观看av| 国产老妇伦熟女老妇高清| 日韩欧美精品v在线| 国产成人a区在线观看| 日本av手机在线免费观看| 国内精品美女久久久久久| 干丝袜人妻中文字幕| 一本—道久久a久久精品蜜桃钙片 精品乱码久久久久久99久播 | 亚洲国产av新网站| 欧美高清成人免费视频www| 嫩草影院入口| 国产精品国产三级专区第一集| 乱码一卡2卡4卡精品| 一级毛片久久久久久久久女| 亚洲国产高清在线一区二区三| 亚洲成人一二三区av| 国产欧美另类精品又又久久亚洲欧美| 日本熟妇午夜| 水蜜桃什么品种好| 少妇人妻久久综合中文| 亚洲性久久影院| 国产精品熟女久久久久浪| 3wmmmm亚洲av在线观看| 80岁老熟妇乱子伦牲交| 欧美日韩国产mv在线观看视频 | 深爱激情五月婷婷| 亚洲欧美精品自产自拍| 成人亚洲精品av一区二区| 欧美国产精品一级二级三级 | 91狼人影院| 男人和女人高潮做爰伦理| 97人妻精品一区二区三区麻豆| 一级毛片aaaaaa免费看小| 91精品伊人久久大香线蕉| 神马国产精品三级电影在线观看| 国产 一区 欧美 日韩| 国产精品女同一区二区软件| 三级国产精品欧美在线观看| 国产亚洲一区二区精品| 国产成人精品婷婷| 成人亚洲精品一区在线观看 | 欧美日韩亚洲高清精品| 欧美另类一区| 一级毛片黄色毛片免费观看视频| 香蕉精品网在线| 夫妻午夜视频| 老司机影院毛片| 超碰97精品在线观看| 中文精品一卡2卡3卡4更新| 看十八女毛片水多多多| 国产美女午夜福利| 我的女老师完整版在线观看| 不卡视频在线观看欧美| 最近2019中文字幕mv第一页| 色吧在线观看| 欧美激情国产日韩精品一区| 在线 av 中文字幕| 最新中文字幕久久久久| 日韩成人伦理影院| 男人爽女人下面视频在线观看| 又大又黄又爽视频免费| 尾随美女入室| 老司机影院成人| 国产真实伦视频高清在线观看| 欧美97在线视频| 91精品伊人久久大香线蕉| 日本与韩国留学比较| 成人一区二区视频在线观看| 能在线免费看毛片的网站| 只有这里有精品99| 国产探花在线观看一区二区| 一区二区三区免费毛片| 夫妻性生交免费视频一级片| 国产视频内射| 九色成人免费人妻av| 人人妻人人澡人人爽人人夜夜| 亚洲人与动物交配视频|