Next Article in Journal
Iterative Self-Tuning Minimum Variance Control of a Nonlinear Autonomous Underwater Vehicle Maneuvering Model
Next Article in Special Issue
Infrared Image Super-Resolution via Progressive Compact Distillation Network
Previous Article in Journal
A Comprehensive Modeling of the Discrete and Dynamic Problem of Berth Allocation in Maritime Terminals
Previous Article in Special Issue
Solar Active Region Detection Using Deep Learning
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Ciphertext-Policy Attribute-Based Encryption with Outsourced Set Intersection in Multimedia Cloud Computing

1
School of Computer Engineering, Nanjing Institute of Technology, Nanjing 211167, China
2
School of Software Engineering, Jinling Institute of Technology, Nanjing 211169, China
*
Author to whom correspondence should be addressed.
Electronics 2021, 10(21), 2685; https://doi.org/10.3390/electronics10212685
Submission received: 2 October 2021 / Revised: 24 October 2021 / Accepted: 30 October 2021 / Published: 3 November 2021
(This article belongs to the Special Issue Multimedia Processing: Challenges and Prospects)

Abstract

:
In a multimedia cloud computing system, suppose all cloud users outsource their own data sets to the cloud in the encrypted form. Each outsourced set is associated with an access structure such that a valid data user, Bob, with the credentials satisfying the access structure is able to conduct computing over outsourced encrypted set (e.g., decryption or other kinds of computing function). Suppose Bob needs to compute the set intersection over a data owner Alice’s and his own outsourced encrypted sets. Bob’s simple solution is to download Alice’s and Bob’s outsourced encrypted sets, perform set intersection operation, and decrypt the set intersection ciphertexts. A better solution is for Bob to delegate the cloud to calculate the set intersection, without giving the cloud any ability in breaching the secrecy of the sets. To solve this problem, this work introduces a novel primitive called ciphertext-policy attribute-based encryption with outsourced set intersection for multimedia cloud computing. It is the first cryptographic algorithm supporting a fully outsourced encrypted storage, computation delegation, fine-grained authorization security for ciphertext-policy model, without relying on an online trusted authority or data owners, and multi-elements set, simultaneously. We construct a scheme that provably satisfies the desirable security properties, and analyze its efficiency.

1. Introduction

The multimedia cloud computing has been a successful computing paradigm since it can offer mass data storage and elastic but powerful computing capabilities at an affordable price. Cloud users, e.g., data owners and data users, can outsource their multimedia data to the cloud, then access it and share it with other users at anytime from anywhere. However, since data outsourcing will undermine the control capability for data owners since the outsourced data resides in the cloud service providers’ scope, it inevitably raises the security concerns regarding the data confidentiality, data integrity, and data access control. While it is natural to encrypt data before outsourcing it to the cloud, it indeed raises another issue about how to facilitate the cloud to perform some specific function over outsourced encrypted data without compromising data privacy.
In this paper, we study the problem of set intersection over outsourced encrypted data sets, which is a variant of the private set intersection (PSI) problem [1] that has been extensively studied. In the traditional setting of PSI, two data users, holding their own data sets at local, joint compute the data sets’ intersection in a manner that they only obtain the information about the intersection but nothing else. PSI has been widely adopted to many practical applications, such as private data mining, private matching, credit information system, anti-epidemic information system, and educational resources sharing, etc.
Problem. For the multimedia cloud computing scenario, the cloud users (i.e., the data owners and the data users) no longer store their own data sets at local and calculate the set intersection by themselves. Instead, the cloud users expect to outsource them to the cloud in encrypted form and entrust the cloud to help them complete the set intersection operation. While several works have studied PSI over outsourced encrypted data in the cloud [2,3,4], it certainly raises a difficulty for the data owners on how to enforce that their encrypted data can be used to perform by only some specific users. That is, how can the data owners limit the ability for the data users on performing set intersection by complying with certain control policies.
Motivation. shi2021delegated. In their protocol, it restricts PSI operation permissions through access control policy, embedded in data users’ secret keys. However, in KP - ABSI , the access structure is associated with data users instead of outsourced data sets. So, it is not particularly suitable for achieving access control over cloud data. Recently, Ali et al. proposed a ciphertext-policy attribute-based set intersection solution [6] to realize fine-grained authorization for outsourced data sets of data owners. Unfortunately, in their protocol, the data sets of the data users must be in plaintext form and the data users should execute PSI operations at local. It is not applicable to the case where all cloud users outsourced their encrypted data sets to the cloud and delegate PSI computation to the cloud. To our knowledge (cf. Section 2), none of the existing schemes consider this problem how to achieve the following objectives simultaneously: (1) All cloud users should outsource their data sets in the ciphertext form to the cloud. (2) The cloud users should be able to preserve data privacy while allowing the set intersection delegation to the cloud. (3) The cloud users should be able to accomplish fine-grained access control to the set operation permissions over their outsourced encrypted data sets. (4) It should not rely on the always online trusted authority and the data owners.
Our Contributions. For solving the above problem, this work introduces a novel notion called ciphertext-policy attribute-based encryption with outsourced set intersection ( CP - ABSI ) for multimedia cloud computing. In CP - ABSI , all cloud users encrypt their own data sets by customizing an access structure before outsourcing. An authorized data user (Bob), whose attributes satisfy the access structure of the data owner’s (Alice) data set, can delegate the set intersection calculation between Alice’s and Bob’s data sets to the cloud by generating a token. This work presents the formal definition of CP - ABSI with security properties, then presents a specific scheme. There are five characteristic properties for our CP - ABSI scheme: (1) It supports fully outsourced encrypted data sets for all cloud users, including data owners and data users. (2) The cloud can be delegated to execute PSI operations and not acquire any additional information beyond the result of encrypted set intersection. (3) It combines PSI and CP-ABE to realize fine-grained authorization for outsourced set intersection operation. (4) The data owner and the trusted authority are not required to participate in the interaction. (5) It supports multi-elements data sets. It is suitable for multimedia cloud computing.

2. Related Work

Although PSI has been widely studied previously, all existing solutions did not resolve the problems considered in this work. We brief the relevant technologies below and compare them with our CP - ABSI as shown in Table 1.
Two-party Private Set Intersection. In this scenario, it only involves two participants, a client and a server, both of whom work interactively to accomplish the set intersection operation with their own data sets [7,8]. Unfortunately, these solutions cannot be adapted to cloud architecture; for that, both parties have to decrypt all of their outsourced encrypted data sets and do the heavy computations for PSI at local. Obviously, they cannot support fine-grained authorization and the data owner should be always online.
Three-party Private Set Intersection. In this model, it includes three participants, i.e., the cloud servers, the data owners, and data users, where the data owners and the data users wish to outsource set intersection operations to the server. For example, refs. [2,3,4,9] considered outsourcing set intersection operations to the cloud while preserving the privacy of the data sets. In addition, symmetric/asymmetric encryption with equality test, e.g., [10,11], is a specific solution for one-element data sets. Unfortunately, all of these solutions ask for the data owner to always be online or have no authorization mechanism. Thus, traditional three-party PSI protocols are impractical for the cloud system.
Attribute-based Encryption ( ABE ). A reliable solution for realizing fine-grained authorization for outsourced data is ABE , introduced by Sahai and Waters [15]. This technique allows the data users with appropriate attributes to decrypt the ciphertexts under an access structure. There are two types of ABE : ciphertext-policy ABE ( CP - ABE ) in which the ciphertext is generated under an access structure (e.g., [16,17]) and key-policy ABE ( KP - ABE ) in which the private key is generated under an access structure (e.g., [18,19]). ABE also can be combined with other techniques to provide fine-grained operation and computation, e.g., attribute-based keyword search (e.g., [20]) or attribute-based proxy re-encryption (e.g., [21]).
Attribute-based Set Intersection. The first attribute-based set intersection solution is attribute-based encryption with equality test (ABEET). ABEET supports access control and set intersection computation delegation, but only for one-element data sets. Zhu et al. and Wang et al., respectively, present the first KP-ABEET and CP-ABEET [12,13]. After that, Cui et al. presented a performance enhanced ciphertext-policy construction [14]. Unfortunately, in these schemes, the trapdoor is generated with the master secret key held by the trusted authority and the data owner is required to participate in the delegating phase to send its token to the cloud. So, the trusted authority and the data owners should be always online. Even worse, in existing ABEET schemes, the cloud server without token A , C can obtain set intersection A C with token A , B for A B and token B , C for B C . So, they actually cannot achieve fine-grained authorization security, which will be illustrated in Definition 4. It is impractical and secure enough for distributed cloud computing. The first attribute-based solution for multi-elements set intersection is proposed by Mohammad Ali et. al. It achieves fine-grained authorization security and is not dependent on an online trusted authority or data owners. However, in Ali’s scheme, data users must store the plaintext form of their set and execute PSI operations at local. It is not supporting fully outsourced encrypted storage and computation delegation, so it is not applied to our scenario where the data sets of all cloud users are encrypted in the cloud. Later, Shi et al. introduced a KP - ABSI scheme by combining KP - ABE and PSI to achieve fully outsourced encrypted storage and computation delegation. However, it is still not applied to our scenario since it implements access control for cloud users instead of cloud data sets [5].
For that, in this work, we combine PSI and CP - ABE to propose a novel primitive named ciphertext-policy attribute-based encryption with outsourced set intersection ( CP - ABSI ), implementing access control for ciphertext data sets. Compared with existing solutions, our CP - ABSI can support a fully outsourced encrypted storage, computation delegation, fine-grained authorization security for ciphertext-policy( CP ) model, without relying on an online trusted authority or data owners, and multi-elements set, simultaneously.

3. Problem Formulation

3.1. System Model

Figure 1 highlights the system model, which consists of three entities—a cloud server, a trusted attribute authority, and the cloud users, e.g., a data owner (named Alice), an authorized data user (named Bob), and an unauthorized data user (named Calos). The cloud affords for the cloud users computing and storing supporting. The trusted attribute authority issues data users’ secret keys in line with their attribute certificates. The data owner (i.e., Alice), which can be either individuals or organizations, encrypt their private data sets according to an access control policy and then outsource them to the cloud server. An authorized user (i.e., Bob), whose attributes satisfy Alice’s and his own access structures simultaneously, can delegate set intersection operations over Alice’s and his own encrypted data sets to the cloud. Whereas any unauthorized user, i.e., Calos, whose attributes do not satisfy the access structure of Alice, cannot outsource the set intersection operations to the cloud.
Here, we suppose that the cloud is honest but curious, meaning that it runs the protocols honestly but attempts to obtain privacy information about the data sets.
A cloud user is malicious and might collude with the semi-trusted cloud.

3.2. Formal Definition

Here is shown the formal definition of CP - ABSI (ciphertext-policy attribute-based encryption with outsourced set intersection), in which ciphertexts are generated under an access structure. T is denoted as an access policy and UA is denoted as an attribute set, respectively, in CP - ABSI . Let F ( T , UA ) = 1 if and only if T is satisfied by UA in CP - ABSI .
Definition. 1.
( CP - ABSI ) A scheme for CP - ABSI has the following algorithms:
( pk , msk ) Setup ( 1 ) : The trusted attribute authority bootstraps the master private key msk and the public parameters pk as input a security parameter ℓ.
sk KeyGen ( msk , UA ) : The trusted attribute authority generates secret keys sk for a data user.
c Enc ( D , T ) : Given T , a cloud user (data owner or data user) encrypts their private data set D . Then they outsource the ciphertexts to the cloud.
token TokenGen ( sk ) : A data user runs this algorithm to generate a token to delegate the set intersection operations between the data owner’s and his own encrypted data sets to the cloud, where the token token will be sent to the cloud for this purpose.
rslt SI ( token , c , c ) : The cloud server runs this algorithm to calculate the set intersection rslt , only if UA associated to token meets both F ( T , UA ) = 1 and F ( T , UA ) = 1 , where T and T are specified by c of the data owner and c of the data user, respectively.
The correctness of CP - ABSI scheme can be defined as: With ( pk , msk ) Setup ( 1 ) , sk KeyGen ( msk , UA ) , token TokenGen ( sk ) , c Enc ( D , T ) for set D and c Enc ( D , T ) for set D , if F ( T , UA ) = 1 and F ( T , UA ) = 1 , rslt is the ciphertext of set intersection D D , where rslt SI ( c , c , token ) .

3.3. Security Definitions

It is said that the CP - ABSI scheme is secure if it satisfies the following security properties: selective security against chosen-plaintext attack, one-wayness under a chosen-plaintext attack, and fine-grained authorization security.
Selective security against chosen-plaintext attack: Intuitively, this property says that a probabilistic polynomial-time (PPT) adversary A , modeling malicious unauthorized data users, cannot obtain any useful information about the encrypted sets without being given the corresponding tokens, where the term “selective” means that it asks for the adversary A to choose T which parties to compromise before initializing the public parameters. This security property can be formally defined by the game between A and a challenger as follows.
Setup: A chooses T * and sends it to the challenger. Then the challenger executes Setup to bootstrap msk and pk , it sets msk as the master private key and sends pk to A as a public key.
Phase 1: A can make queries for polynomial-many times as follows:
  • O KeyGen ( UA ) : If F ( T * , UA ) = 1 , the challenger aborts; else, it executes sk KeyGen ( msk , pk , UA ) and sends sk back to A .
  • O TokenGen ( UA ) : If F ( T * , UA ) = 1 , then the challenger aborts the simulation; otherwise, it executes sk KeyGen ( msk , UA ) , token TokenGen ( sk ) and sends token to A .
Challenge: A selects two data sets D 0 and D 1 where | D 0 | = | D 1 | but D 0 D 1 , and sends them to the challenger. The challenger picks σ R { 0 , 1 } , executes c * = Enc ( D σ , T * ) and returns c * back to A .
Phase 2: A executes as in Phase 1.
Guess: A guess σ is replied by A . A wins the security game if σ = σ .
Definition 2.
If the advantage | Pr [ σ = σ ] 1 / 2 | that A wins the selective security game is negligible, the CP - ABSI construction is selective secure.
One-wayness security: Intuitively, this property requires that any PPT adversary A , modeling honest-but-curious cloud server, even with a token, is unable to acquire any useful information about the plaintexts corresponding to the ciphertexts in question. Note that, given a target ciphertext and the appropriate token, where the term “appropriate” means the credentials that generate the token satisfy the access control policy associated to the target ciphertext, A can purposefully choose and encrypt a data set element with public parameters, and compare their chosen ciphertext with the target ciphertext. Obliviously, brute-force attack is inevitable, so it is just demanded that A have no better strategy. The one-wayness security can be defined by the following game.
Setup: The challenger produces msk , pk by executing Setup , sets msk as the master secret key, and sends pk to A as the public parameters.
Phase 1: A can query following oracles for polynomial-many times, the challenger bookkeeps a list L UA initially empty.
  • O KeyGen ( UA ) : The challenger replies sk KeyGen ( msk , UA ) to A and inserts UA to L UA .
  • O TokenGen ( UA ) : The challenger replies token TokenGen ( sk ) (where sk KeyGen ( msk , UA ) ) to A .
Challenge: A selects and sends T * to the challenger, where UA L UA , F ( T * , UA ) = 0 . The challenger chooses UA * such that F ( T * , UA * ) = 1 , selects D * uniformly at random, calculates c * Enc ( D * , T * ) and token * TokenGen ( KeyGen ( UA * ) ) . Then return c * , token * back to A .
Phase 2: It is similar to Phase 1, except that F ( T * , UA ) = 0 when querying O KeyGen ( UA ) .
Guess: A guess d is replied by A . A wins the one-wayness security game if d D * .
Definition 3.
If the advantage | Pr [ d D * ] m | D * | | Msg | | , in which Msg is the domain size of set elements and m is the number of guess/brute-force attacks A makes, that A wins the one-wayness security game is negligible, the CP - ABSI construction is one-wayness secure.
Fine-grained authorization: The adversary A , modeling the honest-but-curious cloud server, cannot use the known tokens to obtain set intersection if the credentials that generate the tokens do not satisfy the access control policies associated to two ciphertexts simultaneously. Intuitively, A cannot use token A , B for A B and token B , C for B C to achieve set intersection A C , if token A , B and token B , C whose associated attribute sets do not satisfy A and C’s access structure simultaneously. This can be formalized via the following fine-grained authorization security game.
Setup: The challenger produces msk , pk by executing Setup , sets msk as the master private key, and returns pk back to A .
Phase 1: A can make polynomial-many oracle queries as follows, and the challenger bookkeeps two lists L UA and L token initially empty.
  • O KeyGen ( UA ) : The challenger replies sk KeyGen ( msk , UA ) back to A and adds UA to L UA .
  • O TokenGen ( UA ) : The challenger replies token TokenGen ( sk ) (where sk KeyGen ( msk , UA ) ) to A and insert UA into L token .
Challenge: A selects T 1 * and T 2 * , and sends them to the challenger. The challenger chooses two sets D 0 , D 1 , selects σ R { 0 , 1 } , replies c 1 * Enc ( D 0 , T 1 * ) and c 2 * Enc ( D σ , , T 2 * ) back to A . It is required that
  • UA L UA , F ( T 1 * , UA ) and F ( T 2 * , UA ) cannot be 1 simultaneously.
  • UA L token , F ( T 1 * , UA ) and F ( T 2 * , UA ) cannot be 1 simultaneously.
Phase 2: It is similar to Phase 1, except that:
  • For any query for O KeyGen ( UA ) or O TokenGen ( UA ) , F ( T 1 * , UA ) and F ( T 2 * , UA ) cannot be 1 simultaneously.
Guess: A guess σ is replied by A . A wins the fine-grained authorization game if σ = σ .
Definition 4.
If the advantage | Pr [ σ = σ ] 1 2 | that A wins fine-grained authorization security game is negligible, the CP - ABSI construction is fine-grained authorization secure.

4. Scheme Construction

4.1. CP - ABSI Construction

The CP - ABSI scheme is described as follows.
Setup ( 1 ): Given security parameter , it generates the public parameter and master key as follows:
  • Set ( e , q , g , g T , G , G T ) BMapGen ( 1 ) .
  • Let H 1 : { 0 , 1 } * G and H 2 : { 0 , 1 } * G be two secure hash functions.
  • Choose a , b R Z p , then make the public parameter as pk = ( e , G , G T , g , g a , g b , H 1 , H 2 ) and the master secret key as msk = ( a , b )
KeyGen ( msk , pk , UA ) : It picks t R Z p , then calculates X 1 = g a t and X 2 = g b t . For each attribute at i UA , it selects c i R Z p , and computes Y i = g a b t H 1 ( at i ) c i and Z i = g c i . It sets the private key as sk = ( UA , X 1 , X 2 , { ( Y i , Z i ) | at i UA } ) .
Enc ( D , T , pk ) : Given set D = { d 0 , , d n } where d j { 0 , 1 } * , it encrypts D as follows: It picks r 1 , r 2 R Z p and computes A 1 = g b r 1 , A 2 = g a ( r 1 + r 2 ) H 2 ( d j ) for each d j . It runs { q v ( 0 ) | v leaf ( T ) } Share ( T , r 2 ) and computes B v = g q v ( 0 ) , C v = H 1 ( att ( v ) ) q v ( 0 ) for each v leaf ( T ) . It sets the ciphertext as c = { c 0 , , c n } , where c j = ( T , A 1 , A 2 , { B v , C v | v leaf ( T ) } ) .
TokenGen ( sk , pk ) : It selects k R Z p , computes Y i ^ = Y i k , Z i ^ = Z i k for each at i UA , and sets X 1 ^ = X 1 k , X 2 ^ = X 2 k . It sets the token as token = ( UA , X 1 ^ , X 2 ^ , { Y i ^ , Z i ^ | at i UA } ) .
SI ( token , c , c ) : As input c = { c 0 , , c n } , c = { c 0 , , c m } and a token token , it executes as follows:
  • For c j c , it arbitrarily chooses a subset S UA satisfying T . If there is no such S, 0 is returned. Else, it calculates E v = e ( Y i ^ , B v ) / e ( Z i ^ , C v ) = e ( g , g ) a b t k q v ( 0 ) , where att ( v ) = at i . Then it runs E root = e ( g , g ) a b t k r 2 Combine ( T , E v | att ( v ) S ) , and computes E 1 = e ( A 1 , X 1 ^ ) = e ( g , g ) a b t k r 1 and E 2 j = e ( A 2 , X 2 ^ ) / ( E root E 1 ) = e ( H 2 ( d j ) , g ) b k t . It sets E = { E 20 , , E 2 n } .
  • For c j c , it arbitrarily chooses a subset S UA satisfying T . If there is no such S , 0 is returned. Else, it calculates E v = e ( Y i ^ , B v ) / e ( Z i ^ , C v ) = e ( g , g ) a b t k q v ( 0 ) , where att ( v ) = at i . Then it runs E root = e ( g , g ) a b t k r 2 Combine ( T , E v | att ( v ) S ) , and computes E 1 = e ( A 1 , X 1 ^ ) = e ( g , g ) a b t k r 1 and E 2 j = e ( A 2 , X 2 ^ ) / ( E root E 1 ) = e ( H 2 ( d j ) , g ) b k t . It sets E = { E 20 , , E 2 m } .
  • It outputs the set intersection rslt = { c j | c j c , E 2 j E E } .
we can verify the correctness for CP - ABSI construction easily according to the protocols. Then its security properties will be analyzed.

4.2. Security Analysis

Theorem 1.
The CP - ABSI scheme is selective secure against chosen-plaintext attack in the generic bilinear group model as specified in Definition 2.
Proof. 
It is first to show that the scheme is secure when | D | = 1 , and then extend it to the case | D | > 1 .
Since in the challenge phase of the game, A ’s aim is to distinguish g a ( r 1 + r 2 ) H 2 ( d 0 ) and g a ( r 1 + r 2 ) H 2 ( d 1 ) , where D 0 = { d 0 } and D 1 = { d 1 } . The probabilities of A distinguishing g a ( r 1 + r 2 ) H 2 ( d 0 ) from g θ and distinguishing g θ from g a ( r 1 + r 2 ) H 2 ( d 1 ) where θ R Z p are the same. Therefore, if A distinguishes g a ( r 1 + r 2 ) H 2 ( d 0 ) from g a ( r 1 + r 2 ) H 2 ( d 1 ) with probability μ , then A distinguishes between g a ( r 1 + r 2 ) H 2 ( d 0 ) and g θ with probability μ / 2 . We consider the following adjusted game, in which A attempts to discriminate between g a ( r 1 + r 2 ) and g θ with θ Z p .
Setup: The challenger randomly picks a , b R Z p , sets public parameter as ( G , G T , e , p , g , g a , g b ) , and transfers them to A . It bookkeeps two initially empty lists L i s t H 1 ( at j , α j ) and L i s t H 2 ( d , γ ) . A can query polynomially many times for O H 1 and O H 2 .
O H 1 ( at j ) : If at j has not been queried before, it picks α j R Z p , replies g α j to A and inserts ( at j , α j ) into L i s t H 1 ; Else, it retrieves α j from L i s t H 1 and replies g α j to A .
O H 2 ( d ) : If an element d was queried before, it searches γ from L i s t H 2 and sends g γ back to A ; else, it picks γ R Z p , inserts ( d , γ ) into L i s t H 2 , then sends g γ back to A .
Phase 1: A can query the oracles polynomially many times as follows.
O KeyGen ( UA ) : The challenger selects t ( u ) R Z p . For each at j UA , it chooses c j ( u ) R Z p , and sets sk = ( UA , X 1 = g a t ( u ) , X 2 = g b t ( u ) { Y j = g a b t ( u ) + α j c j ( u ) , Z j = g c j ( u ) | at j UA } ) .
O token ( UA ) : The challenger chooses k ( u ) R Z p and calculates token = ( UA , X 1 ^ = X 1 k ( u ) = g at ( u ) k ( u ) , X 2 ^ = X 2 k ( u ) = g bt ( u ) k ( u ) , { Y j ^ = Y j k ( u ) = g abt ( u ) k ( u ) + α j c j ( u ) k ( u ) , Z j ^ = Z j k ( u ) = g c j ( u ) k ( u ) | at j UA } ) .
Challenge: A chooses and transfers an access policy T * to the challenger., which is not satisfied by any UA that was queried to O KeyGen . The challenger picks two equal length messages ( d 0 , d 1 ) uniformly at random from the message space, selects r 1 , r 2 R Z p and σ R { 0 , 1 } , and runs { q v ( 0 ) | v leaf ( T * ) } Share ( T * , r 2 ) . If σ = 0 , then the challenger computes c * = ( A 1 = g b r 1 , A 2 = g θ , { B v = g q v ( 0 ) , C v = g α j q v ( 0 ) | v leaf ( T * ) } ) , where att ( v ) = at j . Otherwise, it calculates c * = ( A 1 = g b r 1 , A 2 = g a ( r 1 + r 2 ) , { B v = g q v ( 0 ) , C v = g α j q v ( 0 ) | v leaf ( T * ) } ) , where att ( v ) = at j . At last, it returns c * to A .
Phase 2: A queries the oracles as in Phase 1.
Guess: A outputs a guess σ of σ .
In the generic model, if it is distinguishable between e ( g , g ) a ( r 1 + r 2 ) and g θ for A , it should build e ( g , g ) Γ a ( r 1 + r 2 ) with certain g Γ . Then it will be shown that the probability that A build e ( g , g ) Γ a ( r 1 + r 2 ) for certain g Γ is negligible, possibly taking advantage of the oracles’ outputs. Table 2 lists all the possible queries to group oracle G T .
Let us discuss the way building e ( g , g ) Γ a ( r 1 + r 2 ) with certain Γ . Since only the term b r 1 has the element r 1 , the only way of building e ( g , g ) Γ a ( r 1 + r 2 ) for A is building e ( g , g ) Γ a b r 2 , where Γ = Γ b . Obviously, to construct Γ a b r 2 , A needs to use q v ( 0 ) , α j q v ( 0 ) , c j ( u ) , c j ( u ) k ( u ) , a b t ( u ) + α j c j ( u ) and a b t ( u ) k ( u ) + α j c j ( u ) k ( u ) . However, only under the condition that the attribute set satisfies T * can r 2 be reconstructed.
Thus far, it is shown that A can gain a negligible advantage in the modified game.
Intuitively, for the general case of | D | > 1 , we can also prove that the scheme is selective secure against chosen-plaintext attack as in [5]. □
Theorem 2.
The CP - ABSI scheme is one-wayness secure if hash function H 2 is one-way.
Proof. 
Suppose there is a PPT adversary A winning the game for one-wayness with a non-negligible advantage μ , a challenger can be simulated to break one-wayness for H 2 .
Given H 2 ( d * ) = y * , the challenger executes the following game.
Setup: It chooses a , b R Z p , sets msk = ( a , b ) , and transfers pk = ( G , G T , e , p , g , g a , g b ) to A .
Phase 1: It keeps an initially empty list L UA . A is able to query the following oracles in polynomially many times:
O KeyGen ( UA ) : For an attribute set UA , it returns sk KeyGen ( msk , pk , UA ) to A and inserts UA into L UA .
O token ( UA ) : For an attribute set UA , it replies token TokenGen ( KeyGen ( msk , pk , UA ) , pk ) .
Challenge: A transfers to the challenger an access control policy T * , where UA L UA , F ( UA , T * ) = 0 . The challenger selects j R Z p and generates a data set D * = ( d 0 , d 1 , . . . , d | D * | 1 ) , where d 0 , . . . , d j 1 , d j + 1 , . . . , d | D * | 1 are chosen from Msg at random and d j is set as d j = d * implicitly. It sets the ciphertext c = { c k } k [ 0 , | D * | 1 ] as follows:
  • If k j , c k is the same with that in the real scheme;
  • If k = j , set A 1 = g b r 1 , A 2 = g a ( r 1 + r 2 ) y * , by choosing r 1 , r 2 R Z p at random and setting d j = d * implicitly. Then run { q v ( 0 ) | v leaf ( T * ) } Share ( T * , r 2 ) and compute B v = g q v ( 0 ) , C v = H 1 ( att ( v ) ) q v ( 0 ) for each v leaf ( T * ) . At last it sets c k = ( T * , A 1 , A 2 , { B v , C v | v leaf ( T * ) } )
The challenger chooses an attribute set UA * such that F ( UA * , T * ) = 1 , and forwards to the adversary A token * TokenGen ( KeyGen ( msk , pk , UA * ) , pk ) and c * = ( c ) .
Phase 2: It is the same as that defined by the game.
Guess: The challenger wins if A replies a guess d satisfying d = d * .
It is shown that if A outputs d D * with probability | Pr [ d D * ] m | D * | | Msg | | = μ , then Pr [ d D * ] = m | D * | | Msg | + μ . Moreover, Pr [ d : d = d * ] Pr [ d D * ] | D * | = 1 | D * | ( m | D * | | Msg | + μ ) , where | D * | is the data set size. Therefore, if A wins the game for one-wayness with a non-negligible advantage μ , the challenger can break the one-wayness for H 2 with a non-negligible probability that is at least 1 | D * | ( m | D * | | Msg | + μ ) . □
Theorem 3.
The CP - ABSI scheme is fine-grained authorization secure in the generic bilinear group model.
Proof. 
We first show that the CP - ABSI construction is fine-grained authorization secure while | D 0 | = | D 1 | = 1 .
Setup: The challenger picks a , b R Z p and transfers pk = ( G , G T , e , g , p , g a , g b ) to A . The challenger bookkeeps lists L i s t H 1 ( at j , α j ) and L i s t H 2 ( D , γ ) , which are empty initially, and A can query O H 1 and O H 2 in polynomially many times as follows:
O H 1 ( at j ) : Given the attribute at j , if at j has not been queried before, it picks α j R Z p , replies g α j , and inserts ( at j , α j ) into L i s t H 1 ; Else, it replies g α j by searching α j from L i s t H 1 .
O H 2 ( D ) : If D has been queried before, then it searches γ from L i s t H 2 and sends g γ back to A ; otherwise, it picks γ R Z p , replies g γ to A , and inserts ( D , γ ) into L i s t H 2 .
Phase 1: The challenger bookkeeps two initially empty lists L UA and L token . A can query the oracles polynomially many times.
O KeyGen ( UA ) : It picks t ( u ) R Z p . For each at j UA , it chooses c j ( u ) R Z p , and sets sk = ( UA , X 1 = g a t ( u ) , X 2 = g b t ( u ) , { Y j = g a b t ( u ) + α j c j ( u ) , Z j = g c j ( u ) | at j UA } ) . It returns sk to A and adds UA to L UA .
O token ( UA ) : The challenger selects k ( u ) R Z p , runs O KeyGen ( UA ) . For each at j UA , it chooses c j ( u ) R Z p , and sets token = ( UA , X 1 ^ = X 1 k ( u ) = g at ( u ) k ( u ) , X 1 ^ = X 2 k ( u ) = g bt ( u ) k ( u ) , { Y j ^ = Y j k ( u ) = g abt ( u ) k ( u ) + α j c j ( u ) k ( u ) , Z j ^ = Z j k ( u ) = g c j ( u ) k ( u ) | at j UA } ) . It sends token to A and inserts UA into L token .
Challenge: The adversary A selects access control policies T 1 * , T 2 * and sends them to the challenger. We require that (1) UA L UA , F ( T 1 * , UA ) and F ( T 2 * , UA ) cannot output 1 simultaneously, and (2) UA L UA , F ( T 1 * , UA ) and F ( T 2 * , UA ) cannot output 1 simultaneously. The challenger chooses two data sets ( D 0 = ( d 0 , 0 , . . . , d 0 , n ) , D 1 = ( d 1 , 0 , . . . , d 1 , n ) ) of equal length.
For each d 0 , i , 0 i n , the challenger selects r 1 , r 2 R Z p and runs { q v ( 0 ) | v leaf ( T 1 * ) } Share ( T 1 * , r 2 ) . It computes c 1 , i * = ( A 1 = g b r 1 , A 2 = g a ( r 1 + r 2 ) + β 0 , i , B v = g q v ( 0 ) , { C v = g α j q v ( 0 ) | v leaf ( T 1 * ) } ) , where att ( v ) = at j .
It selects σ R { 0 , 1 } and for each d σ , w , 0 w n , it selects r 3 , r 4 R Z p and runs { q v ( 0 ) | v leaf ( T 2 * ) } Share ( T 2 * , r 4 ) . It calculates c i p h e r 2 , w * = ( A 1 = g b r 3 , A 2 = g a ( r 3 + r 4 ) + β σ , w , B v = g q v ( 0 ) , { C v = g α j q v ( 0 ) | v leaf ( T 2 * ) } ) , where att ( v ) = at j .
At last, it returns c 1 * = ( c 1 , 0 * , . . . , c 1 , n * ) , c 2 * = ( c 2 , 0 * , . . . , c 2 , n * ) to A .
Phase 2: It is the same as that defined by the game.
Guess: A guess σ of σ is output by A .
In this game, A attempts to determine whether D σ is equal to D 0 . Since each message in data sets is encrypted independently, A needs to determine whether d σ , w is equal to d 0 , i for i , w { 0 , . . . , n } . The only way is to judge whether or not g β σ is same as g β 0 . Since in the generic model, the only way that A can determine β σ is equal to β 0 is that there are two queries ν = γ 1 + γ 2 β 0 , i and ν = γ 1 + γ 2 β σ , w for some γ 1 and γ 2 into G or G T . We artificially add the query ν ν = γ 2 ( β 0 β σ ) to A ’s queries. Then, it will be shown that A never makes any query for g γ 2 ( β 0 β σ , w ) . We can see that β 0 only appears in the term a ( r 1 + r 2 ) + β 0 , i and β σ , w only appears in the term a ( r 3 + r 4 ) + β σ , w . So, A needs to construct g γ 2 a ( r 1 + r 2 r 3 r 4 ) . Table 3 lists all the queries to group oracle G T .
In the above game, r 1 only appears in the term b r 1 and b r 3 only appears in the term b r 3 . Let γ 2 = b γ 2 for some γ 2 , and then A needs to construct γ 2 a b ( r 2 r 4 ) . Since r 2 is independent with r 4 , A needs to construct γ 2 a b r 2 and γ 2 a b r 4 . The only way to construct γ 2 a b r 2 needs to use ( q v ( 0 ) , α j q v ( 0 ) ) and ( c j ( u ) , a b t ( u ) + α j c j ( u ) , a b t ( u ) k ( u ) + α j c j ( u ) k ( u ) , c j ( u ) k ( u ) ) related to key or token queries labeled with ( UA ( u ) , t ( u ) ). q v ( 0 ) is r 2 ’s secret share associated to T 1 . So, a b t ( u ) r 2 or a b t ( u ) k ( u ) r 2 can be only reconstructed if F ( UA ( u ) , T 1 ) . Let Ω is a set of t ( u ) such that γ 2 a b r 2 for γ = t ( u ) c or γ = k ( u ) t ( u ) c , where g c is known to A , can be reconstructed. For any t ( u ) Ω , γ 2 a b r 4 = a b r 4 t ( u ) c or γ 2 a b r 4 = a b r 4 t ( u ) k ( u ) c can be reconstructed only if the key or token query labeled with ( UA ( u ) , t ( u ) ) satisfies F ( UA ( u ) , T 2 ) . However, there is no key or token query labeled with ( UA ( u ) , t ( u ) ) satisfying not only F ( UA ( u ) , T 1 ) = 1 but also F ( UA ( u ) , T 2 ) = 1 . Therefore, there is no γ 2 such that γ 2 a b r 2 and γ 2 a b r 4 can both be reconstructed.
Consequently, g γ 2 a ( r 1 + r 2 r 3 r 4 ) and g γ 2 ( β 0 β σ ) for some γ 2 can be constructed by A with negligible probability, and it is fine-grained authorization secure for | D 0 | = | D 1 | = 1 .
As with the evidence in Theorem 1, it can be shown that our solution is also fine-grained authorization secure for | D 0 | = | D 1 | > 1 . This completes the proof. □

5. Efficiency Analysis

Here, we measure the performance of CP - ABSI and other related works about attribute-based set intersection by the asymptotic complexity. Pairing operation time is denoted by P, hash operation time is denoted by H, group exponentiation time in G is denoted by E, and group exponentiation time in G T is denoted by E T . The multiplication operation is ignored since it has much higher efficiency compared to the above operations.
For analyzing the performance of CP - ABSI clearly, firstly we compared it with KP - ABSI [5], as in Table 4, as follows:
It shows that KeyGen in the CP - ABSI scheme is more expensive than that in the KP - ABSI scheme, while Enc in the CP - ABSI scheme is more expensive than that in the KP - ABSI scheme. In both schemes, the TokenGen algorithm and the SI algorithm incur almost the same cost. SI algorithm can be delegated to the cloud server. However, our CP - ABSI can specify the access structure over outsourced data sets directly, while KP - ABSI can only access control for users because of its key-policy setting.
Additionally, as we showed in Section 2, on one hand, Ali’s solution [6] requires the data user to store complete sets of big data and spend more time than nE + nH for PSI operation at local. This has a great burden on the computing and storage for the cloud users. On the other hand, ABEET solutions [12,13,14] cannot support multi-elements data sets and fine-grained authorization security. Even worse, they require the data owners and trusted authority to always be online. So, the communication cost is too high and they are not applicable to the distributed cloud scenario.
Thus, our CP - ABSI is the most practical and secure solution than existing attribute-based set intersection schemes for cloud computing.

6. Conclusions

We introduced a novel application of multimedia cloud computing: ciphertext-policy attribute-based encryption with outsourced set intersection. This application has five properties: (1) All cloud users outsource their encrypted data sets to a cloud, where each outsourced data set has an associated access control policy. (2) A data user who has the credentials that satisfy the data owner’s access control policy is able to delegate to the cloud the set intersection operation between his own and the data owner’s data sets. (3) The cloud helps data users calculate the set intersection without being capable of learning any additional useful information and without being given the data user’s credentials. (4) It is not required that the data owners and the trusted authority are always online. (5) It supports multi-elements data sets.
There are many interesting problems for future research in multimedia cloud computing. First, our schemes do not hide what credentials the data user possesses. How to hide such information is an open problem. Second, our main contribution is not for high performance, but for new cryptographic functions and security in this work. So, it is also interesting to design a high performance CP - ABSI scheme in future work.

Author Contributions

Conceptualization, Y.S.; methodology, Y.S.; formal analysis, S.Q.; writing—original draft preparation, Y.S.; writing—review and editing, Y.S. and S.Q. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the Philosophy and Social Science Foundation of the Jiangsu Higher Education Institutions of China “Research on Blockchain-based Intelligent Credit Information System and its Privacy Preservation Mechanism” (Grants No. 2021SJA0448), the Natural Science Foundation of Jiangsu Province (Grants No. BK20210928), and the Scientific Research Foundation of Nanjing Institute of Technology (Grants No. YKJ201980), and the Higher Education Research Project of Nanjing Institute of Technology “Research on Security Sharing Mechanism of Compound Teaching Resources based on Blockchain” (Grants No. 2021ZC13).

Data Availability Statement

All data is available to the public.

Acknowledgments

This paper has benefited from the comments of the anonymous reviewers.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Freedman, M.J.; Nissim, K.; Pinkas, B. Efficient private matching and set intersection. In Advances in Cryptology-EUROCRYPT 2004; Springer: Berlin/Heidelberg, Germany, 2004; pp. 1–19. [Google Scholar]
  2. Wang, Q.; Zhou, F.; Xu, J.; Peng, S. Tag-based Verifiable Delegated Set Intersection over Outsourced Private Datasets. In IEEE Transactions on Cloud Computing; IEEE: Piscataway, NJ, USA, 2020; p. 1. [Google Scholar] [CrossRef]
  3. Abadi, A.; Terzis, S.; Dong, C. VD-PSI: Verifiable delegated private set intersection on outsourced private datasets. In International Conference on Financial Cryptography and Data Security; Springer: Berlin/Heidelberg, Germany, 2016; pp. 149–168. [Google Scholar]
  4. Yang, X.; Luo, X.; Xu, A.W.; Zhang, S. Improved outsourced private set intersection protocol based on polynomial interpolation. Concurr. Comput. Pract. Exp. 2018, 30, e4329. [Google Scholar] [CrossRef] [Green Version]
  5. Shi, Y.; Qiu, S. Delegated Key-Policy Attribute-Based Set Intersection over Outsourced Encrypted Data Sets for CloudIoT. Secur. Commun. Netw. 2021, 2021, 5595243. [Google Scholar] [CrossRef]
  6. Ali, M.; Mohajeri, J.; Sadeghi, M.R.; Liu, X. Attribute-based fine-grained access control for outscored private set intersection computation. Inf. Sci. 2020, 536, 222–243. [Google Scholar] [CrossRef]
  7. Pinkas, B.; Rosulek, M.; Trieu, N.; Yanai, A. Psi from paxos: Fast, malicious private set intersection. In Annual International Conference on the Theory and Applications of Cryptographic Techniques; Springer: Berlin/Heidelberg, Germany, 2020; pp. 739–767. [Google Scholar]
  8. Lv, S.; Ye, J.; Yin, S.; Cheng, X.; Feng, C.; Liu, X.; Li, R.; Li, Z.; Liu, Z.; Zhou, L. Unbalanced private set intersection cardinality protocol with low communication cost. Future Gener. Comput. Syst. 2020, 102, 1054–1061. [Google Scholar] [CrossRef]
  9. Zhu, H.; Chen, M.; Sun, M.; Liao, X.; Hu, L. Outsourcing Set Intersection Computation Based on Bloom Filter for Privacy Preservation in Multimedia Processing. Secur. Commun. Netw. 2018, 2018, 5841967. [Google Scholar] [CrossRef] [Green Version]
  10. Duong, D.H.; Fukushima, K.; Kiyomoto, S.; Roy, P.S.; Susilo, W. A lattice-based public key encryption with equality test in standard model. In Australasian Conference on Information Security and Privacy; Springer: Berlin/Heidelberg, Germany, 2019; pp. 138–155. [Google Scholar]
  11. Lee, H.T.; Ling, S.; Seo, J.H.; Wang, H. Public key encryption with equality test from generic assumptions in the random oracle model. Inf. Sci. 2019, 500, 15–33. [Google Scholar] [CrossRef]
  12. Zhu, H.; Wang, L.; Ahmad, H.; Niu, X. Key-policy attribute-based encryption with equality test in cloud computing. IEEE Access 2017, 5, 20428–20439. [Google Scholar] [CrossRef]
  13. Wang, Q.; Peng, L.; Xiong, H.; Sun, J.; Qin, Z. Ciphertext-policy attribute-based encryption with delegated equality test in cloud computing. IEEE Access 2017, 6, 760–771. [Google Scholar] [CrossRef]
  14. Cui, Y.; Huang, Q.; Huang, J.; Li, H.; Yang, G. Ciphertext-policy attribute-based encrypted data equality test and classification. Comput. J. 2019, 62, 1166–1177. [Google Scholar] [CrossRef]
  15. Sahai, A.; Waters, B. Fuzzy identity-based encryption. In Advances in Cryptology–EUROCRYPT 2005; Springer: Berlin/Heidelberg, Germany, 2005; pp. 457–473. [Google Scholar]
  16. Liu, Z.; Duan, S.; Zhou, P.; Wang, B. Traceable-then-revocable ciphertext-policy attribute-based encryption scheme. Future Gener. Comput. Syst. 2019, 93, 903–913. [Google Scholar] [CrossRef]
  17. Ma, H.; Wang, Z.; Guan, Z. Efficient Ciphertext-Policy Attribute-Based Online/Offline Encryption with User Revocation. Secur. Commun. Netw. 2019, 2019, 8093578. [Google Scholar] [CrossRef]
  18. Li, J.; Yu, Q.; Zhang, Y.; Shen, J. Key-policy attribute-based encryption against continual auxiliary input leakage. Inf. Sci. 2019, 470, 175–188. [Google Scholar] [CrossRef]
  19. Zhang, J.; Gao, H. A compact construction for non-monotonic key-policy attribute-based encryption. Int. J. High Perform. Comput. Netw. 2019, 13, 321–330. [Google Scholar] [CrossRef]
  20. Zheng, Q.; Xu, S.; Ateniese, G. VABKS: Verifiable attribute-based keyword search over outsourced encrypted data. In Proceedings of the IEEE INFOCOM 2014-IEEE Conference on Computer Communications, Toronto, ON, Canada, 27 April–2 May 2014; pp. 522–530. [Google Scholar]
  21. Li, Z.; Sharma, V.; Ma, C.; Ge, C.; Susilo, W. Ciphertext-policy attribute-based proxy re-encryption via constrained PRFs. Sci. China Inf. Sci. 2021, 64, 1–2. [Google Scholar] [CrossRef]
Figure 1. System model of CP - ABSI .
Figure 1. System model of CP - ABSI .
Electronics 10 02685 g001
Table 1. Property summary for PSI schemes. “×” means not supported, “√” means supported, “CP” means ciphertext-policy and “KP” means key-policy. In the related work and our solution in this paper. Fully outsourced encrypted storage means that all cloud users, including data owners and data users, can outsource their data sets in encrypted form. Computation delegation means it supports delegating PSI operations to the cloud. Fine-grained authorization security (as defined in Definition 4) means that it supports fine-grained authorization security with key-policy or ciphertext-policy setting. Without always online trusted authority or data owner means that it is not required that the trusted authority or data owners are always online. Multi-elements set means it supports multiple elements data set.
Table 1. Property summary for PSI schemes. “×” means not supported, “√” means supported, “CP” means ciphertext-policy and “KP” means key-policy. In the related work and our solution in this paper. Fully outsourced encrypted storage means that all cloud users, including data owners and data users, can outsource their data sets in encrypted form. Computation delegation means it supports delegating PSI operations to the cloud. Fine-grained authorization security (as defined in Definition 4) means that it supports fine-grained authorization security with key-policy or ciphertext-policy setting. Without always online trusted authority or data owner means that it is not required that the trusted authority or data owners are always online. Multi-elements set means it supports multiple elements data set.
SchemesFully Outsourced
Encrypted Storage
Computation
Delegation
Fine-Grained
Authorization
Security
Without Always Online
Trusted Authority
or Data Owner
Multi-Elements
Set
Two-party Private
Set Intersection [7,8]
××××
Three-party Private
Set Intersection [2,3,4,9]
××
Symmetric/Asymmetric
Encryption with
Equality Test [10,11]
××
KP-ABEET [12]×××
CP-ABEET  [13,14]×××
AB-PSI [6]×× CP
KP - ABSI  [5] KP
Our CP - ABSI CP
Table 2. Possible group oracle G T queries in the selective security game.
Table 2. Possible group oracle G T queries in the selective security game.
Queries 1Queries 2Queries 3Queries 4
a c j ( u ) c j ( u ) k ( u ) q v ( 0 )
b a t ( u ) a t ( u ) k ( u ) α j q v ( 0 )
α j b t ( u ) b t ( u ) k ( u )
b r 1 a b t ( u ) + α j c j ( u ) a b t ( u ) k ( u ) + α j c j ( u ) k ( u )
Table 3. Possible queries for group oracle G T in fine-grained authorization game.
Table 3. Possible queries for group oracle G T in fine-grained authorization game.
Queries 1Queries 2Queries 3Queries 4Queries 5
a c j ( u ) c j ( u ) k ( u ) q v ( 0 ) α j q v ( 0 )
b a t ( u ) a t ( u ) k ( u ) α j q v ( 0 ) a ( r 1 + r 2 ) + β 0
α j b t ( u ) b t ( u ) k ( u ) b r 3 a ( r 3 + r 4 ) + β σ
a b t ( u ) + α j c j ( u ) a b t ( u ) k ( u ) + α j c j ( u ) k ( u ) b r 1 q v ( 0 )
Table 4. Efficiency comparison between KP - ABSI and our CP - ABSI . Note that here, both sets are n in size, the number of a data user’s attributes is S, the number of attributes involved in the access tree is N.
Table 4. Efficiency comparison between KP - ABSI and our CP - ABSI . Note that here, both sets are n in size, the number of a data user’s attributes is S, the number of attributes involved in the access tree is N.
Scheme KP - ABSI  [5] CP - ABSI
KeyGen ( 3 N + 2 ) E + NH ( 2 S + 3 ) E + SH
Enc ( S + 3 ) n E + ( S + 1 ) n H ( 2 N + 2 ) n E + ( N + 1 ) n H
TokenGen ( 2 N + 2 ) E ( 2 S + 4 ) E
SI ( 2 S + 2 ) · 2 n P + S · 2 n E T ( 2 N + 2 ) · 2 n P + N · 2 n E T
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Shi, Y.; Qiu, S. Ciphertext-Policy Attribute-Based Encryption with Outsourced Set Intersection in Multimedia Cloud Computing. Electronics 2021, 10, 2685. https://doi.org/10.3390/electronics10212685

AMA Style

Shi Y, Qiu S. Ciphertext-Policy Attribute-Based Encryption with Outsourced Set Intersection in Multimedia Cloud Computing. Electronics. 2021; 10(21):2685. https://doi.org/10.3390/electronics10212685

Chicago/Turabian Style

Shi, Yanfeng, and Shuo Qiu. 2021. "Ciphertext-Policy Attribute-Based Encryption with Outsourced Set Intersection in Multimedia Cloud Computing" Electronics 10, no. 21: 2685. https://doi.org/10.3390/electronics10212685

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop