0% found this document useful (0 votes)
8 views

Attribute based re encryption

The document discusses a Time-Based Proxy Re-Encryption (TimePRE) scheme designed to enhance user revocation and access control for encrypted data in cloud storage, particularly in the context of personal health records (PHRs). It highlights the challenges of symmetric key cryptography and the advantages of using Attribute-Based Encryption (ABE) combined with Proxy Re-Encryption to manage user access efficiently. The proposed system reduces the number of User Attribute Secret Keys (UAKs) by generating them for groups of attributes, allowing for fine-grained access control while maintaining user privacy.

Uploaded by

spamgmair
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views

Attribute based re encryption

The document discusses a Time-Based Proxy Re-Encryption (TimePRE) scheme designed to enhance user revocation and access control for encrypted data in cloud storage, particularly in the context of personal health records (PHRs). It highlights the challenges of symmetric key cryptography and the advantages of using Attribute-Based Encryption (ABE) combined with Proxy Re-Encryption to manage user access efficiently. The proposed system reduces the number of User Attribute Secret Keys (UAKs) by generating them for groups of attributes, allowing for fine-grained access control while maintaining user privacy.

Uploaded by

spamgmair
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 13

International Journal of Applied Engineering Research ISSN 0973-4562 Volume 13, Number 8 (2018) pp.

6138-6150
© Research India Publications. http://www.ripublication.com

Time-Based Proxy Re-Encryption for User Revocation with Reduced UAKs


in Cloud Storage

VenkataVara Prasad, Lokeswari Y. Venkataramana, Pandiyan Muthuraj


Department of Computer Science and Engineering, Sri Sivasubramaniya Nadar College of Engineering, Chennai, India.

Abstract A. Health Care Moving into Cloud


With rapid development of cloud computing, more and more Personal Health Record (PHR) is an emerging patient-centric
enterprises will outsource their sensitive data for sharing in model [9] of health information exchange, which is often
cloud. To keep the shared data confidential against un-trusted outsourced to be stored at a third party, such as cloud providers.
Cloud Service Providers (CSPs), a natural way is to store only However, there have been wide privacy concerns as personal
the encrypted data in cloud. The key problems of this approach health information could be exposed to those third party
include establishing access control for the encrypted data and servers. To assure the patients control over access to their own
revoking the access rights from users when they are no longer PHRs, it is a promising method to encrypt the PHRs before
authorized to access the encrypted data. Symmetric key outsourcing. Yet, issues such as risks of privacy exposure,
Cryptography provides a single shared key for group of users. If scalability in key management, flexible access and efficient user
a user leaves the group, secret key needs to changed and data revocation have remained the most important challenges
needs to be encrypted again with new secret key. To overcome towards achieving fine-grained, cryptographically enforced
this, Proxy Re-Encryption (PRE) scheme efficiently handles data access control. Moving health care into cloud helps in the
user revocation by re-encrypting the cipher text again at proxy following ways:
server. For fine-grained access control Attributed Based
1. Maintaining Electronic Health Record.
Encryption (ABE) uses attributes of the users to provide access
to data. Time-based Proxy Re- Encryption specifies time for 2. Remote Monitoring of patients (Patients in Battle
every attribute of a user which is termed as access time of the field).
attribute. Each user will be provided with set of User Attribute
3. Sharing of medical data with other health
secret Keys (UAKs). Each UAK is associated with user,
organizations.
attributes and access time of the attribute. In this way, each
attribute of a user will have a separate UAK. This results in 4. Collaborative consultation among experts in different
creation of many numbers of UAKs for a user. To reduce the health organizations.
number of UAKs, the proposed system will generate UAKs for
5. Efficient treatment given to patients in regular / in
group of attributes in the access structure rather than generating
emergency basis.
UAKs for each of the attribute.
6. To detect serious diseases in initial stage and recover
Keywords: Cloud Security, Data Security, Time-based Proxy
them.
Re-Encryption, User Revocation, Attribute-Based Encryption,
CP-ABE, KP-ABE. 7. Self-caring service by retrieving similar medical data
and diagnosing patients themselves. (Home
Diagnosis)
INTRODUCTION
8. Medical Research.
Cloud computing is an emerging technology [8] in which
resources of the computing infrastructures are provided as
services over internet. Cloud allows user to access application B. Symmetric Key Cryptography
without installation and store their personal data in remote
Symmetric key encryption [10] involves using a single key to
computer. It provides with a way to share distributed recourses
encrypt and decrypt data. For the receiver to decrypt the
and services that belong to different organizations. In this
encrypted data, they must know the secret key. This enables the
technology users have to entrust their data to cloud providers,
sender to send secret key along with the message to the receiver.
there are several security and privacy concerns on outsourced
Anyone who might be monitoring the network could steal the
data. As the data is shared over the network, data should be
encrypted data and the key necessary for decrypting it. The
encrypted to maintain confidentiality against untrusted users.
other way is to share the secret key to group of users and use it
There are various encryption schemes that provide security and
for decryption. Whenever a user leaves a group, this key needs
access control over the network. They are discussed in the
to be changed and encrypt the data again.
following subsections.

6138
International Journal of Applied Engineering Research ISSN 0973-4562 Volume 13, Number 8 (2018) pp. 6138-6150
© Research India Publications. http://www.ripublication.com

C. Public Key Cryptography patients’ PHR data. To reduce the key distribution complexity,
the system was divided into multiple security domains, where
Public key encryption [11] uses a pair of keys: a public key that
each domain manages only a subset of the users. In this way,
is sent along with the message and a private key which is always
each patient has full control over his/ her own privacy, and key
in the possession of the recipient. The private key is based on a
management complexity is reduced dramatically. For example,
derivative of the public key and only these two keys working
if owner of the data (patient) provides access to a Doctor,
together can decrypt the data. Because the private key is never
DeptAdultCardiology in a health centre, the access structure
sent across the network, it remains secure. The down side of
will be defined by the owner as shown in the Figure 1. Further if
public key encryption is that it tends to be very slow and
the patient allows surgeon to access record, the existing access
resource intensive. This makes it difficult to send large amounts
tree can be extended for surgeon too as shown in Figure 2.
of data using public key encryption. Public key cryptography is
more suitable only when there is one sender and one receiver.

D. Attribute Based Encryption


Attribute-based encryption [1, 2] is a type of public-key
encryption in which the secret key of a user and the cipher text
are dependent upon attributes (e.g. the country in which he
lives, or the kind of subscription he has). In such a system, the
decryption of a cipher text is possible only if the set of attributes
of the user key matches the attributes of the cipher text. A
crucial security aspect of Attribute-Based Encryption is
collusion resistance. It prevents access to two unauthorized
users even if they combine their attribute keys.
Figure 1. General ABE Structure
E. Proxy Re-Encryption
Proxy re-encryption schemes [3] are cryptosystems which allow
third parties (proxies) to alter a cipher text which has been
encrypted for one party, so that it may be decrypted by another.
In which a semi-trusted proxy converts a cipher text for owner
into a cipher text for user without seeing the underlying
plaintext. The Re-Encryption scheme assists the owner of the
data to delegate the role of secure access to the proxy. Proxy
manages the set of user public keys in a key storage. In sharing
of Personal Health Records (PHRs) in healthcare domain,
owner is the patient, users will be many such as doctors,
surgeon, nurse, etc.. Thus Symmetric Key Encryption has the
downside of re-encrypting the PHR whenever a key is changed
due to user leaving the group (hospital). Asymmetric Key
Encryption is more suitable for one-one communication and it
is not suitable for sharing of PHRs where there is one data
owner (patient) and many users such as doctors, pharmacy,
nurse, surgeon, etc., So authors exploited Attribute Based
Encryption (ABE) for one-to-many communication and user Figure 2. General ABE structure with Scalability
revocation is easily managed with Time-based Proxy
Re-Encryption (PRE).
B. Secure Sharing of Personal Health Records in Cloud
Computing: Cipher text-Policy Attribute based Signcryption
RELATED WORK The storage of personal medical and health information is
A. Securing Personal Health Records in cloud computing: usually outsourced to some third parties. This may result in the
patient-centric and fine-grained data access control in exposure of patient’s privacy to unauthorized individuals or
multi-owner settings organizations. In order to address this security loophole, a
promising solution was proposed [2]. New approach was
A novel framework was proposed [1] for access control to proposed for fine-grained access control and secure sharing of
PHRs within cloud computing environment. To enable signcrypted (sign-then encrypt) data. This new primitive is
fine-grained and scalable access control for PHRs, Attribute called as Ciphertext-Policy Attribute-Based Signcryption
Based Encryption (ABE) techniques was to encrypt each (CP-ABSC) which satisfies the requirements of cloud

6139
International Journal of Applied Engineering Research ISSN 0973-4562 Volume 13, Number 8 (2018) pp. 6138-6150
© Research India Publications. http://www.ripublication.com

computing scenarios for PHR. CP-ABSC combines the merits The drawback of PRE is that each of the user is provided with
of digital signature and encryption to provide confidentiality, separate key which may cause burden to the user.
authenticity, Unforgeability, anonymity and collusion
resistance. The correctness, security and efficiency of this
scheme are also proven. It avoids collusion if attributes of two D. Time-Based Proxy Re-Encryption Scheme for Secure Data
different users are combined together to access data as shown in Sharing in a Cloud Environment
Figure 3. The problem with ABE scheme is the encryptor
A fundamental approach [4] for secure data sharing in a cloud is
cannot decide who can decrypt the encrypted data. It can only
to let the data owner encrypt data before out-sourcing. To
choose descriptive attributes for the data; it is not suitable in
simultaneously achieve fine-grained access control on
some application because a data owner has to trust the key
encrypted data and scalable user revocation, existing work
issuer.
combines Attribute Based Encryption (ABE) and Proxy
Re-Encryption (PRE) to delegate the Cloud Service Provider
(CSP) to execute re-encryption. However, the data owner
should be online in order to send the PRE keys to the CSP in a
timely fashion, to prevent the revoked user from accessing the
future data. The delay of issuing the PRE keys may cause
potential security risks. Time-based Proxy Re-Encryption
(TimePRE) scheme was proposed to allow a users’ access right
to expire automatically after a predetermined period of time. In
this case, the data owner can be offline in the process of user
revocations. The basic idea is to incorporate the concept of time
into the combination of ABE and PRE. Specifically, each data
is associated with an attribute-based access structure and an
access time, and each user is identified by a set of attributes and
a set of eligible time periods which denote the period of validity
of the user’s access right.
Figure 3. Fine Grained Access Control ABE structure The notations sa(y), sa(y, m) and sa(y, m, d) are represented to
denote PRE keys on attribute 'a' in time (y), (y, m), and (y, m, d),
which can be used to update attribute a’s initial public key PKa
C. A Platform for Secure Monitoring and Sharing of Generic to time-based public keys PKa(y), PKa(y, m) and PKa(y, m, d)
Health Data in the Cloud respectively. Since the PRE key is derived from a root secret
key 's' and the current access time 't' as represented in Figure 4.
Proxy Re-Encryption is based on the concept of a semi-trusted For each attribute 'a', the CSP can use the root secret key 's' and
proxy that uses a re-encryption key to translate a cipher-text the time tree to hierarchically calculate the time-based PRE
under the data owner’s public key into another cipher text that keys. Each user is granted with a set of Time-based User
can be decrypted by another user’s private key [3]. The data is Attribute Secret Keys (UAK). Each time-based UAK is
never decrypted before it is re-encrypted hence the proxy will associated with a user, an attribute, and an effective time period.
never be able to reveal the plaintext at any time. Many recent If user 'u' is eligible for attribute 'a' in day (y, m, d), the data
works have realised proxy re-encryption as a technique to owner first uses the root secret key 's' to obtain day-based
enable data sharing in the cloud. Although the proxy attribute public key PKa(y, m, d) from initial attribute public key
re-encryption was not explicitly used, the system mimics a PKa and then uses PKa(y, m, d) to generate a day-based UAK
proxy re-encryption (PRE) algorithm scheme from the point of SKu,a (y, m, d) for user 'u'. The same situation holds for the case
view of the data owner and user. Re-Encryption of original that user 'u' is eligible for attribute 'a' in a month (y, m) or a year
cipher text is done with the help of semi-trusted third party (y). The drawback of Time-based PRE is that same access time
(proxy server). Here, encrypted data which is already done by is provided for all the attributes associated with particular user.
the owner provided to the proxy server, proxy server will
re-encrypt that file without knowing the plain text and user can
decrypt without sharing his/ her secret key to the proxy server.

6140
International Journal of Applied Engineering Research ISSN 0973-4562 Volume 13, Number 8 (2018) pp. 6138-6150
© Research India Publications. http://www.ripublication.com

Figure 4. Time-Based PRE Tree Structure

E. Attribute Based Data Sharing with Attribute Revocation proposed a proxy re-encryption; where owner encrypts with
symmetric content key blocks of data before sending it to cloud
Cipher text-Policy Attribute Based Encryption (CP-ABE) is a
servers. Content keys were encrypted with the owner’s master
promising cryptographic primitive for fine-grained access
public key. Owner’s master private key and user’s public keys
control of shared data. In CP-ABE, each user is associated with
are then combined to generate proxy re-encryption keys which
a set of attributes and data are encrypted with access structures
are used to recover plain text intended to a specific user.
on attributes. A user is able to decrypt a cipher text if and only if
his/her attributes satisfy the cipher text access structure. They
achieve this by uniquely integrating the technique of proxy
G. Security of Key in Cloud using Cryptography
re-encryption with CP-ABE [5, 6], and enable the authority to
delegate most of laborious tasks to proxy servers. This To construct a secure cloud computing system, security at
technique can also be applicable to the Key-Policy Attribute infrastructure, service platforms and application software levels
Based Encryption (KP-ABE) counterpart. Data owner will have to be studied. Information encryption is one of the
generate the root secret key and the user secret key by the use of effective means to achieve cloud computing information
universal attributes along with security parameters. Then owner security. Traditionally, information encryption focuses on
encrypts his/her data with public key and access structure and specified stages and operations, such as data encryption. For
those encrypted data will fed to the CSP. Whenever there is a cloud computing, a system level design has to be implemented.
request for accessing particular data, CSP will re-encrypt those Crypto cloud computing is a new secure cloud computing
data with effective time period. Meanwhile UAKs for that architecture. It can provide protection of information security at
particular user will be generated with attributes and the access the system level, and allows users to access shared services
time. The user will use UAKs to decrypt the re-encrypted data. conveniently and accurately. Crypto cloud computing protects
The downside of this method is generating UAKs for every individuals connections with the outside world. It can protect
attribute may affect the Key Management System. Having the personal privacy without any delay of information
discussed about related research work in securing cloud exchange. Crypto cloud computing is based on the Quantum
environment, the motivation and objective is described below. Direct Key system (QDK). Quantum Direct Key is a set of
advanced asymmetric offline key mechanism [7]. All entities
get public and private key pair according to their ID. Each
F. Improved Proxy Re-Encryption schemes with Applications entity only holds its own private key, but has a public key
to Secure Distributed Storage generator to generate any public key. In this system, an entity
can produce the public key of any other entities offline, no
A malicious user or operator can identify and exploit the
third-party agency is necessary. Crypto cloud computing
vulnerabilities of the system. Numerous works are being done
architecture is based on QDK, it can avoid network traffic
in order to reinforce the cloud capacities in term of protecting
congestion, and other drawbacks using current encryption
data and managing access control using cryptography, data
system. In the crypto cloud computing system, each entity
fragmentation and access control policies [6]. A new approach
encrypts data using their own private key. All elements in the
was proposed by authors in which the cloud provider is
system such as cloud computing infrastructure units, platform,
excluded from any involvement in the access management with
virtualization tools and all involved entities have their own
the aim of minimizing the leaks. Authors developed and tested
keys. While fulfilling their own functions of information
programs based on a capability-list and using both symmetric
exchange and processing, all these elements will use the public
and asymmetric cryptography. Protecting and managing access
key and private key to perform authentication first. All events
control to outsourced data has been the main issue. The authors

6141
International Journal of Applied Engineering Research ISSN 0973-4562 Volume 13, Number 8 (2018) pp. 6138-6150
© Research India Publications. http://www.ripublication.com

occurring in cloud environment are assigned with a unique key. of effective time periods that denotes how long the user is
Thus, crypto cloud system assures the security and credibility of eligible for these attributes, i.e., the period of validity of the
information exchange. Having discussed about related research users’ access right. The data accessed by the user is associated
work in securing cloud environment, the motivation and with an attribute-based access structure and an access time. The
objective is described below. access structure is specified by the data owner, but the access
time is updated by the CSP with the time of receiving an access
The motivation of this research work includes the following. In
request. The data can be recovered only by the user whose
order to provide data access to the health record stored in the
attribute’s satisfies the access structure and whose access right’s
cloud, Symmetric Key Cryptography (SKC) is not appropriate
are effective in the access time. To enable the CSP to update the
[7]. In SKC single secret key will be shared to group of users. If
access time automatically, we first express actual time as a time
the user leaves the group, secret key needs to be changed every
tree. The height of the time tree can be changed as required. For
time and encryption has to be done. In order to provide a
ease of presentation, time is accurate to the day, and the time
scalable user revocation scheme, Proxy Re-Encryption (PRE)
tree is classified into three layers in order: year, month, and day.
was used in literature. This PRE can be combined with Attribute
Notations used for particular day, month and year are (y, m, d),
Based Encryption (ABE) for secure data access. Time Based
(y, m) and (y) respectively. For example, (2017, 4, 5) denotes
Proxy Re-encryption was used to provide access to users on
April 5, 2017. The access time associated with data corresponds
time basis and also to resolve user revocation issue. In the
to a leaf node in the time tree and the effective time periods
existing Time based PRE scheme, User Attributes secret Keys
associated with a user correspond to a set of nodes in the time
(UAKs) were generated for each and every attribute in Access
tree as depicted in Figure 4. If there is a node corresponding to
Structure (Access Policy), where here number of UAKs
an effective time period that is an ancestor of (or the same as)
generated for a single user will be many in number. This creates
the node corresponding to the access time, then the users’
burden to the proxy server.
access right is effective in the access time.

PROPOSED TIME-BASED PROXY RE-ENCRYPTION


The proposed framework for Time-Based PRE is depicted in
WITH REDUCED UAKS
Figure 5.
Instead of creating UAKs for each attribute, UAKs will be
The following steps describe the sequence of steps to be
created for group of attributes in an Access Structure (AS). This
followed while accessing PHR from cloud using Time based
reduces the number of UAKs generated by proxy server.
PRE with less number of UIKs and UAKs.
Consider the following Access Structure:
1. Initially key generator will produce the Public key (PK),
AS1 = (Neurologist ^ Surgeon) ˅ (Physiologist)
Master key (MK) and Root secret key (s) by taking input as
UAK1 for Neurologist ^ Surgeon a security parameters and the user attributes.
UAK2 for Physiologist 2. User will share their Public Key (PKu) with the owner of
the data.
AS2 = (Pulmonologist ˅ Surgeon ˅ Oncologist)
3. Key generator will again generate the User Identity Key
UAK for AS2 is only one.
(UIK) and User Attribute Key (UAK) for the secure data
Similarly, one UAK will be generated for Conjunctive Normal decryption.
Form (CNF)
4. Data owner will generate the cipher text by encrypting the
AS3=(Pulmonologist ^ Surgeon) ˅ (Oncologist ^ Surgeon) original data (F).
UAK1 for Pulmonologist ^ Surgeon 5. Cipher text CA and the necessary keys will be sent to proxy
server for the re-encryption of cipher text CA.
UAK2 for Oncologist ^ Surgeon
6. UIK and UAK will be sent from owner to the each of the
authorized user for data access.
Hence the objective is to provide a scalable user revocation
7. User will make the request for encrypted cipher text to the
system with Time-based Proxy Re-Encryption in cloud storage
proxy server.
and also reduce the number of User Attribute secret Keys
(UAKs) in Time-based Proxy Re-encryption. 8. Proxy server provides the encrypted cipher text CtA to the
user and user will decrypt those CtA with UIK and UAK.
The main idea of the TimePRE scheme is to incorporate the
concept of time into the combination of ABE and PRE.
Intuitively, each user is identified by a set of attributes and a set

6142
International Journal of Applied Engineering Research ISSN 0973-4562 Volume 13, Number 8 (2018) pp. 6138-6150
© Research India Publications. http://www.ripublication.com

Figure 5. Architecture for Time Based PRE

A. Key Generation the proxy, but this requires an unrealistic level of trust in the
proxy. The primary advantage of this schemes is that they are
The data owner takes a sufficiently large security parameter K
unidirectional (i.e., owner can delegate to users without users
as input to generate the system public key PK, the system master
having to delegate to owner) and do not require delegators to
key MK, and the root secret keys. The system public key will be
reveal all of their secret key to anyone or even interact with the
published, the system master key will be kept secret, and the
delegate in order to allow a proxy to re-encrypt their cipher
root secret key will be sent to the CSP.
texts. In this scheme, only a limited amount of trust is placed in
the proxy. For example, proxy could not decrypt the cipher text,
that is re-encrypted by proxy itself and this scheme is secure
B. UIK and UAK generation
even when the proxy publishes all the re-encryption information
Suppose that user ‘u’ with public key PKu is eligible for it knows. This enables number of applications that would not be
attribute ‘a’ and his/her access right is effective in time Tu. The practical if the proxy needed to be fully trusted.
data owner uses the system public key PK, the system master
key MK, the root secret key s, user public key PKu, attribute ‘a’,
and effective time period Tu to generates user identity secret key D. Encryption
(UIK) SKu and time-based user attribute secret key (UAK) SKu,
Cloud encryption is the transformation of a cloud service
aTu for user ‘u’.
customer’s data into cipher text. Cloud encryption is almost
identical to in-house encryption with one important difference
here is, the cloud customer must take time to learn about the
C. Proxy Setup
provider’s policies and procedures for encryption and
Proxy re-encryption [6] allows a proxy to transform a cipher encryption key management. The cloud encryption capabilities
text computed under owner’s public key into one that can be of the service provider need to match the level of sensitivity of
opened by users' secret key. There are many useful applications the data being hosted.
of this primitive. For instance, owner might wish to temporarily
forward encrypted email to his/her colleague, without giving
his/her secret key. In this case, owner as a delegator could Encryption by Owner.
designate a proxy to re-encrypt his/ her incoming mail into a
The data owner takes a Disjunctive Normal Form (DNF) access
format that users the delegate can decrypt using his/ her own
structure ‘A’, a data ‘F’, and system public key PK, e.g., initial
secret key. Clearly, owner could provide his/ her secret key to

6143
International Journal of Applied Engineering Research ISSN 0973-4562 Volume 13, Number 8 (2018) pp. 6138-6150
© Research India Publications. http://www.ripublication.com

public keys of all attributes in the access structure PKa as inputs make sure their Nextcloud instance enforces these rules. File
to output a cipher text CA. Access Control can play a crucial role in enforcing company
policy on data sharing.

Encryption by Proxy server.


File Access Control at Home Page
Given a cipher text CA with structure A, the CSP first uses the
system public key ‘PK’ and the root secret key ‘s’ to generate Home users will find that the File Access Control app and other
PRE keys on all attributes in the access structure ‘A’ based on workflow tools that can be used to prevent accidental sharing of
the access time ‘t’ and then uses these PRE keys to re-encrypt sensitive data, adding an additional layer of protection to
the original cipher text CA to CtA. Nextcloud.

E. Decryption by Users Security and Authentication


User ‘u’, whose attributes satisfy the access structure ‘A’’ and Administrators can set permissions on sharing and access to
whose effective time period Tu satisfy the access time ‘t’, can files using groups. Permissions of underlying storage, like
use SKu and SKu, aTu to recover F from CtA. Windows Network Drive access rights, are respected by
Nextcloud. Nextcloud uses industry-standard (Secure Layer/
Transport Layer Security) SL/TLS encryption for data in
F. Test Bed transit. Additionally, data at rest, in storage can be encrypted
using a default military grade (Advanced Encryption Standard)
The Test Bed consists of two systems. One being Server at
AES-256 encryption. Keys can be handled with the build in key
owner end and other is client at Users' end. Owner and proxy
management or you can opt for a custom key management for
server will reside in the Server while users will reside in the
integration in existing infrastructure. As keys never leave the
Client. Key generation and the encryption is done by owner and
Nextcloud server, external storage systems never have access to
stores the encrypted file in the Server. Decryption will be done
unencrypted data.
at client machine at users' side by requesting the file from proxy
server. NextCloud an open source software, which provides
Platform as a Service (PaaS) was exploited to build proxy
User Privilege and Revocation
server.
The Nextcloud authentication system supports pluggable
authentication including Two-factor authentication and device
NextCloud and its Features specific passwords, complete with a list of connected browsers
and devices on the user's personal page. As extra protection,
With Nextcloud [13], system administrators can control and
device specific password tokens can deny access to the file
direct the flow of data between users or between servers. Rule
system.
based file tagging and responding to these tags as well as other
triggers like physical location, user group, file properties and Active user sessions can be invalidated through a list, by
request type enables administrators to specifically deny access removing the user in the admin settings or by changing
to resources, convert, delete or retain data following business or passwords. Users can manage their own sessions and devices.
legal requirements. Nextcloud puts you in control of your data
Data Administrators can set password quality policies enforced
and keeps it safe. Nextcloud is a suite of client-server software
by Nextcloud as well as limit or disable sharing, enforce
for creating file hosting services and using them. The primary
expiration dates and passwords on shares, disable preview
functional difference is that Nextcloud is free, open-source and
generation and more.
thereby allowing anyone to install and operate it without charge
on a private server. In Nextcloud, the open architecture allows
adding additional functionality to the server in form of new
CP-ABE Toolkit and its Features
applications. NextCloud supports LAMP feature which
includes Linux, Apache, MySQL and PHP. It also provides The cpabe toolkit [12] provides a set of programs,
other features as mentioned below. implementing a cipher text-policy attribute-based encryption
scheme. It uses the PBC library for the algebraic operations. It
is to be noted that the cpabe toolkit might not compile against
Work Flow Management versions of PBC older than 0.5.4. The code is split into two
packages, libbswabe (a library implementing the core crypto
Through File Access Control and automatic file tagging,
operations) and cpabe (higher level functions and user
Nextcloud gives administrator’s control over data access by
interface). In a cipher text policy attribute-based encryption
enabling them to define strict rules that is need to adhere. If
scheme, each user’s private key is associated with a set of
users in certain groups or geographic regions should not be
attributes representing their capabilities, and a cipher text is
given access to certain file types or if data with a specific tag
encrypted such that only users, whose attributes satisfy a certain
should not be shared outside the company, administrators can
policy can decrypt.

6144
International Journal of Applied Engineering Research ISSN 0973-4562 Volume 13, Number 8 (2018) pp. 6138-6150
© Research India Publications. http://www.ripublication.com

For example, we can encrypt a cipher text such that in a 4. Emergency Doctors
company it can only be decrypted by a person with attributes
5. Immunologist
such as Senior and Human Resources or has the attribute
Executive. One interesting application of this tool is that we can 6. Infectious Disease Specialist
do Role-Based Access Control (RBAC) without requiring
7. Microbiologist
trusted data storage. The toolkit provides four command line
tools used to perform the various operations of the scheme. 8. Nurse
They are designed for straightforward invocation by larger
9. Surgeon
systems in addition to manual usage.
In this case study on Diabetic patient, patients can be
categorized as In-patient, Out-Patient and Emergency Patient as
cpabe-setup generates a public key and a master secret key. shown in the Figures 6 to 8. Each of them is provided with
different attributes and access structure as discussed in the
cpabe-keygen generates a private key with a given set of
following sections.
attributes.
cpabe-enc encrypts a file according to a policy, which is an
expression in terms of attributes. A. In-Patient
cpabe-dec decrypts a file using a private key. In-patient can be admitted for a long time, so the access time for
the attributes will slightly vary when compare to the others. In
Figure 6 Surgeon will do the surgery for patient along with the
CASE STUDY ON DIABETICS PATIENTS Anesthesiologist, so they are provided with same access time.
Access time for general physician is varying from surgeon,
There may be chance of having many numbers of persons
anesthesiologist and nurse, since they all have only a specific
involved in treating a patient. Each person is considered as an
time treating a patient with respect to the operation done for a
attribute. Consider a case study on treating Diabetic patients,
patient, rather than general check-up for a whole year as the
the possible list of persons (attributes) involved in treating a
access time for general physician. The access policy for an
patient are as listed below.
In-Patient is given below with respect to access structure in
1. General Physician Figure 6.
2. Endocrinologist
3. Anesthesiologist [(General Physician AND Endocrinologist)] OR [(Surgeon
AND Anathesian) OR (Immunologist OR Nurse)]

Figure 6. Access Control Tree for In-Patient

6145
International Journal of Applied Engineering Research ISSN 0973-4562 Volume 13, Number 8 (2018) pp. 6138-6150
© Research India Publications. http://www.ripublication.com

B. Out-Patient
The access structure represented in Figure 7, the access time for C. Emergency-Patient
each of the attribute will be provided depending on the day
The attribute access time represented in the Figure 8, may not
when the patient is undergoing treatment. Day is the maximum
necessarily be static always. We can extend the access time for
access time limit for the accessing the record of the out-patient
any of the attribute depending on the seriousness of the disease.
in most of the cases.
The access policy for an Emergency-Patient is given below with
The access policy for an Out-Patient is given below with respect
respect to access structure in Figure 8.
to access structure in Figure 7.
[(General Physician AND Emergency Doctor)] OR [(Surgeon
[(General Physician OR Endocrinologist)] OR
AND Anathesian AND General Physician) OR (Infectious
[(Immunologist OR Nurse)]
Disease Specialist OR Microbiologist)]

Figure 7. Access Control Tree for Out-Patient

Figure 8. Access Control Tree for Emergency-Patient

6146
International Journal of Applied Engineering Research ISSN 0973-4562 Volume 13, Number 8 (2018) pp. 6138-6150
© Research India Publications. http://www.ripublication.com

WORKING PRINCIPLE OF TIME-BASED PRE FOR acting as a backend database and it will be available along with
USER-REVOCATION LAMP itself. To work well with Mysql, it is necessary to
configure it with log and error log file. User interface with the
A. Key Generation using CP-ABE Toolkit
local server can be accessed via web browser by providing IP
Ubuntu is Debian-based Linux operating system that provides a address of the local machine (eg: https://xxx.xxx.xx.x).
platform environment to built cpabe. First it is necessary to
Server admin can login with authenticated username and the
download, untar, compile, and install the most recent tarball of
password. File can be uploaded and shared with the users. Local
libbswabe, the support library [12]. Each can be installed with
server can create the link for all the files and folders and it will
the standard GNU build system commands.
also allow users to access those shared link of file or folder.
Installation of Source File Data owner can add many number of users depending on the
complexity of access structure. Authentication is maintained by
To work with ABE, we need to install and configure four source
providing separate password for each user.
files cpabe, gmp, libbswabe and pbc. Create the make file and
include that to library. The below are commands to install the
source file.
B. Encryption Configuration
$ ./configure
Patient record will be submitted for encryption. File can be of
$ make any format (text / pdf / images file) and it should be placed in
source file location where data owner actually resides. The
$ make install
primary purpose of the Nextcloud server-side encryption is to
protect users’ files on remote storage, such as Dropbox and
Google Drive, and to do it easily and seamlessly with
Generating Keys
Nextcloud. Nextcloud encrypts owner’s local data and stores it
The method of generating the owner public key and master key in a remote server. Encryption and decryption are performed on
was done with the help of cpabe-setup. Master key will be kept the Nextcloud server. All files sent to remote storage, will be
secret and the public key will be distributed to all the users who encrypted by the Nextcloud server, and during retrieval,
are associated with the access structure. The following Nextcloud server decrypts the file and serves it to authorized
command is used to generate the keys for the owner. users and groups.
$ cpabe-setup Nextcloud encryption consists of two parts. The base
encryption system is enabled and disabled on Admin page. First
Whenever the command ’cpabe-setup’ is executed, the new
Admin must enable this, and then select an encryption module
master key and public key will be generated by overwriting the
to load. Currently the only available encryption module is the
existing keys.
Nextcloud Default Encryption Module. Data owner have to
enable encryption button, ’No encryption module loaded,
please load a encryption module in the app menu’ message will
Key Generation for Different attributes
be displayed. After which owner needs to redirect the admin’s
Based on the above discussed three differnt patient type Apps page to enable the Nextcloud Default Encryption Module.
scenarios, keys will be generated for each of the available Next cloud default encryption module will be added to the
attributes. cpabe-key function is utilized to generate the key module selector, and gets selected automatically once the data
based on the access structure. Each attribute will have a owner returns to the admin page. Now admin must log out and
separate private key, which will be used for decryption. Private then log in to initialize user’s encryption keys.
Key can be generated for each attribute using the following
commands by specifying a particular attribute as mentioned
below. C. Attributes in a Single Group
Each of the attributes associated with the access structure can be
added within a single group, where distribution of keys and
$ cpabe-keygen -o General-Physician pub-key master-key
cipher text will be made easier for the data owner. One user is
Att1 Att2
allowed to present in more than one group.
$ cpabe-keygen -o Surgeon pub-key master-key Att3
$ cpabe-keygen -o Endocrinologist pub-key master-key Att3
D. Encrypting File with Full Access Structure at Owner Side
Att4
Data owner encrypts medical report by specifying complete
$ cpabe-keygen -o Nurse pub-key master-key Att1 Att3
access structure in the cpabe-enc command as mentioned
below. This creates cipher text with the extension
<filename>.cpabe.
To work with NextCloud, LAMP software bundle has to be
installed and configured. While installing it is necessary to ]$ cpabe-enc pub_key Patient_Report.pdf (((gp or endo) and
create make file and include that into the library. Mysql will be (imm or neuro)) or surg)

6147
International Journal of Applied Engineering Research ISSN 0973-4562 Volume 13, Number 8 (2018) pp. 6138-6150
© Research India Publications. http://www.ripublication.com

E. Proxy Re-Encryption at NextCloud


Proxy Re-Encryption can be achieved via Nextcloud default H. Time Privilege for Accessing the File
encryption module. The uploaded files in the Nextcloud local
Time privilege for each of the user can be assigned to access the
server will automatically get encrypted. This will generate BIN
shared file by selecting expiration date as shown in Figure 10.
file which is in unreadable format.
Here the minimum privilege time is day. If no time is
mentioned, then the default expiration time is one day for
accessing the shared link.
F. Owner Sharing Keys and Cipher text to Users via
NextCloud
Data owner will generate necessary key for their data users and I. Decryption by Data Users
it will be shared with other users using Nextcloud proxy server
Once the request is approved, data owner will share the keys
along with the cipher text .
and cipher text to their users. Data user can download those file
and decrypt the cipher text by using the public key of user with
the following command
G. Sharing Files to Group of Users with Reduced UAKs
]$ cpabe-dec pub_key neuro_key Patient_report.pdf.cpabe
Admin can create a link for each file with a password, which can
be shared to users or groups. Local server is allowed to set
different password for same link which will be shared to users
or group as highlighted in Figure 9.

Figure 9. Sharing Files to Group of Users with Reduced UAKs

6148
International Journal of Applied Engineering Research ISSN 0973-4562 Volume 13, Number 8 (2018) pp. 6138-6150
© Research India Publications. http://www.ripublication.com

Figure 10. Granting Time Privilege for Accessing the File in NextCloud

CONCLUSION [2] Liu, Jianghua, Xinyi Huang, and Joseph K. Liu,Secure


sharing of personal health records in cloud computing:
Personal Health Records (PHRs) stored in cloud storage will
ciphertext-policy attribute-based signcryption, Future
enable doctors to view patients’ reports and provide necessary
Generation Computer Systems 52 (2015): (pp. 67-76).
treatment. This also helps in remote monitoring and
collaborative consultation with doctors across the globe. When [3] Thilakanathan, Danan, Shiping Chen, Surya Nepal,
PHRs are stored in cloud, security of reports is the well known Rafael Calvo, and Leila Alem, A platform for secure
issue to be handled. This research work discusses about how to monitoring and sharing of generic health data in the
securely share medical reports to the professionals working at Cloud , Future Generation Computer Systems 35 (2014):
hospital community. Attribute Based Encryption will help (pp. 102-113).
patients to securely share their PHRs to a group of users
[4] Liu, Qin, Guojun Wang and Jie Wu, Time-based proxy
(people) working in a hospital. Next cloud is a local server
re-encryption scheme for secure data sharing in a cloud
which act as a CSP, provides the encryption module for the
environment, Information Sciences 258 (2014): (pp.
re-encryption and also time privileges for accessing particular
355-370).
file. This will enable each user’s access right to be effective in a
pre-determined period of time, and enable the CSP to [5] Liang, Kaitai, Man Ho Au, Joseph K. Liu, Willy Susilo,
re-encrypt cipher texts automatically, based on its own time. In Duncan S. Wong, Guomin Yang, Yong Yu, and Anjia
order to deal with user revocation, Time based PRE was Yang, A secure and efficient cipher text-policy
implemented to provide access to PHRs on timely basis by attribute-based proxy re-encryption for cloud data
using a proxy server. Our future work is to implement the sharing, Future Generation Computer Systems 52
minimum privilege time in terms of hours, minutes for a (2015): (pp. 95-108).
particular attribute in an access structure.
[6] Ateniese G, Fu K, Green M, Hohenberger S, Improved
proxy re-encryption schemes with applications to secure
distributed storage, ACM Transactions on Information
REFERENCES
and System Security (TISSEC) 9(1), (2014): (pp. 1-30) .
[1] Li, Ming, Shucheng Yu, Kui Ren, and Wenjing Lou ,
[7] Priya Sharma , Security of Key in Cloud Using
Securing personal health records in cloud computing:
Cryptography, International Journal of Advanced
Patient-centric and fine-grained data access control in
Research in Computer Science and Software
multi-owner settings, In International Conference on
Engineering 5(3), March - (2015): (pp. 823-826).
Security and Privacy in Communication Systems,
Springer Berlin Heidelberg, (2010): (pp. 89-106).

6149
International Journal of Applied Engineering Research ISSN 0973-4562 Volume 13, Number 8 (2018) pp. 6138-6150
© Research India Publications. http://www.ripublication.com

[8] Xu, Dong, Cloud computing: An emerging technology,


In Computer Design and Applications (ICCDA), 2010
International Conference on, vol. 1, pp. V1-100. IEEE,
2010.
[9] Kuo, Mu-Hsing, Opportunities and challenges of cloud
computing to improve health care services, Journal of
medical Internet research 13, no. 3 (2011): e67.
[10] Delfs, Hans and Helmut Knebl, Symmetric-Key
Cryptography, In Introduction to Cryptography, pp.
11-48. Springer Berlin Heidelberg, 2015.
[11] Salomaa, Arto, Public-key cryptography, Springer
Science and Business Media, 2013.
[12] JohnBethencourt, AmitSahai, BrentWaters,
http://acsc.cs.utexas.edu/cpabe/, University of Texas,
(last accessed date 21 August 2017)
[13] Next Cloud: https://nextcloud.com/ (last accessed date
23 August 2017)

6150

You might also like