Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 18.07.2014, 15:27
asnewbie2 вне форума Посмотреть профиль Отправить личное сообщение для asnewbie2 Найти все сообщения от asnewbie2
  № 1  
Ответить с цитированием
asnewbie2

Регистрация: Jul 2014
Сообщений: 2
По умолчанию Помогите конвертировать AS в JS (простой скрипт)

Всем привет,

Есть небольшой скрипт, необходимо конвертировать его (хотя-бы частично) в JavaScript. Вот сам скрипт:
Код AS3:
public static function decrypt(text:String):flash.utils.ByteArray {
    var key:String = "<some-base64-encoded-string>";
    var keyDecoded:String = com.hurlant.util.Base64.decodeToByteArray(key);
    var textDecoded:String = com.hurlant.util.Base64.decodeToByteArray(text);
    var algo:String = "simple-aes-cbc";
    var pad:IPad = new com.hurlant.crypto.symmetric.PKCS5();
    var cipher:ICipher = com.hurlant.crypto.Crypto.getCipher(algo, keyDecoded, pad);
    pad.setBlockSize(cipher.getBlockSize());
    cipher.decrypt(textDecoded);
    return textDecoded;
}
Я нашел отличную библиотеку - CryptoJS (https://code.google.com/p/crypto-js/), похоже на то что в ней есть все что необходимо. Но в связи с тем что в AS я ноль - крайне сложно разобраться. Буду рад любой помощи.

Заранее спасибо!

Старый 19.07.2014, 01:01
MikroAcse вне форума Посмотреть профиль Отправить личное сообщение для MikroAcse Найти все сообщения от MikroAcse
  № 2  
Ответить с цитированием
MikroAcse
 
Аватар для MikroAcse

Регистрация: Feb 2012
Сообщений: 1,540
Тебе на форум JS-кодеров (буэ).

Старый 19.07.2014, 05:10
Nooob вне форума Посмотреть профиль Отправить личное сообщение для Nooob Найти все сообщения от Nooob
  № 3  
Ответить с цитированием
Nooob
 
Аватар для Nooob

Регистрация: Mar 2007
Сообщений: 319
твой AS отличается от JS лишь наличием "public static" и указанием типов ":String",":flash.utils.ByteArray",":IPad",":ICipher" убери это и будет JS, ну и функции (Base64, PKCS5 и тд) нужно чтоб тоже самое выполняли и возвращали.
PS: в AS3 данный код не скомпилится так как нельзя скастить String в ByteArray без явного преобразования

Старый 19.07.2014, 12:51
asnewbie2 вне форума Посмотреть профиль Отправить личное сообщение для asnewbie2 Найти все сообщения от asnewbie2
  № 4  
Ответить с цитированием
asnewbie2

Регистрация: Jul 2014
Сообщений: 2
Цитата:
Сообщение от Nooob Посмотреть сообщение
твой AS отличается от JS лишь наличием "public static" и указанием типов ":String",":flash.utils.ByteArray",":IPad",":ICipher" убери это и будет JS, ну и функции (Base64, PKCS5 и тд) нужно чтоб тоже самое выполняли и возвращали.
PS: в AS3 данный код не скомпилится так как нельзя скастить String в ByteArray без явного преобразования
В том-то и дело что не совсем так. Например я не совсем понимаю что делает Base64.decodeToByteArray. В чем разница между ним и Base64.decode? Второе, я так понимаю, декодит base64 в стрингу. decodeToByteArray делает то-же самое но декодит и преобразует в ByteArray?

Далее основный затык с методом Crypto.getCipher(). Смотрел его исходники. В моем случае вроде получается что он возвращает getMode('cbc', new AESKey(key), pad);. getMode в свою очередь вернет new CBCMode(key, pad). Видимо основная проблема тут понять что-же из себя представляет CBCMode, и найти аналогию в crypto-js.

Создать новую тему Ответ Часовой пояс GMT +4, время: 07:35.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 07:35.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.