Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.01.15;
Скачать: CL | DM;

Вниз

Правильное сохранение зашифрованного файла   Найти похожие ветки 

 
St74   (2005-12-22 18:37) [0]

Уважаемые Гуру!

Недавно наткнулся в данной ветке на тему шифрования данных
http://kladovka.net.ru/delphibase/?action=viewfunc&topic=strcode&id=10090

{ **** UBPFD *********** by kladovka.net.ru ****
>> Шифрование и дешифрование текстов по принципу S-Coder со скрытым ключом

После прменения выполнения функции Encrypt с входным исходным текстом, результат будет иметь символы в диапазоне от 0 - 255 в ASCII таблице, следовательно если вам надо сохранить где либо шифровку, то лучше преобразовать в числовой вид - 16разрядный hex из ASCII таблицы (функция Write)} ->>> так вот такой вопрос:          
                                                                 
Так вот как мне выполнить в моём коде, выше указанное сохранение шифровки?

...
var
 f: TextFile; // файл
 fName: string[80]; // имя файла
 i: integer;
begin
 if not SaveDialog1.Execute then { пользователь закрыл диалог
   щелчком на кнопе Отмена }
   exit;

 fName := SaveDialog1.FileName;
 AssignFile(f, fName);

 rewrite(f); // открыть для добавления

 // запись в файл
 for i := 0 to RxRichEdit2.Lines.Count do // строки нумеруются с нуля
   Writeln(f, RxRichEdit2.Lines[i]);
 try
   CloseFile(f); // закрыть файл
 except
   on EInOutError do
   begin
     ShowMessage("Ошибка записи в фаил." +
       fName);
     exit;
   end;
 end;
 MessageDlg("Зашифрованные данные сохранены в файл ", mtInformation, [mbOk],0);
end;
...

Вот при таком раскладе, сохранение выполняется корректно, но при последующем открытии
и загрузке шифровки в RxRichEdit, и применении функции Decrypt {Дешифрования}
не происходит обратного преобразования в исходный текст.

Приложение ругается так: {Неверное целое значение: "$B"}

Как я думаю что при сохранении шифровки из RxRichEdit2 в фаил, происходить добавление
лишних символов в конце шифровки, т.е пробела.

С Уважением к вам St74! ;-)


 
umbra ©   (2005-12-22 18:55) [1]


>    Writeln(f, RxRichEdit2.Lines[i]);


при выводе в файл Writeln добавляет к каждой строке два символа ($D$A), что может влиять на расшифровку. Пользуйтесь Write


 
St74   (2005-12-22 19:31) [2]

При использовании Write выходит ошибка...
[Error] S_Coder.pas(371): Incompatible types: "String" and "Text"

St74! :(


 
St74   (2005-12-22 20:45) [3]

У кого ещё есть какие предложения! Жду ответа.

St74! ;)


 
umbra ©   (2005-12-22 20:56) [4]

begin

if not SaveDialog1.Execute then { пользователь закрыл диалог
  щелчком на кнопе Отмена }
  exit;

RxRichEdit2.LinesSaveToFile(SaveDialog1.FileName);
MessageDlg("Зашифрованные данные сохранены в файл ", mtInformation, [mbOk],0);

end;


 
St74   (2005-12-23 08:30) [5]

umbra ©   (22.12.05 20:56) [4]

Спасибо, но мне и грузить пришлось с LoadToFile. :)



Страницы: 1 вся ветка

Текущий архив: 2006.01.15;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.042 c
5-1121170591
Aleksandr.
2005-07-12 16:16
2006.01.15
Почему неправильно работает OnMeasureItem?


2-1135612088
Volfram
2005-12-26 18:48
2006.01.15
TMemo, Lines


2-1135446082
SEN
2005-12-24 20:41
2006.01.15
Значение текстового поля в Word


2-1135254448
kotbazilio
2005-12-22 15:27
2006.01.15
TDateTimePicker


1-1134211132
WebSQLNeeder
2005-12-10 13:38
2006.01.15
Быстрый перебор десяток тысяч логинов