aboutsummaryrefslogtreecommitdiffstats
path: root/js/crypto.js
diff options
context:
space:
mode:
authorfriendica <info@friendica.com>2013-11-11 18:31:34 -0800
committerfriendica <info@friendica.com>2013-11-11 18:31:34 -0800
commit58e0d58489472e78fc824b7654c59aa45b1c08ca (patch)
treef32e0610872c177f51ed4b3aca7b2e9660344342 /js/crypto.js
parent54438be7c2c402e4a897a2534f0f465dea5f068b (diff)
downloadvolse-hubzilla-58e0d58489472e78fc824b7654c59aa45b1c08ca.tar.gz
volse-hubzilla-58e0d58489472e78fc824b7654c59aa45b1c08ca.tar.bz2
volse-hubzilla-58e0d58489472e78fc824b7654c59aa45b1c08ca.zip
add rabbit and tripledes ciphers - probably need a pconfig to set the default
Diffstat (limited to 'js/crypto.js')
-rw-r--r--js/crypto.js47
1 files changed, 40 insertions, 7 deletions
diff --git a/js/crypto.js b/js/crypto.js
index 50282d18f..a7b278537 100644
--- a/js/crypto.js
+++ b/js/crypto.js
@@ -48,18 +48,43 @@ function red_encrypt(alg, elem,text) {
if((alg == 'rot13') || (alg == 'triple-rot13'))
newdiv = "[crypt alg='rot13']" + str_rot13(text) + '[/crypt]';
- else if(alg == 'aes256') {
- // This is the prompt we're going to use when the receiver tries to open it.
- // Maybe "Grandma's maiden name" or "our secret place" or something.
+ if(alg == 'aes256') {
+
+ // This is the prompt we're going to use when the receiver tries to open it.
+ // Maybe "Grandma's maiden name" or "our secret place" or something.
+
+ var enc_hint = prompt(aStr['passhint']);
+
+ enc_text = CryptoJS.AES.encrypt(text,enc_key);
+
+ encrypted = enc_text.toString();
+
+ newdiv = "[crypt alg='aes256' hint='" + enc_hint + "']" + encrypted + '[/crypt]';
+ }
+ if(alg == 'rabbit') {
+
+ // This is the prompt we're going to use when the receiver tries to open it.
+ // Maybe "Grandma's maiden name" or "our secret place" or something.
- var enc_hint = prompt(aStr['passhint']);
+ var enc_hint = prompt(aStr['passhint']);
- enc_text = CryptoJS.AES.encrypt(text,enc_key);
+ enc_text = CryptoJS.Rabbit.encrypt(text,enc_key);
+ encrypted = enc_text.toString();
- encrypted = enc_text.toString();
+ newdiv = "[crypt alg='rabbit' hint='" + enc_hint + "']" + encrypted + '[/crypt]';
+ }
+ if(alg == '3des') {
+
+ // This is the prompt we're going to use when the receiver tries to open it.
+ // Maybe "Grandma's maiden name" or "our secret place" or something.
+
+ var enc_hint = prompt(aStr['passhint']);
+
+ enc_text = CryptoJS.TripleDES.encrypt(text,enc_key);
+ encrypted = enc_text.toString();
- newdiv = "[crypt alg='aes256' hint='" + enc_hint + "']" + encrypted + '[/crypt]';
+ newdiv = "[crypt alg='3des' hint='" + enc_hint + "']" + encrypted + '[/crypt]';
}
enc_key = '';
@@ -102,6 +127,14 @@ function red_decrypt(alg,hint,text,elem) {
var enc_key = prompt((hint.length) ? hint : aStr['passphrase']);
enc_text = CryptoJS.AES.decrypt(text,enc_key);
}
+ if(alg == 'rabbit') {
+ var enc_key = prompt((hint.length) ? hint : aStr['passphrase']);
+ enc_text = CryptoJS.Rabbit.decrypt(text,enc_key);
+ }
+ if(alg == '3des') {
+ var enc_key = prompt((hint.length) ? hint : aStr['passphrase']);
+ enc_text = CryptoJS.TripleDES.decrypt(text,enc_key);
+ }
enc_key = '';