Next Article in Journal
A Novel Isomap-SVR Soft Sensor Model and Its Application in Rotary Kiln Calcination Zone Temperature Prediction
Previous Article in Journal
A 12-bit 30 MS/s Successive Approximation-Register Analog-to-Digital Converter with Foreground Digital Calibration Algorithm
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:

Efficient Lattice CP-ABE AC Scheme Supporting Reduced-OBDD Structure for CCN/NDN

School of Computer Science and Technology, University of Electronic Science and Technology of China, Chengdu 611731, China
Author to whom correspondence should be addressed.
Symmetry 2020, 12(1), 166;
Submission received: 3 December 2019 / Revised: 1 January 2020 / Accepted: 8 January 2020 / Published: 14 January 2020


In line with the proposed 5th Generation network, content centric network/named data networking (CCN/NDN) has been offered as one of the promising paradigms to cope with the communication needs of future realistic network communications. CCN/NDN allows network communication based on content names and also allows users to obtain information from any of the nearest intermediary caches on the network. Due to that, the ability of cached content to protect itself is essential since contents can be cached on any node everywhere, and publishers may not have total control over their own published data. The attribute based encryption (ABE) scheme is a preferable approach, identified to enable cached contents to be self-secured since it has a special property of encryption with policies. However, most of the proposed ABE schemes for CCN/NDN suffer from some loopholes. They are not flexible in the expression of access policy, they are inefficient, they are based on bilinear maps with pairings, and they are vulnerable to quantum cryptography algorithms. Hence, we propose the ciphertext policy attribute based encryption access control (CP-ABE AC) scheme from a lightweight ideal lattice based on ring learning with error (R-LWE) problem, and demonstrated its use in practical applications. The proposed scheme is proved to be secure and efficient under the decision ring LWE problem in the selective set model. To achieve an efficient scheme, we used an efficient trapdoor technique and the access tree representation of access structure describing the access policies was modified into a new structure, based on a reduced ordered binary decision diagram (reduce-OBDD). This access structure can support Boolean operations such as AND, NOT, OR, and threshold gates. The final result showed that the proposed scheme was secure and efficient for applications, thereby supporting CCN/NDN as a promising paradigm.

1. Introduction

The rapid growth of the utilization of mobile and network resources has led to an increase in global network traffic every year. This is one of the most apparent concerns for mobile and network operators. To manage this huge network traffic and slow throughput, several architectures have been proposed to accommodate this rapid growth and its associated problems. One of these proposed architectures is called content centric networking/named data networking (CCN/NDN). CCN/NDN is one of the technologies of the information centric network (ICN) based on 5G network architecture. The main basic features in CCN/NDN architectures are interest-based content retrieval, content-aware naming and routing at the network layer, and in-network caching.
In the CCN/NDN network layer, the sender does not directly send packets (contents) to the receivers and receivers do not access packets (interests) from the data owner. Data owners rather publish content to all networks without necessarily knowing the interested users of the content. These users of the content then request their content without knowing the publisher. Here, the rule for the transaction is evidence of a match between the publisher and subscribers to be followed by the establishment of a delivery path, to enable the delivery of content. The main advantages of this mechanism are, the network nodes cache the content for a fixed period of time and the same content can be requested multiple times, and satisfied from the node without contacting the content owners.
In adopting this phenomenon, we considered a typical internet of things (IoT)-CCN/NDN scenario depicted in Figure 1. This system consists of publisher, IoT CCN/NDN, and the consumers. The content publishers broadcast content that can be cached in all networks and can be accessed and retrieved from any intermediate node. For example, after Bob retrieves content from the server, the content is cached on each of the intermediate nodes, so Alice and Vic can access the same content from node F, and Oscar can also access the same content from node G.
The CCN/NDN has different techniques with regard to its security model. The security component of CCN/NDN modifies the security approach to secure the cached content, instead of the traditional approach of securing network paths for all the networks. The effective way to achieve a required secured data sharing is to provide more scalable and flexible access control for this pervasive and distributed CCN/NDN environment [1]. Fortunately, attribute-based encryption (ABE) cryptosystem has been proposed as a fine-grained access control mechanism for CCN/NDN based on the 5G communication network.
The attribute based encryption scheme comes with two main aspects, namely cipher text-policy ABE (CP-ABE) scheme and key-policy ABE (KP-ABE) scheme. With these schemes, users can recover a message if their attributes fulfill the requirement of the access structure. Ciphertext policy ABE (CP-ABE) has some special properties and advantages, over symmetric, asymmetric and KP-ABE. It also has an impressive property of manufacturing and describing access privileges of users in a more intuitive and scalable way. Further, by using this scheme and without prior knowledge of the receivers of information, data could be shared according to the encrypted policy.
Basically, there are two approaches to designing the algorithms of ABE encryption schemes, and these are bilinear map over elliptical curve and the lattice-based approach. However, several gaps and problems exist in the implementation of these algorithms over the years. By and large, these gaps and problems could be mainly categorized into high communication overhead during cipher text uploading and downloading, high computational cost, the problem of quantum and post-quantum attacks and attacks on the plaintext. There are several access control schemes proposed for CNN/NDN. However, most of these exiting proposed access control schemes are based on a bilinear map over the elliptical curve [2,3]. Some of these works have large computational overhead during encryption and decryption. They also have a high communication overhead during ciphertext uploading and downloading. These massive storage overheads require additional properties of securing cached contents to authenticate each content consumer. Above all, almost all the proposed schemes for CNN/NDN paradigm are susceptible to quantum attacks. The above-mentioned challenges make most of the existing ABE access control schemes unattractive for CCN/NDN.
Herranz et al. [4] and Chen et al. [5] proposed constant ciphertext-policy ABE (CP-ABE) schemes to address the issues of client high computational cost. However, their schemes are inexpressive and based on AND gate and threshold function by the large-scale ciphertext. An outsource computational ABE scheme was proposed by Hohenberger and Waters [6] and Lai et al. [7]. These schemes have high communication cost and most of the encryption and decryption computations are outsourced. In order to reduce the policy scale, Zhou and Huang [8] proposed a minimum sum of product expression and Song et al. [9] proposed minimum linear code, respectively, to minimize the policy scale. A small-scale policy that has less ciphertext redundancy, the reduction of redundancy is limited and unstable. A compact ciphertext-policy ABE (CP-ABE) scheme was proposed by [10] to compact the policy scale and reduce ciphertext redundancy. However, the above-mentioned schemes are based on bilinear maps with high computational complexity and could not address the problem of quantum and post-quantum attacks.
To address the problems of quantum attacks, the researchers of [11] first introduced the idea of the lattice into cryptography. There has been recent progress in the area of quantum cryptography including lattice-based ABE schemes. Zhu et al. [12] proposed KP-ABE scheme using a threshold access policy for the ideal grid based on the R-LWE problem, which proved to be CPA secured. However, this scheme could not satisfy the attack on plaintext security as claimed by the authors. Instead of adopting the preceding approaches, LSSS CP-ABE access control scheme from the lightweight ideal grid was proposed by Tan et al. [13], which can resist collision attacks. Yan et al. [14] used the LSSS access structure to propose the ideal multi-agency CP-ABE scheme. Wang et al. [15] achieved an effective encryption scheme based on R-LWE with high encryption power. The decryption run time and integrity support features are based on chosen cipher-text security. In 2018, authors of [16] proposed the attribute-based encryption scheme supporting tree-access structure from ideal lattices. They used an expressive and flexible access policy by Shamir threshold secret sharing technology, including “and”, “or”, and “threshold” operations. In order to construct more efficient lattice-based ABE to resolve inefficient issues in the lattice ABE cryptosystem, the accessed structures and some components such as the trapdoor design and the matrix dimension which play a significant role in the construction of the lattice based ABE scheme need to optimize. Hence, the main contribution of our work is to propose a flexible and efficient CP-ABE access control scheme based on ring learning with error supporting reduced-OBDD for CCN/NDN.

1.1. Clarification of Problem and Contribution

In spite of the enormous benefits of the CCN/NDN technique, security challenges are some of its major concerns. These security challenges consist of the design of secured, efficient, and flexible schemes to secure cached data and also protecting data from illegal data modification, unauthorized access, as well as impersonated data dissemination and retrieval. The CP-ABE scheme is a newly preferable solution identified to achieve access control in CCN/NDN. This security scheme has special properties of encrypting with access policies. It also allows content to be self-protected when they are cached and can be accessed by many users.
However, most of these proposed CP-ABE AC schemes have some loopholes which make them unappealing. Some of these problems which we address in this paper are: (i) They are not flexible, i.e., they cannot support many access policy operations such as AND, OR, NOT, and threshold gates. (ii) They are inefficient, i.e., the computation and communication of secrete keys and ciphertext take a long time. (iii) They vulnerable quantum attacks (i.e., they are based on bilinear maps with pairing and are not quantum secured for polynomial time quantum algorithms.
Above all, most of the proposed secured CCN/NDN information sharing systems cannot secure cached contents from some entities such as trusted service providers and cache routers. Therefore, cache routers can conspire with some users to act maliciously when the contents are cached.
To address the challenges and limitations described above we CP-ABE AC scheme which has the following characteristics:
The proposed CP-ABE AC scheme from ideal lattice supports a reduced-OBDD access structure. Reduced-OBDD offers a compact and optimized access structure with fewer nodes and paths. Encryption and decryption are performed by waking on the path instead of using nodes. This means that it has a lower encryption and decryption computational time over rings.
The proposed scheme supports Boolean operations such as AND, OR and threshold gate. Also, it can support multiple subscribers of positive and negative attributes in strategy.
Our scheme is quantum secured for polynomial time quantum algorithms based on the assumption of R-LWE. Due to the algebraic construction from the ideal lattice, it is more effective than schemes based on ring learning LWE.
Our scheme has an improvement over the sample right algorithms with a stronger trapdoor and efficient sampling based on the discrete Gaussian in O ( l o g c n ) instead of Ω ( n 2 l o g 2 n ) .
Finally, we integrate the proposed reduced-OBDD CP-ABE over ring LWE with CCN/NDN platform and demonstrate how it could be used to provide an access control scheme to enable content to be self-secured against quantum attack.

1.2. Methods

The attribute based encryption scheme represents a promising proposal for content centric network. However, it has some drawbacks such as computational time and flexible access control expression. To deal with these problems and to ensure efficient a secured data sharing over CCN, the following methodologies were used.

1.2.1. Flexible and Expressive Access Policy

Our scheme supports reduced-OBDD: We constructed our access policy from reduced ordered binary decision diagram. This approach is simple but very efficient and expressive. Based on recursive Shannon theorem, f ( x 1 x 2 , , x n ) = x ¯ n · f ( 0 , x 1 , x 2 , x n ) + x 1 · f ( 0 , x 1 , x 2 , x n ) , we constructed a reduced binary decision diagram to represent our access structure. By adopting this approach, a Threshold access structure of five levels with sixty-three (63) nodes can be reduced to six (6) nodes which can perform the same function but in a more efficient way. This structure can support the threshold gate, Boolean operations such as AND, OR, NOT, and also, multiple subscribers of positive and negative attributes in the strategy. To deal with negative attributes, we modified the proposal in [17] by attaching the negative attributes to a default attribute.

1.2.2. Optimized Algorithms

Compact and optimized access policy: Reduced-OBDD offers a compact and optimized access structure with fewer nodes and links. However, instead of using the number of nodes for our encryption and decryption, we used the links between the nodes which have a direct positive impact on our encryption and decryption algorithms. The terminal nodes with constant meanings were deleted. This means that our scheme has less encryption and decryption computational time over rings.
Optimized sampling algorithm: Instead of using sample left algorithm used by various construction, we combined the theorem of MP12 [18] to construct an efficient trapdoor. We also design an optimized sampling algorithm to output an invertible matrix m . This is a significant method for delegating trapdoor and sample right algorithm with a trapdoor protocol. The matrix m is obtained from a discrete Gaussian execution time of O ( l o g c n ) with a trapdoor quality approximately 1.6 ( n log q ) 1 / 2 and matrix m dimension approximately 2 n log q . Hence, our scheme has an improved storage capacity as compared with other relevant schemes such as [19]. The performance analysis shows that the size of the master key, secret key, and the ciphertext expansion size is much lower. This is detailed in Table 1.

1.2.3. Efficient Secured Content Sharing Over CCN/NDN

The ABE scheme has a general computation loophole. To ensure an efficient secured content sharing system, we will adopt a hybrid technique by combining our proposed reduced-OBDD based ABE AC with asymmetric key encryption scheme. An asymmetric encryption scheme known to be efficient is used to encrypt the content needed by the consumer and the proposed reduced-OBDD CP-ABE AC scheme from lattice is used to encrypt the content policy which contains the password or the secret key and other relevant information about the content data to decrypt the content. The content policy is issued with a time value and periodic automatic update properties to ensure the management of our system, and also allows user’s features to be updated individually.

1.3. Organization

The remaining of the paper is organized as follows: In Section 2, we review some relevant related work. The preliminaries are discussed in Section 3. We demonstrate our access structure and our scheme in Section 4. The performance analysis of our scheme is presented in Section 5. The integration of our proposed scheme into CCN/NDN systems is discussed in Section 6, and this paper is concluded in Section 7.

2. Related Works

2.1. Encryption Access Control Schemes from Lattice

Lattice cryptography is considered to be the preferred cryptography system for quantum security due to its wide applicability [20] and its security proof is based on known lattice problems in the worst case of hardness. Lattices have since then achieved a lot of fame for constructing numerous diverse cryptography schemes. An efficient identity-based encryption (IBE) system from lattice was proposed by Agrawal et al. [21]. The authors of [22] proposed CP-ABE scheme lattices. Their scheme is flexible and supports (k, n) threshold access policies on Boolean attributes. Zhao and Gao [23] proposed the KP-ABE mechanism for the subclass circuit using a short size matrix secret key for the OR gate and proved to be secured against the chosen-plaintext attack in the selective model under the assumption of learning with error. Based on full-rank differences function, the authors of [24] proposed a large universe CP-ABE scheme to attain improvement in the expression of attributes and unbounded attribute space.
Unlike previous solutions, Nguyen et al. [25] presented a server-side revocable IBE scheme base on the LWE assumption. The re-encryption approach was used to allow smooth interaction between the server and the user as ensuring messages confidentiality. An efficient revocable ABE scheme was constructed by [26], their revocation of attributes and grants is based on a binary tree approach. A single random vector parameter was selected for nodes corresponding to attributes. To solve some open issues, a bonsai tree, which is a cryptography structure based on lattice, was proposed by David Cash [27]. In reference [28], the ABE scheme from LSSS based on lattices was proposed. This scheme eliminates the ranks and columns of the matrices to merge a preferred structure in the decryption stage. virtual encryption matrix in the key generation phase, which is reasonably dissimilar from the universal techniques in the present ABE schemes from lattice-based cryptography. Based on the LSSS matrix and from the lattice, an ABE mechanism was constructed using a distinct common lattice approach to execute the same task. However, the number of secret keys grows exponentially with the number of inputs which will cause a restriction to the initial parameters [29].
An efficient HIBE scheme with a new delegation mechanism was proposed by Agrawal et al. [19]. This technique does not increase the involved lattice’s dimensions. In [30], a flexible ABE from lattice for multi-authority was which support AND, OR, and threshold operations. They used optimized Gaussian sampling and trapdoor algorithms to achieve a remarkable efficiency with less storage capacity. Using a standard model, the authors of [31] proposed a lattice-based threshold hierarchical ABE scheme based on a lattice. Their scheme is secured against a selective attribute set and chosen-plaintext attacks under the LWE problem without random oracle. Meanwhile, they didn’t use the same attributes level.

2.2. Secured Content Centric Network (CCN/NDN)

One of the common ways of ensuring a secured content sharing on ICN is by access control approach. Information centric network systems allow inter network caches by a cached router which is presumed to be secured and honest. However, it is not always practical. Since content is cached in anywhere on the internet, content publishers have difficulties to control access to their own published content. A restricted named mechanism that restricts names to only legitimate consumers was proposed by [32]. This approach is not sufficient since the name of the content can be easily identified. To improve upon access control mechanisms in CCN (securing the content and its name) from unauthorized users, several mechanisms have been proposed, such as attribute encryption access, [33,34,35] proxy re-encryptions, and broadcast encryption access control schemes [36,37].
Attribute based encryption has gained popularity among other cryptographic approaches due to its special encryption properties based on policies. According to [38], the identity of legitimate users is considered as attribute set and base on that, the massage owner encrypts content to be shared based on some selected condition. Here, only users whose attributes match with that condition can extract the content for consumption. However, attribute-based encryption mechanisms need a trusted party to manage the system and regulate users’ attributes which are sometimes impractical.
In [39], we proposed an efficient CP-ABE scheme for IoT CCN based on ROBDD for IoT data sharing on CCN. This scheme has a better decryption stage and offers resistance to collision attacks. The efficiency of the proposed scheme is based on the efficiency of the ROBDD structure. From our performance analysis, this scheme achieved high efficiency in terms of key generations, encryption operation and decryption operations as compared to most of the existing CP-ABE schemes proposed for IoT CCN. However, our previous access control scheme is based on bilinear maps with high computational complexity and could not address the problem of quantum and post-quantum attacks.
The proposed proxy re-encryption and broadcast encryption mechanisms hide the data and its name from the nodes of the network which sends the content to the legitimate users. However, securing the name only is not enough since an attacker can pretend to express the same interest. However, a random approach can be used to randomize the original content with some noise so that the attacker cannot find the original content. However, this technique leads to communication overheads [40].
On the whole, the aforementioned mechanisms cannot secure the content from some entities, and cache routers can conspire with the users to act maliciously when the contents are cached. Moreover, all of these access control schemes for CCN/NDN are based on bilinear maps with pairing and are not quantum secured for polynomial time quantum algorithms.

3. Preliminaries

3.1. Lattice

Definition 1.
(Lattice [41]) Given B = [ b 1 | | b m ] m × m as m × m with a linearly independent column vectors b 1 , ,   b m m . The m-dimensional lattice Λ generated by B is the set.
Λ = ( B ) = { y m   s . t . s m ,       y = B s = i = 1 m s i b i } .
Now, we consider an integer lattice, where Λ belongs to the set of m . We denote the determinant of Λ as det ( Λ ) .
Definition 2.
([41]): For a prime q ,   A q n × m and A q n define.
Λ q ( A ) ~ = { e m   s . t .     s   q n   where   A T s = e ( mod   q ) }
Λ q ( A ) ~ = { e m   s . t .     A e = 0 ( mod   q ) }
Λ q u ( A ) ~ = { e m   s . t .     A e = u ( mod   q ) }
Note that, if 𝒹 Λ q u ( A ) , then Λ q u ( A ) = Λ q ( A ) + 𝒹 and therefore, 𝒹 Λ q u ( A ) is a shift of Λ q ( A ) .
Definition 3.
(An m-dimensional lattice [41]): An m-dimensional lattice is both an additive subgroup: ( o Λ , and x ,   x + y Λ for every, y Λ ) and discrete (every x has a neighbor in m where x is the only lattice point). The minimum distance of lattice Λ is the length of a shortest non-zero lattice vector λ 1 ( Λ ) : = m i n v \ { 0 } v , where v denote Euclidian norm. Generally, i t h successive minimum λ i   ( ) is the smallest r such that Λ has i   linearly independent vectors of the norm at most r .
Definition 4.
(Ideal lattice [41]): A lattice Λ Z n is an ideal lattice if there exists a ring R = [ x ] / f and ideal I R such that Λ is associated with I .
Definition 5.
(Gram-Schmidt norm of a basis [41]): Given G = ( g i ) i I as a finite basis and G ^ = ( g ^ i ) i I as Gram-Schmidt orthogonalization. The Gram–Schmidt norm G   is the value of
G ^ ~ = max i I g ^ i .
There are two relevant properties of Gram Schmidt dorm and its bases which are beneficial to the construction lattices. These are: (1) They are quick to compute (The Gram-Schmidt norm for a general lattice is obtained by conducting the Gram–Schmidt process to the basis of the lattice and compute the maximum length of the resultant vector). (2) Their size can be small (The size of the lattice which we compute Gaussian sampling and the sample of the private key size should be proportional to G ^ , where G is lattice basis). Therefore, it is significant that G ^ ~ = max i I   g ^ i should be small as possible. According to [18], a full rank set G in a lattice can be converted into T with an equally low Gram–Shmidt norm G ^ of G
Lamma 1.
([18], Lemma 7.1): Given Λ as an m-dimensional lattice, there is a deterministic polynomial-time algorithm that gives an arbitrary basis of and a full rank set of G = { g 1 , , g m } in , outputs a basis of T of satisfying T ^ G ^ and T G m / 2 .

3.2. Gaussian Sampling for a Ring

Definition 6.
(Gaussian function): Given m and m as a positive integer greater than zero and m dimensional matrix. Let σ   greater than zero and c m . A Gaussian-shape function ρ σ , c ( x ) on m is defined as ρ σ , c ( x ) = e x p ( π [ ( x c 2 ) / σ 2 ] ) . For a matrix , we define the discrete of ρ σ , c as ρ σ , c ( ) = x ρ σ , c ( x ) . The discrete Gaussian distribution over set as D , σ , c and then y , the discrete Gaussian distribution over is defined as:
D , σ , c   (   ) = ρ σ , c ( y ) / ρ σ , c ( ) .

3.3. Some Significant Algorithms

3.3.1. Algorithm Generation of Trapdoor

Theorem 1.
L a t t i c e T r a p G e n A l g   ( R ,   D ) ( e ^ ,   T e ^ ) . A probabilistic polynomial-time ( P P T ) algorithm in an existence accepts inputs of R Z q n × m , D Z q n × n , parameters q ,   n 1 , m = O ( l o g   q ) ,   w = n t , where t = l o g 2   q . ρ Z X is a polynomial with n   degree. The algorithm outputs ( e ^ ,   T e ^ ) . e ^ = ( e ^ 1 , e ^ 2 , e ^ u ) T = Z q n × m , statistically close to uniform. e ^ =   [ R | D P R T e ^ ] , Where Z q n × w , T e ^ Z q m × w and a small trapdoor bases for lattice Λ q ( A ρ T ) which satisfies L T e ^ ( n O ^ ) .

3.3.2. Algorithm for Preimage Sampling

Theorem 2.
P r e i m S a m p A l g ( e ^ ,   T e ^ ,   P , α , σ ) a ^ Z m . A P P T algorithm accepts inputs of e Z q n × m as a matrix, where q 2 and m 2 n   l o g   q , T e Z q m × m as the basis of a trapdoor for Λ q ( M ) , expected image and parameter for Gaussian is σ   O ( n log q ) and output a ^ Z m   that satisfies A a ^ = α   m o d   q . Based on P r e i m S a m p A l g ( M ,   T M ,   α , σ ) , a new preimage sampling algorithm over rings for G e n I d e a l S a m P r e i m A l g ( ) is constructed.
GenIdealSamPreimAlg ( e ^ , T e ^ , α , σ ) ( g ^ R ). The algorithm takes an input of e ^ R q m as a vector, T e ^ Z q m n × m n trapdoor of Λ q ( A ρ T ( e ^ ) ) , α R q as expected image and a parameter of Gaussian σ > T e ^ . ω ( log m ) and output g ^ R q m that satisfies e ^ g ^ = α . Here, we have:
  • Encode:
    E = Λ q ( A ρ T ( e ^ ) ) Z q n × m n
  • t =   P r e i m S a m p A l g ( E , T e ^ , P ,   α ,   σ ) Z q n × m n
  • g ^ = M a p 1 ( t ) R q m ,   g ^ ~ D Z m n , σ

3.4. Decision R-LWE Problem

Init: The adversary chooses a specific access structure and sends to the Challenger
Given n as security parameter, let d and q be an integer that depends on n . Where f ( x ) = ( x n + 1 ) and R q = R / q R , let R = Z [ x ] / ( f ) . Given a distribution χ over R q depending on n , the Decision learning with error problem instance consist of access to an unspecified challenge oracle o , either a noisy pseudo-random sampler O s , for random secrete key S R q ; or a truly random sampler O $ . The Decision R-LWE problem is to distinguish the sampling between O s and O $ , which perform respectively as follows;
O s : Given a uniform distribution constant invariant value across invocation as S Z q n , a new sample x i Z q from χ and a uniform sample u Z q n . Output a sample of form as ( u i , v i = u i . u i T S + x i ) Z q n × Z q .
O $ : An exact uniform output sample ( u , v ) drawn from Z q n × Z q .
The aim of the decision ring-LWE problems is to allow repeated quarries to be sent to the challenge oracle O . The Attacker’s algorithm decides the decision ring-learning with error problem if | Pr [ A t t a c k e r o s = 1 ] Pr [ A t t a c k e r o $ = 1 ] | is non-negligible random value for s Z q n . Given x defining

3.5. Access Structure

Assuming P = { p 1 , p 2 , p n } is a set of parties. Let 2 p represent subsets contained in { p 1 , p 2 , p n }   and 2 p . The collection of S T 2 P = { p 1 , p 2 , p n }   is known as an access structure. The set contains in S T 2 P = { p 1 , p 2 , p n }   are called authorize sets and sets S T 2 P = { p 1 , p 2 , p n }   are called unauthorized sets. The access is monotone if f o r   a l l   Q ,   A :   i f   A S T and A Q then Q S T .

3.6. Reduced Ordered Decision Diagram (Reduced-OBDD)

Reduced-OBDD is based on a fixed ordering of variables and has the additional property of being reduced. This means that it is irredundant, unique, and recovers the important canonicity property. Thus, for a fixed variable ordering, each Boolean function has a canonical (unique) representation as a Reduce-OBDD and checking if they are of equal or the same successors. If there are two distinct nodes u and v have the same variable name and low and high successor, i.e., if v a r ( u ) = v a r ( v ) ,   l o w ( u )   =   l o w ( v ) and h i g h ( u )   =   h i g h ( v ) , implies u   =   v and no variable node u has identical low and high successor, i.e., l o w ( u )   a n d   h i g h ( u ) .

3.7. Ciphertext-Policy Attribute Base Encryption Model

The CP-ABE basic algorithms include the following four fundamental operations (Setup, Encrypt, KeyGen, Decrypt).
Setup ( λ ): This algorithm takes security parameter λ as input and outputs the public key PK and master key MK.
Encrypt (PK, MK, A): This algorithm takes public parameter PK, plaintext M, and access policy A, to output Ciphertext CT
KeyGen (MK, S): The algorithm takes masters key MK and attribute set S as input and outputs the secret key SK.
Decrypt (PK, CT, SP): This algorithm takes in public parameter PK, ciphertext CT, and a secret key SK as input and outputs the message M

3.8. Selective Set Model

A CP-ABE is secured in a selective -set model if the PP adversary has at most a negligible advantage in the game below.
Initial: The adversary Adv. declares the attribute set AS which he wants to challenge.
Setup: The setup algorithm is run by the challenger and sends the Pk to the Adv.
Phase 1: The Adv. is allowed to make a private request of its choice as long as AS A
Challenge: The Adv. sends two messages of equal length, M 0 and M 1 the challenger.
The challenger randomly selects b and encrypt M b using A . The ciphertext is sent to the Adv.
Phase 2: Repeat Phase 1.
Guess: Adv. output a guesses b 1 of b . The advantage in the security game is defined as A d v = | Pr [ b = b 1 ] 1 / 2

4. Our Construction

4.1. Constructing Boolean Function of an Access Policy

We suppose the access policy of a Boolean function is f ( u 0 , u 1 , u n 1 ) . Where ( 0 i n 1 ) and n as the whole number of attributes, denotes a sequential predefined access policy number which is represented as u ( 0 i n 1 ) . The function f ( u 0 , u 1 u n 1 ) is converted between fundamental logical operations such as AND, OR, and NOT.
An operation is considered as threshold gate T ( t , n ) if and only if t   attributes of a subset n   can complete the operation successfully. To be able to decrypt a message in a security system, a user must be able to complete some specific threshold operations. To construct a Boolean function of a given T ( t , n N ) , Where N is the attribute set, extract all the subset of N with t attributes and separately compute the whole number of subsets C ( n , t ) = C o m 1 , C o m 2 C o m C ( n , t ) by using permutation and combination. This is followed by the construction of a separate set level conjugate for each subset C ( n , t ) = C o n 1 ,   C o n 2 C o n ( n , t ) . Finally, obtain the Boolean function of f ( t , n ) = i = 1 C ( n , t ) C o n i by a disjunctive operation on C ( n , t ) .

4.2. Reduced- OBDD Access Structure Construction

To construct reduced-OBDD for Boolean function f ( x 1 x 2 x n ) , we use the recursive algorithm (Algorithms 1 and 2) based on the expansion theorem of Shannon. To obtain a specific and unique reduced-OBDD, the definition of the variable ordering must be specified since different ordering results to different kinds of diagrams. Given a logic function in terms of selected inputs and the required input for logic synthesis using a multiplexer. For any Boolean function f ( x 1 x 2 x n ) can be expressed as f ( x 1 x 2 , , x n ) = x ¯ n · f ( 0 , x 1 , x 2 , x n ) + x 1 · f ( 0 , x 1 , x 2 , x n ) . The process based on Shannon’s expansion theorem is described as follows: Let N = { 0 ,   1 , 2 , n } be node numbers where the low terminal node is 0   and the high terminal node is 1 . However, the terminal nodes have specific meanings and their attributes may not be considered. The variable ordering Ω related to N is Ω = ( x 0 < , x 2 < x 3 < < x n ) . The table, Table 1 is the inverse of the table Table 2 which stores the reduced-OBDD. In Algorithm 1, Table 1 is initialized to be ones (1) and zeros (0) lookup function Table 1: ( w , i d ,   l o w ,   h i g h ) maps node w   to its attributes v a r ( w ) i d , l o w ( w ) l o w and h i g h ( w ) h i g h . To construct an ordered binary decision diagram from the id, low, and high if there must be an existence of the node with variable key v a r ( w ) i d , l o w ( w ) l o w , and h i g h ( w ) h i g h . In Algorithm 2, Table 2 is initialized to be empty and find out if there exist of id, low and high in.
Algorithm 1 Build Redeuced-OBDD
1: function BUILD [Table 1, Table 2](id, low, high)
2:  if low== high then
3:   return low
4:  end if
5:  If element (Table 2, id, low, high) then
6:   return lookup(Table 2, id, low, high)
7:  end if
8:  If low<> high then
9:    w=insert(Table 1, ID, low, high)
10:    return insert(Table 2, id, low, high)
11:  end if
12: end function
Algorithm 2 Construct Reduced-OBDD
1: Function CONSTRUCT [Table 1, Table 2](t, i)
2:   if i > n then
3:     if t== false then
4:      return 0
5:     end if
6:     if t == true then
7:      return 1
8:     end if
9:   end if
10:  if i ! > n then
11:      return q0= CONSTRUCT(t[0/xi], i+1)
12:      return q1= CONSTRUCT (t[1/xi], i+1)
13:      return BUILD(t, i)
14:   end if
15: end function
Use the lookup function to find Table 2 (id, low, high) and use insert function to map (id, low, high) to w and assign node serial w with attributes id, high, and low. The algorithm references the attributes of serial w in Table 1 with in Table 2 by recalling the BUILD function in Algorithm 1. Let Table 2: ( i d ,   l o w ,   h i g h ) w maps attributes ( i d ,   l o w ,   h i g h ) to w   such that for all variables nodes w , Table 1 ( w ) ( i d ,   l o w , h i g h ) if Table 2 (id, low, high) w . After the construction of all nodes N d of the reduced-OBDD, the final expression is obtained as R e d u c e d   O B D D =   N d i d i , where i denote all the attributes in the structure and i d is the set containing the serial numbers of non-leaf nodes. The final table of N d i d i ( w ,   i d ,   h i g h ,   l o w )   contains the id of the current node i d , the i d of the attribute in the current node i , the i d of the high branch h i g h and the id of the low branch l o w . Hence, the access structure τ s = { N d V 1 f ,   N d V 2 e ,   N d V 3 ,   d N d 4 c ,   N d V 5 b ,   N d V 6 a }

4.3. Satisfying Reduced-OBDD Structure

Let T   be access structure, attributes set be A s and let the valid path be the path from the root node to the terminal ( 1 ) be V x V x V x ,   ( 1 ) as shown in Figure 2. Based on node values, a recursive comparison is conducted, starting from the root nodes to the leaf nodes. Thus, for a non-leaf node with an attribute of i A s   is 1, send to the high branch node, otherwise send to the low branch node. This process is repeated until it reaches the leaf node. The set A s satisfied τ if the terminal node is (1). Otherwise, outputs fail. The attributes set A s must satisfy the access structure T (i.e., A s T ) when the leaf node is lastly reached.

4.4. Construction Of Reduced-OBDD ABE AC From Lattice

Our proposed CP-ABE scheme supports positive a i and negative ¬ a i attributes. In a brief statement, we have a i _ .   ( a i   or   ¬ a i ) where a i _ is a default value. Let U represent attribute sent with serial numbers, our algorithms are described below.
S e t u p   ( γ , U ): The algorithm is given an input of γ and U as security parameter and attributes set respectively. Denoting P Z q n × w as a public parameter, let D Z q n × n be matrix. Randomly select R Z q n × m ¯ and trapdoor T A Z q m ¯ × w ^ with a size of less than or equal to m . w ( log q ) . Execute the LatticeTrapGenAlg Algorithm to generate a random matrix A i = [ R | DP RT A i ] = A i 0 R i , j , where A i = A i R i , j 1 is inverse of A i . Randomly choose a uniform vector α T Z q n and finally, output the public parameter and the masters key as:
P P = { α , { A i , } i = 1 U }
M K = { T A i } i = 1 U
KeyGen ( M K ,   A s ) ( S K ) : Given master key MK and the set of users attribute A s = { a 0 ,   a 1 , a 2 , , a i } . Set any a i which doesn’t belong to A s as a default value ¬ a i and execute the key generation process is as follows:
Define y a i _ for any a i A s ; if a i A s     a i _ = a i and let y a i _ = y a else, set y a i _ = y a
Generate A i , j = A i R i j 1 and a trapdoor matrix T A Z q m ¯ + w for Λ 1 q ( A i , j ) and a secrete share α i for each a i .
Execute GenIdealSamPreimAlg   ( A , T A i j ,   P , α i , σ , ) to output d i , j Z q m ¯ + v =   Z q m , where α i = A i , j d i , j .
Set the private key as
S K u = { ( d i , j ) a i , j   A s }
E n c r y p t i o n ( P P ,   M ,   T ) ( C T ) : The algorithm is given public parameter P P , the message M , and the access structure T = N o d e i d i   | id ID ,   i I . Let ( Y , Y ) be a valid and invalid path. Denote the valid paths as V p = V 1 , V 2 , , V y . The information of the attributes in the path V y is y i and the ciphertext of y is denoted as C V y = i I y i . s = s i . Where s is a random parameter and y i is associated with the set of attributes i in T   and s i is the secret to be shared. The relationship between i and ( Y , Y ) is shown in Figure 3.
Randomly generate parameter s R q and error terms θ ,   θ i , j X .
The encryption algorithm follows the following steps:
C i , j ( l ) = A i , j T . s i + θ i , j   mod   q
C = α T s + θ + m q 2 mod   q
Then, output ciphertext as C T = ( C , { C i , j ( l ) } i , j   T ) .
D e c r y p t i o n   ( C T ,   P P ,   S K )   ( M ) : The decryption algorithm takes an input of ciphertext (CT), public parameter (PP), and secret key (SK). Perform recursive Algorithm 3. The algorithm defines the root node as the current node and extracts the current i d and the i n d e x . The algorithm conducts recursive operations based on a high branch node and the low branch node. If any node is a non-leaf node, the algorithm sets it as a current node. The process continues until it reaches the leaf nodes. Based on the high branch node: if the h i g h   b r a n c h   n o d e   i s   a   n o n l e a f   n o d e , set it as a current node; else if the high branch of the node is the l o w   l e a f   n o d e   ( 0 ) , the algorithm is aborted. Otherwise, the algorithm stores the information in the path next to the leaf node 1. Based on the low branch node, if the low branch node is a non-leaf node, set it as current node; else if the l o w   b r a n c h   n o d e   i s   l e a f   n o d e   ( 0 ) , the algorithm is aborted; else if the node on the high branch node Based on the high branch node low branch is the high leaf node, the algorithm stores the path to the leaf node (1). Define σ ¯ i , j = σ i , j w ^ ( log m ) as Gaussian parameter and continue with the below computation recursively.
Algorithm 3 Decryption Process
1: look for the node with serial number 2
2: Define it as the new node
3: Extract the node details N o d e i d i include in the node
4:  if i s e t   i = i then
5:   seek the high-branch-node of the new node based on the high order
6:   if high-branch -= = 0 then
7:    end the process
8:   end if
9:    if high-branch = = 1 then
10:     store the root 1 path
11:    end if
12:     if high-branch ==non-leaf-node then
13:      go to line 2
14:    end if
15:  end if
16:  if i s e t   = ¬ i   i s e t then
17:   Seek the low-branch-node of the new node based on the low order
18:    if low-branch == 0 then
19     end the process
20:    end if
21:     if low-branch = =1 then
22:      store the root 1 then
23:     end if
24:     if low-branch = = non-leaf-node then
25:      go to line 2
26:     end if
27:   end if
Compute Lagrange coefficients L I , as a i , j A s L I s I = s ( m o d   q ) and set
M = C a i , j A s L I d i , j T c i , j ( l )
If | M = q / 2 | < q / 4 , the system output 1, else output 0

4.5. Correctness and Security Proof

In this section, we provide the security proof and the performance achieved by this work.

4.5.1. Correctness

In order to decrypt C T = ( C , { C i } i τ )   we have
M = C a i , j A s L l d i , j T c i , j ( l ) = α T s + θ + m q 2 a i , j A s L l d i , j T . (   A   i , j T . s i + θ i , j ) = α T s + θ + m q 2 a i , j A s L l d i , j T . (   A   i , j T . s i ) + a i , j A s L l d i , j T . θ i , j ) = A i , j d i , j . s + θ + m q 2 a i , j A s L l d i , j T . (   A   i , j T . s i ) + a i , j A s L l d i , j T . θ i , j )   = M q / 2 + ( θ a i , j A s L l d i , j T θ i , j )
where the error term is: ( θ a i , j A s L l | d i , j T θ i , j | ) .
It is required to choose the parameters such that considering the overwhelming probability (w.h.p) of
|   θ i = 1 I L i a i , j A s L l d i , j T θ i , j | | θ | + i = 1 I L i a i , j A s L l | d i , j T θ i , j | .
| d i , j T | σ ¯ i , j m w ^ ( log m ) with w.h.p, we have by PreimSampAlg   ( e ^ , T e ^ ,   P , α , σ ) a ^ such that,
| d i , j T x i , j | is bounded by w.h.p by | d i , j T x i , j | q α i , j σ i m v ( log m ) + σ i , j m 3 2 w ^ ( log m ) .
For our trapdoor operation, we choose m 2 n log q to ensure correctness which is less than q 5 w.h.p and set α i , j <   q v ( log m ) +   q σ i , j m w ^ ( l o g   m ) ] 1
q > σ i , j m 3 2   w ^ ( log m )

4.5.2. Security Proof

Theorem 3.
If the ( Z q ,   n , ψ α ) L W E notion holds, then with a negligible advantage of ε , there is no polynomial-time adversary A . that can selectively win the security game of our system.
Proof :
Assuming there is PPT A attack on the proposed efficiently secured scheme with an advantage of ε > 0 , then there exists an algorithm that can distinguish ( Z q ,   n , ψ α ) L W E problem with an advantage of ε . The problem of LWE is provided as sample oracle O , which can be really random O $ or noisy pseudo-random for some secret key S Z p n . The challenger’s algorithm S i m simulates attack environment and exploits A to which oracle O   is given.
Initialize: Adversary A , sends the access structure τ * = { N d i d I D i I } to the challenger’s Simulator .
Instance: makes a request to the oracle and the oracle responds by sending new pairs of ( ϖ 1 , 𝓿 1 ) Z q n × Z q , where i {   1 , 2 , , I } to obtain m 1 I s i + 1 . Thus
{ ( ϖ 1 , 𝓿 1 ) }
{ ( ϖ 1 1 ,   𝓿 1 1 ) ,   ( ϖ 1 2 ,   𝓿 1 2 ) ,   ,   ( ϖ 1 m ,   𝓿 1 m ) }
{ ( ϖ 2 1 ,   𝓿 2 1 ) ,   ( ϖ 2 2 ,   𝓿 2 2 ) ,   ,   ( ϖ 2 m ,   𝓿 2 m ) }
{ ( ϖ 1 I s i + 1 .   1 ,   𝓿 1 I s i + 1 .   1 ) ,   ( ϖ 1 I s i + 1 .   2 ,   𝓿 1 I s i + 1 .   2 ) ,   ,
( ϖ 1 I s i + 1 .   m ,   𝓿 1 I s i + 1 .   m ) }
Target: A makes an announcement of the set of attributes that it is intended to challenge
Setup: The public parameters are generated by . Let’s denote 𝓿 as ϖ 1 .
For A i , j A s * , generate
A i , j = ( ϖ p = 1 I s p + j 1 ,   ϖ p = 1 I s p + j 2 , ,   ϖ p = 1 I s p + j m ) where i = ( 1 , ,   I ) and j = ( 1 , ,   s I )
{ ( ϖ p = 1 i s p + j 1 ,   𝓿 p = 1 i s p + j 1 ) ,   ( ϖ p = 1 i s p + j 2 ,   𝓿 p = 1 i s p + j 2 ) ,   ,
( ϖ p = 1 i s p + j m ,   𝓿 p = 1 i s p + j m ) }
A i 0 = j = 1 s i A i , j
outputs a matrix for each a i , j where attributes a i , j A s * , by running a trapdoor algorithm to generate a random matrix R i , j * Z q m × m and the computes
A i , j * = A i R i , j *
Using A i , j as an input, generates a random matrix R i , j * Z q m × m and a trapdoor T A i j * Z q m ¯ × u for Λ q ( A i , j * )
Finally, outputs A i = A i 0 R i , j and set P P = { ( A i ) i A s ,   α } to the A .
Phase 1: A sends a private key request for a set of attributes A G * = { a s 1 * , a 2 * , , a j * } , where A s * T     ai .
computes α i   share of α for each a i .   For any legitimate path, there must exist an attributes a j   A I satisfying a j A s *   a j _ = ¬ a j or   a j A s *   a j _ = a j . Generally, A attributes satisfy the condition a j AS *   a j _ = a j and each attribute is apportioned as follows: a j A s * a j = a j , y _ a j = m · y a j ; for a i a j .
runs the key generation algorithm to generate A ij = A i R ij 1 and a trapdoor matrix T A Z q m ¯ + w for Λ 1 q ( A * ij ) and invokes GenIdealSamPreimAlg ( A , T A ij ,   P , α i , σ , ) function to output d i , j Z q m ¯ + v =   Z q m and set the private key of a j * as SK u = { ( d i , j ) ai , j   A s } to the A
Challenge: A agrees to accept the challenge and submits challenge message ( m 0 , m 1 ) { 0 , 1 } with the attribute set a j * and flips a coin to generate randomly m ( 0 , 1 ) . generates a ciphertext as C T * = ( C 0 * , { C i , j ( i ) * } , τ ) to A where:
C 0 * = α T s + θ + m q 2 mod   q
C i , j ( i ) * = A i , j T . s i + θ i , j   mod   q .
It is clear that the encrypted message C T * is valid encryption of m under the access policy of A s if O = O $ . The encrypted message is uniform in ( Z p , Z q m ) and O = O $ ( 𝓿 , 𝓿 i , j ) is uniform in ( Z p , Z q m ) .
Phase 2: A continues by repeating Phase 1
Decision: A outputs a guess m for m . If m = m . The challenger considered the samples O to be O s sample, else it guesses them as O $ samples.
Assuming the adversary A can correctly guess m with a probability of at least 1 / 2   +   ε . Then A can make a decision of the decision ring-LWE problem with an advantage of
( 1 2 ) P r o b . [ m = m | ( w , u ) O s ] + ( 1 2 ) P r o b . [ m = m | ( w , u ) O $ ] = ( 1 2 ) × ( 1 2 + ε ) + ( 1 2 ) × ( 1 2 ) = 1 2 ε

5. Performance Analysis

5.1. Complexity Analysis

The complexity analysis of our scheme is based on the performance of the Boolean operations, the factors that affect the communication time and the factors affecting the execution time. The complexity of the Boolean operations depends on the size of the reduced-OBDD. For a Boolean circuit of 1   o u t o f   n input bit (OR gates) or n o u t o f n input bit (AND gates,) designed as an output gate, the circuit size of the Boolean function f is the same as the size of the reduced-OBDD structure. Also, the complexity of the reduced-OBDD Boolean function is equal to the reduced depth of Boolean function f . For the function   f 1 ( w 0 ,   w 1 ,   w 2 ,   w 3 ) = w 0 + w 1 w 2 + w 1 w 3 + w 2 w 3 with ordering π :   w 0 <   w 1 <   w 2 < w 3 , the size of the reduced-OBDD is 2 n . This could either be linear or exponential depending on the variable ordering. The complexity of the Boolean function operations also depends on the number of nodes in the reduced-OBDD. That is to say, for the AND gate, the various operations of our scheme are expressed as n o u t o f n threshold while the OR gate and NOT gate are expressed as 1 o u t o f n threshold. The Boolean operation considers all the nodes of the reduced-OBDD with the complexity of O ( n ) , where n is the number of nodes in the reduced-OBDD. To achieve a better runtime, we deleted the leaf nodes which have specific meanings.
We also improved on the execution and communication time, by reducing some parameters of our scheme such as the size of the trapdoor, the public parameters, the master key size, the secret key size, and the ciphertext. The size of the matrix m is reduced to m 2 n log q to output a reduced and better trapdoor. This implies a reduction in storage and communication cost. The size of the secret key depends on the end user’s attributes and the size of the matrix column. The size of our public parameter is smaller due to the small lattice size.
Hence, the complexity of our key generation and decryption algorithm is O ( 1 ) , . The execution time of the encryption, decryption, and the resulting ciphertext relates to the number of the legitimate paths in the reduced-OBDD instead of the nodes which directly improve the execution, storage and sharing times

5.2. Discussion of Simulated Result

In this section, we compare our scheme with some relevant existing schemes. The implementation of this work was conducted on an Intel i7-8700 processor at 2.53 GHz and 8GB memory running Windows 10 operating system of 64 bits. Our scheme was simulated with PALISADE library 1.3 on C++ [42].
The factors considered in the implementation result are execution time and storage capacity of ciphertext, key generation, encryption, and decryption.
Table 1 summarizes the comparison analysis of our proposed scheme with other schemes in terms of key generation, encryption and decryption operation times. The parameters were set as follows: lattice base 1024, 80-bit security, modulus as l o g 2   q = 24 , the attribute universe, U was set as 100 , and the sample of attributes used in our encryption was set as l = 10 ,   20 ,   30 ,   40   and   50 . In our scheme, for a ciphertext with 50 attributes, the key generation, and the encryption and decryption operations were completed at 89.8 ,   33.59 and 1.29   m i l l i s e c o n d s respectively. Although our key generation was a bit slower, the execution time of our scheme had a better performance in encryption and decryption operations than the schemes in [24,28,31].
Table 1. Comparing the execution time of some related works ( m s )
Table 1. Comparing the execution time of some related works ( m s )
l = ( 10 / 20 / 30 / 40 / 50 )
l = ( 10 / 20 / 30 / 40 / 50 / )
l = ( 10 / 20 / 30 / 40 / 50 )
[28](57.6/69.7/78.9/ 91.1/99.8)(16.13/21.32/27.39/33.91/36.12)(0.79/0.90/1.38/1.58/1.79)
[24](65.6/74.1/87.3/101.8/111.9) (18.98/24.58/29.47/31.22/41.99)(0.80/1.543/1.69/ 1.81/1.90)
ours(51.6/62.7/ 70.8/82.08/89.8)(14.51/19.81/24.81/29.99/33.59)(0.51/0.82/1.11/1.17/1.29)
The efficiency of our encryption and decryption operations is mainly due to the efficiency of our access structure, the choice of our trapdoor and the discrete Gaussian sampling approach. Our discrete sampling is based on the sample performance in O ( l o g c n ) times but not Ω ( n 2 l o g 2 n ) times which applied in most schemes. Also, the trapdoor algorithm used to generate the matrix R Z m × m is efficient which directly improves the system execution time.
Table 2 compares the storage capacity, supported access structures and their operations. The above criteria were used to compare our scheme with three other related schemes in [24,28,31]. Our storage capacity analysis was based on the size of the public parameters P P , secrete key size S K , and the expansion of the ciphertext.
Table 2. Relevant related schemes in terms of their access structures, operations and capacity analysis.
Table 2. Relevant related schemes in terms of their access structures, operations and capacity analysis.
OperationPP sizeMK SizeSK SizeCiphertext Size
[28]LSSS matrixAND, OR, Threshold ( s n m + n m + n )   l o g   q s m 2 l o g q [ ( s + 1 ) m ] 2 ( s + 1 ) m   l o g q
[31]Threshold gateThreshold ( 2 n m + n )   l o g q 2 s n m 2 l o g q m 2 d 2 l o g   q + m U ( d m A s + 1 ) l o g q
[24]Threshold gateThreshold, AND 3 n m + n + s n ) l o g q m 2 l o g q       2 m U ( 2 m A s + 1 ) l o g q
oursReduce-OBDDAND, OR, Threshold ( s m n + n ) l o g q m 2 l o g q m U     ( m A s + 1 ) l o g q
The following notations were used in this work: U is the initial or universe attributes, A s is the number of attributes in the ciphertext, n × m matrix which relates to A s , s secrete share for each A s and d   is the depth of the attributes. The public parameters P P of [24,28,31] are very long as compared to ours of ( s m n + n ) log q . The public parameters of the other schemes are not linearly related to the system’s number of attributes. However, they are related to the parameters of the lattice which results in the high storage size. The master key M K and the secrete key sizes of [28,31] are longer than the other schemes. The schemes in [28,31] are based on the sample left approach therefore, their secret keys are related to the number of users’ attributes and the cascaded matrix column. In [31], the ciphertext and the key size relate to the number of users, matrix column, and the depth of the attribute hierarchy.
In terms of access structures and their operations, the policies of the schemes in [24,31] are not flexible and therefore do not support a flexible and fine-grain access policy. They are based on threshold gates. The scheme in [31] supports only threshold operation, [24] supports threshold and AND operations whilst the scheme in [28] supports AND, OR and threshold operation which a bit flexible in terms of an access policy expression. In addition to supporting AND, OR, and threshold operations, our scheme also supports negative and positive attributes making it more flexible as compared to the others. Whilst our scheme is based on a reduced ordered binary decision diagram access structure which gives an efficient access policy expression without redundancy, [28] is based on the LSSS matrix without a detailed explanation of how the expression of access policy was conducted.
Our scheme is practical with respect to storage capacity, execution time and is secured against quantum attacks due to the choice of an optimized access structure for our access policy expression, lower dimensional size of lattice, and efficient trapdoor approach used.

6. Integrating Lattice Based CP-ABE AC with CCN/NDN

This section entails details of the key exchange and the content sharing protocols. To ensure an efficient content sharing system, a hybrid technique is used. An asymmetric encryption scheme, known to be efficient is used to encrypt the content to be shared whiles the lattice CP-ABE AC scheme is used to encrypt the manifest or policy that contains the password or the key to decrypt the content.

6.1. System Model

The entities of our system and their description are introduced below:
Content Data Publisher (CDP): This can be the owner of the content or a trusted person on behalf of the data owner. He designs access policies, encrypts data and publishes them on the cloud in the ICN approach.
Content Centric Server (CCS): This is the cloud server responsible for content storage and user authentication. The content and the content policy are stored on the CCS in the CCN approach.
Content Data (CD): This is the private information encrypted by the owner and can only be accessed and used by legitimate users. This is stored in the CCN approach and can be accessed by legitimate users from any location
A trusted service provider (TSP): The service provider is a trusted authority responsible for key generation encryption and decryption keys for the publisher and the user. This authority runs two main algorithms:
Asymmetric encryption algorithm, which is used for the encryption and the decryption of the content
Lattice CP-ABE AC algorithm, which is used to encrypt the content policy which contains the password used to decrypt the content data
Content users (CU): These are prospective authorized content users who can access content from anywhere.
Content Policy (CP): We describe the data manifest which stores the information about the content as content policy. This stores the decryption key of the content. It is encrypted with the key which is associated with the user’s attribute. The user can obtain the decryption key if his attributes match with the policy enforced on the content.

6.2. Our Proposed Secured Information Sharing Scenario

Figure 4 demonstrates a secured information sharing system. In this system, communication is based on one to many information sharing; that is, a publisher and many content users of the same interest and subscription. The main aim of the system is to protect and enforce access control policy on sharing content in the CCN approach so that only users whose properties match with the policy can effectively access and use the content.
TSP generates two pairs of keys to the CU and CDP as follows:
The TSP generates a pair of keys { P K ,   S K } by running K e y G e n ( ) in Section 4 to the user upon registration. The user installs the secrete key S K on his device and sends { P K ,   I D ) to the Publisher.
TSP runs K e y G e n ( a ) to generate a pair of keys { P P K ,   P S K } , and a hashed code of one of the users I D = { H ( I D ) } to the C D P . Let a R q be a uniformly random value and r 1 , r 2 R q be a sample from distribution X . The TSP generates p = r 1 a · r 2 R q and outputs the public key P P K and secret keys P S K as ( a , p ) and r 2 respectively.The keys generated to users have time validation and automatic key update property, so users will not receive any update once their keys expire or compromised. When the CDP recieves { P P K ,   P S K , H ( I D ) } from the TSP and { P K ,   I D }   from the CU, he authentics the CU by running a hash function of the ID and compares it with the hash codes, I D = { H ( I D ) } received from the TSP.
The CP then performs two main encryption processes.
CDP selects key pairs, { P P K ,   P S K } and parameters, θ 0 , θ 1 , θ 2 R q . He runs the encryption algorithm E n c ( P P K ,   E ( C D ) ) , where E ( C D ) is the encoded CD and set C C D = ( C 1 , C 2 ) = ( a · θ 0 + θ 1 ,   p θ 1 + θ 2 + E ( C D ) ) .
The CDP runs the encryption algorithm E n c r y p t i o n ( P P ,   M = P S K ,   A S ) ( C T )   in Section 4 and the broadcasts ( C C D ) and C T to the cloud server. Note that ( C C D ) is the encrypted content data CD which CUs are interested and CT is the encrypted content policy which contains some relevant information about the CD and secrete key to or password to decrypt ( C C D ) .
The CU on the other side conduct the following processes:
The CU runs the decryption ( C T ,   P P ,   S K )     ( P S K ) algorithm in Section 4 to obtain the secret key P S K . To obtain P S K , the user’s attributes ( S K ) must satisfy ( P P ) .
The CU runs D e c ( C C D , P S K ) to output m = C 1 · r 1 + C 2 R q to obtain m from m .

6.3. Key Exchange Protocol, Encryption and Decryption Model

Figure 5 shows the key exchange process of our and Figure 6 represents content dissemination and retrieval process of our system. In Figure 5, the TSP generates ( P S K ,   P P K ) based on an asymmetric encryption scheme and sends it to the CDP through a secured key exchange protocol.
To the CU, the T S P generates a pair of keys ( P K ,   S K ) based on CU’s attributes. When CU receives ( P K ,   S K ) , he installs S K on his device and sends P K to the content data publisher. At the end of the key exchange protocol, the user holds a pair of keys which reflects his attributes and the C D P holds three keys which consist of the public key of users ( P K ) and a pair of asymmetric keys ( P P K ,   P S K ) .  
The encryption and decryption process in Figure 6 consists of the following steps:
The content data publisher firstly selects ( P P K ,   P S K ) pair of keys and encrypt the content E n c ( C D , P P K )
Secondly, the CDP encrypts the content policy E n c ( C P , P K ) by taking into consideration the attribute set and the updated policy. The content policy contains the secrete key and some information about the content data, including the hash code of the content data. The CDP encrypts content data E n c ( C D )   and content policy E n c ( C P ) and disseminates them unto the cloud server
When the C U   sends for request, the server verifies him and when there is a match between his subscription and the policy, the server replies with the content policy E n c ( C P ) and the content data C C D = E n c ( C D ) sequentially. The CU runs two main decryption algorithm which consists of the following.
Firstly, the user runs the decryption algorithm D e c r y p t ( ( C T = E n c ( C P ) ,   S K ) in Section 4 to extract the secrete kay P S K using the secret key S K associated with his attribute.
Finally, using P S K , the user extracts his interested content data C D by running the decryption D e c ( ( C D , P P K ) P S K ) C D . The user can obtain and utilize the message if and only if his attributes match with the policy enforced on the content policy to obtain the secret key P S K for decryption of the Content data.

6.4. Security Analysis of our System

This section looks at the security analysis of our proposed system. This is based on the privacy of the content and users’ authentication

6.4.1. Privacy

The proposed system consists of four actors, CU, CP, cloud sever and TSP. After the CU receives his pair of keys ( P K ,   S K ) from the TSP, he/she sends P K and one of his I D s   =   H ( I D ) , to the CP. The CP authenticates the CU and encrypts the content C D with the public key P P K and then lock up the secret key P S K with the public key P K received from the CU. The CP publishes the encrypted content and the encrypted secret key to the cloud server in a content centric approach without leaking any information about the CD and P S K . Here, the cloud server cannot learn anything about the CD and except the encrypted content and the encrypted manifest which contains the key PSK. The CU also sends the public key to the CP without disclosing his private keys. So, if the server or any of the users are malicious, none of them can collude to decrypt the content policy to obtain PSK to decrypt the content. Moreover, an attacker cannot eavesdrop the CU’s credentials or pretends to be CP due to the security primitives of the basic scheme described in Section 4.4. However, CP conspiring with the TSP can obtain users’ credentials.

6.4.2. Authentication

The content policy or manifest contains the hash code of the content. This enables the user to verify the authenticity of the message and the CP. Hence, the integrity of the content and the legitimacy of the content publisher is assured.

7. Conclusions

We constructed an efficient and secured latticed based reduced-OBDD CP-ABE access control scheme for content cached on CCN/NDN. Our scheme is based on the lattice and resistant to quantum attacks without exponential and pairing costs. An optimized access structure was employed to improve on the efficiency of the access control and can support Boolean operations such as AND, OR, NOT, and threshold gates. Our proposed scheme also used an optimized trapdoor and Gaussian sampling algorithm for the generation of matrices for public parameters. This resulted in a reduced key and ciphertext size, as well as a better execution time for key generation, encryption and decryption operations. Our implementation results show that our scheme is practical and more efficient than most of the existing CP-ABE AC schemes and also resistant to quantum attacks. This makes our scheme suitable for real-life, user-oriented CCN/NDN applications.
In the future, we will conduct further research on how to reduce key generation, run time, and user revocation.

Author Contributions

Conceptualization, E.A. and X.W.; Methodology, E.A. and J.B.A.; Project administration, X.Z.; Supervision, X.Z. and X.W.; Writing—original draft, E.A.; Writing—review & editing, X.W. and J.B.A. All authors have read and agreed to the published version of the manuscript.


This work is supported by the National Natural Science Foundation of China under Grant 61502086, the foundation from the State Key Laboratory of Integrated Services Networks, Xidian University (No. ISN18-09).

Conflicts of Interest

The authors declare no conflict of interest.


  1. Anggorojati, B.; Mahalle, P.N.; Prasad, N.R.; Prasad, R. Capability-based access control delegation model on the federated IoT network. In Proceedings of the 15th International Symposium on Wireless Personal Multimedia Communications, Taipei, Taiwan, 15 July 2012. [Google Scholar]
  2. Grusho, A. Five SDN-Oriented Directions in Information Security. In Proceedings of the 2014 International Science and Technology Conference (Modern Networking Technologies) (MoNeTeC), Moscow, Russia, 28–29 October 2014; Volume 1, pp. 1–4. [Google Scholar]
  3. Cao, Z. New Directions of Modern Cryptography; CRC Press Inc.: Boca Raton, FL, USA, 2012; pp. 1–400. [Google Scholar]
  4. Herranz, J.; Laguillaumie, F.; Ràfols, C. Constant size ciphertexts in threshold attribute-based encryption. In Proceedings of the 13th International Conference on Practice and Theory in Public Key Cryptography, Paris, France, 26–28 May 2010. [Google Scholar]
  5. Chen, C. Fully secure attribute-based systems with short ciphertexts/signatures and threshold access structures. Comput. Sci. 2013, 7779, 50–67. [Google Scholar]
  6. Hohenberger, S.; Waters, B. Online/offline attribute-based encryption. In Public-Key Cryptography; Springer: Berlin/Heidelberg, Germany, 2014; pp. 293–310. [Google Scholar]
  7. Lai, J.; Deng, R.H.; Guan, C.; Weng, J. Attribute-based encryption with verifiable outsourced decryption. IEEE Trans. Inf. Forensics Secur. 2013, 8, 1343–1354. [Google Scholar]
  8. Zhou, Z.; Huang, D. On efficient ciphertext-policy attribute based encryption and broadcast encryption Extended abstract. IEEE Trans. Comput. 2010, 395, 753–755. [Google Scholar]
  9. Song, Y.; Li, Z.; Li, Y.; Li, J. A new multi-use multi-secret sharing scheme based on the duals of minimal linear codes, Secure. Commun. Netw. 2015, 8, 202–211. [Google Scholar]
  10. Wang, J.; Xiong, N.N.; Wang, J.; Yeh, W.C. A compact ciphertext-policy attribute-based encryption scheme for the information-centric Internet of Things. IEEE Access 2018, 6, 63513–63526. [Google Scholar] [CrossRef]
  11. Ajtai, M. Generating hard instances of lattice problems (extend abstract). In Proceedings of the Twenty-Eighth Annual ACM Symposium on Theory of Computing, New York, NY, USA, 1 July 1996. [Google Scholar]
  12. Zhu, W.; Yu, J.; Wang, T.; Xie, W. Efficient attribute-based encryption from R-LWE. Chin. J. Electron. 2014, 23, 778–782. [Google Scholar]
  13. Tan, S.F.; Samsudin, A. Lattice ciphertext-policy attribute-based encryption from RingLWE. In Proceedings of the IEEE International Symposium on Technology Management and Emerging Technologies, Langkawi, Malaysia, 25 August 2015. [Google Scholar]
  14. Yan, X.; Liu, Y.; Li, Z.; Huang, Q. A privacy-preserving multi-authority attribute-based encryption scheme on ideal lattices in the cloud environment. Netinfo Secur. 2017, 8, 19–25. [Google Scholar]
  15. Wang, T.; Han, G.; Yu, J.; Zhang, P.; Sun, X. Efficient chosen-ciphertext secure encryption from R-LWE. Wirel. Pers. Commun. 2017, 95, 1–16. [Google Scholar] [CrossRef]
  16. Yu, J.; Yang, C.; Tang, Y.; Yan, X. Attribute-Based Encryption Scheme Supporting Tree-Access Structure on Ideal Lattices. In Proceedings of the International Conference on Cloud Computing and Security, Haikou, China, 8 June 2018. [Google Scholar]
  17. Ostrovsky, R.; Sahai, A.; Waters, B. Attribute-based encryption with non-monotonic access structures. In Proceedings of the 14th ACM Conference on Computer and Communications Security, Alexandria, VA, USA, 8 May 2007. [Google Scholar]
  18. Micciancio, D.; Peikert, C. Trapdoors for lattices: Simpler, tighter, faster, smaller. In Advances in Cryptology—EUROCRYPt; Springer: Berlin/Heidelberg, Germany, 2012. [Google Scholar]
  19. Agrawal, S.; Boneh, D.; Boyen, X. Lattice basis delegation in fixed dimension and shorter-ciphertext hierarchical IBE. In Proceedings of the Advances in Cryptology-CRYPTO 2010, 30th Annual Cryptology Conference, Santa Barbara, CA, USA, 15–19 August 2010. [Google Scholar]
  20. Kirchner, P.; Fouque, P. An improved BKW algorithm for LWE with applications to cryptography and lattices. In Proceedings of the Advances in Cryptology-CRYPTO 2015-35th Annual Cryptology Conference, Santa Barbara, CA, USA, 16–20 August 2015. [Google Scholar]
  21. Agrawal, S.; Boyen, X.; Vaikunthanathan, V.; Voulgaris, P.; Wee, H. Functional Encryption for Threshold Functions (or, Fuzzy IBE) from Lattices in Public Key Cryptography-PKC. Available online: (accessed on 8 January 2020).
  22. Zhang, J.; Zhang, Z.; Ge, A. Ciphertext policy attribute-based encryption from lattices. In Proceedings of the 7th ACM Symposium on Information, Computer and Communications Security; Association for Computing Machinery: New York, NY, USA, 2012. [Google Scholar]
  23. Jian, Z.; Haiying, G. Attribute-Based Encryption for Restricted Circuits from Lattices. In Proceedings of the IEEE Tenth International Conference on Computational Intelligence and Security, Kunming, China, 15 November 2014. [Google Scholar]
  24. Wang, Y.T. Lattice ciphertext policy attribute-based encryption in the standard model. Int. J. Netw. Sec. 2014, 16, 444–451. [Google Scholar]
  25. Nguyen, K.; Wang, H.; Zhang, J. Server-aided revocable identity-based encryption from lattices. In Proceedings of the International Conference on Cryptology and Network Security, Milan, Italy, 14–16 November 2016. [Google Scholar]
  26. Wang, S.; Zhang, X.; Zhang, Y. Efficient revocable and grantable attribute-based encryption from lattices with fine-grained access control. IET Inf. Secur. 2018, 12, 141–149. [Google Scholar] [CrossRef]
  27. Agrawal, S.; Boneh, D.; Boyen, X. Efficient lattice (H) IBE in the standard model. In Advances in Cryptology; Springer: Berlin/Heidelberg, Germany, 2010. [Google Scholar]
  28. Boyen, X. Attribute-based functional encryption on lattices. In Proceedings of the Theory of Cryptography. 10th Theory of Cryptography Conference TCC, Tokyo, Japan, 3–6 March 2013. [Google Scholar]
  29. Zhao, J.; Gao, H. LSSS Matrix-Based Attribute-Based Encryption on Lattices. In Proceedings of the 13th International Conference on Computational Intelligence and Security (CIS), Hong Kong, China, 15–18 December 2017. [Google Scholar]
  30. Liu, Y.; Wang, L.; Li, L.; Yan, X. Secure and Efficient Multi-Authority Attribute-Based Encryption Scheme from Lattices. IEEE Access 2018, 7, 3665–3674. [Google Scholar] [CrossRef]
  31. Liu, X.; Ma, J.; Xiong, J.; Li, Q.; Zhang, T.; Zhu, H. Threshold attribute-based encryption with attribute hierarchy for lattices in the standard model. IET Inf. Secur. 2014, 8, 217–223. [Google Scholar] [CrossRef]
  32. Ion, M.; Zhang, J.; Schooler, E.M. Toward content-centric privacy in ICN: Attribute-based encryption and routing. In Proceedings of the ACM SIGCOMM 2013 Conference on SIGCOMM, Hong Kong, China, 12 August 2013. [Google Scholar]
  33. Jacobson, V.; Smetters, D.K.; Thornton, J.D.; Plass, M.F.; Briggs, N.H.; Braynard, R.L. Networking named content. Commun. ACM 2012, 55, 117–124. [Google Scholar] [CrossRef]
  34. Papanis, J.P.; Papapanagiotou, S.I.; Mousas, A.S.; Lioudakis, G.V.; Kaklamani, D.I.; Venieris, I.S. On the use of attribute-based encryption for multimedia content protection over information-centric networks. Trans. Emerg. Telecommun. Technol. 2014, 25, 422–435. [Google Scholar] [CrossRef]
  35. Li, B.; Huang, D.; Wang, Z.; Zhu, Y. Attribute-based access control for ICN naming scheme. IEEE Trans. Dependable Secur. Comput. 2018, 15, 194–206. [Google Scholar] [CrossRef]
  36. Mannes, E.; Maziero, C.; Lassance, L.; Borges, F. Optimized access control enforcement over encrypted content in information-centric networks. In Proceedings of the 20th IEEE Symposium on Computers and Communications-ISCC 2015, Larnaca, Cyprus, 6–9 July 2015. [Google Scholar]
  37. Misra, S.; Tourani, R.; Majd, N.E. Secure content delivery in information-centric networks: Design, implementation, and analyses. In Proceedings of the 3rd ACM SIGCOMM Workshop on Information-Centric Networking, Hong Kong, China, 12 August 2013. [Google Scholar]
  38. Goyal, V.; Pandey, O.; Sahai, A.; Waters, B. Attribute-based encryption for fine-grained access control of encrypted data. In Proceedings of the 13th ACM Conference on Computer and Communications Security, Alexandria, VA, USA, 30 October−3 November 2006. [Google Scholar]
  39. Affum, E.; Zhang, X.; Wang, X.; Ansuura, J.B. Efficient CP-ABE Scheme for IoT CCN Based on ROBDD. In Advances in Computer Communication and Computational Sciences; Springer: Berlin/Heidelberg, Germany, 2019. [Google Scholar]
  40. Zhao, X.; Li, H. Privacy preserving data-sharing scheme in content centric networks against collusion name guessing attacks. IEEE Access 2017, 5, 23182–23189. [Google Scholar] [CrossRef]
  41. Agrawal, S.; Dan, B.; Boyen, X. Lattice basis delegation in fixed dimension and short-ciphertext hierarchical IBE. In Advances in Cryptology-CRYPTO; Springer: Berlin/Heidelberg, Germany, 2010; pp. 98–115. [Google Scholar]
  42. The PALISADE. Lattice Cryptography Library. Available online: (accessed on 2 December 2019).
Figure 1. CCN/NDN distribution scenario.
Figure 1. CCN/NDN distribution scenario.
Symmetry 12 00166 g001
Figure 2. Reduced-OBDD representation of Ω .
Figure 2. Reduced-OBDD representation of Ω .
Symmetry 12 00166 g002
Figure 3. The relationship between paths ( Y i   , Y i   ) and i .
Figure 3. The relationship between paths ( Y i   , Y i   ) and i .
Symmetry 12 00166 g003
Figure 4. CCN/NDN content dissemination setup.
Figure 4. CCN/NDN content dissemination setup.
Symmetry 12 00166 g004
Figure 5. Represents the key exchange protocol.
Figure 5. Represents the key exchange protocol.
Symmetry 12 00166 g005
Figure 6. Represents content dissemination and retrieval.
Figure 6. Represents content dissemination and retrieval.
Symmetry 12 00166 g006

Share and Cite

MDPI and ACS Style

Affum, E.; Zhang, X.; Wang, X.; Ansuura, J.B. Efficient Lattice CP-ABE AC Scheme Supporting Reduced-OBDD Structure for CCN/NDN. Symmetry 2020, 12, 166.

AMA Style

Affum E, Zhang X, Wang X, Ansuura JB. Efficient Lattice CP-ABE AC Scheme Supporting Reduced-OBDD Structure for CCN/NDN. Symmetry. 2020; 12(1):166.

Chicago/Turabian Style

Affum, Eric, Xiasong Zhang, Xiaofen Wang, and John Bosco Ansuura. 2020. "Efficient Lattice CP-ABE AC Scheme Supporting Reduced-OBDD Structure for CCN/NDN" Symmetry 12, no. 1: 166.

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