You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
|
/*!
|
|
|
|
* Webogram v0.2 - messaging web application for MTProto
|
|
|
|
* https://github.com/zhukov/webogram
|
|
|
|
* Copyright (C) 2014 Igor Zhukov <igor.beatle@gmail.com>
|
|
|
|
* https://github.com/zhukov/webogram/blob/master/LICENSE
|
|
|
|
*/
|
|
|
|
|
|
|
|
importScripts(
|
|
|
|
'../../vendor/console-polyfill/console-polyfill.js',
|
|
|
|
'bin_utils.js',
|
|
|
|
'../../vendor/jsbn/jsbn_combined.js',
|
|
|
|
'../../vendor/cryptoJS/crypto.js'
|
|
|
|
);
|
|
|
|
|
|
|
|
onmessage = function (e) {
|
|
|
|
// console.log('AES worker in', e.data);
|
|
|
|
var taskID = e.data.taskID,
|
|
|
|
result;
|
|
|
|
|
|
|
|
if (e.data.task == 'encrypt') {
|
|
|
|
result = aesEncrypt(e.data.bytes, e.data.keyBytes, e.data.ivBytes);
|
|
|
|
} else {
|
|
|
|
result = aesDecrypt(e.data.encryptedBytes, e.data.keyBytes, e.data.ivBytes);
|
|
|
|
}
|
|
|
|
postMessage({taskID: taskID, result: result});
|
|
|
|
}
|