Implementasi Algoritme BLAKE2S pada Protokol MQTT
Kata Kunci:
IoT, publish-subscribe, MQTT, integritas, Message Authentication CodeAbstrak
Message Queue Telemetry Transport (MQTT) merupakan protokol berarsitektur publish-subscribe untuk Internet of Things (IoT) yang didesain menjadi protokol yang ringan saat diterapkan. Selain ringan, MQTT juga merupakan protokol dengan penggunaan bandwidth yang rendah karena data yang ditransmisikan berukuran kecil. Untuk menjamin integritas data yang ditransmisikan dari pengubahan, penyubstitusian, maupun penyisipan dibutuhkan mekanisme pengecekan integritas data yang diterima. Karena data yang diterima memengaruhi hasil pemrosesan lanjutan seperti penyimpanan pada basis data maupun pengambilan keputusan oleh unit kontrol. Meski MQTT dapat diterapkan menggunakan Secure Sockets Layer (SSL), namun SSL membutuhkan sumber daya tidak sedikit. Sebagai alternatif penggunaan SSL, mekanisme pengecekan integritas data berupa Message Authentication Code (MAC) dilakukan pada penelitian ini. Terdapat algoritme MAC yang telah banyak digunakan, contohnya yaitu algoritme HMAC-MD5 dan HMAC-SHA1. Namun algoritme MD5 dan SHA1 telah dinyatakan tidak aman karena rentan terhadap second preimage dan collision attack. Oleh sebabnya dipilih algoritme BLAKE2S karena tahan terhadap serangan second preimage dan collision attack. Dari hasil pengujian algoritme BLAKE2S yang diterapkan pada sistem dengan protokol MQTT, sistem dapat mengetahui pengubahan, penyubstitusian, maupun penyisipan data yang diterima dengan rata-rata peningkatan penggunaan memory hanya sebanyak 0,0041 MB pada publisher serta 0,0044 MB pada subscriber.