Dhanshri Kolhe et. al.
/ International Journal of New Technologies in Science and Engineering
                                                                                        Vol. 5 , Issue. 3, 2018, ISSN 2349-0780
       Design and Implementation of SMQTT for IoT
                       Applications
                  Dhanshri Kolhe                                                      Prof. Smita Kapse
            dhanshrikolhe5@gmail.com                                               kawadesmita@gmail.com
          Department of computer science                                       Department of computer science
     Yeshwantrao Chavan College of Engineering,                           Yeshwantrao Chavan College of Engineering,
                     Nagpur                                                                 Nagpur
Abstract:                                                            heterogeneity of devices, device identity, device
                                                                     management, secure device to device communication
In the IoT world, establishing a strong mobile network               (D2D), etc. To enable the integration and management
architecture will be critical for organizations to bring             of heterogeneous IoT devices, architectures such as
together people, processes, data and things. Among                   Ubiquitous Sensor Network (USN), Sensor Web
the various available protocols and standards to                     Enablement (SWE), etc., are proposed. Here, security
network IoT entities, the Message Queue Telemetric                   of devices (such as identity theft, data integrity), D2D
Transport (MQTT) is already a reference solution. It                 communication, etc., are not addressed rigorously.
provides a publish/subscribe messaging transport                     Further most of the privacy and security features
specifically designed to be used in devices with limited             proposed by them are at a nascent level. To address
resources over constrained networks. A message                       this cryptography techniques based on Public Key
broker is an imperative component in IoT systems, and                Infrastructure (PKI), Identity based encryption (IBE),
it works as a gateway between IoT devices and                        etc., are proposed for secure IoT communication.
application platforms. With the growth of IoT devices                Though current techniques serve the purpose of basic
today, these systems can easily overwhelm message                    security primitives for D2D communications, they do
brokers unless the software can fully utilize hardware               not address at the protocol level. Communication
resources such as multi-core facility. In this paper                 protocols exists such as Constrained Application
proposed system is designed to Implement the SMQTT                   Protocol (CoAP, UDP based), Message Queue
protocol for secure data transfer between entities.                  Telemetry Transport (MQTT, TCP based), MQTT-SN
Using IomaTic as a development platform system                       (UDP based), etc. which are deployed for IoT at
demonstrate the proof of concept and its                             different layers have limited or devoid of security
implementation.                                                      features. Hence these protocols need to address
                                                                     security issues for IoT.
Keywords:      MQTT,     D2D,     IoT,    Cryptography,
IomaTic                                                                        Moreover, MQTT and MQTT-SN are more
                                                                     prevalent than CoAP and find applications in the area
                                                                     of social networks, Vehicle to Vehicle communication
               I. INTRODUCTION                                       (V2V) and sensor networks. Hence in proposed work
                                                                     MQTT and MQTT-SN for IoT w.r.t security. Note that
         Innovations in digital things, Information                  it is the user’s responsibility to address security issues
Communication Technology and IPV6 (Internet                          for MQTT and MQTT-SN.
protocol) are enabling rapid deployment of Internet of
Things (IoT) around the globe. It is estimated that                           In this direction, it is suggested to enable
trillions of IoT devices are going to be deployed in                 security forMQTT by envisaging SSL/TLS with
next five years. IoT Applications are immense in                     certificates and session key management. However,
number and utilized to provide solutions for multitude               for IoT due to multitude of heterogeneous devices,
of diversified problems. Though IoT has lot of                       storing and managing the certificates and key
potentials in the digital world, during its deployment,              exchanges for every session is cumbersome and also
it encounters several issues with respect to (w.r.t)
                                                   Available online @ www.ijntse.com                                       47
                                        Dhanshri Kolhe et. al. / International Journal of New Technologies in Science and Engineering
                                                                                               Vol. 5 , Issue. 3, 2018, ISSN 2349-0780
SSL/TLS suffers from attacks such as BEAST,                       Proposed system is also to adopt new advancing
CRIME, RC4, Heartbleed, etc. Thus, a scalable,                    technology, “Lightweight Cryptography”, in the IoT.
lightweight and robust security mechanism is required             System describes two reasons that support this
for MQTT and its variants for deploying in IoT.                   proposal. In order to achieve end-to-end security, end
                                                                  nodes have an implementation of a symmetric key
          Hence in this direction, we propose a Secure            algorithm. For the low resource-devices, e.g. battery-
MQTT (SMQTT) which augments security feature for                  powered devices, the cryptographic operation with a
the existing MQTT protocol and its variants based on              limited amount of energy consumption is important.
lightweight Attribute Based Encryption (ABE) over                 Application of the lightweight symmetric key
elliptic curves. The advantage of using ABE is because            algorithm allows lower energy consumption for end
of its inherent design which supports broadcast                   devices.
encryption (with one encryption, message is delivered                      The footprint of the lightweight cryptographic
to multiple intended users) and thus suitable for IoT             primitives is smaller than the conventional
applications. ABE are of two types: (i). Ciphertext               cryptographic ones. The lightweight cryptographic
Policy based ABE (CP-ABE) and (ii). Key Policy                    primitives would open possibilities of more network
based ABE (KPABE). In general, each of these                      connections with lower resource devices. A
schemes are different w.r.t the access policy, key                comparison of the lightweight properties with the
management and are suitable for different kinds of                conventional cryptographic primitives is shown in
applications. Thus as part of our study, we analyse               Appendix. The comparison in Appendix focuses on
suitability of these schemes for SMQTT from IoT                   hardware properties. Some end nodes might be able to
perspective. To the best of our knowledge, we have                embed general-purpose micro-processors and software
not seen any security requirements and solutions of               properties are considered important in such platforms.
secure MQTT for heterogeneous IoT devices. The                    However, lowest cost devices can embed only
proposed security feature is efficient, robust and                application-specific ICs due to limited cost and power
scalable.                                                         consumption, where hardware properties are crucially
                                                                  important.
       II. PROBLEM STATEMENT
                                                                                  III. METHODOLOGY
    The main objective of proposed work is to
develop a mechanism that allows the system to                     Proposed system has been designed by keeping
transfer information between multiple IoT devices                 temperature sensor monitoring and remote home
or between device to server in secure way using                   appliances control over TCP/IP network. System
modified version of MQTT protocol called secure                   has been designed in three different modules.
MQTT. Below points describes the different
objective considerations.                                         3.1 Client / Publisher Hardware:
                                                                  A      IomaTic      Development     board-based
• To deploy a MQTT server and create a web                        implementation which use ESP8266 as a wi-fi
  communication between IoT board server.                         communication module, DHT11 as a temperature
• To develop a MQTT protocol in embedded                          monitoring system, relay switching unit for
  environment for rapid communication.                            appliances tripping, LCD screen for information
• Design an application to monitor and control                    monitoring and finally Atmega328P as a
  the things through MQTT protocol.                               microcontroller for logic processing. This part
• Modifying the communication by securing the                     connects to broker as a client and send
  MQTT communication using encryption                             temperature information to server secondly it
  methods.                                                        accepts from server to operation appliances
                                                                  connected to the relay unit. It also utilizes the
                                                          Available online @ www.ijntse.com                                       48
                                                                                Dhanshri Kolhe et. al. / International Journal of New Technologies in Science and Engineering
                                                                                                                                       Vol. 5 , Issue. 3, 2018, ISSN 2349-0780
encryption algorithms to securely transmit the                                                            It takes the ease of Arduino programming IDE
messages.                                                                                                 and the power of open source Arduino Uno board,
                                                                                                          clubbed together with tons of on-board
3.2 Broker / Server:                                                                                      component and modules makes it perfect solution
                                                                                                          for the beginners who are willing to learn IoT and
This is a TCP/IP based MQTT broker or server
                                                                                                          the experts who are ready to deploy IoT as
which is responsible to accept network connection
                                                                                                          applications or product.
request from publisher and subscriber. This will
transmit messages between connected client either
as a publisher or the subscriber. It mainly works
as a post master between subscriber and publisher.
3.3 Client / Subscriber:
A client program which connect to server and
subscribe itself to receive temperature in
formation and graphically display it to user. It also
allows user to control connected appliances using
graphical user interface.                                                                                         Fig. 3.1 IomaTic Development Board
                                                                                                          Unique Arduino and Atmega328p based
                                                                                                          development board having on-board components
                                                                                                          like SIM 808 with SIM slot, GPS, Bluetooth,
                                          et
                                                Server / Broker                                           ESP8266, DHT11, buzzer, 16x2 and 16x4 LCD
                                                                   TC
                                     ck
                                   So
                                                                                                          support, 30amp. Relay, serial interface, mini USB
                                                                    P/
                                                                      IP
                              IP
                            P/
                                                                        So
                       TC
                                                                          ck
                                                                                                          programming port, connectors for different
                                                                           et
                                                                                                          configurable IOs, multilevel voltage out like 12v,
                                                                                                          5v, 3.3v so you can connect any sensor directly to
                                               Secure Messenging
                                                                                                          board, configuration DIP switches to control
      Client / Subscriber                                                  Client / Publisher
                                                                                Enc / Dec
                                                                                                          components or modules power state and LED
          Enc / Dec
                                                                                                          indications for different modules. To control these
               Fig. 3.0 Proposed architecture                                                             entire modules and to develop IoT applications,
                                                                                                          IomaTic board comes up with different sample
Fig. 3.0 describes the overall system architecture                                                        codes and almost 40+ ready to deploy application
of the implementation. MQTT is mainly used for                                                            where at single click IomaTic board can be
unidirectional communication that is to publish                                                           converted in to real life applications that to free of
the information to multiple channels at a time                                                            cost.
over TCP/IP Communication. In proposed system                                                                          IV. IMPLEMENTATION
bidirectional Communication is established over
TCP/IP socket connection in order to fetch the
topic information and send the control command
to the hardware or publisher.
      Proposed system implemented over
IomaTic where, IomaTic is first of its kind,
complete IoT application development platform.
                                                                                                  Available online @ www.ijntse.com                                       49
                                    Dhanshri Kolhe et. al. / International Journal of New Technologies in Science and Engineering
                                                                                           Vol. 5 , Issue. 3, 2018, ISSN 2349-0780
                                                              communication and execution result between all
                                                              entities in proposed system. Subscriber show the
                                                              received information form hardware, hardware
                                                              publisher shows the temperature information and
                                                              control the devices and finally server shows
                                                              overall information exchange and packet detail.
                                                                                 V. CONCLUSION
                                                              Since MQTT, the lightweight messaging
                                                              publish/subscribe protocol can be used to share
                                                              any dynamic data, the sharing of data, e.g., flood
           Fig 4.1 (A) Subscriber                             monitoring data, earthquake data, or traffic data
                                                              via MQTT protocol, can be used to improve the
                                                              way of human life. However, there are variety of
                                                              topic naming when the publishers shared their
                                                              data over the MQTT protocol. To create the
                                                              standard of topic naming MTNC was proposed in
                                                              our previous work. In this work we implement the
                                                              secure MQTT and tested it over wi-fi network
                                                              using IomaTic development platform. With the
                                                              help of socket programming in TCP/IP mode
                                                              system generates the result as expected
                                                              References:
           Fig. 4.2 (B) Hardware                              [1] B. S. Adiga, P. Balamuralidhar, M. A. Rajan, R. Shastry,
                                                              and V. L.Shivraj, “An Identity Based weEncryption Using
                                                              Elliptic Curve Cryptography for Secure M2M
                                                              Communication,” in Proceedings of the First International
                                                              Conference on Security of Internet of Things, ser.
                                                              SecurIT’12. ACM, 2012, pp. 68–74.
                                                              [2] D. D´ıaz Pardo de Vera, A´ . Sigu¨enza Izquierdo, J.
                                                              Bernat Vercher, andL. A. Hern´andez G´omez, “A
                                                              Ubiquitous sensor network platform for integrating smart
                                                              devices into the semantic sensor web,” vol. 14, no. 6.
                                                              Multidisciplinary Digital Publishing Institute, 2014, pp. 10
                                                              725–10 752.
                                                              [3] X. Wang, J. Zhang, E. Schooler, and M. Ion,
                                                              “Performance evaluationof Attribute-Based Encryption:
                                                              Toward data privacy in the IoT,” in Communications (ICC),
                                                              2014 IEEE International Conference on, June 2014, pp.
         Fig. 4.3 (C) Server /Broker                          725–730.
Fig. 4.1 (A), (B), (C) shows the real time
                                                      Available online @ www.ijntse.com                                       50
                                             Dhanshri Kolhe et. al. / International Journal of New Technologies in Science and Engineering
                                                                                                    Vol. 5 , Issue. 3, 2018, ISSN 2349-0780
[4] M. Ion, “Security of Publish/Subscribe Systems,” Ph.D.             [14] R. Ostrovsky, A. Sahai, and B. Waters, “Attribute-
dissertation, University of Trento, Italy, May 2013.                   based Encryption with Non-monotonic Access Structures,”
                                                                       in Proceedings of the 14th ACM Conference on Computer
[5] D. Locke, “MQ Telemetry Transport (MQTT)                           and Communications Security, ser. CCS ’07, 2007, pp. 195–
V3.1Protocol\Specification,”http://www.ibm.com/developer               203.
works/library/ws-mqtt/, 2010.
[6] Davis, Ernesto Garc´ıa and Calveras, Anna and                      [15] A. Stanford-Clark and H. L. Truong, “MQTT For
Demirkol, Ilker, “Improving packet delivery performance of             Sensor         Networks         (MQTT-SN)           Protocol
publish/subscribe protocols in wireless sensor networks,”              Specification,”http://mqtt.org/documentation, 2013.
vol. 13, no. 1. Multidisciplinary Digit Publishing Institute,
2013, pp. 648–680.                                                     [16] Zaidi, Syed Ali Raza, et al. "Enabling IoT empowered
                                                                       smart lighting solutions: A communication theoretic
[7] V. Goyal, O. Pandey, A. Sahai, and B. Waters,                      perspective." Wireless Communications and Networking
“Attribute-based Encryption for Fine-grained Access                    Conference Workshops (WCNCW), 2014 IEEE. IEEE,
Control of Encrypted Data,” in Proceedings of the 13th                 2014.
ACM Conference on Computer and Communications
Security, ser. CCS ’06, 2006, pp. 89–98.                               [17] Zhang, Yuejun, Ping Zhou, and Mingguang Wu.
                                                                       "Research on DALI and Development of Master-Slave
[8] J. Bethencourt, A. Sahai, and B. Waters, “Ciphertext-              module." 2006 IEEE International Conference on
Policy Attribute- Based Encryption,” in Proceedings of the             Networking, Sensing and Control. IEEE, 2006.
2007 IEEE Symposium on Security and Privacy, ser. SP
’07, Washington, DC, USA, 2007, pp. 321–334.                           [18] Alkar, Ali Ziya, and UmitBuhur. "An Internet based
                                                                       wireless homeautomation system for multifunctional
[9] P. Pal, G. Lauer, J. Khoury, N. Hoff, and J. Loyall,
“P3S: A Privacy Preserving Publish-subscribe Middleware,”              devices." IEEE Transactions on Consumer Electronics 51.4
in Proceedings of the 13thInternational Middleware
                                                                       (2005): 1169-1174.
Conference, ser. Middleware ’12, pp. 476–495.
                                                                       [19] Kovatsch, Matthias, Markus Weiss, and Dominique
[10] M. Ion, G. Russello, and B. Crispo, “Supporting
Publication and Subscription Confidentiality in Pub/Sub                Guinard. "Embedding internet technology for home
Networks,” in Security and Privacy in Communication
                                                                       automation." Emerging Technologies and Factory
Networks, ser. Lecture Notes of the Institute for Computer
Sciences, Social Informatics and Telecommunications                    Automation (ETFA), 2010 IEEE Conference on. IEEE,
Engineering, vol. 50, 2010, pp. 272–289.
                                                                       2010.
[11] M. A. Tariq, “Non-functional Requirements in
Publish/Subscribe Systems,”Ph.D. dissertation, Universit¨at
                                                                       [20] Zaheeruddin and Munish Manas, “A New Approach for
Stuttgart, Fakult¨at Informatik, Elektrotechnik und
Informationstechnik, Germany, August 2013.                             the Design and Development of Renewable Energy
                                                                       Management         System      through      Microgrid      Central
[12] A. Sahai and B. Waters, “Fuzzy Identity-based
Encryption,” in Proceedings of the 24th Annual                         Controller”, Energy Reports, vgt5Elsevier Inc., vol. 1, pp.
International Conference on Theory and Applications of
                                                                       156-163, 2015.
Cryptographic Techniques, ser. EUROCRYPT’05, Berlin,
Heidelberg, 2005, pp. 457–473.
[13] B. S. Adiga, M. A. Rajan, R. Shastry, V. L. Shivraj,
and P. Balamuralidhar,“Lightweight IBE scheme for
Wireless Sensor nodes,”in Advanced Networks and
Telecommuncations Systems (ANTS), 2013             IEEE
International Conference on, Dec 2013, pp. 1–6.
                                                                Available online @ www.ijntse.com                                      51