Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2005.06.06;
Скачать: [xml.tar.bz2];

Вниз

Шифрование.   Найти похожие ветки 

 
Gear   (2005-05-19 21:46) [0]

Подскажите пожалуйста, делаю шифрование строки "123     " расшифровываю полученный массив байтов и получаю "49 50 51 32 32 32 32 32"
в чём это я всё получил? в asci кодах или как? вижу что шифрование-дешифрование прошло но голова уже не в состоянии понять что я вижу на выходе :) Зарание спасибо всем откликнувшимся.


 
Reindeer Moss Eater ©   (2005-05-19 21:54) [1]

в чём это я всё получил?
В программе.


 
raidan ©   (2005-05-19 23:44) [2]

>Reindeer Moss Eater ©   (19.05.05 21:54) [1]
Не нужно так шутить, а то я помру от смеха :)

>Gear   (19.05.05 21:46)  
Шифрование :))))
Муууууу :))))

ну если у нас chr и ord теперь называется шифрованием, то на выходе получаем ascii коды, да...


 
Defunct ©   (2005-05-19 23:57) [3]

Gear   (19.05.05 21:46)

Ну и? все ты правильно получил.

Chr(32) = " "
Chr(49) = "1"

В чем же проблема?

raidan ©   (19.05.05 23:44) [2]
Он же написал - "расшифровываю полученный массив байтов и получаю"


 
Gear   (2005-05-20 15:01) [4]

Проблема в конце рабочего дня и голодном желудке. :) я разобрался. спасибо кто откликнулся )

А теперь новый вопрос: ))
шифрую строку 123 и получаю hex-строку и вывожу её в мемо

-----------------------------
шифрование:

в едит пишем "123"

var
 s: Pchar;
 str:string;
 i: integer;
 dta: array of byte;
 m:integer;
begin
 str:=Edit1.Text;
 m:=length(str) mod 8;

 if m<>0 then
 begin
    for j:=1 to 8-m do
    begin
    str:=str+" ";
    end;
 end;
 s:=Pchar(str);

 dta:=nil;
 SetLength(dta, length(s));

 for i:=1 to (length(s) div 8) do
 begin
//      функция шифрования
 end;
 for i:=0 to length(s)-1 do
 memo1.Text:=memo1.Text+IntToHex(dta[i],2);

на выходе получаем в мемо строчку "FFE7F0ECDC6B93E3"

-------------
теперь самое страшное -дешифровка:

var

 s: Pchar;
 str:Pchar;
 i,j: integer;
 KeyData: TGOSTData;
 dta1: array of byte;
 dta2: array of byte;
 m:integer;
 sst:string;
 hexstring:string;
begin

 str:=pchar(memo1.Text);
 dta1:=nil;
 dta2:=nil;
 SetLength(dta1, 8);
 for i:=1 to 8 do  begin
   if (i mod 2)=0 then begin end else
   begin
    dta1[i-1]:=hextoint(str[i-1]+str[i]);
   end;
 end;

{
SetLength(dta1, 8);
//SetLength(dta2, 8);
dta1[0]:=255;
dta1[1]:=231;
dta1[2]:=240;
dta1[3]:=236;
dta1[4]:=220;
dta1[5]:=107;
dta1[6]:=147;
dta1[7]:=227;
}

 for i:=1 to (length(dta1) div 8) do
 begin
   SetLength(dta2, length(dta2)+8);
   //дешифруем
 end;

 for i:=0 to length(dta2)-1 do
   memo2.Text:=memo2.Text+chr(dta2[i]);

и не работает (в мемо сыпеть всяк хрень а не 123), но что самое удивительное если раскомментить, то что в {} и убрать блок чуть выше, то работает и выдаёт в мемо "123     ". Кто подскажет где у меня не так заполняется массив байт? (функции и всяк лабуду отвечающую за шифровку дешифровку убрал чтобы не смущать).



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

Форум: "Основная";
Текущий архив: 2005.06.06;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.076 c
1-1116757807
acsoft
2005-05-22 14:30
2005.06.06
Popup menu


3-1114676618
ST
2005-04-28 12:23
2005.06.06
INSERT в MSSQL


4-1113558922
Serr
2005-04-15 13:55
2005.06.06
связь


4-1113771014
totuin
2005-04-18 00:50
2005.06.06
Доступ в меню "Отправить"


9-1110439112
4ECHOK
2005-03-10 10:18
2005.06.06
Cтолкновение с bsp-картой с помощью ODE ?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский