The SSL approach of using public/private key (asymmetric) mechanisms to establish a symmetric working key for data encryption seems like it would be a good approach for end-to-end secure data transmission at the application level. Especially when one end is in an insecure (whitebox) environment such as a mobile phone.
Basically I could use the SSL protocol (How does SSL/TLS work?) to get a symmetric working key and encrypt my application data for end-to-end communication. Clearly I would need to develop client and server side components to make this work.
Is this possible? How about some pointers to examples?
Are you talking about also encrypting data at rest? If so, there are many good solutions for encrypting database or flat files. Please be more specific about what you mean by end to end.
– Devon Holcombe Mar 30 '15 at 21:23GPG is a protocol for doing the similar thing except on a message basis.
Whichever programming language you're using already has libraries for this type of thing and you could move this question over to stackoverflow.
– Jonathan Mar 30 '15 at 22:02