From af055136c23652f1cf1ef0beac1b94d79cc1ddb6 Mon Sep 17 00:00:00 2001 From: Guillaume Horel Date: Thu, 19 May 2011 02:31:04 -0400 Subject: Started to play around with js crypto code test.js implements the basic functionality (recommand to load it in v8 (d8 test.js --shell) --- crypto/crypto.py | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 crypto/crypto.py (limited to 'crypto/crypto.py') diff --git a/crypto/crypto.py b/crypto/crypto.py new file mode 100644 index 0000000..f99001f --- /dev/null +++ b/crypto/crypto.py @@ -0,0 +1,28 @@ +from keyczar import keys +import ssh_rsa_key_util + +if __name__ == '__main__' : + #load asymmetric keys for 2 users. user1 key is generated, + #while user2 key is loaded from disk + keyuser1 = keys.RsaPrivateKey.Generate() + keyuser1public = keyuser1.public_key + ssh_keys_directory = '/home/guillaume/.ssh/' + keyuser2 = ssh_rsa_key_util.SshRsaPrivateKey.Read(ssh_keys_directory + 'id_rsa') + keyuser2public = keyuser2.public_key + + #symmetric key to encrypt the data + key = keys.AesKey.Generate() + #encrypt symmetric key for user 1 and 2 + key1 = keyuser1public.Encrypt(key.key_string) + key2 = keyuser2public.Encrypt(key.key_string) + + msg = 'Guillaume is a genius!' + secretmsg = key.Encrypt(msg) + + #msg decoded by user 1 + newkey1 = keys.AesKey(keyuser1.Decrypt(key1), key.hmac_key) + print newkey1.Decrypt(secretmsg) + + #msg decoded by user 2 + newkey2 = keys.AesKey(keyuser1.Decrypt(key1), key.hmac_key) + print newkey2.Decrypt(secretmsg) -- cgit v1.2.3-70-g09d2