ImageVerifierCode 换一换
格式:DOCX , 页数:10 ,大小:18.70KB ,
资源ID:12326609      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/12326609.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(用C语言实现对FOXPRO程序的加密.docx)为本站会员(b****4)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

用C语言实现对FOXPRO程序的加密.docx

1、用C语言实现对FOXPRO程序的加密用C语言实现对FOXPRO程序的加密杨懂峰,王绍军2,谭学元31.深圳市城市交通规划研究中心, 518031;2.湖南华南光电仪器厂, 4151053.北京科技大学信息工程学院, 100083)摘要:文章提出了FOXPRO程序加密的一种实用方法,具有较高的安全性,能防止程序被盗、拷贝、破密。关卜键词:FOXPRO;加密;解密;安全性0 概述利用 FO XPRO开发的管理系统保密性较差。开发人员在开发完成应用程序之后,对防止程序被盗、拷贝、破密等方面往往大费周折。常规做法是在主程序或相关的程序中嵌人口令识别程序,其方法固然可行,但对于有一般计算机操作经验的人员

2、来说,又显得软弱无力。本文就利用C语言实现对FOXPRO程序加密谈一谈看法。当用 FO XPRO开发的程序运行正确后,我们可利用FOXPRO本身提供的功能统一进行编译,形成一个“EXE”文件,然后用C语言对其文件进行全文加密。即用自己定义的一组序列字符与文件进行加、减、与、或操作,形成加密文件。件,这样就达到了保密的目的。因而最后交给用户的有三个文件。它们是解密文件、已进行加密处理的文件、组装运行执行文件。各个应用程序的原文件和调用方式如下所述:加 密 :( 文件名是CCI.Z.C )U de fi ne N ULL 0#i nc lu de ( s tdio.h )#i nc lu de(

3、stdlib.h )#i nc lud e(p rocess.h )# inc lu de ( io.h )static int DW7=8,5,9,1,3,8,6);/要 进 行 加密的自定义的序列main(int argc.charargv)F ILEfp。fl;if(fp =fopen(argv1.rb)=NULL)/要 进 行 加密的原文件igo toxy(20,8);printf( 原文件不存在!加密不能进行,请退1 加密方法具体 的操 作方法如下:首 先 ,把 FOXPRO的程序调试好,形成FOXPRO 的“EXE”可执行文件(如FOXB.EXE),然后对这个文件进行加密,变为加密

4、文件(FOXB.DAT),同时设置一个解密程序(文件名为CCZI_.E XE) ,可以对已加密的文件进行解密。再用C语言开发一个组装运行程序,把我们的解密过程、程序执行过程和删除解密程序的过程形成一个整体文出”):exit(0);if(f l= fopen(a rgv2, wb)=NULL)刀 加 密 后的文件gotoxy(20,8);printf(”形成新文件失败!不能工作请退出,);exit (0);int k; char ch,c;k=o;while(!feof(f p)if(ki6)k=0:c= fgetc(f p) :/加密处理、h =c + T)Wk;收稿日期:2的。一11-22.

5、34 .电脑与信息技术ii2001年第1期fputc(ch_fl);fclose(f p);f c losek十+; (fl) ; 调用方式:CCLZ FOXB.EXE FOXB.DATFOXB.E XE:FOXPRO的执行文件FOXB.D AT:加密后的文件2 解密方法解密:(文件名是:CCZ1.C#define NULL 0#include (stdio. h )#include (stdlib. h )#include(p rocess.h )# include (io. h )static int DW7=8,5,9,1,3,8,6);刀解 密 的 序 列 必须与加密序列相同ma in

6、(inta rgc,charargv)(FI LEfp ,fl;if(U p= fopen(a rgv1 , rb)=NULL)/要 进 行 解 密 的数据文件(go to xy (20.8);pri ntf “ 数据文件不存在卫加密不能进行,请退 出 ”) ;exi t( 0 ) ; if(f l=fopen(argv2,wb)=NULL)刀解 密 后 的 文 件(go to xy (20,8);pri ntf ” 形成新文件失败I不能工作请退出” );ex it( O) ; int k ;charc h,c; k=o;while!feof(f p)(if ( k)6)k=0;/解 密 处

7、理 过程正与加密过程相反#include (io. h )void WIN(int sx,int sy,int ex.int ey,int bk,int c ol or )(window (sx,sy,ex,ey);textbackground(bk);clrscr();textcolor(color);)main)(in( k;WIN (0,1.80,25,1,12);gotoxy(20,8);printf( 系统正在进行初始化,请等待“);k=system(”CCZL FOXB. DAT FOXGL.EX E ) ; / /解 密 过 程k=system(FOXPRO FOXGL.E XE

8、);刀调 用 FOXPRO程序k=system( DELF OXGL.E XE);刀 删 除 解密后的文件调 用 方 法:MAIN这 个 文 件是我们移交给用户的主执行文件:用户只要在命令提示符下打人MAIN.E XE就可完成解密、运行、删除等操作。制作安装盘:(文件名INSTALL.C )include (stdio.include (stdlib.h)h)# #c=fgetc Up );fputc(ch.fI);ch二c一DWk;k -l-+; fclose (fp ); Hose (fl); 调用方式:CCZL FOXB.DATFO X G I- E X EFOXB.D AT:己加密的文

9、件FOXGL.EXE:解密后的FOXPRO执行文件主调文件:(文件名MAIN.C )#include (stdio. h)#include (stdlib. h#include (process.h、#include(p rocess.h )# include (io. h )voidW IN( ints x,ints y,inte x,inte y,in tb k,in tc ol or )(window (sx,sy,ex,ey);textba ckground( 6k);clrscr();textcolor(color);main ( )(int k;WIN(0.1,80,25,1,12

10、);gotoxy(20,8);k=system (c:”);k=system (md c:馆I);k=system(md c:准1 dbf);k=system(copya :main.ex ec :gl );k二system( copya :clzl.ex ec :馆1);k=system( copya :foxb.da tc :g1_);k=system(copya :readme.ex ec :g1_);电脑与信息技术2001年第1期35k=system(a:arjea:dbf.ar jc : gldb f ) ;调用 方 法:A:IN STALL这种 操 作 的前提是把要移交给用户使用的

11、三个文件和操作说明文件存放在A盘根目录下,把数据库文件存放在A盘的DBF目录下。给用户安装时只要使用INSTALL就可完成整个程序的安装运行。3 结束语通 过 以 上加密过程形成的加密文件是任何反编辑的软件不能进行反编辑的,若有人要对其进行破密也非三言二语就能达到目的,从而达到对软件的一种保护。但同时我们也应该知道,这种加密文件是不能直接运行的,在运行时需要解密,解密的过程是加密过程的反向操作,运行完毕之后再删除这个文件,从而达到保密目的。上述的加密程序不仅适应FOXPRO的程序,而且适用于对数据库加密和其它软件的加密,可以给用户开发程序形成一种安全保护。上述操作的4个C语言程序是用TC2.

12、0编写,FOXPRO程序是用FOXPRO FOR DOS 2.5编写,均已运行通过。参考文献:1 Foxpro 2.6语言详解.学苑出版社,1994.2 Visual C十+使用速成.清华大学出版社.1996.(上接第17页)4 LNX与UCI的区别LNX和UCI都是MATRIXx表 3部程 序 接 口 。 但 在使 用 过 程 中 ,两种机制的使用方 法 不 同 、 程 序 调 用 的 出 发点不同、Xmath在 调 用 过 程 中 所 扮 演 的 角 色也不同,从表3提供的外可看出这两种接口机制的区别。LN X与UCI的特征比较比较数据结构函 数创建运行UCI启动Xmath;LNX被Xma

13、th启动使用相同的数据结构 externTypeUCI:必须使用函数XmathStart和XmathStop;一定不能使用函数XmathMainLNX:必须使用函数XmathMain:一定不能使用函数XmathStart和XmathStop用户程序必须包括头文件xmathlib.h ;必须连人Xmath.libUCI:利用命令一call program -name开始调用XmathLNX:LNX程序可以像其它MatliScrip:函数一样使用5 结论LN X 和 UCI技术很好地实现了专业化仿真软件与通用编程语言的无缝联接。这种接口技术既是众多专业化软件拓展市场的一种手段,也是软件发展的趋势。

14、不过,LNX和Uci的接口技术仍嫌复杂,还应进一步简化。对用户来说,简单实用才是他们选择的标准。参考文献:仁1 IS I.M ATRIXxV ersion6 .X Document.I ntegrated21仁3谭浩强.C程序设计.清华大学出版社.1996.李薇.徐国标.O penGL人门与提高.西南交通大学出版社.1998.4 Sun Z ha ow ei. X uG uo do ng .Th e i nt eg ra teds ystem forsim u la ti on an d evaluationLin Xiaohui. Can Xibindesign.of theAdvances in Engineering Software.analyse. systemsmall satellite.2000(31):437-44 3 .SE.B fernandez.J ie Wu.a nd Haifeng Qian. ACOMBIN ED FUNCTIONAL AND OB J EC TORIENT APPROACH TO SOFTWARE DESIGNInternational J ournal o f (Applications.2000.22(2):,omputersSystem.36.Inc. 1998.电脑与信息技术2001年第I期_

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1