⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 regdlltest.cpp

📁 (转)一个包含目前所有流行的加解密代码(RSA
💻 CPP
字号:
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "regdlltest.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
        HINSTANCE hLib = ::LoadLibrary( "reg.dll" );
	if( hLib != NULL )
	{
                typedef BOOL (WINAPI *SOWFUNCTION)(LPTSTR lpOutBuffer, LPCTSTR lpRegisterCode);
		SOWFUNCTION GetHardDiskId = (SOWFUNCTION)GetProcAddress( hLib, "GetHardDiskId" );
		if( GetHardDiskId != NULL )
		{
			char diskid[30];
                        BOOL result = GetHardDiskId(diskid,"USER-123456789");
	                if(result)
	                {
		                Edit1->Text = diskid;
                        }
                }
		else
		{
			ShowMessage(" 加载功能模块出错! ");
		}
	}
	else
	{
                ShowMessage(" 无法加载DLL! ");
	}
         ::FreeLibrary( hLib );
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
        HINSTANCE hLib = ::LoadLibrary( "reg.dll" );
	if( hLib != NULL )
	{
                typedef BOOL (WINAPI *SOWFUNCTION)(LPTSTR lpInBuffer,LPTSTR lpOutBuffer, int length, LPCTSTR lpRegisterCode);
		SOWFUNCTION MD5Encrypt = (SOWFUNCTION)GetProcAddress( hLib, "MD5Encrypt" );
		if( MD5Encrypt != NULL )
		{
			char InputStr[33];
	                char OutputStr[33]; // 
                        AnsiString temp;
                        temp=Edit2->Text;
	                strcpy(InputStr,temp.c_str());
	                BOOL result = MD5Encrypt(InputStr,OutputStr,Edit2->Text.Length(),"user-123456789");
	                if(!result)
	                {
	                	ShowMessage("Error! ");
                                return;
		        }
	                Edit3->Text = OutputStr;
                }
		else
		{
			ShowMessage(" 加载功能模块出错! ");
		}
	}
	else
	{
                ShowMessage(" 无法加载DLL! ");
	}
         ::FreeLibrary( hLib );
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button3Click(TObject *Sender)
{
        HINSTANCE hLib = ::LoadLibrary( "reg.dll" );
	if( hLib != NULL )
	{
                typedef BOOL (WINAPI *SOWFUNCTION)(LPTSTR lpInBuffer, LPCTSTR lpKey, LPTSTR lpOutBuffer, LPCTSTR lpRegisterCode);
		SOWFUNCTION BlowFishEncrypt = (SOWFUNCTION)GetProcAddress( hLib, "BlowFishEncrypt" );
		if( BlowFishEncrypt != NULL )
		{
			char InputStr[500] = {'\0'};
	                char KeyStr[20] = {'\0'};
	                char OutputStr[1000] = {'\0'};
                        AnsiString temp1,temp2 ;
                        temp1=Edit4->Text;
                        temp2=Edit5->Text;
	                strcpy(InputStr,temp1.c_str());
	                strcpy(KeyStr,temp2.c_str());
	                BOOL result = BlowFishEncrypt(InputStr,KeyStr,OutputStr,"user-123456789");
	                if(!result)
	                {
	                	ShowMessage("Error! ");
	                	return;
                	}
	
	                 Edit6->Text= OutputStr;
                }
		else
		{
			ShowMessage(" 加载功能模块出错! ");
		}
	}
	else
	{
                ShowMessage(" 无法加载DLL! ");
	}
         ::FreeLibrary( hLib );
}
//---------------------------------------------------------------------------

//---------------------------------------------------------------------------

void __fastcall TForm1::Button6Click(TObject *Sender)
{
        HINSTANCE hLib = ::LoadLibrary( "reg.dll" );
	if( hLib != NULL )
	{
                typedef BOOL (WINAPI *SOWFUNCTION)(LPTSTR lpInBuffer,LPTSTR lpKey, LPTSTR lpOutBuffer, LPCTSTR lpRegisterCode);
		SOWFUNCTION EncryptStringFun1 = (SOWFUNCTION)GetProcAddress( hLib, "EncryptStringFun1" );
		if( EncryptStringFun1 != NULL )
		{
			char InputStr[1024] = {'\0'};
                        char KeyStr[33] = {'\0'};
	                char OutputStr[2048] = {'\0'};
                        AnsiString temp;
                        temp=Edit9->Text;
                        strcpy(InputStr,temp.c_str());
                        AnsiString temp2;
                        temp2=Edit10->Text;
	                strcpy(KeyStr,temp2.c_str());
	                BOOL result = EncryptStringFun1(InputStr,KeyStr,OutputStr,"user-123456789");
	                if(!result)
	                {
	                	ShowMessage("Error! ");
                                return;
		        }
	                Edit11->Text = OutputStr;
                }
		else
		{
			ShowMessage(" 加载功能模块出错! ");
		}
	}
	else
	{
                ShowMessage(" 无法加载DLL! ");
	}
         ::FreeLibrary( hLib );
}
//---------------------------------------------------------------------------




void __fastcall TForm1::Button7Click(TObject *Sender)
{
        HINSTANCE hLib = ::LoadLibrary( "reg.dll" );
	if( hLib != NULL )
	{
                typedef BOOL (WINAPI *SOWFUNCTION)(LPTSTR lpInBuffer,LPTSTR lpKey, LPTSTR lpOutBuffer, LPTSTR lpRegisterCode);
		SOWFUNCTION DecryptStringFun1 = (SOWFUNCTION)GetProcAddress( hLib, "DecryptStringFun1" );
		if( DecryptStringFun1 != NULL )
		{
			char InputStr[1024] = {'\0'};
                        char KeyStr[33] = {'\0'};
	                char OutputStr[2048] = {'\0'};
                        AnsiString temp;
                        temp=Edit11->Text;
                        strcpy(InputStr,temp.c_str());
                        AnsiString temp2;
                        temp2=Edit10->Text;
	                strcpy(KeyStr,temp2.c_str());
	                BOOL result = DecryptStringFun1(InputStr,KeyStr,OutputStr,"user-123456789");
	                if(!result)
	                {
	                	ShowMessage("Error! ");
                                return;
		        }
                        Edit9->Text = OutputStr;
                }
		else
		{
			ShowMessage(" 加载功能模块出错! ");
		}
	}
	else
	{
                ShowMessage(" 无法加载DLL! ");
	}
         ::FreeLibrary( hLib );
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Button4Click(TObject *Sender)
{
        HINSTANCE hLib = ::LoadLibrary( "reg.dll" );
	if( hLib != NULL )
	{
                typedef BOOL (WINAPI *SOWFUNCTION)(LPCTSTR lpInBuffer, LPCTSTR D_String, LPCTSTR N_String, int Mode, LPTSTR lpOutBuffer, LPCTSTR lpRegisterCode);
		SOWFUNCTION RSAEncrypt = (SOWFUNCTION)GetProcAddress( hLib, "RSAEncrypt" );
		if( RSAEncrypt != NULL )
		{
			char InputStr[500] = {'\0'};
                        char NStr[500] = {'\0'};
                        char DStr[500] = {'\0'};
	                char OutputStr[500] = {'\0'};
                        AnsiString temp1;
                        temp1=RSA_InputStr->Text;
                        strcpy(InputStr,temp1.c_str());
                        AnsiString temp2;
                        temp2=RSA_NEdit->Text;
	                strcpy(NStr,temp2.c_str());
                        AnsiString temp3;
                        temp3=RSA_DEdit->Text;
	                strcpy(DStr,temp3.c_str());
                        
                        //下面演示代码“加密模式”参数使用Mode0,因此输入参数请使用128bit的N、D参数。
	                BOOL result = RSAEncrypt(InputStr,DStr,NStr,0,OutputStr,"user-123456789");
	                if(!result)
	                {
	                	ShowMessage("Error! ");
                                return;
		        }
	                RSA_OutputStr->Text = OutputStr;
                }
		else
		{
			ShowMessage(" 加载功能模块出错! ");
		}
	}
	else
	{
                ShowMessage(" 无法加载DLL! ");
	}
         ::FreeLibrary( hLib );
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Button5Click(TObject *Sender)
{
        HINSTANCE hLib = ::LoadLibrary( "reg.dll" );
	if( hLib != NULL )
	{
                typedef BOOL (WINAPI *SOWFUNCTION)(LPCTSTR lpInBuffer, LPCTSTR N_String, int Mode, LPTSTR lpOutBuffer, LPCTSTR lpRegisterCode);
		SOWFUNCTION RSADecrypt = (SOWFUNCTION)GetProcAddress( hLib, "RSADecrypt" );
		if( RSADecrypt != NULL )
		{
			char InputStr[500] = {'\0'};
                        char NStr[500] = {'\0'};
       	                char OutputStr[500] = {'\0'};
                        AnsiString temp1;
                        temp1=RSA_OutputStr->Text;
                        strcpy(InputStr,temp1.c_str());
                        AnsiString temp2;
                        temp2=RSA_NEdit->Text;
	                strcpy(NStr,temp2.c_str());

                        //下面演示代码“加密模式”参数使用Mode0,因此输入参数请使用128bit的N、D参数。
	                BOOL result = RSADecrypt(InputStr,NStr,0,OutputStr,"user-123456789");
	                if(!result)
	                {
	                	ShowMessage("Error! ");
                                return;
		        }
	                RSA_OutputStr->Text = OutputStr;
                }
		else
		{
			ShowMessage(" 加载功能模块出错! ");
		}
	}
	else
	{
                ShowMessage(" 无法加载DLL! ");
	}
         ::FreeLibrary( hLib );
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Button8Click(TObject *Sender)
{
        HINSTANCE hLib = ::LoadLibrary( "reg.dll" );
	if( hLib != NULL )
	{
                typedef BOOL (WINAPI *SOWFUNCTION)(LPTSTR lpInBuffer, LPCTSTR lpKey, LPTSTR lpOutBuffer, LPCTSTR lpRegisterCode);
		SOWFUNCTION BlowFishDecrypt = (SOWFUNCTION)GetProcAddress( hLib, "BlowFishDecrypt" );
		if( BlowFishDecrypt != NULL )
		{
			char InputStr[500] = {'\0'};
	                char KeyStr[20] = {'\0'};
	                char OutputStr[1000] = {'\0'};
                        AnsiString temp1,temp2 ;
                        temp1=Edit6->Text;
                        temp2=Edit5->Text;
	                strcpy(InputStr,temp1.c_str());
	                strcpy(KeyStr,temp2.c_str());
	                BOOL result = BlowFishDecrypt(InputStr,KeyStr,OutputStr,"user-123456789");
	                if(!result)
	                {
	                	ShowMessage("Error! ");
	                	return;
                	}
	
	                 Edit4->Text= OutputStr;
                }
		else
		{
			ShowMessage(" 加载功能模块出错! ");
		}
	}
	else
	{
                ShowMessage(" 无法加载DLL! ");
	}
         ::FreeLibrary( hLib );
}
//---------------------------------------------------------------------------

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -