主权项 |
1. A method of providing end-to-end encrypted communications between a first end-user device including a first end-user device processor and a second end-user device including a second end-user device processor, the method comprising:
determining with the first end-user device processor whether the second end-user device is configured to securely communicate with the first end-user device; if the determining determines the second end-user device is not configured to securely communicate with the first end-user device, the first end-user device processor configuring the first end-user device to send a clear text communication to the second end-user device; if the determining determines the second end-user device is configured to securely communicate with the first end-user device, the first end-user device processor configuring the first end-user device to selectively send any of a clear text communication and a cipher text communication to the second end-user device; autogenerating, with the first end-user device processor, a Public/Private key pair; agreeing upon at least one shared secret based on a handshake communication between the first and second end-user devices without revealing the shared secret through the handshake communication, the first end-user device processor and the second end-user device processor each deriving at least part of the shared secret based at least on the Public key of the Public/Private key pair; conditioned on the first end-user device processor configuring the first end-user device to enable the first end-user device to send a cipher text communication to the second end-user device, securely communicating an encrypted message from the first end-user device to the second end-user device, without requiring the encrypted message to be decrypted intermediate of the first end-user device and the second end-user device; decrypting, using the shared secret, the communicated encrypted message at the second end-user device into message clear text; the second end-user device making the message clear text available to a user only while the message clear text is being used; and enabling downloading on demand of a secure communications application to the second end-user device, the secure communications application configuring the second end-user device to decrypt secure messages sent by the first end-user device and to encrypt secure messages to send to the first end-user device. |