Design and Implementation of a File Encryption System Based on Object-Oriented Programming Using C++
DOI:
https://doi.org/10.47709/cnahpc.v7i4.7211Keywords:
Object-Oriented Programming, C++, File Encryption, Data Security, Software DesignAbstract
Data security has become a critical aspect in the digital era, especially in protecting confidential files from unauthorized access. This study aims to design and implement a file encryption system based on Object-Oriented Programming (OOP) principles using the C++ programming language. The system is developed by applying the core concepts of OOP, namely encapsulation, inheritance, and polymorphism, to create a modular and reusable software architecture. The encryption process is implemented using symmetric key algorithms, allowing users to encrypt and decrypt text-based files securely. The program design follows a layered class structure, where each class handles specific functionalities such as key generation, file reading and writing, and cryptographic operations. The implementation is conducted in a console-based environment with a focus on simplicity, efficiency, and maintainability of the source code. The evaluation results show that the OOP-based approach enhances the flexibility of system modification and reduces code redundancy compared to traditional procedural programming. Furthermore, performance testing demonstrates that the encryption and decryption processes can be executed efficiently without significant latency for small to medium-sized files. This research concludes that applying OOP concepts in C++ provides a structured and scalable framework for developing secure and maintainable encryption systems, which can be further enhanced for larger-scale or GUI-based applications in the future.
Downloads
References
Abomhara, M., & Køien, G. M. (2015). Cyber security and the internet of things: Vulnerabilities, threats, intruders, and attacks. Journal of Cyber Security and Mobility, 4(1), 65–88. https://doi.org/10.13052/jcsm2245-1439.414
Alsmirat, M. A., Jarrah, M., Al-Ayyoub, M., & Gupta, B. B. (2019). Impact of encryption algorithms on the performance of web servers: A comparative study. Journal of Information Security and Applications, 48, 102366. https://doi.org/10.1016/j.jisa.2019.102366
Anderson, R. (2018). Security engineering: A guide to building dependable distributed systems (3rd ed.). Wiley.
Buchanan, W. J., & Li, S. (2017). Implementing lightweight cryptography for internet of things. Future Generation Computer Systems, 68, 337–347. https://doi.org/10.1016/j.future.2016.08.010
Das, R., & Samanta, D. (2017). Software design patterns for object-oriented programming: A review. ACM Computing Surveys, 50(6), 94. https://doi.org/10.1145/3132733
Focardi, R., & Luccio, F. L. (2020). Secure programming in C and C++: An engineering approach. Journal of Systems and Software, 165, 110562. https://doi.org/10.1016/j.jss.2020.110562
Hussain, F., Hussain, R., Hassan, S. A., & Hossain, E. (2020). Machine learning in IoT security: Current solutions and future challenges. IEEE Communications Surveys & Tutorials, 22(3), 1686–1721. https://doi.org/10.1109/COMST.2020.2986444
Kumar, P., Ahmad, S., & Pandey, P. (2019). Comparative analysis of symmetric key cryptographic algorithms. International Journal of Computer Applications, 182(1), 1–6. https://doi.org/10.5120/ijca2019918152
Li, J., & Chen, X. (2020). Object-oriented design and its impact on software maintainability: A systematic review. Information and Software Technology, 122, 106283. https://doi.org/10.1016/j.infsof.2020.106283
Naseem, M. T., Khan, M., & Qureshi, I. (2018). Comparative study of various encryption algorithms. International Journal of Advanced Computer Science and Applications, 9(3), 400–404. https://doi.org/10.14569/IJACSA.2018.090354
Pawar, S., & Patil, P. (2021). Performance evaluation of file encryption algorithms for secure data transmission. Procedia Computer Science, 192, 122–130. https://doi.org/10.1016/j.procs.2021.08.013
Singh, S., & Kaur, R. (2019). Review of data security and encryption techniques in cloud computing. Procedia Computer Science, 152, 340–347. https://doi.org/10.1016/j.procs.2019.05.007
Sommerville, I. (2016). Software engineering (10th ed.). Pearson Education.
Stallings, W. (2017). Cryptography and network security: Principles and practice (7th ed.). Pearson.
Zhang, Y., & Wang, H. (2016). A study on modern encryption algorithms and their performance in file protection. IEEE Transactions on Information Forensics and Security, 11(6), 1223–1232. https://doi.org/10.1109/TIFS.2016.2538783
Downloads
Published
How to Cite
Issue
Section
License
Copyright (c) 2025 Jimmy

This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.











