Skip to main content

Implementation of E2EE Using Python

  • Conference paper
  • First Online:
Emerging Technologies in Data Mining and Information Security

Part of the book series: Advances in Intelligent Systems and Computing ((AISC,volume 1348))

  • 325 Accesses

Abstract

The need for cyber security is felt now more than ever. In an era of constant mass surveillance, illegal spying and cyber-attacks, it is extremely important to have a secure means of communication which cannot be intercepted. Several new protocols were introduced such as HTTPS to encrypt the connection between the client and the server. This made sure that no third person can read the data being transmitted to and from the client. This model of encryption had one major flaw: the server itself. Every message that was encrypted by the sender was decrypted at the server, encrypted again and sent to the receiver. Thus the server can read all the messages. The users of such chatting services had to trust the owners of the services with their privacy. Even if the owners were not involved in shady data deals, they still had the risk of their servers getting hacked or being pressured by the government to reveal the data of their users. All these issues paved the way for a new type of implementation of encryption known as end-to-end encryption often abbreviated as E2EE. The message to be sent is encrypted by the sender and is sent to the server which relays it to the receiver as it is. Since the keys used to encrypt and decrypt the data are available only to the users, the server cannot read the messages sent through it. This model quickly gained popularity and was implemented by many messaging applications, the most notable being WhatsApp, Signal, Telegram, and Wire. In this project, we are going to implement E2EE using Python. For encryption, we intend to use the AES algorithm. AES stands for advanced encryption standard which was introduced in 2001 by the NITS (U.S.A.). It was developed by Vincent Rijmen and Joan Daemen in response to the earlier broken algorithm DES. AES is a symmetric key encryption algorithm meaning that the same key is used for encryption as well as decryption of the messages. This algorithm has three key lengths—128,192 and 256 bits, whereas a single block size of 128 bits. The version we are going to implement is 128 bits key size.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 169.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 219.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. W. Bai, M. Pearson, P. G. Kelley and M. L. Mazurek,Improving non-experts’ understanding of end-to-end encryption: an exploratory study, in 2020 IEEE european symposium on security and privacy workshops (EuroS&PW), pp. 210–219 (2020).https://doi.org/10.1109/EuroSPW51379.2020.00036

  2. F. Schillinger, C. Schindelhauer, End-to-End encryption schemes for online social networks, in Security, privacy, and anonymity in computation, communication, and storage. SpaCCS 2019, ed. by G. Wang, J. Feng, M. Bhuiyan, R. Lu. Lecture Notes in Computer Science, vol. 11611 (Springer, Cham, 2019). https://doi.org/10.1007/978-3-030-24907-6_11

  3. R.E. Endeley, End-to-End encryption in messaging services and national security-case of whatsapp messenger. J. Inf. Secur. 9, 95–99 (2018). https://doi.org/10.4236/jis.2018.91008

    Article  Google Scholar 

  4. M. Nabeel,The many faces of end-to-end encryption and their security analysis, in 2017 IEEE international conference on edge computing (EDGE), pp. 252–259 (2017).https://doi.org/10.1109/IEEE.EDGE.2017.47

  5. E. Ekwonwune, V. Enyinnaya, Design and implementation of end to end encrypted short message service (SMS) using hybrid cipher algorithm. J. Softw. Eng. Appl. 13, 25–40 (2020). https://doi.org/10.4236/jsea.2020.133003

    Article  Google Scholar 

  6. R. Adrian, A. Ahmed, B. Karima, W. Marco, Usability of end-to-end encryption in e-mail communication. Front. Big Data https://doi.org/10.3389/fdata.2021.568284. ISSN 2624-909X

  7. V. Krapa, S. Prayla Shyry, M. Rahul Sai Krishna, WhatsApp encryption—a research. Int. J. Recent Technol. Eng. (IJRTE) 8(2S3) (2019). ISSN: 2277–3878

    Google Scholar 

  8. O.O. Blaise, O. Awodele, O. Yewande, An Understanding and Perspectives of End-To-End Encryption.Int. Res. J. Eng. Technol. (IRJET) 08(04), 1086 (2021). www.irjet.net. e-ISSN: 2395-0056, p-ISSN: 2395-0072. © 2021, IRJET | Impact Factor value: 7.529 | ISO 9001:2008 Certified Journal

  9. A.M. Espinoza, W.J. Tolley, J.R. Crandall, Alice and Bob, who the FOCI are they?: Analysis of end-to-end encryption in the LINE messaging application

    Google Scholar 

  10. J.C.S. Reis, P. Melo, K. Garimella, Detecting misinformation on whatsapp without breaking encryption

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to A. Suresh .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2023 The Author(s), under exclusive license to Springer Nature Singapore Pte Ltd.

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Dusane, S., Iliyaz, M., Suresh, A. (2023). Implementation of E2EE Using Python. In: Dutta, P., Bhattacharya, A., Dutta, S., Lai, WC. (eds) Emerging Technologies in Data Mining and Information Security. Advances in Intelligent Systems and Computing, vol 1348. Springer, Singapore. https://doi.org/10.1007/978-981-19-4676-9_55

Download citation

Publish with us

Policies and ethics