Design and Implementation of a File Encryption System Based on Object-Oriented Programming Using C++

Authors

  • Jimmy Universitas IBBI

DOI:

https://doi.org/10.47709/cnahpc.v7i4.7211

Keywords:

Object-Oriented Programming, C++, File Encryption, Data Security, Software Design

Abstract

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

Download data is not yet available.

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

2025-11-06

How to Cite

Jimmy, J. (2025). Design and Implementation of a File Encryption System Based on Object-Oriented Programming Using C++. Journal of Computer Networks, Architecture and High Performance Computing, 7(4), 1207–1216. https://doi.org/10.47709/cnahpc.v7i4.7211