Кодирка
|
Guest |
он у меня шифрует но не берет весь текст только частицу прога у меня на C++Builder что делать ??? HELP
|
|
Отправлено: 09:07, 28-04-2004 |
Пользователь Сообщения: 61
|
Профиль | Отправить PM | Цитировать а можеш привести код, и текст, который шифруеш?
|
Отправлено: 15:20, 28-04-2004 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Kod girl
Сообщения: n/a |
Это *Тритемиус бтри ключа по выбору Linecrypt ,NolineCript ,TextCrypt на первом и втором *как ключ *набирается только цифры *а на третьем *символы ну вот у меня работает TextCrypt авот те двое полностью не шифрует
int checkRbutton() { *if(Form1->rbutton1->Checked) return 1; *if(Form1->rbutton2->Checked) return -1; *} void LineCrypt(int Encode) {int counter=1; char ch; int sign; char *pMemo1,*pMemo2/*,pKey1,pKey2,UrovResalt*/; int TextLen=Form1->Memo1->Text.Length(); strmemo1.SetLength(TextLen) ; strmemo2.SetLength(TextLen) ; *strmemo1=Form1->Memo1->Text; *pMemo1=strmemo1.c_str(); *pMemo2=strmemo2.c_str(); int *tempResult=0 ,pKey1=0,pKey2=0,UrovResalt=0; pKey1=StrToInt(Form1->Edit3->Text); pKey2=StrToInt(Form1->Edit4->Text); sign=Encode; for(int k=1;k<=TextLen;k++) { * * * *ch=pMemo1[k]; * * * *UrovResalt=pKey1*k+pKey2; * * * *tempResult=(ch+sign*UrovResalt)%256; * * * *pMemo2[k]=(char)tempResult; * * * *//counter++; }Form1->Memo2->Text=pMemo2;} void NoLineCrypt(int Encode) {int counter=1; char ch; int sign; char *pMemo1,*pMemo2; int TextLen=Form1->Memo1->Text.Length(); strmemo1.SetLength(TextLen) ; strmemo2.SetLength(TextLen) ; strmemo1=Form1->Memo1->Text; pMemo1=strmemo1.c_str(); pMemo2=strmemo2.c_str(); int *tempResult=0 ,pKey1=0,pKey2=0,pKey3=0,UrovResalt=0; pKey1=StrToInt(Form1->Edit5->Text); pKey2=StrToInt(Form1->Edit6->Text); pKey3=StrToInt(Form1->Edit7->Text); sign=Encode; for(int k=1;k<=TextLen;k++) { * * * *ch=pMemo1[k]; * * * *UrovResalt=pKey1*k*k+pKey2*k+pKey3; * * * *tempResult=(ch+sign*UrovResalt)%256; * * * *pMemo2[k]=(char)tempResult; * * * *//counter++; }Form1->Memo2->Text=pMemo2; } void TextCrypt(int Encode) {int counter=0; char ch; int sign; char *pMemo1,*pMemo2,*pKey; int TextLen=Form1->Memo1->Text.Length(); int length=Form1->k1->Text.Length(); strmemo1.SetLength(TextLen) ; strmemo2.SetLength(TextLen) ; strkey.SetLength(length); strmemo1=Form1->Memo1->Text; strkey=Form1->k1->Text; pMemo1=strmemo1.c_str(); pKey=strkey.c_str(); pMemo2=strmemo2.c_str(); int tempResult=0; sign=Encode; for(int k=0;k<TextLen;k++) { * * * *ch=pMemo1[k]; * * * *tempResult=(ch+sign*pKey[counter])%256; * * * *pMemo2[k]=(char)tempResult; * * * *counter++; * * * *counter%=length; }Form1->Memo2->Text=pMemo2;} //--------------------------------------------------------------------------- void __fastcall TForm1::de_codeClick(TObject *Sender) { if(!checkRbutton()) * * * * return; * *switch (Form1->PageControl1->TabIndex) * *{ * * * case 0: NoLineCrypt(checkRbutton()); * * * * * * * break; * * * case 1: TextCrypt(checkRbutton()); * * * * * * * break; * * * case 2: LineCrypt(checkRbutton()); * * * * * * * break; * * * default : ; * *} |
Отправлено: 16:40, 28-04-2004 | #3 |
Пользователь Сообщения: 61
|
Профиль | Отправить PM | Цитировать При переборе символов текста существует вероятность напоротся на '\0'. Тестировал не этот счет?
|
Отправлено: 16:06, 30-04-2004 | #4 |
Kod girl
Сообщения: n/a |
Если честно, я тоже так думаю, но не знаю что делать? Можешь помочь?
[s]Исправлено: Prisoner, 3:34 1-05-2004[/s] |
|
Отправлено: 17:18, 30-04-2004 | #5 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
|