Dynamic Multiparty Authentication Using Cryptography Hardware For IOT
Dynamic Multiparty Authentication Using Cryptography Hardware For IOT
Abstract—The rapid development of various emerging tech- due to the security requirement of more common activities including
nologies such as cloud computing and the Internet of Things (IoT) communication, encryption disks, and electronic money systems.
presents significant security and privacy challenges. In particular, Currently, hardware security, where programmable logic solutions can
complex and challenging applications involving various business provide additional security in the form of cryptographic hardware
parties have the requirement to delegate access control mecha- solutions (CHS) are widely in research [9], [10]. Currently, most
nisms securely to one or more parties, who in turn can govern industrial sectors use hardware security modules (HSMs) to provide
methods that enable multiple other parties to be authenticated dedicated cryptographic services to ensure ultimate device protection
in relation to the services that they wish to consume. Moreover, with a dual focus on high performance and security [11]. Hardened
modern integrated design and manufacturing follows a business authentications are highly resistant to remote attacks and are capa-
model where different third-party vendors provide hardware, ble to meet any level of endpoint security and are high potential
software, and manufacturing services, making it hard to ensure candidates for the future business. CHS in the form of Physically
the trustworthiness of the entire process. The emergence of IoT Unclonable Function (PUF) technology is world leaders in security
has led to our use of Field Programmable Gate Array (FPGA) IP cores [12]. Currently, IoT employs reconfigurable and lightweight
devices with Dynamic Partial Reconfiguration (DPR) abilities, devices with embedded security for a variety of applications [13],
which allows for modifications to the hardware implemented to [14].
undergo changes and incorporate dynamic addition/deletion of In a distributed system architecture such as cloud [15], the user
access using security protocols. We use, Physically Unclonable becomes dynamic or system may need to upgrade their product
Functions (PUF), cryptographic hardware primitive which are to stay updated. As FPGAs are designed to provide the necessary
based on a physical system having easy to evaluate, hard to flexibility due to the infield reconfigurable device features within
predict and manufacturer resistant properties in developing a limited time, they provide benefits to enterprises [16]–[18]. FP-
security protocol. In this paper, we combine the concepts of GAs are also increasingly used in embedded security applications
hardware security through PUFs and hardware evolution through as they provide flexibility including algorithm agility, architecture
DPR in providing dynamic secure multiparty authentication efficiency, resource efficiency, algorithm modification, throughput and
system. cost efficiency [19]. All protection mechanisms in hardware-enforced
using cryptographic techniques and dynamism using reconfiguration
Keywords— cryptographic protocol, dynamic partial reconfigura- provide a compact solution for flexibility and security. It is also
tion, physically unclonable functions, cloud computing, analytics, known that the use of programmable hardware in system imple-
security, multiparty interactions, Internet of Things mentation can improve performance. Although the relatively higher
power dissipation of FPGAs in previous generations was a challenge
I. I NTRODUCTION to limit their deployment in power sensitive applications, Ultra low
The Internet of Things (IoT) refers to uniquely identifiable de- power FPGAs are now widely available for IoT usage. For distributed
vices/objects connected to the internet that can sense data and react systems and IoT applications, DPR-enabled FPGAs are the platform
with their environment [1], [2]. Computing is focused on the vast of choice [6]. Furthermore, It may be subject to malicious circuit
amount of data collected and made accessible by connecting all alterations, usually referred to as Hardware Trojan insertion [20],
smart objects within an IoT system [3]. IoT ‘things’ are dynamic [21]. Such attacks use the same DPR capabilities that are otherwise
in nature requiring flexible software and hardware [4]. Software so valuable. Therefore, proper defense strategies must be put in place
applications are well known for their flexibility, but plasticity in to counter such threats while taking into account the inherent physical
hardware is an emerging field. The concept of flexible hardware was restraints of IoT. With the growing popularity of services delivered by
introduced with the advent of new technologies such as Dynamic cloud computing, it is important that both cloud providers and cloud
Partial Reconfiguration (DPR) in re-programmable hardware such as users have confidence that there are appropriate safeguards in place to
Field Programmable Gate Array (FPGA) devices [5]. DPR enables ensure an acceptable level of security and privacy mechanisms [22]–
the use of fewer or smaller devices, reducing power consumption [24]. A number of researchers have contributed to strengthen security
and enhancing system upgrades. These features led to the growing and privacy protection in cloud applications, and there are various
demand for deployment of FPGAs in areas including IoT [6]. As cryptographic algorithms to address potential security and privacy
software provides a very high amount of flexibility, which is lacking problems in cloud [25]–[28]. It follows that research topics related
in hardware, FPGAs are thought to bridge this gap. However, the de- to cloud security have attracted tremendous research interest [29]–
sign of these systems can be challenging, and this is particularly true [32].
of the configuration controller. Currently, new tools have been widely The remaining part of the paper is organised as following. In
developed to support and promote DPR capabilities in FPGAs [7]. section II, we discuss the multiparty delivery system emphasis-
Another highly demanding requirement for IoT is security [6], ing security. Section III, describes the challenges associated with
[8]. Nowadays cryptography has become part of our everyday lives the design of multiparty system. Various multiparty authentication
methods are provided in Section IV. In section V we describe the into contractual agreements, multi-round cooperation and human
hardware security primitive used in this work. The proposed protocol intervention.
for multiparty authentication is described in Section VI. Finally, The primary reason for this lack of progress is due to serious
we conclude the work with directions for future development in concerns about the security, privacy, and reliability of these systems.
Section VIII. IoT is capable of monitoring all aspect of day-to-to life, including
the above-mentioned concerns [39], [40]. Citizens, therefore, have
II. M ULTIPARTY SERVICE DELIVERY AND SECURITY legitimate concerns about privacy. In addition, businesses are con-
cerned with damage to their reputations due to data being handled by
As enterprises are being more conscious of data collection, anal-
wrong hands, and the governments fear the consequences of security
ysis, modelling, and prediction, the need for systems with a faithful
risks [41]. Multiparty authentication is a complex challenge in a
representation of business processes is becoming widespread. This
multi-cloud environment. These challenges increase in complexity
means that the underlying digital services must demonstrate both
when we consider the potential proliferation of devices in IoT
robustness and flexibility to tolerate new and unanticipated business
systems. In general, such systems may be a one-to-one mapping
scenarios. As such, process flows may be difficult to predict in
between system access devices and the clouds themselves.
some instances, especially if a business offers bespoke services or
However, there are also several additional complications of numer-
products to customers, where a transaction may execute only once
ous devices with varying degrees of functionality and capability. An
[33]. As a consequence of this, the eventual application that is
example of such a device is a Wireless Sensor Network (WSN), which
delivered is underpinned by a collection of disparate services that are
are often adaptive entities that may be applicable to the addition or
orchestrated at run-time, that may have origins in organisations that
removal of sensor nodes during operation.
are heterogeneous. Each of the host organisations will have adopted
Various reports predict a remarkable increase in the number of
security measures that are unique to the enterprise, with the effect
connected intelligent ‘things’ exceeding 20 billion by 2020 [42].
that an application composed of multiple services will thus present
As we see the exponential growth of the connected devices, the
a number of different security realms. Each realm typically consists
predictions seem to be believable. If these predictions come true, then
of data that represents a collection of resource principals, that are
the demand for authentication of devices will be a major challenge to
registered with a trusted principal such as a certificate authority. The
address, especially as there will be insufficient capacity to manually
principals are governed by a set of security policies that control access
authenticate even a fraction of the devices and consequently, some
to other services and resources within the scope of the application
automation will be mandatory.
[34]. The certificate authority is deemed to be trustworthy across
A fundamental challenge in a complex environment like the IoT or
the application domain and is present to validate users and functions
multi-clouds is the necessity to manage and ensure communications
[35]. It is essential that each security realm is authenticated against
that enable the required authentication approvals [43].
to ensure that a principal has the appropriate security privileges to
The use of Single Sign On (SSO) also allows the use of a key ex-
consume services marshalled by a security realm. The identity of a
change technique to actually manage the provision of authentication
principal needs to be confirmed by the correct authentication process
credentials certified by a named authority. In addition, it eliminates
of the relevant realm so as to correctly identify and establish who the
the need for users to enter different security credentials multiple times
principal is. During the authentication process, security credentials
[44], [45].
that were given to the principal by the relevant security realm are
However, despite the relative simplicity of the technique, it simply
used to authenticate it.
provides a secure method of key exchange is insufficient for the
In the case of more complex application architectures, such situation when we need multiple parties to be capable to establish
as cloud-based services provision, each cloud may hide multiple certain trust each other in a dynamic, heterogeneous environment,
instances of other clouds and/or services [36]. It follows that not and therefore SSO technique is lacking in this regard.
only will there be numerous authentication mechanisms to keep
maintained, but they will have to be invoked dynamically at run- IV. AUTHENTICATING MULTIPLE PARTIES
time on demand. If separate authentication processes are established
With the explosive growth of Internet of Things applications the
across disparate security realms, there is a potential for a significant
transition of traditional communication services to the Internet is
increase in authentication workload and the consequential side-effects
becoming increasingly important for group communication. Several
on network bandwidth and computational cycles [37]. The scenario
new online services and applications are emerging, such as Cloud
where a multiparty session is composed of many two-party sessions
computing which enables users to elastically scale their applications,
is explored by in [38], which demonstrates that there is a need for
software platforms and hardware infrastructures. These cloud imple-
a protocol for multiparty session authentication. There is an inherent
mentations increase the sharing of resources by separating solutions
challenge here that it is not always possible for a session participant
into different tiers [46].
to establish whether another session participant is actually a member
In contrast, where cloud computing systems share a domain,
of the multiparty session in progress.
services for the delivery of data analytics are more prone to external
threats such as: distributed attacks, malware attacks, and other known
III. K EY CHALLENGES FOR MULTIPARTY ENVIRONMENTS security and privacy issues for cloud computing [47], which are
The wider distribution of of IoT nodes and the extent and nature applicable to distributed systems also. Consequently, the growing
of the data collected and transformed by IoT devices are a major proliferation of services offered by IoT technologies poses many risks
challenge for security. The wider distribution of of IoT nodes and the related with security and privacy as well.
extent and nature of the data collected and transformed by IoT devices
are a major challenge for security. In the IoT domain, authentication A. Dynamic authentication
permits the integration of various IoT devices deployed in various In a multi-tenancy environment, Cloud-based business systems are
contexts. In view of the fact that services and organisations can adopt dynamic and involve similarly dynamic authentication interactions.
a collaborative process in an extremely vibrant and flexible manner, Hence, the authentication frameworks cannot be static. Burrows [48]
direct cross-realm authentication relationship is not simply a means proposed a tenant privacy framework using a global authentication
of joining the two collaborating realms. The lack of authentication register as an attempt to facilitate dynamic authentication.
path connecting two security realms will necessitate two security Dynamic authentication creates a per-session authenticator using
realms, when working together, to follow a more traditional and cryptography. With each authentication session between the requester
long route that will involve creating a mutual trust entailing entering and the verifier, a dynamic authenticator changes.
In order to obtain the registration application certificate, the the provision of information that is personal and can uniquely identify
register holds a private key and personal data for each tenant, and and distinguish a particular tenant.
subsequently provides the requisite private key, providing that the It is the organisation that owns the private data (employee data in
personal data received by the system registrar is correct. Chen [49] this example), that administers and hosts the private key component
posits that a multi-tenant database hosted on a cloud platform can of the overall access key. The remaining component is the key to the
serve the purpose of registering global authentication requests and sub-domain that is generated and managed by the cloud provider. This
transactions, to include the specific details of which stakeholder has establishes a hierarchical organisation of the various key components,
initiated which transaction. as illustrated in Figure 2, where a commonplace use case of a staff
Each tenant is represented within the cloud service provider by member needing to access operations data from a remote cloud.
way of a record of specific data, that is appended to existing tenant
metadata. C. Federation across clouds
It is the augmentation of this tenant data that enables the verifi- As the number of parties requiring authorised access increases, so
cation of private data that has been supplied previously, a scheme does the complexity of the interactions that need to be managed via
that was introduced by Pippa [50] and is described as identity-based the home cloud. Agent-based federation of services across multiple
cryptography. This approach ensures that tenants within a multi- clouds [52] is one solution to the challenge, which simplifies the
tenant environment can only be granted access to the workspace that complexity by defining roles to manage service discovery, brokering
they have been allocated. and authentication.
The root key (common for the entire cloud) is the public key that Service discovery agents constantly scan the cloud ‘horizon’ to
unlocks a cloud or grid-based workspace assigned to all valid cloud detect the presence of new services that can be utilised by tenants.
tenants. Within the set of available services, there is then a matching service
Interaction between the client and server enables data regarding the that attempts to identify service availability and correlate this with
client’s identity to be exchanged for the purposes of verification. As service need. Finally, an agent that manages an authentication service
part of this exchange, the public (root) key is included and added to can then start the process of establishing trust between parties, as
the private key that was generated as a by-product of the interaction. illustrated in Figure 2.
The authentication registry server uses the signature to add private
key fields to the root key, for them to be sent to the client who
has made the rquest. Furthermore, other server arrays, which are
most likely to be clouds, can be allocated to undertake privacy-as-
a-service duties. These duties include the ability to provide identity-
based cryptography and identity-based signature generation for cloud
computing [50]. Such clouds arrange the key structures as hierarchies
as per Figure 1.
Fig. 4. Arbiter PUF: With n-bit challenge and a single bit response. An arbiter
PUF compares two paths with an identical delay in design, where a random
process variation determines which path is faster. Based on the fastest path,
the arbiter outputs a 1-bit digital response.
Fig. 5. XOR Arbiter PUF with k constituent PUFs: Arbiter PUFs are
duplicated k-times to form an XOR Arbiter PUF. All the constituent arbiter
PUFs are given the same challenge bits. The challenge bits select a unique
delay path in determining the outcome of the arbiter. The multiple responses Fig. 6. FPGA fabric configured with PUFs: The FPGA fabric is divided into
produced are then XOR-ed to generate a 1-bit digital response. two regions- the static partition and the dynamic partition. The static partition
consists of PUFs which are configured before deployment and with a fixed
and unalterable design. New PUFs can be added to the dynamic partition as
they evolve with time using dynamic partial reconfiguration feature of the
B. Protocol-2 FPGA. This evolution aids in incorporating dynamic users into the network
by following a trusted multiparty authentication protocol.
The second part of the algorithm describes an evolving IoT
network. This protocol is to enable a new user to access an IoT
node after successful introduction by an existing user. A user U B,
Algorithm 1 User is a member of the cloud to be accessed Algorithm 2 User is not a member of the cloud to be accessed
Objective: Objective:
(a) The session Authority Cloud is an FPGA which verifies (a) The Session Authority Cloud is an FPGA which verifies
the identity of user (U A ) who is requesting access. the identity of user (U B ) who is requesting access.
(b) The FPGA provides session key for the genuine set of (b) The FPGA provides session key for the genuine set of
users (U i ). new users (Ui ).
Prerequisites Prerequisites
1) An n-bit input, 1-bit output XOR PUF P 1 is reconfigured 1) SAC FPGA has built-in controllers to facilitate secure
in the static partition of the SAC − F P GA. There exists dynamic partial reconfiguration.
a PUF for every authenticated user. PUF P 1 represents 2) FPGA fabric is divided into two parts, a) static fabric
the identity of the user. and b) dynamic fabric. Static fabric consists of PUF
2) Each user also has an identity number, ID. configurations which existed before deployment. They
3) A mathematical model M i of P i resides with each User. might be assigned to some set of genuine users in
4) F and user U i have agreed on a fixed encoding scheme the beginning. The dynamic fabric is dedicated to con-
E(.) and a decoding scheme D(.), such that for any figure additional security primitives (mostly PUFs) for
binary string x, E(.) and D(.) are injective, X = E(x) any genuine dynamic user using secure dynamic partial
and D(X) = x. reconfiguration.
Output A value in variable F lag to show that the session is Output A value in variable F lag to show that a session is
granted (F lag = 1) or denied (F lag = 0). granted (F lag = 1) or denied (F lag = 0).
Steps Steps
1: U i to File handler F : request Access to IoT cloud Cj 1: U B requesting introduction to U A to access the cloud C j
2: F to U i : Request for the identity number ID of the 2: U A to File handler F : request introduction of U B to cloud
user and responds to a set of challenges CH p . F sends q Cj
challenge bits each of length n to U i . 3: F to UA : Request for keys for authentication by sending a
3: U i calculates the following: Rimp = M i(CH p ), p = 1q, set of challenges CHp . There are ‘q’ challenge bits each
Rim = (Rim1 , Rim2 , Rim3 , Rimq ), CAi =E(IDi , Rim) of length ‘n’.
4: U i to F : U i sends the certificate CAi to F 4: U A calculates the following:
5: F generates a session ID for the IoT cloud access. a RAmp = M A(CHp), p = 1q
6: F to SAC − F P GA: F sends the set of challenges CH p b RAm = (RAm1, RAm2, RAm3, RAmq)
and CAi to the SAC − F P GA c CAA = E(IDA, RAm)
7: SAC − F P GA calculates the following 5: U A to U B U A sends the certificate CAA to U B
a (ID, Rim) = D(CAi ) 6: U B to F: E(IDB,IDA,CAA)
b Rif p = Pi (CH
Pq p ), p = 1qL 7: F to SAC-FPGA: F new user request IR, set of challenges
(Rimp Rif p
c Ni = (1 − (p=1)
) If N i ≥ 0.99, SAC − CHp and CAA to the SAC-FPGA
q
F P GA declares U i as an authenticated user. 8: SAC-FPGA calculates the following