编程语言应用

首页 » 常识 » 常识 » 软件加密与加壳的区别
TUhjnbcbe - 2022/10/30 16:03:00

昨天写了一篇关于文件破坏病*的分析文章,就是通过加密的方式,让文件打不开。

看到有网友评论,认为这个是加壳,加壳很早就听说过,因为一直都是自己开发软件,自己使用,没有想过到网上去分享自己的软件,所以没有研究加壳。

下面我自己弄个简单的加了壳的易语言程序。

代码如下图。

这个代码我开始还以为简单,真的写起来,问题多得很。

主要是流程控制命令的选择上,如果,如果真,还有判断,这些命令,平时看不出来有什么区别,写代码的时候区别就来了,果然名称不同,自然意义就不一样,古代人名字都好几个,什么字什么号的,既然这个搞肯定区别很大,还以为是搞起好玩的。

先说说如果。

我们把上图的判断命令修改为如果,如下图。

运行后,发现输入,这个就会出错。

点击了确定按钮后,就会再次提示注册失败。

分析下代码,发现这个如果命令,在眼睛看花了的情况下,很可能就弄错了。

我们注意下图框内箭头,这个箭头指向的代码位置放错了。

正确的放法应该如下图。

运行后如下图。

完全没有问题了。

再来说说如果真。

我们把代码修改下如下图。

这样一弄,运行的时候,我们输入的不是就正确,但是一旦输入就会错误,如下图,先显示注册成功,又显示注册失败。

这里我们就需要添加一个命令,这个命令,我编写代码的时候都没有想起来,写文章的时候想到的,如下图框内,所以说光看不写,不操作,怎么想得到。

这样运行后,就正确了,接着就是判断命令的写法。

这个命令弄起来简单,不容易出错,我一次性就解决了。

命令之间的差别,有一点就很重要,有的命令用起来就很顺手,不容易出错,有的就老火得很,用起来点都不习惯,还容易出错,虽然都可以完成功能。

记得以前听过一个营销面试案例,面试官提出,为什么一家卖洗发水的公司,要开发多个品牌,比如你看看宝洁公司,飘柔、潘婷、海飞丝等,都是一家公司的,为什么这么搞?

一个牌子就可以了,有个应聘者是这么回答的。

因为这个是出于营销的考虑,把利益最大化,如果是一家公司,一个品牌,有人喜欢肯定就有人不喜欢,在一定时期是恒定的。

多搞几个品牌,也许图案或者名称,还有风格,又能吸引一批粉丝,这样总的粉丝就会多。

本来洗发水质量都差不多,主要是营销手段。

所以一个编程语言,一个流程控制,相同的功能,都搞这么多命令出来,我猜想目的就是多吸引人来操作,现在编程语言市面上多得是,搞点命令,把其他编程语言的粉丝抢过来。

下面我们把文件编译了,如下图。

我们用昨天写的加密程序进行加密,然后如下图,图标也变化了,也打不开了,这个就是加密的后果,所以加密和加壳有着本质的区别。

1
查看完整版本: 软件加密与加壳的区别