Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Файловая система
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 22.05.2010, 21:36
KGB KGB вне форума
Прохожий
 
Регистрация: 22.05.2010
Сообщения: 3
Репутация: 10
Лампочка Как зашифровать файл XOR-ом?

Как зашифровать файл XOR-ом?

Нужно зашифровать каждый байт файла.
Код:
procedure TForm1.Button1Click(Sender: TObject);
var f:file;
i:byte;
begin
AssignFile(f,OpenDialog1.FileName);
reset(f);
while not eof(f) do
read (f,i);
//тут хорим байт по идее...
writeln(f,i);
Admin: Пользуемся тегами!

кто поможет ?

Последний раз редактировалось Admin, 23.05.2010 в 17:49.
Ответить с цитированием
  #2  
Старый 23.05.2010, 14:39
Аватар для NIch
NIch NIch вне форума
Продвинутый
 
Регистрация: 02.06.2008
Адрес: Бендеры ПМР
Сообщения: 754
Репутация: 2446
По умолчанию

Код:
//XOR алгоритм шифрования
  function C(Text : String):String;
  var
  key, longkey : string;
  i: integer;
  toto : char;
  begin
  longkey := '';
  result := '';
  toto := #0;
  key := 'qaz123wsx456edc789';
  for i := 0 to (length(text) div length(key)) do
  longkey := longkey + key;
  for i := 1 to length(text) do
  begin
  toto := Chr((ord(text[i]) xor ord(longkey[i]))); // XOR алгоритм
  result := result + toto;
  end;
  end
__________________
В начале был Бит, потом Байт и только потом появилось Слово...
Ответить с цитированием
  #3  
Старый 23.05.2010, 23:20
OnzMill OnzMill вне форума
Прохожий
 
Регистрация: 06.10.2009
Сообщения: 48
Репутация: 10
По умолчанию

Скорость хромает (.
делфа, паскаль для данных целей подходит неочень...
да, к слову, про хор - шифрование я сам открывал тему, где, кстати, выкладывал код.
__________________
Говори что думаешь, думай, что говоришь.
(Шоссе 60)
Ответить с цитированием
  #4  
Старый 25.05.2010, 08:32
KGB KGB вне форума
Прохожий
 
Регистрация: 22.05.2010
Сообщения: 3
Репутация: 10
По умолчанию

NIch, это ты привел функцию шифрования строки, если не ошибаюсь ? Но ведь строка не файл.
Ответить с цитированием
  #5  
Старый 25.05.2010, 09:08
Аватар для NIch
NIch NIch вне форума
Продвинутый
 
Регистрация: 02.06.2008
Адрес: Бендеры ПМР
Сообщения: 754
Репутация: 2446
По умолчанию

Смотри глубже...вот алгоритм XOR...
Цитата:
toto := Chr((ord(text[i]) xor ord(longkey[i]))); // XOR алгоритм
Просто бери текущий байт и ксорь его...
Код:
b := b1 xor key
Весь прикол в том, что нужно каждый раз циклично переключатся на следующий байт ключа, что бы не ксорить одним и тем же байтом...
XOR стойкий тогда когда длина ключа приближается к длине сообщения...
__________________
В начале был Бит, потом Байт и только потом появилось Слово...
Ответить с цитированием
  #6  
Старый 25.05.2010, 09:14
Аватар для Konrad
Konrad Konrad вне форума
Эксперт
 
Регистрация: 19.03.2009
Сообщения: 1,261
Репутация: 45834
По умолчанию

Вопрос: зачем это все?

Или снова появится програ, которая шифpyет мега-стойким алгоритмом собственной сборки?


И если длина ключа будет равна длине сообщения, то ключ нужно где-то хранить. И ясно что не в голове.
Ответить с цитированием
  #7  
Старый 25.05.2010, 11:09
Аватар для NIch
NIch NIch вне форума
Продвинутый
 
Регистрация: 02.06.2008
Адрес: Бендеры ПМР
Сообщения: 754
Репутация: 2446
По умолчанию

Цитата:
И если длина ключа будет равна длине сообщения, то ключ нужно где-то хранить. И ясно что не в голове.
Это все понятно, и ясно что XOR не стойкий метод...Но как "защита от дураков" вполне сойдет...А если длинный ключ, то и профи попотеет...
__________________
В начале был Бит, потом Байт и только потом появилось Слово...
Ответить с цитированием
  #8  
Старый 25.05.2010, 12:00
RusskiMedved RusskiMedved вне форума
Прохожий
 
Регистрация: 23.02.2010
Сообщения: 2
Репутация: 10
По умолчанию ...

Похоже что товарищ KGB это http://delphisources.ru/forum/showthread.php?t=7887 Пруф
Ответить с цитированием
  #9  
Старый 25.05.2010, 12:36
Аватар для Konrad
Konrad Konrad вне форума
Эксперт
 
Регистрация: 19.03.2009
Сообщения: 1,261
Репутация: 45834
По умолчанию

Цитата:
Сообщение от RusskiMedved
Похоже что товарищ KGB это http://delphisources.ru/forum/showthread.php?t=7887 Пруф
Тогда и думать нечего - я бы влепил ему бан за попытку впарить посетителям сайта delphisources.ru вирус.

Кстати, с его то знаниями, а еще и вирусы пытается писать, ужесть...
Ответить с цитированием
  #10  
Старый 25.05.2010, 14:08
Аватар для NIch
NIch NIch вне форума
Продвинутый
 
Регистрация: 02.06.2008
Адрес: Бендеры ПМР
Сообщения: 754
Репутация: 2446
По умолчанию

Интересневенько)))
Что же скажет KGB???
__________________
В начале был Бит, потом Байт и только потом появилось Слово...
Ответить с цитированием
  #11  
Старый 25.05.2010, 17:10
KGB KGB вне форума
Прохожий
 
Регистрация: 22.05.2010
Сообщения: 3
Репутация: 10
По умолчанию

Цитата:
Сообщение от RusskiMedved
Похоже что товарищ KGB это http://delphisources.ru/forum/showthread.php?t=7887 Пруф

На каком основании выводы делаем? Я содрал тему, потому что там типу не ответили внятно. Шарился в гугле, нашел интерисуюшую меня тему, решил спросить здесь.

Еще обвинения ?
Ответить с цитированием
  #12  
Старый 26.05.2010, 18:03
Аватар для Konrad
Konrad Konrad вне форума
Эксперт
 
Регистрация: 19.03.2009
Сообщения: 1,261
Репутация: 45834
По умолчанию

Код:
Май 21, 2010, 11:02:21  }{aker   созадет тему на ДЭ "Зашифровать файл XORом".

Май 22, 2010, 08:48:28  ему показывают ссылку на http://www.delphisources.ru/pages/faq/base/cryptooperation_algorithm_xor.html

Май 22, 2010, 10:08:24  }{aker пишет на ДЭ :"Так там пример шифрования строки, а не файла.".

22.05.2010, 20:36 создана тема "Как зашифровать файл XOR-ом? " на сайте ДС.

23.05.2010 "NIch, это ты привел функцию шифрования строки, если не ошибаюсь ? Но ведь строка не файл."

Уж слишком много совпадений
Ответить с цитированием
  #13  
Старый 27.05.2010, 07:31
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

В Яндексе можно найти вагон примеров как ксорить строчки текста, файлы и т.д. кучи методов... Прояви фантазию)))




Только белый человек дважды наступает на одни и те же грабли
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

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

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 01:55.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter