![]() |
|
||||||||||
|
|||||
|
Регистрация: Jan 2008
Адрес: Земля
Сообщений: 178
|
Всем доброго времени суток
![]() Хочу закодировать текст (String) XOR-методом и записать его в файл. Т.е. весь текст раскладываю на строки, кодирую построчно, собираю, добавляя в конец каждой строки "\r\n" последовательность. При декодировании опять разбиваю на строки, убираю "\r\n" и пробую декодировать с тем же ключом - НЕ ПОЛУЧАЕТСЯ!!! Создал такой вот класс: package src { public class XORcoder { // Constants: static const def_key:String='RQ9UEgyaXINTyzpn3SJ7FSzmwSlewTWI3'; // Initialization: public function XORcoder() { } // Public Methods: static public function encode(input_str:String,key:String=def_key):String { var output_str:String = new String(); output_str = xor(input_str,key); return output_str; } static public function decode(input_str:String,key:String=def_key):String { var output_str:String = new String(); output_str = xor(input_str,key); return output_str; } // Protected Methods: static private function xor(source:String,key:String):String { var result:String = new String(); for (var i:uint = 0; i<source.length; i++) { if (i > (key.length-1)) { key+=key; } result+=String.fromCharCode(source.charCodeAt(i)^key.charCodeAt(i)); } return result; } } } Кто подскажет? ----------------------------------------------------- Вот отдельная программка на этом классе. Если подольше потыкать, то можно обнаружить, что не всегда закодированный (encoded) текст возвращается в декодированный (decoded) при нажатии не кнопку "DECODE": Последний раз редактировалось RAlfDog; 16.09.2009 в 23:35. |
![]() |
Часовой пояс GMT +4, время: 04:54. |
|
|
« Предыдущая тема | Следующая тема » |
|
|