Floyd,
шифровка алексу
function fixedCharCodeAt(a, d) {
var b = a.charCodeAt(d);
if (55296 <= b && 56319 >= b) {
var c = b, b = a.charCodeAt(d + 1);
return 1024 * (c - 55296) + (b - 56320) + 65536
}
return 56320 <= b && 57343 >= b ? (c = a.charCodeAt(d - 1), 1024 * (c - 55296) + (b - 56320) + 65536) : b
}
function fixedFromCharCode(a) {
return 65535 < a ? (a -= 65536, String.fromCharCode(55296 + (a >> 10), 56320 + (a & 1023))) : String.fromCharCode(a)
}
function code(a, d, b) {
for (var c = "", e = 0; e < a.length; e++) var f = fixedCharCodeAt(a, e) + fixedCharCodeAt(d, e % d.length) * (b ? -1 : 1),
c = c + fixedFromCharCode(f);
return c
};
var str = code('нашел примеры для английских символов, для русских - пока печаль.','12345test') // code(str, key, decode)
alert(str);
str = code(str,'12345test', true) ;
alert(str)