极智开发 | 飞天加密狗对执行程序进行加密

欢迎关注我的公众号 [极智视界],获取我的更多经验分享

大家好,我是极智视界,本文介绍一下 飞天加密狗对执行程序进行加密的方法。

邀您加入我的知识星球「极智视界」,星球内有超多好玩的项目实战源码下载,链接:https://t.zsxq.com/0aiNxERDq

在实际的项目中,经常需要对一些项目中重要的文件进行加密,以防止重要技术的轻易泄露,这其中对于可执行程序的加密就是很重要的一块。飞天加密狗提供了对可执行程序加密的解决方法是一套叫做 "外壳加密" 的工具。这里对于飞天对这个场景 (加密可执行程序) 的方案进行一些介绍,并提供加密工具。

首先需要介绍一下,什么是外壳加密工具。简单理解就是,加壳后的程序可以独立运行,数据会以密文形式存储,解密过程完全隐蔽,都是在锁内进行,也就是都是在内存中进行,用户完全是不感知的。在执行的逻辑上,加壳后的密文可执行程序附加在源程序上通过 windows 加载器载入锁内存后,先于原始程序执行,得到控制权。在执行的过程中,对原始程序进行解密并还原,还原完成后再把控制权交还给源程序,执行原来的那部分代码。

在可执行程序加壳后,很明显会以加密后的形式存在,只有在插入加密狗执行时才会在内存中还原。当然,其实这也是比较好理解的,一般咱们的加密流程应该就是这样的。如下图,咱们在内部要先对文件进行加密,获得一个加密后的文件,这个加密后的文件是可以对外提供的。对外的话,拿着这个加密后的文件,在执行应用程序的时候,在内存中进行解密,这个过程是对用户不感知的,这样就达到了对文件进行加密的目的。

飞天加密狗的可执行程序加壳方案大致也是这个思路,不过在使用起来会有一些特点,也会带来一些限制。所谓特点、或者说限制,一切的来源还是需要从飞天加密狗 ROCKEY-ARM 本身说起。ROCKEY-ARM 加密锁用的是高性能 ARM 智能卡芯片 (这也就是为什么它叫 ROCKEY-ARM,而不叫 ROCKEY-X86),这种智能芯片耗电量极少功能超强,采用 16位/32位 双指令集,其运算的速度要比传统的 C51 虚拟机中运行的程序快个 60 - 70 倍,这让 ROCKEY-ARM 从某种角度来说,就是一个微型计算机,所以完全能够在锁内执行完整的可执行程序,但是这个可执行程序必须是 32 位的,这就是它的第一个限制。咱们在开发过程中可能会写 x86 的程序,也可能会写 x64 的程序,但是要用飞天的加壳功能,你的程序必须是 32 位的。其实你可以想想为什么会有这样的限制,我还是来画个图。如下,在解密执行的时候,都是在锁内进行,由于锁内是仅支持 32 位的可执行程序,所以自然也会要求你的源程序也是 32 位的,当然这一点其实是不够友好的。

飞天的加壳工具可以对 32 位的可执行文件 (如 .exe、.dll 等)、视频文件 (如视频文件、音频文件等) 以及 Java 程序 (如 .jar 文件、.class 文件等) 进行加壳加密。下面是飞天加壳工具的界面,我这里也提供了这个工具,获取链接:链接

在使用的时候就特别方便了,点击上方的 "文件",选择 "添加文件",然后就可以选择要加壳的文件类型,选择可以是程序文件或者是数据文件。然后选择一下原文件,以及设置一下加密后输出文件的路径,这样就可以了。

使用这种加壳加密方式的优点有几点其实很明显,比如不需要源代码,直接对编译好的程序文件进行加壳就行,另外像操作简单、开发成本低、加密程度高等优点就不多说了。那就这样吧。

好了,以上分享了 使用飞天加密狗对执行程序进行加密的方法,希望我的分享能对你的学习有一点帮助。


【极智视界】

极智开发 | 飞天加密狗对执行程序进行加密

畅享人工智能的科技魅力,让好玩的AI项目不难玩。邀请您加入我的知识星球,星球内我精心整备了大量好玩的AI项目,皆以工程源码形式开放使用,涵盖人脸、检测、分割、多模态、AIGC、自动驾驶、工业等。不敢说会对你学习有所帮助,但一定非常好玩,并持续更新更加有趣的项目。https://t.zsxq.com/0aiNxERDq

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

极智视界

你的支持 是我持续创作的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值