打印
[文档下载]

如何隐藏自己的源代码

[复制链接]
753|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
beacherblack|  楼主 | 2024-2-26 11:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式


  • 建立一个空的工程,把你需要加密的文件添加进去。
把需要生成lib的.c文件添加进来,这我需要把我按键功能模块代码生成lib,所以添加hal_key.c。
2.打开keil的options for Target…设置。
3.选择Output选项,在该选项选择Create Library…lib
然后点ok,重新编译就行了,是不是贼简单?
4.编译没有错误以后,我们在工程目录下找到Objects文件夹。
5.我们可以看到有一个lib文件,就是我们刚刚编译生成的。
不知道大家发现没,怎么生成的名字不是hal_key而是wh01?
这个其实是根据你工程名字生成的,我们手动重命名就可以了。
6.把我们这个lib文件添加到需要用到按键功能的工程文件夹里。
这里需要注意的是,一般要把lib文件和对应.h头文件一起放到对应文件夹里面,别人使用你的函数功能,以及函数有什么参数,就是通过查看.h文件调用的。
通过hal_key.h文件,我大概知道这个源代码提供3个可以提供外部调用的函数。
一个是按键初始化hal_KeyInit(),无返回值,无形参。
一个是按键检测函数hal_KeyProc(),无返回值,无形参。
一个是函数指针注册函数hal_KeyScanCBSRegister。
如果我们需要给别人用的话,不要学我啥注释没有,我们是在视频教程里有讲每个函数的作用。
一定要有点注释,让别人知道怎么调用,有什么条件要求,不然光几个函数别人肯定一脸懵逼。
7.下面,我们就能正常使用hal_key.c的函数功能啦。
同时,别人也看不到你hal_key.c这个文件的源代码了。

使用特权

评论回复
沙发
呐咯密密| | 2024-2-27 14:27 | 只看该作者
就是封装成库文件,然后用.h文件提供函数接口

使用特权

评论回复
板凳
timfordlare| | 2024-3-1 20:45 | 只看该作者
源代码混淆器可以转换代码,使得它难以阅读和理解,但仍然可以执行。这种方式不会改变程序的行为,但会使得分析代码变得更加困难。

使用特权

评论回复
地板
olivem55arlowe| | 2024-3-1 22:21 | 只看该作者
编译过程将源代码转化为计算机可以直接执行的形式,使得查看源代码变得困难。

使用特权

评论回复
5
modesty3jonah| | 2024-3-2 02:56 | 只看该作者
加密是一种将源代码转化为密文的方法,只有通过解密才能再次使用。这可以通过编写自定义加密算法或使用现有的加密库来实现。然而,请注意,加密可能会影响代码的性能和可读性。

使用特权

评论回复
6
tifmill| | 2024-3-2 07:51 | 只看该作者
使用代码混淆工具可以使源代码变得难以阅读和理解,这增加了分析和篡改代码的难度。混淆通常包括变量名替换、控制流改变等技术。

使用特权

评论回复
7
sesefadou| | 2024-3-2 11:31 | 只看该作者
将源代码编译成机器码,即0和1组成的指令集,这是最接近于实际运行的代码形式。这种方法可以防止他人阅读和理解代码,但编译后的文件通常较大,且更新和维护成本较高。

使用特权

评论回复
8
ingramward| | 2024-3-2 18:08 | 只看该作者
将代码保存为专有格式,例如二进制文件或加密的数据库记录,可以使其更难以访问。这种方法可能需要编写自定义的读写代码,以在专有格式和源代码之间进行转换。

使用特权

评论回复
9
1988020566| | 2024-3-2 20:05 | 只看该作者
可以去除源代码中的空格、换行和注释,使得代码变得更加难以阅读。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

12

主题

1059

帖子

1

粉丝