Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Название темы: Кодирка
Показать сообщение отдельно
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 : ;
 * *}
[s]Исправлено: Prisoner, 3:17 29-04-2004[/s]

Отправлено: 16:40, 28-04-2004 | #3

Название темы: Кодирка