Delphi: Cross-platform encryption library?

  • Автор темы romber81
  • 2598
  • Обновлено
  • 03, Nov 2014
  • #2
romber81, post: 760693:
Добрый день,

подскажите, пожалуйста, кроссплатформенную Delphi-библиотеку для шифрования данных (текстов, потоков, файлов).
Спасибо!
Java тебе в помощь
 

LeshaRB


Рег
11 Jun, 2007

Тем
5

Постов
110

Баллов
160
  • 05, Jul 2016
  • #3
Скорее тут нужна не библиотека, а алгоритм, который можно будет под разные платформы реализовать. Я бы рекомендовал ассиметричное шифрование с открытым и закрытым ключами.
 

alexdnepro


Рег
18 Feb, 2010

Тем
1

Постов
8

Баллов
18
  • 06, Jul 2016
  • #5
Что имеется в виду под кроссплатформенностью? И насколько сильным должно быть шифрование? ZLib не устраивает?
 

S_Gur


Рег
26 Feb, 2007

Тем
3

Постов
27

Баллов
57
  • 14, Oct 2016
  • #6
какое шифрование нужно? симетричное/асиметричное. насколько оно должно соответствовать стандарту?
 

tell5


Рег
06 Mar, 2015

Тем
2

Постов
34

Баллов
54
  • 06, Dec 2016
  • #7
Очень актуальный вопрос. Я тоже не могу найти шифрование строки в Delphi а дешифрование в PHP. Например используя dcpcrypt удалось добиться дешифрование в PHP методом mcrypt_cbc, но только латиницу, Utf-8 нифига не получилось. Есть у кого подвижки в этом?
 

test1c


Рег
25 Jul, 2010

Тем
1

Постов
23

Баллов
33
  • 06, Dec 2016
  • #8
Нет такого понятия "шифрование строки". Есть - "шифрование байтов". Как только ты определишься, как ты хочешь строку представлять в байтовом виде, шифровка/дешифровка станет тривиальной.
 

JCDenton


Рег
15 Feb, 2013

Тем
1

Постов
15

Баллов
25
  • 06, Dec 2016
  • #9
JCDenton, post: 760720:
Нет такого понятия "шифрование строки". Есть - "шифрование байтов". Как только ты определишься, как ты хочешь строку представлять в байтовом виде, шифровка/дешифровка станет тривиальной.
Это все ерунда - нет шифрования строки есть шифрования строки . Пример компонента пожалуйста.
Я наверное разверну свой ответ. Не надо было умничать, а надо было посмотреть описание mcrypt_cbc http://php.net/manual/en/function.mcrypt-cbc.php

Входящий и выходящий параметр строка. Те кому надо все поняли. string mcrypt_cbc ( int $cipher , string $key , string $data , int $mode [, string $iv ] )
 

test1c


Рег
25 Jul, 2010

Тем
1

Постов
23

Баллов
33
  • 06, Dec 2016
  • #10
Вот ты ж упёртый. Когда ты не понимаешь, как выполняется шифрование - и возникают подобные вопросы.

Нужно чётко понимать, какой байтовый вид имеют строки в PHP и в Delphi.

Почему? Потому что, если алгоритм фиксирован, то результаты его выполнения одинаковы - вне зависимости от языка, на котором алгоритм реализован.

Иными словами, "результаты не совпадают" НЕ означает, что шифрование выполняется как-то по разному в Delphi и в PHP. Это означает, что на вход алгоритму шифрования поступают разные данные (читай: разное байтовое представление одинаковых строк). Тогда вопрос "не совпадает результат шифрования" отпадёт сам собой.

Вместо него возникнет другой вопрос: "а как мне сконвертировать строку в байты и обратно". Сделай байтовый дамп "строки" в PHP.

Посмотри, что это.

Сделай байтовый дамп той же строки в Delphi.

Убедись, что они не совпадают.

Забудь про вопрос шифрования.

Решай вопрос с байтами и строками. Для особо одарённых ("дай компонент"). Я не телепат.

Я не знаю, как ты хранишь строки в PHP.

UTF-8? Win1251? KOI-8? Определяется сервером? Я не знаю, как ты хранишь строки в Delphi.

ANSI? Unicode? Поэтому я не могу ответить на вопрос, как нужно делать лично тебе.

Но если я знаю все кусочки информации, то соединить их вместе не представляет проблем. P.S. Подсказка: в PHP "строка" - это массив байт

. В Delphi строка - это массив символов, не байт. P.P.S. При условии, конечно, что алгоритм действительно фиксирован, и ты не пытаешься использовать два разных алгоритма (например, разные варианты заполнения в блочном шифре).
 

JCDenton


Рег
15 Feb, 2013

Тем
1

Постов
15

Баллов
25
  • 06, Dec 2016
  • #11
Не ну я понимаю, не нравится лицом в грязь и все такое... Мы "потребители" компонента. Никто не спрашивает "а что там работает бай-не байт" расписать алгоритм глубже чем "вход строка" на выход base64 строка. Че не понятно? Телепан=тия не нужна. Нужно быть просто попроще.
Ты просто перестань тупить и прочитай вопрос в топике ...кроссплатформенную Delphi-библиотеку для шифрования данных (текстов...
 

test1c


Рег
25 Jul, 2010

Тем
1

Постов
23

Баллов
33
  • 07, Dec 2016
  • #12
In my case I used dcpcrypt2 for encryption. USES TDCP_blowfish... Sometimes it was different, but in PHP or Java it was mostly the same if not the wrong algorithm. Of course, the "Key" for encryption should be the same.
 

yyjksw


Рег
17 Jul, 2008

Тем
0

Постов
13

Баллов
13
Тем
49554
Комментарии
57426
Опыт
552966

Интересно