암호화를 반대로한다고 복호화가 된단법은 어디에도 없습니다...
안그런 암호화도 많거든요
http://www.winapi.co.kr/clec/cpp1/5-2-4.htm
이거공부하세요
외토리 님이 쓰신 글 :
: #include "stdafx.h"
: #include "Crypt.h"
:
: const INT C1 = 52845;
: const INT C2 = 22719;
: const INT KEY = 72957;
: //------------------------------------------------------------------------
: BOOL CCrypt::Encrypt(BYTE *source, BYTE *destination, DWORD length)
: {
: DWORD i;
: INT Key = KEY;
:
: if (!source || !destination || length <= 0)
: return FALSE;
:
: for (i=0;i<length;i++)
: {
: //------------------------------------------------------------------------
: destination[i] = source[i]^Key >> 8; //key 값을 제곱한뒤 8비트 밀어 줍니다..
: //------------------------------------------------------------------------
: Key = (destination[i] + Key) * C1 + C2;
: }
:
: return TRUE;
: }
: //------------------------------------------------------------------------
: BOOL CCrypt::Decrypt(BYTE *source, BYTE *destination, DWORD length)
: {
: DWORD i;
: BYTE PreviousBlock;
: INT Key = KEY;
:
: if (!source || !destination || length <= 0)
: return FALSE;
:
: for (i=0;i<length;i++)
: {
: PreviousBlock = source[i];
: destination[i] = source[i]^Key >> 8;
: Key = (PreviousBlock + Key) * C1 + C2;
: }
:
: return TRUE;
: }
: //------------------------------------------------------------------------
:
:
: 8비트 밀어 준다는게 무슨 뜻인지 모르겠습니다..
:
: 다시 말하자면
: >> 연산자가 무엇을 하는지 모르겠습니다.
:
:
:
: 제 짧은 소견으로는 암호화의 루틴을 완전하게 거꿀로 연산하는게 복호화가 아닌가 싶은데
:
: 위의 소스에서는 복호화가 암호화의 반대로 하고 있는건가여?????????
: 아님 제가 복호화라는거에 대해 잘못 생각하고 있는건가여?????????
:
:
: 꼭 암호화나 복호화나 거의 비슷한 루틴같아서 질문드립니다..