void encrypt_chars(int length)
{
char temp_char;
for (int i = 0; i < length; i++)
{
temp_char = OChars[i];
__asm {
push eax
push ecx
movzx ecx, temp_char
call encrypt_nn
mov temp_char, al
pop ecx
pop eax
}
EChars[i] = temp_char;
}
return;
__asm {
encrypt_nn:
mov eax, ecx
inc eax
ret
}
암호화 부분은 괜찮지 만, 나는 암호 해독에 코드를 복사하여 붙여 넣을 것이라고 생각하고 대신 돌아가서 데이터를 해독 할 수 있도록 내가 값을 감소 것 증가의C++ 암호화 및 암호 해독
//---------------------------------------------------------------------------------------------------------------
//----------------- DECRYPTION ROUTINES -------------------------------------------------------------------------
//
void decrypt_chars(int length)
{
char temp_char;
for (int i = 0; i < length; i--)
{
temp_char = OChars[i];
__asm {
push eax
push ecx
movzx ecx, temp_char
call encrypt_nn
mov temp_char, al
pop ecx
pop eax
}
EChars[i] = temp_char;
}
return;
}
이것은 어셈블리 언어입니다. C++ –
무엇이 질문입니까? –
그래서 기본적으로 배열에서 문자를 가져 와서 1 씩 증가시킨 다음 마지막 절반을 배열에 다시 저장 하시겠습니까? 그것은 아주 좋은 암호화가 아닙니다. 기본적으로 당신은 단지 ecx dec해야 할 것이고 당신은 숯을 가지고있다. [편집 : 이것은 "cesar의 암호화"라고하지 않습니까?] – clockw0rk