단방향 암호

http://www.cryptopp.com/wiki/Hash_Functions

http://aronze.com/wiki/index.php?title=Crypto%2B%2B_HashModule

http://www.cryptopp.com/wiki/User_Guide:_cryptlib.h

HexString to Binary & Binary to HexString

int wmain ( int argc , wchar_t *argv [ ] , wchar_t *envp [ ] )
{
	_wsetlocale ( LC_ALL , L"korean" ) ;

	unsigned __int8 encoded [ ] = "FFEEDDCCBBAA99887766554433221100" ;
	unsigned __int8 decoded [ 16 ] ;
   
	CryptoPP::HexDecoder decoder ; // String 을 Binary 로 변경
	decoder.Put ( (unsigned __int8*) encoded , sizeof ( encoded ) ) ;
	decoder.MessageEnd ( ) ;
	decoder.Get ( (unsigned __int8*) decoded , sizeof ( decoded ) ) ;

	for ( int i = 0 ; i < sizeof ( decoded ) ; i ++ ) wprintf ( L"%02X " , decoded [ i ] ) ;

	unsigned __int8 _encoded [ 32 ] ;

	CryptoPP::HexEncoder encoder ; // Binary 를 String 으로 변경
	encoder.Put ( decoded , sizeof ( decoded ) ) ;
	encoder.MessageEnd ( ) ;
	encoder.Get ( (unsigned __int8*) _encoded , sizeof ( _encoded ) ) ;
	
	wprintf ( L"\n" ) ;

	for ( int i = 0 ; i < sizeof ( _encoded ) ; i ++ ) wprintf ( L"%C" , _encoded [ i ] ) ;

	return 0 ;
}

- 문자열 16진수를 바이너리로 바꾼다. - CryptoPP::HexDecoder - http://www.cryptopp.com/wiki/HexDecoder

- 바이너리를 문자열 16진수로 바꾼다. - CryptoPP::HexEncoder - http://www.cryptopp.com/wiki/HexEncoder