Что нового

[Криптография] Шифрование данных одинаковым алгоритмом по ключу

ArgoNaft

Новичок
Сообщения
129
Репутация
0
Задача стоит такая:
Есть скрипт на Autoiot и есть URL который отдает данные для скрипта на Autoiot. В итоге мне нужно как то шифровать данные на URL и потом расшифровывать на Autoiot клиенте. Я думал допустим взять букву перевести ее в Char, далее можно умножить скажем каждый последующий символ на n+1 по циклу, где начальное n=33 скажем. Угадать пробел там был или нет это почти не реально, так как числа не будут повторяться. НО. Это будет все числа 123456 и узнать где там при расшифровки разделители :smile: Char ни как. А ставить разделитель | это глупо ка кто :smile:. Подскажите может есть уже что то, а то может велик изобретаю.


Добавлено:
Сообщение автоматически объединено:

пытался сделать так:

Код:
$key = "22"
$sDownloadString = InetRead("http://1-tn.com/test.php",1)
$de_crypt = _StringEncrypt(0,BinaryToString($sDownloadString),$key)
ConsoleWrite($de_crypt)


php код такой
Код:
require_once('class.rc4crypt.php');
$pwd = '22';
$data = 'data';
$e = rc4crypt::encrypt($pwd, $data);
echo bin2hex($e);
https://dl.dropboxusercontent.com/u/7739475/temp/rc4crypt.zip
вот сам класс шифрования на php ... Но не работает такое... я предполагаю что из-за Level в функции _StringEncrypt. Помогите разобраться
 

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
967
ArgoNaft
Можно тут позаимствовать.
 
Автор
A

ArgoNaft

Новичок
Сообщения
129
Репутация
0
а с RC4 не как нельзя, вы мне как то подсказывали в другом топике использовать эту связку, но я так и не смог ее настроить ... хотя связка отличная. Вроде бы я сделал все верно ... не ужели алгоритмы различаются?
 

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
967
ArgoNaft
Попробуйте временно удалить.
PHP:
bin2hex($e);
Посмотрим.
 
Автор
A

ArgoNaft

Новичок
Сообщения
129
Репутация
0
удалил, там такое :laugh:


Добавлено:
Сообщение автоматически объединено:

Код:
$key = "22"
$crypt = _StringEncrypt(1,BinaryToString("data"),$key)

даже такое вот в Autoit выдает мне
D50D588CD7B364D1
Что далеко не также выглядит как и в php что отдает. По этому я склонен что какие то алгоритмы реализованные в php не схоже с Autoit
 

winstan

Эксплотатор)
Сообщения
406
Репутация
79
просто вы берёте 22 а автоит думает что это число :whistle: в отличии от php где тип значений определён заранее
 
Автор
A

ArgoNaft

Новичок
Сообщения
129
Репутация
0
Код:
$pwd = 22;
$data = 'data';
$e = rc4crypt::encrypt($pwd, $data);
echo $e;
поменял тип данных но все равно не расшифровывает ...


Добавлено:
Сообщение автоматически объединено:

выматывает уже меня это дело :scratch: сил нет просто бороться с этим делом
 

inververs

AutoIT Гуру
Сообщения
2,135
Репутация
465
Была похожая проблема, мне нужно было повторить php функцию sha1.
В аутоит есть функции для хэширования, но просто так, в лоб, их не подставить, и так не работает: _Crypt_HashData($vData, $CALG_SHA1)
Все особо печально если нужно повторить что то такое:
sha1(sha1(....) .'dddd')
В результате мучений родилась такая обертка:
Код:
Func sha1($vData) ;//PHP стилль
	Return StringLower(StringTrimLeft(_Crypt_HashData($vData, $CALG_SHA1), 2))
EndFunc   ;==>sha1

Может это подтолкнет вас на решение вашей проблемы.
 
Верх