The thesis presents the Cryptography programming library for the Python programming language which serves as a wrapper for the cryptographic functions implemented in low-level programming languages. The presented cryptographic procedures such as SHA-2, AES, RSA and ECDSA serve as a basis for the demonstration of their performance and efficiency in comparison with the functions of the OpenSSL programming library. Moreover, the presentation also discusses the security properties each family of functions provide. Additionally, the demonstration highlights the esthetics and usage of the cryptographic wrappers.
The performance of functions from both programming libraries is measured by calculating the throughput and the number of operations per second. In addition, efficiency is also calculated by taking a quotient of performance results from functions of the Cryptography and OpenSSL programming libraries. The comparison of both metrics gives the ability to form an informed conclusion about the potential uses for the library. It shows that the performance of Cryptography's functions is the closest to the functions from the OpenSSL library when computationally intensive functions are used. We come to the conclusion that the main advantage of the Cryptography programming library comes from the independent use of the different back-end libraries and its simple function wrappers.
|