Implementasi Algoritme BLAKE2S pada Protokol MQTT - Sandy Ramadhan Wijaya; Ari Kusyanti; Widhi Yahya (Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer, 2019)
Message Queue Telemetry Transport (MQTT) is a protocol with a publish-subscribe architecture for Internet of Things (IoT) that designed to be a lightweight protocol when applied. MQTT also a protocol with low bandwidth usage because of the small size transmitted data. To secure the integrity of transmitted data from alteration, substitution, and insertion, an integrity checking mechanism of the received data is required. Because the received data could affect the results of data processing like storing data to the database and decision making by the control unit. Although MQTT can be applied using Secure Sockets Layer (SSL), but SSL requires a lot of resources. As an alternative to the SSL's implementation, Message Authentication Code (MAC) is used in this study for an integrity checking mechanism. There is a MAC algorithm that has been widely used, such as the HMAC-MD5 and HMAC-SHA1 algorithms. However, the MD5 and SHA1 algorithms are insecure because they are vulnerable to second preimage and collision attacks. So as an alternative BLAKE2S algorithm is used because it is resistant to second preimage and collision attack attacks. Based on the test result of the implemented BLAKE2S algorithm to systems with the MQTT protocol, the system knows if there is an alteration, substitution, and insertion of the received data with an average of memory usage overhead only 0.0041 MB in the publisher side and 0.0044 MB in the subscriber side.