当前位置:三九宝宝网 → 宝宝教育 → 教学论文 → 正文

C语言编译加密问题

更新:12-24 整理:39baobao.com
字体:

[编译密码]活动目标: 1.引导幼儿运用编译和破解等游戏方式,复习巩固lO以内的加减、单数、双数、相邻数等知识; 2.锻炼幼儿运用逆向思维的方式进行运算,培养幼儿的运算兴趣; 3.让幼儿充分感受成...+阅读

源程序中如果写的连续地址的字符串, 即时编译出二进制,其实它仍然是连续的字符串表示,你用文本方式打开,自然能看见文本字符串的。

这里给2个简单点的办法来解决这个问题:

方法一:字符串打乱顺序赋值

在代码中,你原有代码是 char str[] = "abcd";

改为:

str[0] = 'a';

str[2] = 'c';

str[1] = 'b';

str[3] = 'd';这样编译之后,二进制文件中,它不会是连续的字符串,也就看不到了, str只会在运行时在内存中才构造出字符串。

基于这种思路,也可以各种姿势复制,或者小范围采用strcpy,strcat之类的。

方法二:

写两个程序,一个负责把字符串打乱成一堆乱码并以16进制或者base64输出为可见字符串(加密), 第二个程序直接取加密后的可见字符串,又使用解密代码转回去。

这种加解密代码其实不难, 比如

加密:把每个字符 都循环加 10,然后以16进制输出。

解密:先把16进制字符串,转成数组,然后循环减10。

本文地址:https://www.39baobao.com/show/29_14923.html

以上内容来自互联网,请自行判断内容的正确性。若本站收录的信息无意侵犯了贵司版权,请联系我们,我们会及时处理和回复,谢谢.

以下为关联文档:

编译程序能直接执行高级语言源程序吗A、解释程序 所谓解释程序是高级语言翻译程序的一种,它将源语言(如BASIC)书写的源程序作为输入,解释一句后就提交计算机执行一句,并不形成目标程序。就像外语翻译中的“口译”一...

编译程序对源程序的语言是解释一句执行一句解释型语言 计算机不能直接理解高级语言,只能直接理解机器语言,所以必须要把高级语言翻译成机器语言,计算机才能执行高级语言编写的程序。 翻译的方式有两种,一个是编译,一个是解...

怎么给易语言的一段代码加密.版本 2 .程序集 窗口程序集1 .子程序 __启动窗口_创建完毕 .子程序 _按钮1_被单击 .如果 (编辑框1.内容 = “123456”) 信息框 (“密码正确”, 0, “恭喜”) .否则 信息框 (“密码...

易语言怎么加密字符数字.版本 2.支持库 dp1 .程序集 窗口程序集1 .子程序 _按钮1_被单击 ' 这是加密 写配置项 (取运行目录 () + “\配置.ini”, “数据”, “数据1”, 到文本 (加密数据 (到字节集 (编辑框1...

易语言如何加密配置1 常用算法 · 排序算法、查找算法、数值计算方法、字符串处理方法、数据压缩算法、递归算法、图的相关算法 · 算法与数据结构的关系、算法效率、算法设计、算法描述(流程图...

易语言静态编译后怎么是obj格式建议不要用易语言,而要用Visual Basic编程语言来编译。这样编译出来的格式就不是OBJ,而是一个正常的可执行文件EXE。 Visual Basic是一种由 Microsoft 公司开发的结构化的、模...

C语言字符串加密#include<stdio.h> #include<stdlib.h> #include<string.h> int main(void) { char c[100]; int k; int len,i,temp; scanf("%s",c); scanf("%d",&k); len = (int)strlen(c); k...

C语言:字符串加密的问题//仅供参考 #include <stdio.h> int main() { char vmap[4] = {'m', 'n', 'x', 'y'};//对应0-m, 1-n, 2-x, 3-y; char words[100];//输入的字符串数组 int i, temp; scanf ("%s...

用C语言编写一个对称加密算法对字符串加密其实关键点就两个, 1、 如何进行对称位交换 (看我代码中的 SYMM_SWAP 宏) 2、 加密时先 对称交换,然后与key异或, 解密时则先与key异或,然后对称交换。 对此代码有什么不懂,可以bai...