fine-grained two-factor access control for web-based...

16
1 Fine-grained Two-factor Access Control for Web-based Cloud Computing Services Joseph K. Liu, Man Ho Au * , Xinyi Huang, Rongxing Lu, Jin Li Abstract—In this paper, we introduce a new fine-grained two-factor authentication (2FA) access control system for web-based cloud computing services. Specifically, in our proposed 2FA access control system, an attribute-based access control mechanism is implemented with the necessity of both user secret key and a lightweight security device. As a user cannot access the system if s/he does not hold both, the mechanism can enhance the security of the system, especially in those scenarios where many users share the same computer for web-based cloud services. In addition, attribute-based control in the system also enables the cloud server to restrict the access to those users with the same set of attributes while preserving user privacy, i.e., the cloud server only knows that the user fulfills the required predicate, but has no idea on the exact identity of the user. Finally, we also carry out a simulation to demonstrate the practicability of our proposed 2FA system. Keywords—Fine-grained, Two-Factor, Access Control, Web Services 1 I NTRODUCTION Cloud computing is a virtual host computer system that enables enterprises to buy, lease, sell, or distribute software and other digital resources over the internet as an on-demand service. It no longer depends on a server or a number of machines that physically exist, as it is a virtual system. There are many applications of cloud computing, such as data sharing [30], [31], [33], [22], data storage [15], [45], [25], [32], big data management [4], medical information system [44] etc. End users access cloud-based applications through a web browser, thin client or mobile app while the business software and user’s data are stored on servers at a remote location. The benefits of web-based cloud computing services are huge, which include the ease of accessibility, reduced costs and capital expenditures, increased operational efficiencies, scalability, flexibility and immediate time to market. Though the new paradigm of cloud computing pro- vides great advantages, there are meanwhile also con- cerns about security and privacy especially for web- based cloud services. As sensitive data may be stored in the cloud for sharing purpose or convenient access; and eligible users may also access the cloud system for Joseph K. Liu is with Faculty of Information Technology, Monash Univer- sity, Australia. E-mail: [email protected]. * Corresponding Author. Man Ho Au is with Department of Com- puting, The Hong Kong Polytechnic University, Hong Kong E-mail: [email protected]. Xinyi Huang is with the School of Mathematics and Computer Science, Fujian Normal University, Fuzhou, 350108, P. R. China and State Key Laboratory of Integrated Service Networks (ISN), Xidian University, Xian, 710071, P.R. China. E-mail: [email protected]. Rongxin Lu is with Division of Communication Engineering, School of Electrical and Electronics Engineering, Nanyang Technological University, Singapore. E-mail: [email protected]. Jin Li is with Department of Computer Science, Guangzhou University, China. E-mail: [email protected]. various applications and services, user authentication has become a critical component for any cloud system. A user is required to login before using the cloud services or accessing the sensitive data stored in the cloud. There are two problems for the traditional account/password- based system. First, the traditional account/password- based authentication is not privacy-preserving. How- ever, it is well acknowledged that privacy is an essential feature that must be considered in cloud computing sys- tems. Second, it is common to share a computer among different people. It maybe easy for hackers to install some spyware to learn the login password from the web-browser. A recently proposed access control model called attribute-based access control is a good candidate to tackle the first problem. It not only provides anonymous authentication but also further defines access control policies based on different attributes of the requester, environment, or the data object. In an attribute-based access control system 1 , each user has a user secret key issued by the authority. In practice, the user secret key is stored inside the personal computer. When we consider the above mentioned second problem on web-based services, it is common that computers may be shared by many users especially in some large enterprises or organizations. For example, let us consider the following two scenarios: In a hospital, computers are shared by different staff. Dr. Alice uses the computer in room A when she is on duty in the daytime, while Dr. Bob uses the same computer in the same room when he is on duty at night. In a university, computers in the undergraduate lab are usually shared by different students. In these cases, user secret keys could be easily stolen or used by an unauthorized party. Even though the 1. More details will be given in Section 2.1.

Upload: dinhxuyen

Post on 11-Mar-2018

217 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Fine-grained Two-factor Access Control for Web-based …users.monash.edu.au/~kailiu/mypaper/ieee-tifs-2016-5.pdf · Fine-grained Two-factor Access Control for ... access control protocol

1

Fine-grained Two-factor Access Control forWeb-based Cloud Computing Services

Joseph K. Liu, Man Ho Au∗, Xinyi Huang, Rongxing Lu, Jin Li

Abstract—In this paper, we introduce a new fine-grained two-factor authentication (2FA) access control system for web-basedcloud computing services. Specifically, in our proposed 2FA access control system, an attribute-based access control mechanismis implemented with the necessity of both user secret key and a lightweight security device. As a user cannot access the system if s/hedoes not hold both, the mechanism can enhance the security of the system, especially in those scenarios where many users share thesame computer for web-based cloud services. In addition, attribute-based control in the system also enables the cloud server to restrictthe access to those users with the same set of attributes while preserving user privacy, i.e., the cloud server only knows that the userfulfills the required predicate, but has no idea on the exact identity of the user. Finally, we also carry out a simulation to demonstratethe practicability of our proposed 2FA system.

Keywords—Fine-grained, Two-Factor, Access Control, Web Services

F

1 INTRODUCTION

Cloud computing is a virtual host computer systemthat enables enterprises to buy, lease, sell, or distributesoftware and other digital resources over the internet asan on-demand service. It no longer depends on a serveror a number of machines that physically exist, as it isa virtual system. There are many applications of cloudcomputing, such as data sharing [30], [31], [33], [22], datastorage [15], [45], [25], [32], big data management [4],medical information system [44] etc. End users accesscloud-based applications through a web browser, thinclient or mobile app while the business software anduser’s data are stored on servers at a remote location.The benefits of web-based cloud computing services arehuge, which include the ease of accessibility, reducedcosts and capital expenditures, increased operationalefficiencies, scalability, flexibility and immediate time tomarket.

Though the new paradigm of cloud computing pro-vides great advantages, there are meanwhile also con-cerns about security and privacy especially for web-based cloud services. As sensitive data may be storedin the cloud for sharing purpose or convenient access;and eligible users may also access the cloud system for

• Joseph K. Liu is with Faculty of Information Technology, Monash Univer-sity, Australia. E-mail: [email protected].

• ∗Corresponding Author. Man Ho Au is with Department of Com-puting, The Hong Kong Polytechnic University, Hong Kong E-mail:[email protected].

• Xinyi Huang is with the School of Mathematics and Computer Science,Fujian Normal University, Fuzhou, 350108, P. R. China and State KeyLaboratory of Integrated Service Networks (ISN), Xidian University, Xian,710071, P.R. China. E-mail: [email protected].

• Rongxin Lu is with Division of Communication Engineering, School ofElectrical and Electronics Engineering, Nanyang Technological University,Singapore. E-mail: [email protected].

• Jin Li is with Department of Computer Science, Guangzhou University,China. E-mail: [email protected].

various applications and services, user authenticationhas become a critical component for any cloud system. Auser is required to login before using the cloud servicesor accessing the sensitive data stored in the cloud. Thereare two problems for the traditional account/password-based system. First, the traditional account/password-based authentication is not privacy-preserving. How-ever, it is well acknowledged that privacy is an essentialfeature that must be considered in cloud computing sys-tems. Second, it is common to share a computer amongdifferent people. It maybe easy for hackers to installsome spyware to learn the login password from theweb-browser. A recently proposed access control modelcalled attribute-based access control is a good candidate totackle the first problem. It not only provides anonymousauthentication but also further defines access controlpolicies based on different attributes of the requester,environment, or the data object. In an attribute-basedaccess control system1, each user has a user secret keyissued by the authority. In practice, the user secret key isstored inside the personal computer. When we considerthe above mentioned second problem on web-basedservices, it is common that computers may be sharedby many users especially in some large enterprises ororganizations. For example, let us consider the followingtwo scenarios:• In a hospital, computers are shared by different staff.

Dr. Alice uses the computer in room A when she ison duty in the daytime, while Dr. Bob uses the samecomputer in the same room when he is on duty atnight.

• In a university, computers in the undergraduate labare usually shared by different students.

In these cases, user secret keys could be easily stolenor used by an unauthorized party. Even though the

1. More details will be given in Section 2.1.

Page 2: Fine-grained Two-factor Access Control for Web-based …users.monash.edu.au/~kailiu/mypaper/ieee-tifs-2016-5.pdf · Fine-grained Two-factor Access Control for ... access control protocol

2

computer may be locked by a password, it can still bepossibly guessed or stolen by undetected malwares.

A more secure way is to use two-factor authentication(2FA). 2FA is very common among web-based e-bankingservices. In addition to a username/password, the useris also required to have a device to display a one-time password. Some systems may require the userto have a mobile phone while the one-time passwordwill be sent to the mobile phone through SMS duringthe login process. By using 2FA, users will have moreconfidence to use shared computers to login for web-based e-banking services. For the same reason, it will bebetter to have a 2FA system for users in the web-basedcloud services in order to increase the security level inthe system.

1.1 Our ContributionIn this paper, we propose a fine-grained two-factoraccess control protocol for web-based cloud computingservices, using a lightweight security device. The devicehas the following properties: (1) it can compute somelightweight algorithms, e.g. hashing and exponentiation;and (2) it is tamper resistant, i.e., it is assumed that noone can break into it to get the secret information storedinside.

With this device, our protocol provides a 2FA secu-rity. First the user secret key (which is usually storedinside the computer) is required. In addition, the secu-rity device should be also connected to the computer(e.g. through USB) in order to authenticate the user foraccessing the cloud. The user can be granted access onlyif he has both items. Furthermore, the user cannot usehis secret key with another device belonging to othersfor the access.

Our protocol supports fine-grained attribute-based ac-cess which provides a great flexibility for the systemto set different access policies according to differentscenarios. At the same time, the privacy of the user isalso preserved. The cloud system only knows that theuser possesses some required attribute, but not the realidentity of the user.

To show the practicality of our system, we simulatethe prototype of the protocol.

In the next section, we will review some related worksthat are related to our concept.

2 RELATED WORKS

We review some related works including attribute-basedcryptosystems and access control with security device inthis section.

2.1 Attribute-Based CryptosystemAttribute-based encryption (ABE) [20], [39] is the corner-stone of attribute-based cryptosystem. ABE enables fine-grained access control over encrypted data using accesspolicies and associates attributes with private keys and

ciphertexts. Within this context, ciphertext-policy ABE(CP-ABE) [6] allows a scalable way of data encryptionsuch that the encryptor defines the access policy that thedecryptor (and his/her attributes set) needs to satisfy todecrypt the ciphertext. Thus, different users are allowedto decrypt different pieces of data with respect to thepre-defined policy. This can eliminate the trust on thestorage server to prevent unauthorised data access.

Besides dealing with authenticated access on en-crypted data in cloud storage service [21], [23], [24], [27],[29], [36], [42], [43], [28], ABE can also be used for accesscontrol to cloud computing service, in a similar wayas an encryption scheme can be used for authenticationpurpose: The cloud server may encrypt a random mes-sage using the access policy and ask the user to decrypt.If the user can successfully decrypt the ciphertext (whichmeans the user’s attributes set satisfies the prescribedpolicy), then it is allowed to access the cloud computingservice.

In addition to ABE, another cryptographic primitivein attribute-based cryptosystem is attribute-based signa-ture (ABS) [35], [38], [41]. An ABS scheme enables auser to sign a message with fine-grained control overidentifying information. Specifically, in an ABS scheme,users obtain their attribute private keys from an attributeauthority. Then they can later sign messages for anypredicate satisfied by their attributes. A verifier willbe convinced of the fact that the signer’s attributessatisfy the signing predicate if the signature is valid. Atthe same time, the identity of signer remains hidden.Thus it can achieve anonymous attribute-based accesscontrol efficiently. Recently, Yuen et al. [47] proposed anattribute-based access control mechanism which can beregarded as the interactive form of ABS.

2.2 Access Control with Security Device

2.2.1 Security Mediated Cryptosystem

Mediated cryptography was first introduced in [8] as amethod to allow immediate revocation of public keys.The basic idea of mediated cryptography is to use anon-line mediator for every transaction. This on-line me-diator is referred to a SEM (SEcurity Mediator) since itprovides a control of security capabilities. If the SEMdoes not cooperate then no transactions with the publickey are possible any longer. Recently, an attribute-basedversion of SEM was proposed in [13].

The notion of SEM cryptography was further modifiedas security mediated certificateless (SMC) cryptography[14], [46]. In a SMC system, a user has a secret key, publickey and an identity. In the signing or decryption algo-rithm, it requires the secret key and the SEM together.In the signature verification or encryption algorithm,it requires the user public key and the correspondingidentity. Since the SEM is controlled by an authoritywhich is used to handle user revocation, the authorityrefuses to provide any cooperation for any revoked user.

Page 3: Fine-grained Two-factor Access Control for Web-based …users.monash.edu.au/~kailiu/mypaper/ieee-tifs-2016-5.pdf · Fine-grained Two-factor Access Control for ... access control protocol

3

Thus revoked users cannot generate signature or decryptciphertext.

Note that SMC is different from our concept. Themain purpose of SMC is to solve the revocation prob-lem. Thus the SME is controlled by the authority. Inother words, the authority needs to be online for everysignature signing and ciphertext decryption. The useris not anonymous in SMC. While in our system, thesecurity device is controlled by the user. Anonymity isalso preserved.

2.2.2 Key-Insulated CryptosystemThe paradigm of key-insulated cryptography was intro-duced in [17]. The general idea of key-insulated securitywas to store long-term keys in a physically-secure butcomputationally-limited device. Short-term secret keysare kept by users on a powerful but insecure devicewhere cryptographic computations take place. Shortterm secrets are then refreshed at discrete time periodsvia interaction between the user and the base while thepublic key remains unchanged throughout the lifetimeof the system. At the beginning of each time period,the user obtains a partial secret key from the device. Bycombining this partial secret key with the secret key forthe previous period, the user renews the secret key forthe current time period.

Different from our concept, key-insulated cryptosys-tem requires all users to update their keys in every timeperiod. The key update process requires the securitydevice. Once the key has been updated, the signingor decryption algorithm does not require the deviceanymore within the same time period. While our conceptdoes require the security device every time the usertries to access the system. Furthermore, there is no keyupdating required in our system.

3 PRELIMINARIES

In this section, we introduce the notations deployed inour scheme.

3.1 PairingsLet G and GT be cyclic groups of prime order p. A mape : G × G → GT is bilinear if for any generators g ∈ Gand a, b ∈ Zp, e(ga, gb) = e(g, g)ab. Let G be a pairinggeneration algorithm which takes as input a securityparameter 1λ and outputs (p,G,G,GT , e) ← G(1λ). Thegenerators of the groups may also be given. All groupoperations as well as the bilinear map e are efficientlycomputable.

3.2 Monotone Span ProgramOur access control mechanism depends on expressingthe attribute predicate as a monotonespan program. Wereview some notation about monotone span programusing the notation in [35]. Let Υ : {0, 1}n → {0, 1} be amonotone boolean function. A monotone span program

for Υ over a field F is an ` ×m matrix M with entriesin F, along with a labeling function ρ : [1, `] → [1, n]that associates each row of M with an input variableof Υ, that, for every (x1, . . . , xn) ∈ {0, 1}n, satisfies thefollowing:

Υ(x1, . . . , xn) = 1⇐⇒∃~v ∈ F1×` : ~vM = [1, 0, 0, . . . , 0]

and (∀i : xρ(i) = 0⇒ vi = 0).

In other words, Υ(x1, . . . , xn) = 1 if and only if therows of M indexed by {i|xρ(i) = 1} span the vector[1, 0, 0, . . . , 0]. We call ` the length and m the width of thespan program, and `+m the size of the span program.Every monotone boolean function can be representedby some monotone span program, and a large classdoes have compact monotone span programs. Given amonotone boolean function Υ, one can use the methodgiven in [20] to obtain the matrix M.

3.3 BBS+ SignaturesWe briefly review a signature scheme called BBS+. Itbelongs to a class of signature schemes, commonlyknown as CL-signatures [11]. CL-signatures are usefulin certifying credentials since their structures allows (1)a signer to create a signature on committed values;and (2) a signer holder to prove to any third partythat he/ she is in possession of a signature from thesigner in zero knowledge. BBS+ is proposed by Au etal. [3], which is based on the schemes of Camenischand Lysyanskaya [12] and of Boneh et al. [7]. It is alsoreferred to as credential signatures [2] as it is normallyused to certify a set of credentials [1], [10], [34].

Let (p,G,G,GT , e) ← G(1λ) be the public parametersas discussed. In addition, let g, h, h0, h1, . . . , hn ∈ G bepublicly known generators of G.

The signer’s secret key is γ ∈R Zp and the public keyis w = hγ .

To sign a message block (x0, x1, . . . , xn) ∈ Zn+1p ,

the signer randomly picks e, s ∈R Zp, computes A =

(hhx00 h

x11 · · ·hxnn gs)

1γ+e . The signer outputs (A, e, s) as the

signature on the block of messages (x0, . . . , xn).To verify a BBS+ signature, one can test if the following

equation holds.

e(A,whe) = e(hhx00 h

x11 · · ·hxnn gs, h)

BBS+ is existentially unforgeable against adaptive cho-sen message attack under the q-SDH assumption.

4 OVERVIEW

4.1 IntuitionA naive thinking to achieve our goal is to use a normalABS and simply split the user secret key into two parts.One part is kept by the user (stored in the computer)while another part is initialized into the security device.Special care must be taken in the process since normalABS does not guarantee that the leakage of part of thesecret key does not affect the security of the scheme

Page 4: Fine-grained Two-factor Access Control for Web-based …users.monash.edu.au/~kailiu/mypaper/ieee-tifs-2016-5.pdf · Fine-grained Two-factor Access Control for ... access control protocol

4

Fig. 1: Overview idea of our system

while in two 2FA, the attacker could have compromisedone of the factors. Besides, the splitting should be donein such a way that most of the computation load shouldbe with the user’s computer since the security device isnot supposed to be powerful.

We specifically design our system in another manner.We do not split the secret key into two parts. Instead, weintroduce some additional unique information stored inthe security device. The authentication process requiresthis piece of information together with the user secretkey. It is guaranteed that missing either part cannot letthe authentication pass. There is also a linking relation-ship between the user’s device and the secret key sothat the user cannot use another user’s device for theauthentication. The communication overhead is minimaland the computation required in the device is just somelightweight algorithms such as hashing or exponentia-tion over group GT 2. All the heavy computations suchas pairing are done on the computer.

The idea of our system is illustrated in Figure 1.

2. The exponentiation done in group GT is much lighter than thosein group G. It can be seen from the simulation data in the benckmark.

4.2 EntitiesOur system consists of the following entities:• Trustee: It is responsible for generating all system

parameters and initialise the security device.• Attribute-issuing Authority: It is responsible to gen-

erate user secret key for each user according to theirattributes.

• User: It is the player that makes authentication withthe cloud server. Each user has a secret key issuedby the attribute-issuing authority and a securitydevice initialized by the trustee.

• Cloud Service Provider: It provides services toanonymous authorised users. It interacts with theuser during the authentication process.

4.3 AssumptionsThe focus of this paper is on preventing private infor-mation leakage at the phase of access authentication.Thus we make some assumptions on system setup andcommunication channels. We assume each user com-municates with the cloud service provider through ananonymous channel [37], [26] or uses IP-hiding technol-ogy. We also assume that trustee generates the security

Page 5: Fine-grained Two-factor Access Control for Web-based …users.monash.edu.au/~kailiu/mypaper/ieee-tifs-2016-5.pdf · Fine-grained Two-factor Access Control for ... access control protocol

5

parameters according to the algorithm prescribed. Otherpotential attacks, such as IP hijacking, distributed denial-of-service attack, man-in-the-middle attack, etc., are outof the scope of this paper.

4.4 Threat Model

In this paper, we consider the following threats:

1) Authentication: The adversary tries to access thesystem beyond its privileges. For example, auser with attributes {Student,Physics} may tryto access the system with policy “Staff” AND“Physics”. To do so, he may collude with otherusers.

2) Access without Security Device: The adversarytries to access the system (within its privileges)without the security device, or using another se-curity device belonging to others.

3) Access without Secret Key: The adversary tries toaccess the system (within its privileges) withoutany secret key. It can have its own security device.

4) Privacy: The adversary acts as the role of the cloudserver and tries to find out the identity of the userit is interacting with.

4.5 Notation

Frequently used notations in our system are summarizedin Table 1.

TABLE 1: Frequently Used NotationsTPK public parameters of the trusteeAPK public key of the attribute-issuing authorityASK secret key of the attribute-issuing authorityUPK public key of the userUSK partial secret key of the user

skA,UPK attribute secret key for the user withattribute A and public key UPK

Υ claim-predicate for the access control

5 OUR PROPOSED SYSTEM

5.1 Specification of the Security Device

We assume the security device employed in our systemsatisfies the following requirements.

1) Tamper-resistance. The content stored inside the se-curity device is not accessible nor modifiable onceit is initialized. In addition, it will always followthe algorithm specification.

2) Capability. It is capable of evaluation of a hashfunction. In addition, it can generate random num-bers and compute exponentiations of a cyclic groupdefined over a finite field.

5.2 Construction

Let A be the desired universe of attributes. For simplicity,we assume A = [1, n] for some natural number n. Wewill use a vector ~x ∈ {0, 1}n to represent the user’sattribute set. Let ~x = (x1, . . . , xn) ∈ {0, 1}n. If the user isin possession of attribute i, xi = 1. Otherwise, xi = 0.

5.2.1 System SetupThe system setup process consists of two parts. The firstpart TSetup is run by a trustee to generate public pa-rameters. The second part ASetup is run by the attribute-issuing authority to generate its master secret key andpublic key.

TSetup: Let λ be a security parameter. The trusteeruns G(1λ) (described in Section 3.1) to generateparam = (G,GT , p, e) and randomly picks generatorsg, g, h, h0, h1, . . . , hn ∈ G. It also picks a collision re-sistant hash function H : {0, 1}∗ → Zp. Further, lettpk = e(g, h0)tsk for a randomly generated tsk ∈R Zp.

It publishes TPK = (param, g, g, h, h0, h1, . . . , hn, H, tpk).

ASetup: The attribute-issuing authority randomly picksγ ∈ Zp and computes w = hγ . It publishes APK = (w)and sets ASK = (γ).

5.2.2 User Key GenerationThe user key generation process consists of three parts.First, the user generates his secret and public keyin USetup. Then the security device is initialized bythe trustee in Device Initialization. Finally the attribute-issuing authority generates the user attribute secret keyaccording to the user’s attribute in AttrGen.

USetup: The user randomly picks y ∈ Zp. It publishesUPK = Y = hy0 and sets USK = y.

Device Initialization: The trustee initializes the securitydevice for user (whose public key is UPK) with valuesTY = e(g, Y ), TG = e(g, h0) and tsk.

AttrGen: The key generation algorithm takes as inputTPK,APK,UPK = Y and an attribute set A representedas a by a vector (x1, . . . , xn) ∈ {0, 1}n.

The user runs a zero-knowledge proof of knowledgeprotocol PK0 with the attribute-issuing authority toprove the knowledge of his partial secret key y:

PK0{y : Y = hy0}.

This proof of knowledge of discrete logarithm is straight-forward and is shown in the next subsection. If the proofis correct, the attribute-issuing authority chooses randome, s ∈ Zp and uses his secret key ASK to create the userattribute secret key skA,Y := (A, e, s) as

A = (hY hx11 · · ·hxnn gs)

1γ+e

Page 6: Fine-grained Two-factor Access Control for Web-based …users.monash.edu.au/~kailiu/mypaper/ieee-tifs-2016-5.pdf · Fine-grained Two-factor Access Control for ... access control protocol

6

5.2.3 Access Authentication

The access authentication process is an interactive pro-tocol between the user and the cloud service provider. Itrequires the user to have his partial secret key, attributesecret key3 and the security device.

Auth: The interactive authentication protocol takes asinput TPK, APK and a claim-predicate Υ. The user hassome additional inputs including an attribute secret keyskA,Y for attribute A, USK = y and the security device.Assume Υ(A) = 1. Parse skA,Y as (A, e, s, ~x).

1) The authentication server picks at random a chal-lenge R ∈ Zp and sends R to the user.

2) The user computes C = e(g, h0)1

y+R and submits(C, y,R) to his/her security device.

3) The security device validates C(y+R) = TG andTGy = TY.

4) Upon successful validation, the security devicepicks a random r ∈R Zp, computes cR =H(TGr||R||C) and zR = r−cRtsk. It returns (cR, zR)to the user.

5) The user converts Υ to its corresponding monotonespan program M = (Mi,j) ∈ (Zp)`×m, with rowlabeling ρ : [1, `] → A. Also compute the vector~v = (v1, . . . , v`) ∈ Z`p that corresponds to thesatisfying assignment A. That is ~vM = (1, 0, . . . , 0).Note that if xρ(i) = 0 (i.e., the user does not possessthe attribute ρ(i)), vi must be 0).

6) For i = 1 to `, the user randomly picks ai, ti ∈R Zpand computes Ci = gvihti , Di = gxρ(i)hai . The useralso computes bi = ti − aivi.

7) For j = 1 to m, the user computes fj =∑`i=1 tiMi,j .

Then the user sends (C, cR, zR, C1, . . ., C`, D1, . . .,D`) to the authentication server.

8) They then engage in the following zero-knowledge

3. We assume the user stores both the partial secret key and attributesecret key in his/her computer.

proof-of-knowledge protocol.

PK1

(A, e, s, y, {xi}ni=1, {ai}`i=1, {bi}`i=1,

{vi}`i=1, {ti}`i=1, {fi}mi=1

):

e(A,whe) = e(hhy0hx11 . . . hxnn gs, h) ∧

e(g, h0)C−R = Cy ∧∧i=1

(Di = gxρ(i)hai

)∧

∧i=1

(Ci = gvihti

)∧

∧i=1

(Ci = Dvi

i hbi)∧

(∏i=1

CMi,1

i )/g = hf1 ∧

m∧j=2

( ∏i=1

CMi,j

i = hfj)

9) The authentication server validates PK1 and that

cR = H(tpkcR e(g, h0)zR ||R||C).To better illustrate the idea of or protocol, a runningexample is presented in the Appendix.

The details of the proof of knowledge PK0 and PK1

instantiation will be described in the following subsec-tion.

5.3 Proof of Knowledge

We briefly introduce the proof of knowledge as definedin [5]. Intuitively, a two-party protocol constitutes asystem for proofs of knowledge if one party (called theverifier) is convinced that the other party (called theprover) indeed knows some “knowledge”.

If R is a binary relation, we let R(x) = {y : (x, y) ∈ R}and the language LR = {x : ∃y such that (x, y) ∈ R}. If(x, y) ∈ R, we call y the witness of x.

A proof of knowledge is a two-party protocol with thefollowing properties:

1) Completeness: If (x, y) ∈ R, the honest prover whoknows witness y for x succeeds in convincing thehonest verifier of his knowledge.

2) Soundness: If (x, y) /∈ R, no cheating prover canconvince the honest verifier that (x, y) ∈ R, exceptwith some small probability. It can be captured bythe existence of a knowledge extractor E to extractthe witness y: given oracle access to a cheatingprover P , the probability that E outputs y mustbe at least as high as the success probability of Pin convincing the verifier.

For a zero-knowledge proof of knowledge, it has theextra property of Zero-knowledge: no cheating verifierlearns anything other than (x, y) ∈ R. It is formalized byshowing that every cheating verifier has some simulatorthat can produce a transcript that is indistinguishable

Page 7: Fine-grained Two-factor Access Control for Web-based …users.monash.edu.au/~kailiu/mypaper/ieee-tifs-2016-5.pdf · Fine-grained Two-factor Access Control for ... access control protocol

7

with an interaction between the honest prover and thecheating (or honest) verifier.

5.3.1 Implementation of Protocol PK0

PK0{y : Y = hy0}.

Suppose Alice wants to prove the knowledge of y toBob. Alice picks a random number r ∈ Zp and sendsthe commitment R = hr0 to Bob. Bob returns a randomchallenge c ∈ Zp. Alice computes the response z = r+cy.Bob verifies that hz0 = R · Y c. Details of the protocolcan be found in Chapter 3 of [9]. For completeness, webriefly outline how PK0 provides soundess and zero-knowledgeness here. (Soundness) Suppose the simulatoris given a discrete logarithm instance (h0, Y ), it uses Yas the public key. Given a transcript (R, c, z), it rewindsto obtain another transcript (R, c′, z′). Since both of themare valid, it means that

hz0Y−c = hz

0 Y−c′ .

Hence the simulator can obtain z−z′c−c′ as the solution of

logh0Y . (Zero-knowledge) Given the public key h0, Y , the

simulator can randomly picks c, z ∈ Zp and computesR = hz0Y

−c. The transcript (R, c, z) has the same distri-bution as those coming from Alice and Bob.

5.3.2 Implementation of Protocol PK1

Before discussing PK1, it is useful to describe the goal ofPK1. The set {Ci}`i=1 is the commitment of the vector ~vsuch that ~vM = (1, 0, . . . , 0). In other words, the goal ofPK1 is to ensure the authenticating user is in possessionof a set of attributes that satisfies the monotone booleanfunction. The first challenge is to ensure the user canonly set vi to be non-zero if he is in possession ofattribute ρ(i). This is done by having his attributescertified with the BBS+ signature. More formally, theuser attribute key (A, e, s) is a BBS+ signature on thetuple (y, x1, . . . , xn). To ensure vi 6= 0 if and only ifxρ(i) = 1, PK1 requires the user to demonstrate severalrelationships. First of all, the user has to commit therelevant xi, which results in Di. Next, the user provesthat both Ci and Di are correctly computed as in Di =gxρ(i)hai and Ci = gvihti . The final relation Ci = Dvi

i hbi

is crucial, as it ensures that vi equals xivi. That is, if xiis 0, vi must be zero. Finally, the relation

e(A,whe) = e(hhy0hx11 . . . hxnn gs, h)

ensures the set of xi together with the user secret key yhas been signed (the corresponding signature is (A, e, s)),which means the set of attributes used is properly cer-tified. We shall elaborate how this could be conductedbased on the signature verification protocol of BBS+.

The final two relations mean that ~vM evaluates to(1, 0, . . . , 0).

Now we are ready to describe the implementation ofPK1. The prover first randomly generates k1, k2 ∈R Zp,computes A1 = gk1hk2 , A2 = Ahk1 , β1 = k1e, β2 = k2e,and conducts the following proof.

PK′1

(e, s, y, {xi}ni=1, {ai}`i=1, {bi}`i=1,

{vi}`i=1, {ti}`i=1, {fi}mi=1, k1, k2, β1, β2

):

A1 = gk1hk2 ∧1 = A−e1 gβ1hβ2 ∧

e(A2, w)

e(h, h)= e(h0, h)y e(h1, h)x1 · · · e(hn, h)xn

e(g, h)se(h,w)k1

e(h, h)β1/e(A2, h)e ∧e(g, h0)C−R = Cy ∧∧

i=1

(Di = gxρ(i)hai

)∧

∧i=1

(Ci = gvihti

)∧

∧i=1

(Ci = Dvi

i hbi)∧

(∏i=1

CMi,1

i )/g = hf1 ∧

m∧j=2

( ∏i=1

CMi,j

i = hfj)

PK′1 is a standard zero-knowledge proof-of-

knowledge which instantiates the idea of PK1.

Complete Specification of PK′1: For completeness, wedescribe the honest-verifier zero-knowledge version ofPK′1 assume the auxiliary elements are computed byAlice and has been sent to Bob. Note that the honest-verifier zero-knowledge protocol described below canbe turned into full zero-knowledge using the techniquedescribed in [16].• Commitment Phase: Alice randomly picks ρe, ρs, ρy ,ρx1

, . . ., ρxn , ρa1 , . . ., ρa` , ρb1 , . . ., ρb` , ρv1 , . . ., ρv` , ρt1 ,. . ., ρt` , ρf1 , . . ., ρfm , ρk1 , ρk2 , ρβ1 , ρβ2 and computesthe following (3` + m + 4) values, usually referredto as commitments.

T1 = gρk1hρk2 ,

T2 = A−ρe1 gρβ1hρβ2 ,T3 = e(h0, h)ρy e(h1, h)ρx1 · · · e(hn, h)ρxn ·

e(g, h)ρs e(h,w)ρk1 e(h, h)ρβ1 e(A2, h)−ρe ,T4 = Cρy ,T5,i = g

ρxρ(i)hρai , for i = 1 to `T6,i = gρvihρti , for i = 1 to `

T7,i = Dρvii hρbi , for i = 1 to `

T8 = hρf1 ,T9,j = hρfj for j = 2 to m.

Alice sends (T1, T2, T3, T4, {T5,i}`i=1, {T6,i}`i=1,{T7,i}`i=1, T8, {T9,j}mj=2) to Bob. In practice, all pair-ing operations with known public parameters canbe pre-computed. The only pairing operation thatneeds to be computed online is e(A2, h).

Page 8: Fine-grained Two-factor Access Control for Web-based …users.monash.edu.au/~kailiu/mypaper/ieee-tifs-2016-5.pdf · Fine-grained Two-factor Access Control for ... access control protocol

8

• Challenge Phase: Bob randomly picks c ∈R Zp andsends c to Alice.

• Response Phase: Alice computes the following (n +4`+m+ 7) values, usually referred to as responses.

ze = ρe − ce,zs = ρs − cs,zy = ρy − cy,zxi = ρxi − cxi for i = 1 to n,

zai = ρai − cai for i = 1 to `,

zbi = ρbi − cbi for i = 1 to `,

zvi = ρvi − cvi for i = 1 to `,

zti = ρti − cti for i = 1 to `,

zfj = ρfj − cfj for j = 1 to m,

zk1 = ρk1 − ck1,zk2 = ρk2 − ck2,zβ1 = ρβ1 − cβ1,zβ2 = ρβ2 − cβ2.

Alice sends these n+ 4`+m+ 7 values to Bob.• Verification Phase: Bob validates the proof by evalu-

ating the following 3`+m+ 4 equations.

T1 = Ac1gzk1hzk2 ,

T2 = A−ze1 gzβ1hzβ2 ,

T3 = ( e(A2,w)e(h,h) )ce(h0, h)zy e(h1, h)zx1 · · · e(hn, h)zxn

·e(g, h)zs e(h,w)zk1 e(h, h)zβ1 e(A2, h)−ze ,T4 = (e(g, h0)C−R)cCzy ,T5,i = Dc

i gzxρ(i)hzai , for i = 1 to `

T6,i = Cci gzvihzti , for i = 1 to `

T7,i = CciDzvii hzbi , for i = 1 to `

T8 = (∏`i=1 C

Mi,1i

g )chzf1 ,

T9,j = (∏`i=1 C

Mi,j

i )chzfj for j = 2 to m.

Bob accepts the proof if and only if all the aboveequalities hold. In practice, most of the pairingoperations can be pre-computed. Only e(A2, w) ande(A2, h) need to be computed online.In addition, the auxiliary values can be sent in con-junction with the commitment in the commitmentphase. Thus, the resulting protocol still consists ofthree-message flows.

Soundness and Zero-Knowledgeness of PK′1: Our in-stantiation of PK1 thus consists of the auxiliary valuesA1 and A2, in addition to PK′1. PK′1 consists of variousstatements related to the knowledge of discrete loga-rithm. Interested readers may refer to Chapter 3 of [9]which discusses how complex statements (such as theone employed in PK′1) can be composed from simplestatements. Furthermore, the resulting proof protocolis honest-verifier zero-knowledge. That is, there existsan efficient algorithm, called simulator S ′, which, oninput a random challenge c, can output a communicationtranscript whose distribution is identical to those coming

from Alice. Furthermore, PK′1 is sound, meaning thatthere exists another efficient algorithm, called extractorE ′, which is capable of outputting the underlying set (e,s, y, {xi}ni=1, {ai}`i=1, {bi}`i=1, {vi}`i=1, {ti}`i=1, {fi}mi=1,k1, k2, β1, β2) when it is given blackbox access to a proverin PK′1.Honest-Verifier Zero-Knowledgeness of PK1: To showthat our instantiation of PK1 is honest-verifier zero-knowledge, we only need to demonstrate to constructanother simulator S, which is capable of outputting thetranscript of the whole PK1 on input challenge c.

Our construction of S simply picks at random A1,A2 ∈R G and invokes the zero-knowledge simulator S ′for PK′1. The transcript outputted by S ′ will be correct,and it remains to show that the auxiliary values pickedby S is also correctly distributed. The argument is asfollows: for any value A, there exists a unique value k2such that A2 = Ahk1 . For this specific k2, there exists aunique value k1 such that A1 = gk1hk2 . In other words,the auxiliary values A1,A2 picked by S are correctlydistributed.Soundness of PK1: Soundness of PK′1 guarantees ex-istence of a simulator E ′ which allows our constructionof E to extract from the prover the set of values (e ,s, y,{xi}ni=1, {ai}`i=1, {bi}`i=1, {vi}`i=1, {ti}`i=1, {fi}mi=1, k1, k2,β1, β2). It remains to show how E can obtain the valueA which satisfies the equations for PK1.E first invokes E ′. Due to the soundness of the first

equation in PK′1, we have

e(A2, w)

e(h, h)= e(h0, h)y e(h1, h)x1 · · · e(hn, h)xn

e(g, h)se(h,w)k1

e(h, h)β1/e(A2, h)e

Due to the soundness of PK′1, we have A1 = gk1hk2

and 1 = Ae1gβ1hβ2 . This implies β1 = k1e. Putting β1 =

k1e and rearranging the terms,

e(A2h−k1 , whe) = e(hhy0h

x11 · · ·hxnn gs, h)

Thus, E can compute A as A2h−k1 . E outputs (A, e,

s, y, {xi}ni=1, {ai}`i=1, {bi}`i=1, {vi}`i=1, {ti}`i=1, {fi}mi=1)as the set of witnesses satisfying PK1. Therefore, ourinstantiation of PK1 is sound.

5.4 Security Analysis5.4.1 Authentication, access without security device, ac-cess without secret keyLet n be the total number of users of the system. LetU = {U1, . . . , Un} be a set of users. We use (Yi, yi), Ai,sk(i)Ai,Yi , tokeni to denote the user key pair, attribute set,attribute key and the security device for Ui respectively.

If user Ui is controlled by the attacker, we assumeyi is chosen by the attacker and (sk(i)Ai,Yi , tokeni) isgiven to the attacker. In addition, the attacker may have((Yi, yi, sk(i)Ai,Yi) or tokeni, but not both, from some honestuser Ui.

Page 9: Fine-grained Two-factor Access Control for Web-based …users.monash.edu.au/~kailiu/mypaper/ieee-tifs-2016-5.pdf · Fine-grained Two-factor Access Control for ... access control protocol

9

To model the temper-resistant nature of the securitydevice, we model tokeni as an oracle Oi with the follow-ing behaviour:

Oracle Oi (internal state: TG, TY, tsk)Input (C, y,R)Output (cR, zR) if TG = Cy+R ∧ TY = TGy

s.t. cR = H(tpkcR e(g, h0)zR ||R||C);⊥ otherwise.

We allow the attacker to specify the security device forrevocation. If a security device tokeni is revoked, oracleOi will no longer be available.

We further assume the claim-predicate Υ is chosen bythe attacker. An attacker is said to breach the securityrequirement of authentication, access without securitydevice or access without secret key if it can authenticatesuccessfully for the predicate Υ if for all i such that Uiis controlled by the attacker, Υ(Ai) 6= 1 unless the tokenihas been revoked.

The last condition is to capture the situation that thesecurity device is used as a mechanism to revoke a user.A user who is in possession of a security device shouldnot be able to authenticate anymore after it has beenrevoked.

Regarding the security of our scheme, we have thefollowing lemma.

Lemma 1: If there exists an attacker F against ourscheme, there exists a simulator S , having blackboxaccess to F , that can existentially forge a BBS+ signatureor the Schnorr signature under the adaptive chosen mes-sage attack or solving the discrete logarithm problem.

Proof: In the following we prove Lemma 1 by con-structing the simulator S under the assumption thatattacker F exists. We utilise the fact that PK0 andPK1 are zero-knowledge proof-of-knowledge protocols.In other words, there exist knowledge extractors E0

and E1 that can extract the underlying witnesses of thecorresponding protocols.

• Common Parameters. Let p,G,GT , e be a bilin-ear group with g ∈ G being a generator. Letg, h, h0, h1, . . . , hn be additional generators of G. Weuse TG to denote e(g, h0). We further assume fulldomain hash H : {0, 1}∗ → Zp which is modelled asa random oracle.

• Problem Instances. S is given a discrete logarithmproblem instance Y ∗, h0. S is also given the publickey of an instance of BBS+ signature B.PK and thepublic key of an instance of Schnorr signature S.PKdefined over the common parameters. Specifically,

B.PK = w = hγ ,S.PK = tpk = TGtsk.

The corresponding signing keys, B.SK = γ andS.SK = tsk, are kept secret from S. As an adap-tive chosen message attacker, S can issue signaturequeries to the following two oracles:

– OBBS+. On input (m0,m1, . . . ,mn), this oracle

returns (A, e, s) such that

e(A,whe) = e(hhx00 h

x11 · · ·hxnn gs, h).

– OSchnorr. On input (m), this oracle returns (c, z)such that

c = H(tpkcTGz||m).

• Goal of S. The goal of S is to output y∗ such thatY ∗ = hy

0 or to output a BBS+ signature (resp.Schnorr signature) on a message M that has neverbeen input to OBBS+ (resp. OSchnorr).

Now we are ready to construct S who has blackboxaccess to attacker F against our scheme and show thatwhenever F is successful, S can output a forgery.

• System Setup. Using the common parameters, B.PKand tpk, S sets

TPK = (G,GT , p, e, g, g, h, h0, h1, . . . , hn, H, tpk)

andAPK = w.

TPK and APK are given to F .• User Key Generation. S maintains four index sets,

namely, I1, I2, I3, I4, all of which are empty initially.For each user Ui, F could choose one of the follow-ing three options.

1) Full Control. F presents a value Yi, which willbe treated as UPK of the user Ui. F will alsopresent a set Ai = (x1, . . . , xn), which repre-sents the attribute of user Ui. F and S engagein protocol PK0. S invokes the extractor E0 toobtain yi such that Yi = hyi0 . Next, S queriesits oracle OBBS+ on input (yi, x1, . . . , xn) andobtains skAi,Yi = (Ai, ei, si). S returns to F(skAi,Yi) as the user’s attribute key. F will alsohave access to oracle Oi which simulates tokeni.How S simulates Oi will be discussed in thenext item. S sets I1 = I1 ∪ {i}.

2) Stolen Key. F presents an attribute set (Ai =(x1, . . . , xn)) for user Ui. S randomly picks yi,computes Yi = hyi0 and sets UPK for user Uito be Yi. Next, S queries its oracle OBBS+on input (yi, x1, . . . , xn) and obtains skAi,Yi =(Ai, ei, si). S returns to F (skAi,Yi) as the user’sattribute key and yi as USK. S sets I2 = I2∪{i}.

3) Stolen Device. F presents an attribute set (Ai =(x1, . . . , xn)) for user Ui. S randomly picks βi,computes Yi = Y ∗βi and sets UPK for user Uito be Yi. S returns to F the public key UPKand F is allowed to query oracle Oi. S setsI3 = I3 ∪ {i}

• Oracle Oi. Note that F is only allowed to access Oifor i ∈ I1 ∪ I3. F inputs (C, y,R) to oracle Oi. Sfirst checks if e(g,UPKi) = TGy and Cy+R = TG. Ifany of these checks fail, return ⊥. If i ∈ I3 and thechecks succeed, S returns y/βi as the solution to the

Page 10: Fine-grained Two-factor Access Control for Web-based …users.monash.edu.au/~kailiu/mypaper/ieee-tifs-2016-5.pdf · Fine-grained Two-factor Access Control for ... access control protocol

10

discrete logarithm problem and aborts4. Otherwise,S issues a query to OSchnorr on input (R||C) andobtains (c, z). S returns (c, z) to F .

• Device revocation. F instructs S to revoke securitydevice tokeni for some i ∈ I1. S sets I1 = I1 \ {i}and I4 = I4∪{i}. F will no longer be able to accessoracle Oi.

Finally, F chooses a claim-predicate Υ. This is subjectto the condition that for all i ∈ I1, Υ(Ai) 6= 1.

• S picks a random R and sends it to F .• F submits (C, cR, zR, C1, . . . , C`, D1, . . . , D`) and en-

gages with S in protocol PK1. S uses extractor E1

to extract from F the set of witnesses(A, e, s, y, {xi}ni=1, {ai}`i=1, {bi}`i=1,{vi}`i=1, {ti}`i=1, {fi}mi=1

).

• S checks the history of query to Oi. If there isno query with input (C, ·, R), (cR, zR) forms a newSchnorr signature on C||R. In this case, S simplyoutputs (cR, zR) as the forged signature on R||C andaborts.

• If S does not abort, the query to Oi must be froman index i in I1 or I3. The probability that it is in I4is negligible since R is chosen at random. We havealready shown a successful query for Oi such thati ∈ I3 implies a solution to the discrete logarithmproblem. Thus, it is safe to conclude that i ∈ I1. Wedenote the index to be i∗.

• Due to the soundness of PK1, the value y extractedsatisfies the relationship

e(g, h0)C−R = Cy.

This implies TG = Cy+R. Since each UPK is unique,and there is only one unique y that allows the use oforacleOi, the index i∗ is unique and there must havebeen an input (C, y,R) to O∗i . This value y satisfiesUPK∗i = hy0 .

• S has only issue one oracle query to OBBS+ withinput (y, . . .) (this is issued when it is creating useri∗). Denote the query as (y, x′1, . . . , x

′n). On the other

hand, due to the soundness of PK1, the extractedvalues (A, e, s, y, x1, . . . , xn) satisfy the relationship

e(A,whe) = e(hhy0hx11 . . . hxnn gs, h).

In other words, (A, e, s) is a valid BBS+ signa-ture on (y, x1, . . . , xn). In the following we show(y, x1, . . . , xn) 6= (y, x′1, . . . , x

′n) and thus S can out-

put the former as the forged BBS+ signature. Recallthat A′ := (x′1, . . . , x

′n) represents the attribute set

for user U∗i . Thus, Υ(A′) 6= 1 since i∗ ∈ I1.Due to the soundness of PK1,

4. Recall that for i ∈ I3, UPKi = Y ∗βi . Thus, e(g,UPKi) = TGy

implies e(g, Y ∗)βi = e(g, h0)y which in turns implies Y ∗ = hy/βi0 .

{xi}ni=1, {ai}`i=1, {bi}`i=1, {vi}`i=1, {ti}`i=1) satisfy∧`i=1

(Di = gxρ(i)hai

)∧∧`

i=1

(Ci = gvihti

)∧∧`

i=1

(Ci = Dvi

i hbi).

Since all x′i are from {0, 1}, we have completed theproof if there exists xi 6= 0 and xi 6= 1. It meansthat Di can only be ghai or hai . If xρ(i) = 0, vi mustbe 0. Otherwise, S has found a way to representCi as gvihti and also haivi+bi and can thus solve thediscrete logarithm problem of h to base g. Followingthis idea, gahb = gchd implies a = c and b = d underthe discrete logarithm assumption.Consider the last two relations from PK1:

( ∏i=1

CMi,1

i )/g = hf1 ∧m∧j=2

( ∏i=1

CMi,j

i = hfj).

Equating the exponent of g on both sides, we have∑`i=1 viMi,1 = 1. Likewise, we have

∑`i=1 viMi,j = 0

for j = 2 to m. That is, ~vM = (1, 0, . . . , 0).In other words, there exists ~v such that ~vM =(1, 0, . . . , 0) and for all i, xρ(i) = 0 impliesvi = 0. It means that Υ(x1, . . . , xn) = 1. Re-call that Υ(x′1, . . . , x

′n) 6= 1, we have shown that

(x1, . . . , xn) 6= (x′1, . . . , x′n). Thus, S can submit

(A, e, s) as a forged BBS+ signature on message(y, x1, . . . , xn).

5.4.2 PrivacyIn every authentication, the information obtained by theserver consists of two parts, namely, (C, cR, zR, C1, . . .,C`, D1, . . ., D`) and the verifier’s view of PK1. Notethat PK1 is zero-knowledge and is simulated withouthaving the actual witnesses. Note that this implies wehave to employ the zero-knowledge version insteadof the honest-verifier zero-knowledge version since theserver is playing the role of the verifier. cR, zR leaks noinformation since they are distributed identically for alllegitimate users. C1, . . ., C`, D1, . . ., D` are information-theoretic secure commitment and again leak no informa-tion. The only component containing information aboutthe user is C = e(g, h0)

1y+R . This is the verifiable random

function with seed y on input R and is computationallyindistinguishable from a random value in GT [18].

5.5 Efficiency AnalysisWe analyze the efficiency of our protocol in two parts.In the first part, we identify the major operations for theauthentication protocol in Table 4. The symbols P , E1,ET represent the time cost (in ms) of a pairing operation,an exponentiation in group G and group GT respectively.The symbol Zp, G, GT represents the size of an element(in bits) in Zp, G and GT respectively.

We consider three different platforms, namely, a com-puter, a smart phone and a smart card.

Page 11: Fine-grained Two-factor Access Control for Web-based …users.monash.edu.au/~kailiu/mypaper/ieee-tifs-2016-5.pdf · Fine-grained Two-factor Access Control for ... access control protocol

11

TABLE 2: Time and space cost of on different platformsComputer Smartphone Smartcard [40]

P 6.4 32 -E1 2.5 13 -ET 0.4 2.2 200Zp 160G 512GT 1024

TABLE 3: Test PlatformsComputer Smartphone

Config Intel Core i5- Samsung Galaxy [email protected] Quad-core 2.45Ghz

Ram 4GB 2GBOS Windows 7 Pro Andriod 4.4.2

For the time cost on a smartcard, we use the bench-mark result from [40]. The configuration of our platformsare as follows.

We use Miracl library version 5.2. The base field is aprime field Fq , where q is a 512-bit prime whose value is:

8BA2A5229BD9C57CFC8ACEC76DFDBF3E

3E1952C6B3193ECF5C571FB502FC5DF4

10F9267E9F2A605BB0F76F52A79E8043

BF4AF0EF2E9FA78B0F1E2CDFC4E8549B

The elliptic curve is defined by the equation y2 =x3 + 1 mod q. The group G (as well as GT ) is of orderp = 8000000000000000000000000000000000020001, wherep is a 160-bit prime. The pairing is Tate pairing. Table 4listed the number of operations and communication foran authentication transaction. Recall that n is the size ofthe attribute universe, ` and m are the length and widthof the span program representing the access policy.

5.5.1 SimulationAssume the total number of attributes in the systemis 100. In other words, the attribute universe A ={1, . . . , 100}. In the following we estimate the efficiencyof our system using policy of the following format:

a∨i=1

b∧j=1

(attri,j)

,

where attri,j maybe re-used in different clauses. In gen-eral, this kind of policy can be represented by a spanprogram of length ` = a∗ b and width m = a∗ (b−1)+1.

TABLE 4: Authentication ComplexityTime and Space Cost

User’s Computer (9`+m+ n+ 6) E1 + 2 ET+1 PSecurity Device 3 ET

Server (9`+ 2m+ n+ 12) E1 + 1 ET + 2 PTransmission 3GT + (5`+ 2)G+(4`+m+ n+ 12)Zp

The following graphs shows the bandwidth requirement,computational cost at server and user of our system forpolicy of various size.

Fig. 2 shows the time cost of the server to authenticatea single user. For a relatively simple policy, say, consist-ing of 2 clauses with 2 attributes per clause for a total of 4attributes, the time is less than 0.3 seconds. For a policyof 10 clauses with 10 attributes per clause, the time isaround 3 seconds. While the asymptotic complexity atthe user is similar to that of the server, the time cost fora user is about five times slower due to the use of a lesspowerful computing device (a smartphone). One shouldnote that the security device is not the bottleneck as itonly accounts for a constant time cost of 0.6 seconds.Please refer to Fig. 3 for the time complexity at theuser side. The total authentication time for a policy with100 attributes, arranged as 10 clauses with 10 attributeseach, is about 18 seconds. The communication cost ofour protocol is depicted in Fig. 4. In particular, for apolicy of 100 attributes, the total bandwidth requirementis around 45 KB, which is acceptable for today’s network.One could conclude that our protocol is plausible forvery simple policy and is still not practical yet for policyof medium size.

Having said that, we would like to remark that theprotocol might be optimised. Two possible approachescould be adopted. Firstly, notice that many of the expo-nentiations are of the form gxhy for some fixed basesg and h. This kind of operation is known as multi-base exponentiation and can be computed at about thecost of 110% of a single base exponentiation. It is alsoworth noting that for fixed base, there are a number ofpre-processing techniques available. It is quite likely toreduce the time by half.

Fig. 2: Running time of the Auth protocol (Server side)(s)

6 CONCLUSION

In this paper, we have presented a new 2FA (includingboth user secret key and a lightweight security device)

Page 12: Fine-grained Two-factor Access Control for Web-based …users.monash.edu.au/~kailiu/mypaper/ieee-tifs-2016-5.pdf · Fine-grained Two-factor Access Control for ... access control protocol

12

Fig. 3: Running time of the Auth protocol (User side) (s)

Fig. 4: Communication cost of the Auth protocol (KB)

access control system for web-based cloud computingservices. Based on the attribute-based access controlmechanism, the proposed 2FA access control system hasbeen identified to not only enable the cloud server torestrict the access to those users with the same set ofattributes but also preserve user privacy. Detailed secu-rity analysis shows that the proposed 2FA access con-trol system achieves the desired security requirements.Through performance evaluation, we demonstrated thatthe construction is “feasible”. We leave as future workto further improve the efficiency while keeping all nicefeatures of the system.

REFERENCES

[1] M. H. Au and A. Kapadia. PERM: practical reputation-basedblacklisting without TTPS. In T. Yu, G. Danezis, and V. D. Gligor,editors, the ACM Conference on Computer and CommunicationsSecurity, CCS’12, Raleigh, NC, USA, October 16-18, 2012, pages 929–940. ACM, 2012.

[2] M. H. Au, A. Kapadia, and W. Susilo. Blacr: Ttp-free blacklistableanonymous credentials with reputation. In NDSS. The InternetSociety, 2012.

[3] M. H. Au, W. Susilo, and Y. Mu. Constant-Size Dynamic k-TAA.In SCN, volume 4116 of Lecture Notes in Computer Science, pages111–125. Springer, 2006.

[4] J. Baek, Q. H. Vu, J. K. Liu, X. Huang, and Y. Xiang. A securecloud computing based framework for big data information man-agement of smart grid. IEEE T. Cloud Computing, 3(2):233–244,2015.

[5] M. Bellare and O. Goldreich. On defining proofs of knowledge. InCRYPTO, volume 740 of Lecture Notes in Computer Science, pages390–420. Springer, 1992.

[6] J. Bethencourt, A. Sahai, and B. Waters. Ciphertext-policyattribute-based encryption. In IEEE Symposium on Security andPrivacy, pages 321–334. IEEE Computer Society, 2007.

[7] D. Boneh, X. Boyen, and H. Shacham. Short Group Signatures.In Franklin [19], pages 41–55.

[8] D. Boneh, X. Ding, and G. Tsudik. Fine-grained control of securitycapabilities. ACM Trans. Internet Techn., 4(1):60–82, 2004.

[9] J. Camenisch. Group Signature Schemes and Payment Systems Basedon the Discrete Logarithm Problem. PhD thesis, ETH Zurich, 1998.Reprint as vol. 2 of ETH Series in Information Security and Cryptog-raphy, ISBN 3-89649-286-1, Hartung-Gorre Verlag, Konstanz, 1998.

[10] J. Camenisch, M. Dubovitskaya, and G. Neven. Oblivious transferwith access control. In E. Al-Shaer, S. Jha, and A. D. Keromytis,editors, Proceedings of the 2009 ACM Conference on Computer andCommunications Security, CCS 2009, Chicago, Illinois, USA, Novem-ber 9-13, 2009, pages 131–140. ACM, 2009.

[11] J. Camenisch and A. Lysyanskaya. A signature scheme withefficient protocols. In S. Cimato, C. Galdi, and G. Persiano,editors, Security in Communication Networks, Third InternationalConference, SCN 2002, Amalfi, Italy, September 11-13, 2002. RevisedPapers, volume 2576 of Lecture Notes in Computer Science, pages268–289. Springer, 2002.

[12] J. Camenisch and A. Lysyanskaya. Signature Schemes and Anony-mous Credentials from Bilinear Maps. In Franklin [19], pages56–72.

[13] Y. Chen, Z. L. Jiang, S. Yiu, J. K. Liu, M. H. Au, and X. Wang. Fullysecure ciphertext-policy attribute based encryption with securitymediator. In ICICS ‘14, volume 8958 of Lecture Notes in ComputerScience, pages 274–289. Springer, 2014.

[14] S. S. M. Chow, C. Boyd, and J. M. G. Nieto. Security-mediatedcertificateless cryptography. In Public Key Cryptography, volume3958 of Lecture Notes in Computer Science, pages 508–524. Springer,2006.

[15] C. Chu, W. T. Zhu, J. Han, J. K. Liu, J. Xu, and J. Zhou. Secu-rity concerns in popular cloud storage services. IEEE PervasiveComputing, 12(4):50–57, 2013.

[16] R. Cramer, I. Damgard, and P. D. MacKenzie. Efficient zero-knowledge proofs of knowledge without intractability assump-tions. In H. Imai and Y. Zheng, editors, Public Key Cryptography,volume 1751 of Lecture Notes in Computer Science, pages 354–373.Springer, 2000.

[17] Y. Dodis, J. Katz, S. Xu, and M. Yung. Key-insulated public keycryptosystems. In EUROCRYPT, volume 2332 of Lecture Notes inComputer Science, pages 65–82. Springer, 2002.

[18] Y. Dodis and A. Yampolskiy. A verifiable random functionwith short proofs and keys. In S. Vaudenay, editor, Public KeyCryptography, volume 3386 of Lecture Notes in Computer Science,pages 416–431. Springer, 2005.

[19] M. K. Franklin, editor. Advances in Cryptology - CRYPTO 2004, 24thAnnual International CryptologyConference, Santa Barbara, California,USA, August 15-19, 2004, Proceedings, volume 3152 of Lecture Notesin Computer Science. Springer, 2004.

[20] V. Goyal, O. Pandey, A. Sahai, and B. Waters. Attribute-basedencryption for fine-grained access control of encrypted data. InACM Conference on Computer and Communications Security, pages89–98. ACM, 2006.

[21] J. Han, W. Susilo, Y. Mu, and J. Yan. Privacy-preserving decen-tralized key-policy attribute-based encryption. IEEE Trans. ParallelDistrib. Syst., 23(11):2150–2162, 2012.

[22] X. Huang, J. K. Liu, S. Tang, Y. Xiang, K. Liang, L. Xu, andJ. Zhou. Cost-effective authentic and anonymous data sharingwith forward security. IEEE Trans. Computers, 64(4):971–983, 2015.

[23] J. Hur. Attribute-based secure data sharing with hidden policiesin smart grid. IEEE Trans. Parallel Distrib. Syst., 24(11):2171–2180,2013.

[24] J. Hur. Improving security and efficiency in attribute-based datasharing. IEEE Trans. Knowl. Data Eng., 25(10):2271–2282, 2013.

Page 13: Fine-grained Two-factor Access Control for Web-based …users.monash.edu.au/~kailiu/mypaper/ieee-tifs-2016-5.pdf · Fine-grained Two-factor Access Control for ... access control protocol

13

[25] T. Jiang, X. Chen, J. Li, D. S. Wong, J. Ma, and J. K. Liu. TIMER:secure and reliable cloud storage against data re-outsourcing.In ISPEC ‘14, volume 8434 of Lecture Notes in Computer Science.Springer, 2014.

[26] A. Juels, D. Catalano, and M. Jakobsson. Coercion-resistantelectronic elections. In WPES 2005, pages 61–70. ACM Press, 2005.

[27] J. Lai, R. H. Deng, C. Guan, and J. Weng. Attribute-based encryp-tion with verifiable outsourced decryption. IEEE Transactions onInformation Forensics and Security, 8(8):1343–1354, 2013.

[28] M. Li, X. Huang, J. K. Liu, and L. Xu. GO-ABE: group-orientedattribute-based encryption. In NSS ‘14, volume 8792 of LectureNotes in Computer Science, pages 260–270. Springer, 2014.

[29] M. Li, S. Yu, Y. Zheng, K. Ren, and W. Lou. Scalable andsecure sharing of personal health records in cloud computingusing attribute-based encryption. IEEE Trans. Parallel Distrib. Syst.,24(1):131–143, 2013.

[30] K. Liang, M. H. Au, J. K. Liu, W. Susilo, D. S. Wong, G. Yang,T. V. X. Phuong, and Q. Xie. A dfa-based functional proxy re-encryption scheme for secure public cloud data sharing. IEEETransactions on Information Forensics and Security, 9(10):1667–1680,2014.

[31] K. Liang, J. K. Liu, D. S. Wong, and W. Susilo. An efficient cloud-based revocable identity-based proxy re-encryption scheme forpublic clouds data sharing. In ESORICS ‘14, volume 8712 ofLecture Notes in Computer Science, pages 257–272. Springer, 2014.

[32] K. Liang, W. Susilo, and J. K. Liu. Privacy-preserving ciphertextmulti-sharing control for big data storage. IEEE Transactions onInformation Forensics and Security, 10(8):1578–1589, 2015.

[33] J. K. Liu, M. H. Au, W. Susilo, K. Liang, R. Lu, and B. Srinivasan.Secure sharing and searching for real-time video data in mobilecloud. IEEE Network, 29(2):46–50, 2015.

[34] J. K. Liu, M. H. Au, W. Susilo, and J. Zhou. Enhancing locationprivacy for electric vehicles (at the right time). In S. Foresti,M. Yung, and F. Martinelli, editors, Computer Security - ESORICS2012 - 17th European Symposium on Research in Computer Security,Pisa, Italy, September 10-12, 2012. Proceedings, volume 7459 ofLecture Notes in Computer Science, pages 397–414. Springer, 2012.

[35] H. K. Maji, M. Prabhakaran, and M. Rosulek. Attribute-basedsignatures. In CT-RSA, volume 6558 of Lecture Notes in ComputerScience, pages 376–392. Springer, 2011.

[36] M. Nabeel, N. Shang, and E. Bertino. Privacy preserving policy-based content sharing in public clouds. IEEE Trans. Knowl. DataEng., 25(11):2602–2614, 2013.

[37] T. Okamoto. Receipt-Free Electronic Voting Schemes for LargeScale Elections. In Workshop on Security Protocols 97, volume 1361of Lecture Notes in Computer Science, pages 25–35. Springer, 1997.

[38] T. Okamoto and K. Takashima. Efficient attribute-based signaturesfor non-monotone predicates in the standard model. In Public KeyCryptography, volume 6571 of Lecture Notes in Computer Science,pages 35–52. Springer, 2011.

[39] R. Ostrovsky, A. Sahai, and B. Waters. Attribute-based encryptionwith non-monotonic access structures. In ACM Conference onComputer and Communications Security, pages 195–203. ACM, 2007.

[40] M. Scott, N. Costigan, and W. Abdulwahab. Implementingcryptographic pairings on smartcards. In CHES, volume 4249 ofLecture Notes in Computer Science, pages 134–147. Springer, 2006.

[41] S. F. Shahandashti and R. Safavi-Naini. Threshold attribute-basedsignatures and their application to anonymous credential systems.In AFRICACRYPT, volume 5580 of Lecture Notes in ComputerScience, pages 198–216. Springer, 2009.

[42] Z. Wan, J. e Liu, and R. H. Deng. Hasbe: A hierarchical attribute-based solution for flexible and scalable access control in cloudcomputing. IEEE Transactions on Information Forensics and Security,7(2):743–754, 2012.

[43] Y. Wu, Z. Wei, and R. H. Deng. Attribute-based access toscalable media in cloud-assisted content sharing networks. IEEETransactions on Multimedia, 15(4):778–788, 2013.

[44] F. Xhafa, J. Wang, X. Chen, J. K. Liu, J. Li, and P. Krause. Anefficient PHR service system supporting fuzzy keyword searchand fine-grained access control. Soft Comput., 18(9):1795–1802,2014.

[45] C. Yao, L. Xu, X. Huang, and J. K. Liu. A secure remote dataintegrity checking cloud storage system from threshold encryp-tion. J. Ambient Intelligence and Humanized Computing, 5(6):857–865,2014.

[46] W.-S. Yap, S. S. M. Chow, S.-H. Heng, and B.-M. Goi. Securitymediated certificateless signatures. In ACNS, volume 4521 ofLecture Notes in Computer Science, pages 459–477. Springer, 2007.

[47] T. H. Yuen, J. K. Liu, M. H. Au, X. Huang, W. Susilo, andJ. Zhou. k-times attribute-based anonymous access control forcloud computing. IEEE Trans. Computers, 64(9):2595–2608, 2015.

APPENDIXA RUNNING EXAMPLE

We will use the access structure (attr1 ∧ attr2) ∨ attr3 onattributes attr1, attr2, attr3 for our running example. Thissimple policy could represent, for example, access to thecomputer laboratory is allowed for students from the CSdepartment or any staff member. The attribute universeis A = {1, 2, 3}. This policy can be represented by thespan program (M, ρ) where M is a 3× 2 matrix:1 0

1 10 1

with the labelling function ρ : [1, 3] → A defined byρ(1) = 3, ρ(2) = 2 and ρ(3) = 1. In this example, a userwith attributes (attr1, attr2) can compute the vector ~v =(0, 1, −1) which illustrate his satisfaction of the policysince:

(0, 1,−1)

1 01 10 1

= (1, 0);

and for all i, vρ(i) = 0 if the user is not in possession ofattribute attri.

Likewise, the vector for a user with attribute (attr3)can compute the vector (1, 0, 0). Note that vρ(1) and vρ(2)for this vector are both 0 and

(1, 0, 0)

1 01 10 1

= (1, 0).

Key Generation of user with attributes (attr1, attr2):Let USK = y and UPK = Y = hy0 . The security device ofthis user is initialized with TY = e(g, Y ), TG = e(g, h0)and tsk. Upon completion of the AttrGen protocol, theuser obtains a sk{attr1,attr2},Y := (A, e, s) such that

A = (hY h1h2gs)

1γ+e .

Auth:Step 1 to 4 of the authentication protocol is quite intu-itive. Below we show in detail what this user does fromstep 5 of the protocol.

5) Since the user is in possession of attributes(attr1, attr2), his vector ~v = (v1, v2, v3) will be (0,1, −1) such that ~vM = (1, 0). Recall that M is a3× 2 Matrix of the form:1 0

1 10 1

.6) For i = 1 to 3, the user randomly picks ai, ti ∈R Zp

and computes Ci = gvihti , Di = gxρ(i)hai . The user

Page 14: Fine-grained Two-factor Access Control for Web-based …users.monash.edu.au/~kailiu/mypaper/ieee-tifs-2016-5.pdf · Fine-grained Two-factor Access Control for ... access control protocol

14

also computes bi = ti − aivi. That is,

C1 = ht1 , D1 = gha1 , b1 = t1C2 = ght2 , D2 = gha2 , b2 = t2 − a2C3 = g−1ht3 , D3 = ha3 , b3 = t3 + a3

7) For j = 1 to 2, the user computes fj =∑3i=1 tiMi,j .

That is,f1 = t1 + t2f2 = t2 + t3

Then the user sends (C, cR, zR, C1, C2, C3, D1, D2,D3, f1, f2) to the authentication server. Note that(b1, b2, b3, f1, f2) are not sent. They are used aswitnesses in the zero-knowledge proof.

8) We explain the intuition of PK1 for this accesspolicy in this particular scenario.

• The first relation

e(A,whe) = e(hhy0hx11 h

x22 h

x33 g

s, h)

convinces the server that the tuple (y, x1, x2, x3)has been properly certified by the attribute-issuing authority. For this user, the tuple is(y, 1, 1, 0) where y is his secret key. Soundnessof the zero-knowledge proof (and the unforge-ability of BBS+ signature) guarantees that theuser can only use his secret key y, x1 = 1,x2 = 1 and x3 = 0 in this proof.

• The second relation

e(g, h0)C−R = Cy

convinces the server that the second step of theprotocol is correctly computed since it impliesC = e(g, h0)

1y+R .

• We look at the next three relations together:

D1 = gx3ha1∧ D2 = gx2ha2∧ D3 = gx1ha3∧C1 = gv1ht1∧ C2 = gv2ht2∧ C3 = gv3ht3∧C1 = D1

v1hb1∧ C2 = D2v2hb2∧ C3 = D3

v3hb3

The goal of these three relations is to convincethe verifier that vρ(i) = 0 if xi = 0. To see this,we plug in the value of xi for this authenticat-ing user which is in possession of attr1, attr2.That is, x1 = 1, x2 = 1 and x3 = 0.

D1 = ha1∧ D2 = gha2∧ D3 = gha3∧C1 = gv1ht1∧ C2 = gv2ht2∧ C3 = gv3ht3∧C1 = D1

v1hb1∧ C2 = D2v2hb2∧ C3 = D3

v3hb3

Looking at the first column, since D1 = ha1

and C1 = D1v1hb1 , we have C1 = ha1v1+b1 .

Now we also have C1 = gv1ht1 . Thus, wehave v1 = 0 and t1 = a1v1 + b1 = b1. Thisdeduction is correct under the assumption thatthe discrete logarithm of h to base g is notknown to the prover. On the other hand, ifxρ(i) = 1, the value of vi can be arbitrary.For example, since D2 = gha2 , C2 = D2

v2hb2

implies C2 = gv2ha2v2+b2 . And we have C2 =

gv2ht2 . In this case, we have t2 = a2v2 + b2 andthere is no constraint on v2.

• Finally, we can look at the last two relations:

C1C2/g = hf1 ∧ C2C3 = hf2 .

From the discussions above discussions, weknow that Ci = gvihti for i = 1 to 3. Thus,C1C2/g = hf1 implies gv1+v2ht1+t2 = ghf2 . It inturn implies that v1+v2 = 1. Likewise, we havev2 + v3 = 0. From this, the prover is convincedthat:

(v1, v2, v3)

1 01 10 1

= (v1 + v2, v2 + v3) = (1, 0).

• In other words, the authenticating user has avector ~v = (v1, v2, v3) such that ~vM = (1, 0)and that vi = 0 if xρ(i) = 0. Thus, the server canbe convinced that the user satisfies the accesspolicy.

9) Finally, the authentication server validates thatcR = H(tpkcR e(g, h0)zR ||R||C). It means that theuser is in possession of the security device that en-dorse this specific transaction (through endorsingthe nonce R) and the use of the user secret key y.

This completes the descriptions of an authenticationexample.

An Intuition of Anonymity

To give an intuition of the proof of privacy, weconsider the values used by another user who is inpossession of attribute attr3. Assume his secret key is(A′, e′, s′, y′). The vector he use will be ~v′ = (v′1, v

′2, v′3) =

(1, 0, 0). Below we show the values used in step 6 forthis user.

For i = 1 to 3, the user randomly picks a′i, t′i ∈R Zp

and computes C ′i = gv′iht′i , D′i = gx

′ρ(i)ha

′i . The user also

computes b′i = t′i − a′iv′i.

C ′1 = ght′1 , D′1 = ha

′1 , b′1 = t′1 − a′1

C ′2 = ht′2 , D′2 = ha

′2 , b′2 = t′2

C ′3 = ht′3 , D′3 = ha

′3 , b′3 = t′3

The random numbers a′i, t′i are picked uniformly at

random and we are working in a cyclic group where gand h are generators. Thus, the distribution of {C ′i, D′i}is the same as that of {Ci, Di}. This is the intuitionbehind the proof that the server would not be able todistinguish the different attributes used by the users inan authentication.

ACKNOWLEDGEMENT

This work is supported by National Natural ScienceFoundation of China (61472083, U1405255, 61402110),Fok Ying Tung Education Foundation (141065), Programfor New Century Excellent Talents in Fujian University

Page 15: Fine-grained Two-factor Access Control for Web-based …users.monash.edu.au/~kailiu/mypaper/ieee-tifs-2016-5.pdf · Fine-grained Two-factor Access Control for ... access control protocol

15

(JA14067), Distinguished Young Scholars Fund of FujianProvince, China and ISN Research Fund (ISN15-03).

REFERENCES

[1] M. H. Au and A. Kapadia. PERM: practical reputation-basedblacklisting without TTPS. In T. Yu, G. Danezis, and V. D. Gligor,editors, the ACM Conference on Computer and CommunicationsSecurity, CCS’12, Raleigh, NC, USA, October 16-18, 2012, pages 929–940. ACM, 2012.

[2] M. H. Au, A. Kapadia, and W. Susilo. Blacr: Ttp-free blacklistableanonymous credentials with reputation. In NDSS. The InternetSociety, 2012.

[3] M. H. Au, W. Susilo, and Y. Mu. Constant-Size Dynamic k-TAA.In SCN, volume 4116 of Lecture Notes in Computer Science, pages111–125. Springer, 2006.

[4] J. Baek, Q. H. Vu, J. K. Liu, X. Huang, and Y. Xiang. A securecloud computing based framework for big data information man-agement of smart grid. IEEE T. Cloud Computing, 3(2):233–244,2015.

[5] M. Bellare and O. Goldreich. On defining proofs of knowledge. InCRYPTO, volume 740 of Lecture Notes in Computer Science, pages390–420. Springer, 1992.

[6] J. Bethencourt, A. Sahai, and B. Waters. Ciphertext-policyattribute-based encryption. In IEEE Symposium on Security andPrivacy, pages 321–334. IEEE Computer Society, 2007.

[7] D. Boneh, X. Boyen, and H. Shacham. Short Group Signatures.In Franklin [19], pages 41–55.

[8] D. Boneh, X. Ding, and G. Tsudik. Fine-grained control of securitycapabilities. ACM Trans. Internet Techn., 4(1):60–82, 2004.

[9] J. Camenisch. Group Signature Schemes and Payment Systems Basedon the Discrete Logarithm Problem. PhD thesis, ETH Zurich, 1998.Reprint as vol. 2 of ETH Series in Information Security and Cryptog-raphy, ISBN 3-89649-286-1, Hartung-Gorre Verlag, Konstanz, 1998.

[10] J. Camenisch, M. Dubovitskaya, and G. Neven. Oblivious transferwith access control. In E. Al-Shaer, S. Jha, and A. D. Keromytis,editors, Proceedings of the 2009 ACM Conference on Computer andCommunications Security, CCS 2009, Chicago, Illinois, USA, Novem-ber 9-13, 2009, pages 131–140. ACM, 2009.

[11] J. Camenisch and A. Lysyanskaya. A signature scheme withefficient protocols. In S. Cimato, C. Galdi, and G. Persiano,editors, Security in Communication Networks, Third InternationalConference, SCN 2002, Amalfi, Italy, September 11-13, 2002. RevisedPapers, volume 2576 of Lecture Notes in Computer Science, pages268–289. Springer, 2002.

[12] J. Camenisch and A. Lysyanskaya. Signature Schemes and Anony-mous Credentials from Bilinear Maps. In Franklin [19], pages56–72.

[13] Y. Chen, Z. L. Jiang, S. Yiu, J. K. Liu, M. H. Au, and X. Wang. Fullysecure ciphertext-policy attribute based encryption with securitymediator. In ICICS ‘14, volume 8958 of Lecture Notes in ComputerScience, pages 274–289. Springer, 2014.

[14] S. S. M. Chow, C. Boyd, and J. M. G. Nieto. Security-mediatedcertificateless cryptography. In Public Key Cryptography, volume3958 of Lecture Notes in Computer Science, pages 508–524. Springer,2006.

[15] C. Chu, W. T. Zhu, J. Han, J. K. Liu, J. Xu, and J. Zhou. Secu-rity concerns in popular cloud storage services. IEEE PervasiveComputing, 12(4):50–57, 2013.

[16] R. Cramer, I. Damgard, and P. D. MacKenzie. Efficient zero-knowledge proofs of knowledge without intractability assump-tions. In H. Imai and Y. Zheng, editors, Public Key Cryptography,volume 1751 of Lecture Notes in Computer Science, pages 354–373.Springer, 2000.

[17] Y. Dodis, J. Katz, S. Xu, and M. Yung. Key-insulated public keycryptosystems. In EUROCRYPT, volume 2332 of Lecture Notes inComputer Science, pages 65–82. Springer, 2002.

[18] Y. Dodis and A. Yampolskiy. A verifiable random functionwith short proofs and keys. In S. Vaudenay, editor, Public KeyCryptography, volume 3386 of Lecture Notes in Computer Science,pages 416–431. Springer, 2005.

[19] M. K. Franklin, editor. Advances in Cryptology - CRYPTO 2004, 24thAnnual International CryptologyConference, Santa Barbara, California,USA, August 15-19, 2004, Proceedings, volume 3152 of Lecture Notesin Computer Science. Springer, 2004.

[20] V. Goyal, O. Pandey, A. Sahai, and B. Waters. Attribute-basedencryption for fine-grained access control of encrypted data. InACM Conference on Computer and Communications Security, pages89–98. ACM, 2006.

[21] J. Han, W. Susilo, Y. Mu, and J. Yan. Privacy-preserving decen-tralized key-policy attribute-based encryption. IEEE Trans. ParallelDistrib. Syst., 23(11):2150–2162, 2012.

[22] X. Huang, J. K. Liu, S. Tang, Y. Xiang, K. Liang, L. Xu, andJ. Zhou. Cost-effective authentic and anonymous data sharingwith forward security. IEEE Trans. Computers, 64(4):971–983, 2015.

[23] J. Hur. Attribute-based secure data sharing with hidden policiesin smart grid. IEEE Trans. Parallel Distrib. Syst., 24(11):2171–2180,2013.

[24] J. Hur. Improving security and efficiency in attribute-based datasharing. IEEE Trans. Knowl. Data Eng., 25(10):2271–2282, 2013.

[25] T. Jiang, X. Chen, J. Li, D. S. Wong, J. Ma, and J. K. Liu. TIMER:secure and reliable cloud storage against data re-outsourcing.In ISPEC ‘14, volume 8434 of Lecture Notes in Computer Science.Springer, 2014.

[26] A. Juels, D. Catalano, and M. Jakobsson. Coercion-resistantelectronic elections. In WPES 2005, pages 61–70. ACM Press, 2005.

[27] J. Lai, R. H. Deng, C. Guan, and J. Weng. Attribute-based encryp-tion with verifiable outsourced decryption. IEEE Transactions onInformation Forensics and Security, 8(8):1343–1354, 2013.

[28] M. Li, X. Huang, J. K. Liu, and L. Xu. GO-ABE: group-orientedattribute-based encryption. In NSS ‘14, volume 8792 of LectureNotes in Computer Science, pages 260–270. Springer, 2014.

[29] M. Li, S. Yu, Y. Zheng, K. Ren, and W. Lou. Scalable andsecure sharing of personal health records in cloud computingusing attribute-based encryption. IEEE Trans. Parallel Distrib. Syst.,24(1):131–143, 2013.

[30] K. Liang, M. H. Au, J. K. Liu, W. Susilo, D. S. Wong, G. Yang,T. V. X. Phuong, and Q. Xie. A dfa-based functional proxy re-encryption scheme for secure public cloud data sharing. IEEETransactions on Information Forensics and Security, 9(10):1667–1680,2014.

[31] K. Liang, J. K. Liu, D. S. Wong, and W. Susilo. An efficient cloud-based revocable identity-based proxy re-encryption scheme forpublic clouds data sharing. In ESORICS ‘14, volume 8712 ofLecture Notes in Computer Science, pages 257–272. Springer, 2014.

[32] K. Liang, W. Susilo, and J. K. Liu. Privacy-preserving ciphertextmulti-sharing control for big data storage. IEEE Transactions onInformation Forensics and Security, 10(8):1578–1589, 2015.

[33] J. K. Liu, M. H. Au, W. Susilo, K. Liang, R. Lu, and B. Srinivasan.Secure sharing and searching for real-time video data in mobilecloud. IEEE Network, 29(2):46–50, 2015.

[34] J. K. Liu, M. H. Au, W. Susilo, and J. Zhou. Enhancing locationprivacy for electric vehicles (at the right time). In S. Foresti,M. Yung, and F. Martinelli, editors, Computer Security - ESORICS2012 - 17th European Symposium on Research in Computer Security,Pisa, Italy, September 10-12, 2012. Proceedings, volume 7459 ofLecture Notes in Computer Science, pages 397–414. Springer, 2012.

[35] H. K. Maji, M. Prabhakaran, and M. Rosulek. Attribute-basedsignatures. In CT-RSA, volume 6558 of Lecture Notes in ComputerScience, pages 376–392. Springer, 2011.

[36] M. Nabeel, N. Shang, and E. Bertino. Privacy preserving policy-based content sharing in public clouds. IEEE Trans. Knowl. DataEng., 25(11):2602–2614, 2013.

[37] T. Okamoto. Receipt-Free Electronic Voting Schemes for LargeScale Elections. In Workshop on Security Protocols 97, volume 1361of Lecture Notes in Computer Science, pages 25–35. Springer, 1997.

[38] T. Okamoto and K. Takashima. Efficient attribute-based signaturesfor non-monotone predicates in the standard model. In Public KeyCryptography, volume 6571 of Lecture Notes in Computer Science,pages 35–52. Springer, 2011.

[39] R. Ostrovsky, A. Sahai, and B. Waters. Attribute-based encryptionwith non-monotonic access structures. In ACM Conference onComputer and Communications Security, pages 195–203. ACM, 2007.

[40] M. Scott, N. Costigan, and W. Abdulwahab. Implementingcryptographic pairings on smartcards. In CHES, volume 4249 ofLecture Notes in Computer Science, pages 134–147. Springer, 2006.

[41] S. F. Shahandashti and R. Safavi-Naini. Threshold attribute-basedsignatures and their application to anonymous credential systems.In AFRICACRYPT, volume 5580 of Lecture Notes in ComputerScience, pages 198–216. Springer, 2009.

[42] Z. Wan, J. e Liu, and R. H. Deng. Hasbe: A hierarchical attribute-based solution for flexible and scalable access control in cloud

Page 16: Fine-grained Two-factor Access Control for Web-based …users.monash.edu.au/~kailiu/mypaper/ieee-tifs-2016-5.pdf · Fine-grained Two-factor Access Control for ... access control protocol

16

computing. IEEE Transactions on Information Forensics and Security,7(2):743–754, 2012.

[43] Y. Wu, Z. Wei, and R. H. Deng. Attribute-based access toscalable media in cloud-assisted content sharing networks. IEEETransactions on Multimedia, 15(4):778–788, 2013.

[44] F. Xhafa, J. Wang, X. Chen, J. K. Liu, J. Li, and P. Krause. Anefficient PHR service system supporting fuzzy keyword searchand fine-grained access control. Soft Comput., 18(9):1795–1802,2014.

[45] C. Yao, L. Xu, X. Huang, and J. K. Liu. A secure remote dataintegrity checking cloud storage system from threshold encryp-tion. J. Ambient Intelligence and Humanized Computing, 5(6):857–865,2014.

[46] W.-S. Yap, S. S. M. Chow, S.-H. Heng, and B.-M. Goi. Securitymediated certificateless signatures. In ACNS, volume 4521 ofLecture Notes in Computer Science, pages 459–477. Springer, 2007.

[47] T. H. Yuen, J. K. Liu, M. H. Au, X. Huang, W. Susilo, andJ. Zhou. k-times attribute-based anonymous access control forcloud computing. IEEE Trans. Computers, 64(9):2595–2608, 2015.

Joseph K. Liu (M’ 15) received the Ph.D. de-gree in information engineering from the Chi-nese University of Hong Kong in July 2004, spe-cializing in cyber security, protocols for securingwireless networks, privacy, authentication, andprovable security. He is now a senior lecturerat Faculty of Information Technology, MonashUniversity, Australia. His current technical focusis particularly cyber security in the cloud com-puting paradigm, smart city, lightweight security,and privacy enhanced technology. He has pub-

lished more than 90 referred journal and conference papers and re-ceived the Best Paper Award from ESORICS 2014 and ESORICS 2015.He has served as the program chair of ProvSec 2007, 2014, ACISP2016 and as the program committee of more than 35 internationalconferences.

Man Ho Au (M’ 12) received the bachelorsand masters degrees from the Department ofInformation Engineering, Chinese University ofHong Kong, in 2003 and 05 respectively, and thePh.D. degree from the University of Wollongong,Australia, in 2009. Currently, he is an assistantprofessor at Dept. of Computing, the Hong KongPolytechnic University. Before that, he has beena lecturer at the School of Computer Scienceand Software Engineering, University of Wollon-gong, Australia. He works in the area of infor-

mation security and applied cryptography. In particular, his researchinterests include applying public-key cryptographic techniques to sys-tems with security and privacy concerns. He has published more than80 refereed journal and conference papers, including two papers in theACM CCS conference that were named as Runners-up for PET Award2009: Outstanding Research in Privacy Enhancing Technologies. He isa member of the IEEE. He has served as the program chair of NSS 2014and ProvSec 2015, and as a program committee member of more than30 international conferences.

Xinyi Huang received his Ph.D. degree from theSchool of Computer Science and Software Engi-neering, University of Wollongong, Australia. Heis currently a Professor at the School of Math-ematics and Computer Science, Fujian NormalUniversity, China, and the Co-Director of FujianProvincial Key Laboratory of Network Securityand Cryptology. His research interests includeapplied cryptography and network security. Hehas published over 100 research papers in refer-eed international conferences and journals. His

work has been cited more than 2000 times at Google Scholar (H-Index: 25). He is an associate editor of IEEE Transactions on De-pendable and Secure Computing, in the Editorial Board of InternationalJournal of Information Security (IJIS, Springer) and has served asthe program/general chair or program committee member in over 80international conferences.

Rongxing Lu (S’ 09 - M’ 11 - SM’ 15) re-ceived the Ph.D. degree in computer sciencefrom Shanghai Jiao Tong University, Shanghai,China, in 2006, and the Ph.D. degree in electricaland computer engineering from the University ofWaterloo, Waterloo, ON, Canada, in 2012. FromMay 2012 to April 2013, he was a PostdoctoralFellow with the University of Waterloo. SinceMay 2013, he has been an Assistant Profes-sor with the School of Electrical and ElectronicEngineering, Nanyang Technological University,

Singapore. His research interests include computer network security,mobile and wireless communication security, and applied cryptography.Dr. Lu was the recipient of the Canada Governor General Gold Metal.

Jin Li received his B.S. (2002) in Mathemat-ics from Southwest University. He got his Ph.Ddegree in information security from Sun Yat-sen University at 2007. Currently, he works atGuangzhou University as a professor. He hasbeen selected as one of the Outstanding YoungResarchers in Guangdong province. His re-search interests include Cloud Computing Secu-rity and Applied Cryptography. He has publishedover 70 research papers in refereed internationalconferences and journals. His work has been

cited more than 3500 times at Google Scholar. He also has served asthe program chair or program committee member in many internationalconferences.