Explaination of End-to-End encryption