Форум: "Основная";
Текущий архив: 2003.05.05;
Скачать: [xml.tar.bz2];
ВнизШифрование текстовых файлов Найти похожие ветки
← →
sagchat (2003-04-21 17:39) [0]Мне нужно сначала както закодировать текст а потом что бы Моя прога при запуске запускала закодировный текст(*.txt) и раскодировала а при завершении опять кодировала(Н да!)
← →
mrcat (2003-04-21 17:41) [1]и в чём вопрос?
>>нужно сначала както закодировать текст если "както" --- xor
← →
Anatoly Podgoretsky (2003-04-21 17:47) [2]Ну нормальное желание.
← →
sagchat (2003-04-21 18:05) [3]Вот имено дайте пожалуйста самый просенький пример для закодирования и раскодирования текста.
Заранее Благодарен
← →
Arch-vile (2003-04-21 18:07) [4]2sagchat
Тут на сайте в статьях было все что тебе надо.
← →
mrcat (2003-04-21 18:09) [5]a --- сообщение;
b --- секретный ключ (по длине равен а);
с --- результат шифрования;
с := a xor b;
шифр не "ломается" :)
← →
Anatoly Podgoretsky (2003-04-21 18:21) [6]S[I] := S[I] + 1;
Проще этого очень сложно
← →
sagchat1 (2003-04-21 18:25) [7]
> a --- сообщение;
> b --- секретный ключ (по длине равен а);
> с --- результат шифрования;
>
> с := a xor b;
>
> шифр не "ломается" :)
> S[I] := S[I] + 1;
> Проще этого очень сложно
Не могли бы вы оба поподробнее объяснить, как это все реализовать? (то есть напишите процедуру полноостью, если не трудно).
← →
mrcat (2003-04-21 18:45) [8]sagchat1 (21.04.03 18:25)
Как Делфи запускать, надеюсь, знаете? :)
function Crypt_for_sagchat1(const aData, aKey: string): string;
var
strLen,
datLen: integer;
begin
strLen := Length(aData);
if (strLen = 0) or (Length(aKey) <> strLen) then exit;
SetLength(result, strLen);
for datLen := 1 to Length(aData) do
result[datLen] := chr(ord(aData[datLen]) xor
ord(aKey[datLen]));
end;
← →
Anatoly Podgoretsky (2003-04-21 18:45) [9]Тебе нужно посмотреть книжки для начинающих, как делать циклы, как открывать файлы, а не заниматься шифрованием, рано пока.
← →
Angel_Forever (2003-04-22 06:54) [10]procedure TCryptSonic.EncClick(Sender: TObject); //Кодирование
begin
pkoder.Position:=0;//ProgressBar1
pdekoder.Position:=100;//ProgressBar2
operatdec.Visible:=False;//Panel
lis.Caption:=(" ");//Label1
openf.Text:=(" ");//Label2
lin.Caption:=(" ");//Label3
savef.Text:=(" ");//Label4
if Openorig.Execute then begin
FName:=Openorig.Filename;
AssignFile(F1, Openorig.Filename);
Reset(F1);
Savecoding.FileName:=FName;
if Savecoding.Execute then begin
AssignFile(F2, Savecoding.Filename+".zcf"); //Присванеие расширения выходному файлу
Rewrite(F2);
repeat
while not Eof(F1) do
begin
lis.Caption:=("Кодирую файл:");
openf.Text:=(Savecoding.Filename);
lin.Caption:=("в");
savef.Text:=(Openorig.FileName);
Tkoder.Enabled:=true;
Read(F1, Ch);
Pkoder.Position:=Pkoder.Position+1;
if Pkoder.Position = size then
lis.Caption:=("Кодирование завершено");
k:=255-ord(Ch){формулу можно и дальше "раздуть"};
Ch {Buf}:=chr(k);
Write(F2, Ch);
end;
until (NumRead = 0) or (NumWritten <> NumRead);
CloseFile(F2);
end;
CloseFile(F1);
end;
end;
Короче, здесь имена моих переменных, как я их обзывал в проге..., а ты сам уже обзывай переменные как тебе больше нравится, кстати формула которая здесь написана...только первая из огромного множества операций выполняемых этой процедурой... :)
← →
Shirson (2003-04-22 08:57) [11]
function coder(sor,key:string):string;
var
a,b:integer;
res:string;
begin
b:=1; res:="";
for a:=1 to length(sor) do
begin
res:=res+chr(ord(sor[a]) xor ord(key[b]));
inc(b);
if b>length(key) then b:=1;
end;
result:=res;
end;
← →
evvcom (2003-04-22 10:39) [12]Ребята, ну вы своими ответами мальчику совсем голову вскружите. По-моему можно было на ответе Anatoly Podgoretsky и закончить обсуждение данного вопроса.
← →
Spartak (2003-04-22 11:21) [13]> evvcom
ты не прав ! этот форум как раз и создан для начинающих
Кстати Anatoly Podgoretsky с одной стороны то же не прав !
когда то и он не знал как зашифровать текст ! И наверное сейчас не знает ! раз помочь кодом не может а на всех ветках советует почитать книги !
Мы наоборот должны помогать новичкам ! Когда то мы и сами задавали
такие вопросы .
> sagchat
Вот тебе один очень неплозой сайт по функциям DELPHI, там надеюсь ты найдёшь множество ответов на свои вопросы :
http://delphibase.endimus.com
← →
evvcom (2003-04-22 11:33) [14]> Spartak
Может и не прав я, но надо в таком случае вопросы нормально ставить. Если не знает как зашифровать - это один вопрос, если не умеет работать с файлами - это другой вопрос. Если не знает какой алгоритм выбрать для шифрования - это уже третий вопрос, хотя вроде очень близок к первому, но не он.
Я сначала по заголовку подумал, предложу сейчас воспользоваться общедоступными исходниками pgp, а почитал, оказывается даже c:=a xor b - не понятно. Тогда что нам стоит выложить сюда букварь по Дельфи что ли?
← →
Anatoly Podgoretsky (2003-04-22 11:40) [15]Spartak © (22.04.03 11:21)
Ошибаешься, как только освоил азы программирования, то для меня не составла труда складывать в цикле, а это было спустя 15 минут после начала освоения.
Ты не помогаешь, а усилено культивируешь лень ума, в будещем когда он поймет, то он не будет тебе благодарен за это.
← →
Palladin (2003-04-22 11:51) [16]
> Spartak © (22.04.03 11:21)
Ты наверно как начинающий с начинающим солидарен в том что думать не надо, пусть другие думают. А вы будете копировать и вставлять.
И где кстати написано что форум для начинающих?
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2003.05.05;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.01 c