Ejemplo n.º 1
0
BOOL CMHFileEx::SaveToBin( const char* filename, bool bAES )
{
	InitFileName(filename);

	if( m_pData )
	{
		m_fp = fopen( filename, "wb" );
		if( m_fp )
		{
// 20090515 ONS AES알고리즘을 사용하여 bin파일을 암호화한다(START)
#ifdef _AES_FILE_
			if (bAES)
			{
				char fname[512];
				m_pBinData = new char[m_Header.dwDataSize+1];
				memcpy( m_pBinData, m_pData, m_Header.dwDataSize+1 );
				m_pBinData[m_Header.dwDataSize] = 0;

				strcpy(fname, filename);
				// AES 알고리즘을 이용하여 bin데이터를 암호화 한후, 파일로 저장한다.
				if(!m_AESFile.AESEncryptData(m_fp, fname, m_pBinData, m_Header.dwDataSize))
				{
					MessageBox( NULL, "Failed Save To Bin", NULL, MB_OK );
					return FALSE;
				}
			}
			else
			{
				ConvertBin();
				fwrite( &m_Header, sizeof(m_Header), 1, m_fp );
				fwrite( &m_crc1, sizeof( char ), 1, m_fp );
				fwrite( m_pBinData, sizeof( char ), m_Header.dwDataSize, m_fp );
				fwrite( &m_crc1, sizeof( char ), 1, m_fp );
			}
#else
			ConvertBin();
			fwrite( &m_Header, sizeof(m_Header), 1, m_fp );
			fwrite( &m_crc1, sizeof( char ), 1, m_fp );
			fwrite( m_pBinData, sizeof( char ), m_Header.dwDataSize, m_fp );
			fwrite( &m_crc1, sizeof( char ), 1, m_fp );
#endif
// 20090515 ONS AES알고리즘을 사용하여 bin파일을 암호화/복호화한다(END)
		}
		fclose( m_fp );
	}

	return TRUE;
}
Ejemplo n.º 2
0
int main()
{
	int num=0;
	while(1)
	{
		printf("num : ");
		scanf("%d",&num);
		if(num<-1)
			return 0;
		else
			printf("%d\n",ConvertBin(num));
	}
	return 0;
}