
说到加密程序,去年全球流行的永恒之蓝勒索病毒,感染病毒的个人电脑,文件无一例外地被一组特殊的代码加密,如果你想解锁加密文件,你必须向黑客支付比特币,目前,永恒蓝加密文件很少被恢复,加密文件无法逃脱被删除的命运。

那么,文件加密的原理是什么呢?

上教程
小编今天正在写一个程序。该程序可以加密整个文件夹中所有类型的文件。现在小编将向您解释该程序的文件加密部分。小编明天会发布
加密整个文件夹程序文章,关注一碳科技有干货哦!

头文件
我们暂时需要三个头文件,即io.h、stdlib.h、iostream,io.h除此之外,头文件中还有许多我们需要使用的文件操作函数stdio.h文件操作函数也很多,iostream是C 标准库文件,C 在某些方面,它比C语言更容易使用,所以小边选择使用部分C 编写我们的加密程序。
数据转移小编在这里用了两个数组,一个用来存储文件的初始数据,一个用来存储文件加密后的数据fread()以二进制读取加密文件的形式读取并存储数据
buf[]
buf[]
为了达到加密原始数据的目的,始数据。小编的加密形式如下:对buf[]中的每个元素加1,为了方便大家了解小编简单的加密,你也可以自己制定加密规则。
文件加密函数
小编给加密函数命名Encrypt(),该函数小编设计为无参数、无返回值,用于配合文件名遍历,因此该函数设计为此。首先,在一开始,通过文件名遍历获得的文件名和文件路径拼接起来,拼接起来会使
strcat()
(新建的)
,两个文件的路径相同,只是文件名不同,所以小编需要用两个变量来保存路径,防止路径变化,具体看下图↓

其中,小编使用复制数组函数和恢复数组函数。复制数组是将B数组的数据复制到A数组中,恢复数组函数是将所有数组元素用于‘\\0'填充。这两个函数的实现特别简单,如下图所示↓

写入数据
阅读和写入数据fread、fwrite函数,这两个函数不是很难,一般百度可以找到,参数和返回值的使用也很简单,所以这里小边不会解释更多,会发布实现过程。U盘一键拷贝小编明天会写一个
U盘一键拷贝程序,功能是这样的,U盘插入电脑,会自动复制指定类型的文件,获得必要的文档技能,特别是当别人不想给你!教程将在后天发布并增加U盘锁机程序,所以请关注一碳科技会有源码分享哦!教程将在后天发布并增加U盘锁机程序,所以请关注一碳科技会有源码分享哦!