IMPLEMENTATION OF AES ENCRYPTION ALGORITHM WITH CHAOS-BASED DYNAMIC BLOCK KEY ON TLS PROTOCOL - Samudra, Bayu
Nowadays, the Cryptography world is developing very rapidly. One development in Cryptography is dynamic keys ciphers. There are some studies about this topic, but so far, there is no protocol that implements this cipher in practice. This final project aims to implement AES encryption with chaos-based dynamic block key on the TLS protocol. Another final project objective is selecting the appropriate chaos system that will be used as a block key generator. Also, this final project aims to test the security of the cipher and protocol that has been built. The chaos system that is used in this project is the Sine-Henon map. The reason is this chaos system has good randomness quality and offers forward unpredictability. The operation mode that is used is counter block mode. This mode is expected to improve the encryption result. The protocol implementation is done using TLSv1.2. The implementation is done by creating a python library. The security testing is done by conducting security tests in cipher and the protocol. The security tests in cipher are conducted by doing randomness test, scenario test, and robustness test. The security test in protocol is conducted by doing a scenario test. The randomness test is conducted by comparing the NIST statistical test result of the generated ciphertext by dynamic keys and static keys. The robustness test is conducted by comparing CCA and MAD results of static and dynamic keys cipher. The scenario testing is conducted based on normal condition and attack condition. The Randomness test results show that the random value generated by the Sine-Henon map has a quality equivalent with Linux urandom. Randomness test on ciphertext shows that AES with dynamic key has a quality equivalent with static key. Scenario testing shows that the cipher can work perfectly in normal conditions and attack conditions. The protocol implementation test shows that it can work in normal conditions and attack conditions. Therefore, this protocol can work properly in normal condition and withstand from replay attack, MITM attack, and tampering attack.