CB程序示例.docVIP

  • 11
  • 0
  • 约3.07千字
  • 约 5页
  • 2017-05-12 发布于河南
  • 举报
CB程序示例

CB程序加密示例 以下为具有读写、限时功能的五型锁加密示例 加密对象 C++Builder环境下编写的程序(CBSample),在本例中CBSample是一个简单的界面程序; 加密目的 对CBSample程序进行内嵌加密后,只有通过对应的加密锁才能打开CBSample程序(显示界面),否则不能打开。通过限时控制(设定一至三个期限及解开期限的相应密码),控制用户的使用期限;达到加密强度高、程序运行稳定、使用便捷的目的; 加密工具 五型加密锁(序列号617622)、随锁KEY值(key1=51004,key2=11410,key3=46486,key4=12938)、动态库CDLL5.dll、CDLL5.lib、接口程序、读写函数、密码修改工具、限时限次工具等; 加密准备 先开发一个程序write来向加密锁中相应的地址写入数据。现在向加密锁中的1号地址(该锁有32个地址,可任选)写入数据”12345”。步骤如下: 1、将CDLL5.dll、CDLL5.lib、复制到write的同一目录下;(步骤三) 2、通过Add to project添加CDLL5.lib。并在程序中定义库函数;(步骤四) 3、写入数据程序代码,并运行: int Lockdata=12345,y; char* password=abcdefgh; WriteLock(1, Lockdata ,password); 4、成功写入数据后关闭该程序。 加密过程 步骤一:首先在C++Builder环境下打开CBSample程序,运行几次,确保程序正常运行。确定加密位置,现在根据需要确定在界面运行前进行加密。 步骤二:将光盘中的所有文件拷贝到计算机硬盘上,打开tools,使用工具ModPassw修改密码。新密码值根据个人需要设置,这里我把它设置为“009lirog”。 步骤三:通过路径:\内嵌加密\实例\CB\代码 找到CDLL5.dll、CDLL5.lib并将CDLL5.dll、CDLL5.lib复制到CBSample的同一目录下。 步骤四:通过Add to project添加CDLL5.lib。并在程序中定义库函数,如图1: 图1 步骤五:直接在主程序代码中写入ShieldPC函数,代码如下: unsigned long ShieldPC(unsigned long input_data) { unsigned long outdata1,outdata2; unsigned long key1=51004; unsigned long key2=11410; unsigned long key3=46486; unsigned long key4=12938; unsigned long CodeCompute,y,y1,y2,x1,x2,y11,y22; outdata2= input_data 0xffff0000; outdata2 = outdata2 16; outdata1 = 0x0ffff input_data; x1=outdata1; x2=outdata2; y1 = x1 ^ key2; y11 = x2 ^ key1; y1 = y1 + y11; if (y1 65535) y1 = y1 - 65536; y1 = y1 * 16 ; while (y1 65535) y1 = y1 - 65536; y1 = y1 % key4; y = y1 * key3; while (y 4294967295) y = y - 4294967295-1; y11 = x1 + key1; if (y11 65535) y11 = y11 - 65536; y22 = y11 % key3; y11 = key4 ^ x2; y2 = y22 * y11; while (y2 4294967295) y2 = y2 - 4294967295-1; y = y ^ y2; CodeCompute = y; return CodeCompute; } 步骤六:在界面载入即Void FormCreate(Tobjiect *sender)代码下写入基本加密接口程序: unsigned long randnum,randLock32,randShield; //产生随机数 srand(GetTickCount()); randn

文档评论(0)

1亿VIP精品文档

相关文档