Submitted:
01 July 2024
Posted:
01 July 2024
You are already at the latest version
Abstract
Keywords:
1. Introduction
2. Related Work
3. Methodology
-
Users are faced with several input forms such as images and text. Image input is used as an image container that will be sent to the server for hash analysis, while text input is used as a secret key container determined by the user himself where later the secret key is used to encrypt the image hash with the help of HMAC-SHA256.Acceptance Criteria:
- –
- Image Input Form: A form where users can upload an image.
- –
- Text Input Form: A form where users can input a secret key.
-
The backend retrieves the metadata and hash of the uploaded image, then performs HMAC-SHA256 encryption with the secret key combination that was previously inputted.Acceptance Criteria:
- –
- Retrieve Metadata and Hash: The backend retrieves the necessary metadata and calculates the hash of the uploaded image.
- –
- HMAC-SHA256 Encryption: The backend encrypts the image hash using the provided secret key.
-
The image hash, image hash encryption result, metadata, and other details are stored in the database.Acceptance Criteria:
- –
- Store Data: The system stores the image hash, encrypted hash, metadata, and other relevant details in the database.
- –
- Data Integrity: Ensure that the data stored is accurate and retrievable for future processes.

-
Users get images that are the same or similar to those in the system from various sources such as social media or other communication applications (Telegram, Whatsapp, Discord, etc.).Acceptance Criteria:
- –
- Users can obtain images from various sources such as social media, and communication applications (Telegram, Whatsapp Discord, etc.).
- –
- The system should support common image formats (e.g., JPEG, PNG).
- The user wants to check the authenticity of the image then opens the system that has been built in this research and is faced with an image and text input form. Image input is used as an image container which will later be sent to the server for hash analysis, while text input is used as a secret key container (users must have the secret key of the original owner of the image they want to check) where the secret key will be used to decrypt the image hash which has previously been generated using HMAC-SHA256.
-
The backend matches the decrypted data with the data already in the database.Acceptance Criteria:
- –
- The backend receives the uploaded image and secret key.
- –
- The backend retrieves the metadata and hash of the uploaded image.
- –
- The backend decrypts the image hash using the provided secret key.
- –
- The backend compares the decrypted hash with the stored hashes in the database.
- –
- If a match is found, the system identifies the matching data.
-
The backend sends a response back to the frontend in the form of which data matches what is in the database.Acceptance Criteria:
- –
- The backend sends a response to the frontend indicating whether a match was found.
- –
- The response should include details of the matching data if a match is found.
- –
- The frontend displays the result to the user, indicating whether the image is authentic.
- –
- If the image matches, the system should show relevant metadata and details of the match.
- –
- If no match is found, the system should notify the user that the image does not match any records in the database.

3.1. Research Review
3.2. Technologies and Tools
3.2.1. MongoDB




3.2.2. Multer

3.2.3. Express Framework

3.2.4. NextJS
3.2.5. Postman

| Method | Endpoint | Headers | Body |
|---|---|---|---|
| POST | /register | None | email, username, password, isAdmin (false by default) |
| POST | /login | None | username, password |
| POST | /upload | token (Bearer + generated token) | file (with file type), keyExtractor |
| POST | /check/:id | token (Bearer + generated token) | file (with file type), keyExtractor |
3.2.6. HMAC and SHA256

3.2.7. Advanced Encryption Standard

4. Result and Discussion
4.1. Result
4.2. Postman
4.2.1. Register

4.2.2. Login

4.2.3. Upload


4.2.4. File Authority and Source Check


4.3. Discussion
5. Conclusions
Acknowledgment
References
- Andrew, J.; Isravel, D.P.; Sagayam, K.M.; Bhushan, B.; Sei, Y.; Eunice, J. Blockchain for healthcare systems: Architecture, security challenges, trends and future directions. Journal of Network and Computer Applications, 2023; 103633. [Google Scholar] [CrossRef]
- Zheng, Z.; Xie, S.; Dai, H.; Chen, X.; Wang, H. An overview of blockchain technology: Architecture, consensus, and future trends. 2017 IEEE international congress on big data (BigData congress). Ieee, 2017, pp. 557–564. [CrossRef]
- Dong, S.; Abbas, K.; Li, M.; Kamruzzaman, J. Blockchain technology and application: an overview. PeerJ Computer Science 2023, 9, e1705. [Google Scholar] [CrossRef]
- Shaker, S.H. HMAC modification using new random key generator. IRAQI Journal of Computers, Communication and Control and Systems Engineering 2014, 14, 72–82. [Google Scholar]
- David, D.S.; Anam, M.; Kaliappan, C.; Selvi, S.; Sharma, D.K.; Dadheech, P.; Sengan, S. Cloud Security Service for Identifying Unauthorized User Behaviour. Computers, Materials & Continua 2022, 70. [Google Scholar]
- Sood, N. Cryptography in Post Quantum Computing Era. Available at SSRN 4705470 2024. [Google Scholar] [CrossRef]
- Nasution, R.M. Implementasi Metode Secure Hash Algorithm (SHA-1) Untuk Mendeteksi Orisinalitas File Audio. Bulletin of Computer Science Research 2022, 2, 73–84. [Google Scholar] [CrossRef]
- Quist-Aphetsi, K.; Senkyire, I.B. Validating of Digital Forensic Images Using SHA-256. 2019 International Conference on Cyber Security and Internet of Things (ICSIoT). [CrossRef]
- Nainggolan, S. Implementasi Algoritma SHA-256 Pada Aplikasi Duplicate Document Scanner. Resolusi : Rekayasa Teknik Informatika dan Informasi 2022, 2, 201–213. [Google Scholar] [CrossRef]
- Harinath, D. Enhancing Data Security Using Elliptic Curve Cryptography in Cloud Computing. International Journal of Science and Research (IJSR) 2016, 5, 1884–1890. [Google Scholar] [CrossRef]
- Gilchrist, J. Enhanced Elliptic Curve Digital Signature Algorithm Authentication System Utilising Cryptographic Key Tweaking 2024.
- Jahan, F.; Mostafa, M.; Chowdhury, S. SHA-256 in Parallel Blockchain Technology: Storing Land Related Documents. International Journal of Computer Applications 2020, 175, 33–38. [Google Scholar] [CrossRef]
- Agarwal, U.; Rishiwal, V.; Tanwar, S.; Chaudhary, R.; Sharma, G.; Bokoro, P.N.; Sharma, R. Blockchain Technology for Secure Supply Chain Management: A Comprehensive Review. IEEE Access 2022, 10, 85493–85517. [Google Scholar] [CrossRef]
- Tatineni, S. MACHINE LEARNING APPROACHES FOR ANOMALY DETECTION IN CYBERSECURITY: A COMPARATIVE ANALYSIS. INTERNATIONAL JOURNAL OF COMPUTER ENGINEERING & TECHNOLOGY 2021, 12, 42–50. [Google Scholar]
- Devineni, S.K.; Kathiriya, S.; Shende, A. Machine Learning-Powered Anomaly Detection: Enhancing Data Security and Integrity. Journal of Artificial Intelligence & Cloud Computing. [CrossRef]
- Building Applications with Serverless Architectures, 2024.
- Cinar, B. The Rise of Serverless Architectures: Security Challenges and Best Practices. Asian Journal of Research in Computer Science 2023, 16, 194–210. [Google Scholar] [CrossRef]
- Sojitra, L. Cryptography Behind WhatsApp’s End-to-End Encryption and Its Security Challenges, 2024.
- Salsabiila. Analysis of End-to-End Encryption Implementation Across Different Meta’s Applications, 2023.
- Kumar, R.; Charu, S.; Bansal, S. Effective way to handling big data problems using NoSQL Database (MongoDB). J. Adv. Database Manag. Syst 2015, 2, 42–48. [Google Scholar]
- MongoDB Documentation. https://www.mongodb.com/docs/. Accessed: 2024-06-17.
- Docs, M.W. Express - Node.js web application framework. https://developer.mozilla.org/en-US/docs/Learn/Server-side/Express_Nodejs. Accessed: 2024-06-17.
- Megida, D. Multer: Easily upload files with Node.js and Express. https://blog.logrocket.com/multer-nodejs-express-upload-file/, 2022.
- Next.js documentation.
- Saraswathi, D.M.; Satya, D.; Sowmya, T.N.S. Student Portfolio Designing using Nextjs. International Journal of Soft Computing and Engineering 2023, 13, 21–24. [Google Scholar] [CrossRef]
- Postman. https://www.postman.com/product/tools/.
- What is Postman? https://www.postman.com/product/what-is-postman/.
- Postman Collaboration, 2024. Retrieved from https://www.postman.com/product/integrations/.
- Dworkin, M.J. Advanced Encryption Standard (AES), 2023. [CrossRef]
- Abdullah, A. Advanced Encryption Standard (AES) Algorithm to Encrypt and Decrypt Data 2017.
- Nayak, A.; Poriya, A.; Poojary, D. Type of NOSQL databases and its comparison with relational databases. International Journal of Applied Information Systems 2013, 5, 16–19. [Google Scholar]
- pragimtech. Relational and non relational databases.
- Wu, L.; Yuan, L.; You, J. Survey of large-scale data management systems for big data applications. Journal of computer science and technology 2015, 30, 163–183. [Google Scholar] [CrossRef]
- Kanade, A.; Gopal, A.; Kanade, S. A study of normalization and embedding in MongoDB. 2014 IEEE International Advance Computing Conference (IACC). IEEE, 2014, pp. 416–421. [CrossRef]
- Chat, D.S. File Upload using Nodejs, Express Multer. https://deadsimplechat.com/blog/file-upload-using-nodejs-multer-express/, 2023.
- Express - Node.js web application framework. https://expressjs.com/. Accessed: 2024-06-17.
- Sarwar, M.I.; Maghrabi, L.A.; Khan, I.; Naith, Q.H.; Nisar, K. Blockchain: A Crypto-Intensive Technology-A Comprehensive Review. IEEE Access 2023. [Google Scholar] [CrossRef]
- Azeez, N.A.; Chinazo, O.J. ACHIEVING DATA AUTHENTICATION WITH HMAC-SHA256 ALGORITHM. Computer Science & Telecommunications 2018, 54. [Google Scholar]
- Krawczyk, D.H.; Bellare, M.; Canetti, R. HMAC: Keyed-Hashing for Message Authentication. RFC 2104, 1997. [Google Scholar] [CrossRef]
- Rescorla, E. The Transport Layer Security (TLS) Protocol Version 1. 3. RFC 8446, 2018. [Google Scholar] [CrossRef]
- 3rd, D.E.E.; Jones, P. US Secure Hash Algorithm 1 (SHA1). RFC 3174, 2001. [Google Scholar] [CrossRef]
- M’Raihi, D.; M’Raihi, D.; Hoornaert, F.; Naccache, D.; Bellare, M.; Ranen, O. HOTP: An HMAC-Based One-Time Password Algorithm. RFC 4226, 2005. [Google Scholar] [CrossRef]
- Buchanan, W.J.; Li, S.; Asif, R. Lightweight cryptography methods. Journal of Cyber Security Technology 2017, 1, 187–201. [Google Scholar] [CrossRef]
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2024 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).