Модераторы: Poseidon, Snowy, bems, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> RSA (шифрование файлов любого типа), как зашифровать файл любого типа 
:(
    Опции темы
Anzhela
Дата 2.11.2009, 00:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 2.11.2009
Где: Москва

Репутация: нет
Всего: нет



помогите пожалуйста, где посмотреть почитать насчет шифрования файла любого формата РСА. Я реализовала РСА для шифровки и дешифровки текста, но что подразумевает шифровка файла, например ?

Добавлено через 2 минуты и 25 секунд
продолжение .. например файлов jpeg. 
Если кому надо могу помочь с реализацией шифрования текста, символов
PM MAIL   Вверх
kami
Дата 2.11.2009, 01:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1806
Регистрация: 25.8.2007
Где: Санкт-Петербург

Репутация: 23
Всего: 72



Цитата(Anzhela @  2.11.2009,  00:48 Найти цитируемый пост)
Я реализовала РСА для шифровки и дешифровки текста, но что подразумевает шифровка файла, например ?

Да то же самое. Что мешает представить файл с любым расширением, как текст (например, загрузить его в строковую переменную)? Здесь будет 2 проблемы:
1. Скорость реализации алгоритма
2. Размер файла (некузяво загонять файл в сотни мегабайт и более в память целиком, не помешает разбить его на блоки и подгружать последовательно).
PM MAIL WWW   Вверх
bems
Дата 2.11.2009, 01:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 3400
Регистрация: 5.1.2006

Репутация: 31
Всего: 88



Ну строковые переменные лучше оставить для строковых данных, но в целом то же самое. Вместо кода символа бери значение очередного байта.


--------------------
Обижено школьников: 8
PM MAIL   Вверх
Anzhela
Дата 5.11.2009, 15:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 2.11.2009
Где: Москва

Репутация: нет
Всего: нет



не получается представить любой файл (например не работает для jpeg, doc файлов), можете привести пример или подсказать почему?
Код

var
  Str1: TFileStream;
  I: Integer;
begin
  if OpenDialog1.Execute then
  begin
    Str1 := TFileStream.Create (OpenDialog1.Filename, fmOpenRead);
    try
      Memo1.Lines.LoadFromStream (Str1);
    finally
      Str1.Free;
    end;
  end;

 smile 

Модератор: используйте подсветку кода!
PM MAIL   Вверх
bems
Дата 5.11.2009, 16:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 3400
Регистрация: 5.1.2006

Репутация: 31
Всего: 88



С одной стороны человек реализовал рса, а с другой грузит бинарные данные в мемо....
Не делай этого. Шифруй сразу из потока.


--------------------
Обижено школьников: 8
PM MAIL   Вверх
Anzhela
Дата 5.11.2009, 16:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 2.11.2009
Где: Москва

Репутация: нет
Всего: нет



у меня процедура шифровки cypher(s:string,e,multiplay:integer) 
если делать напрямую из потока...не понимаю...как взять данные прямо из потока?
я ориентировалась на следующее:
Код

var
  FS,FD: TFileStream;
  Buf: String;
  Len: Integer;
  DestStr: String;
begin
  FS := TFileStream.Create(FilePathIn,fmOpenRead);
  try
    FD := TFileStream.Create(FilePathOut,fmCreate);
    try
      Len := FS.Size;
      SetLength(Buf,Len);
      FS.Read(Buf[1],Len);
      //Здесь шифруем строку
      DestStr := CryptStr(Buf);
      FD.Write(DestStr[1],Length(DestStr));
    finally
      FD.Free;
    end;
  finally
    FS.Free;
  end;


но здесь тоже не все файлы открываются
Модератор: И еще раз: кнопка КОД справа над формой быстрого ответа

Это сообщение отредактировал(а) bems - 5.11.2009, 20:47
PM MAIL   Вверх
bems
Дата 5.11.2009, 20:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 3400
Регистрация: 5.1.2006

Репутация: 31
Всего: 88



покажи CryptStr


--------------------
Обижено школьников: 8
PM MAIL   Вверх
Anzhela
Дата 6.11.2009, 00:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 2.11.2009
Где: Москва

Репутация: нет
Всего: нет



Код

function cryptstr(s1:string):string;
var i:integer;
    p:integer;
    convert_p:integer;
    SL:TStringList;
    s2:char;
begin
e:=7;
multiply:=13231;
 SL := TStringList.Create;
 for i := 1 to length(s1)  do
 begin
    s2:=Char(s1[i]);
    p:=((ord(s2)));
    convert_p:=MyPwMod(p,e,multiply);
    sl.Add(inttostr(convert_p));
 end;
Result:=sl.Text;
end;

вроде все файлы загружает...
при сохранении (смотри выше: FD := TFileStream.Create(FilePathOut,fmCreate);) получаю ерунду, хотя кодируется правильно как правильно сохранить и загрузить?
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1045 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.