倒计时加密软件计划 – 草稿
初衷
其实最开始的缘由,是因为我很想写一点东西给未来的某个人。
为什么不现在说呢?第一个原因是对方现在可能无法理解我说的这些东西,而我又觉得既然要说也要对方想听才行,我可以说给未来的这个人听,而不是现在的。
但是问题又来了,未来的我和现在的我可能身体、心态、精神都不一样了,看待自己与世界的方式也不一样了,所以未来也许我并不会像现在这样说这些事情了。
再说,未来我还有可能会死呢,就算我始终记得这一切,但是既然是现在想要做的事情,还是现在做更好一点。未来还有未来想要做的事情。
曾经我也想过写信,毕竟这种想法下,写信其实是非常好的方法,但是写信也有一些不容易实现的地方,比如无法传递相片、视频这些更数据的信息,当然写信也有写信的好处,一个实实在在的物品,要比电子数据所包含的信息要多很多,想必这也是古董比照片值钱的一个原因吧。因为我想要传递的是信息,是数据,所以电子信息实际上更灵活,毕竟电子数据不占地方,而且也容易保存,最重要的是:可以按照时间来解锁功能。
时间,还是时间
如果我写了很多东西,但是有些能看,有些不能看的话,那么有一些内容是需要锁住的,这些锁住的内容需要到了指定的时间,或者通过某种手段破解之后才能得到。
所以我就想要做一个软件,它需要实现的功能很简单:查询时间,以及到了指定时间后,可以解压缩出解锁的内容。
以下是它的功能想法:
功能构思
与其说是笔记本,其实就是一个加密器,所以不用考虑文件组织结构问题。但是由于文件包含多媒体,所以它的大小肯定非常大,文件大了之后就会容易丢失本身的完整性,所以文件包肯定不能太大,而且创建这个文件肯定不是一次性的,而是断续创建的,所以我可以把“文件”与“软件”拆开成两部分,软件可以管理与解压文件、可以加密文件,以及快速读取文件的时间目录,配置重打包(方便做成按时间解开顺序的文件),解包、重打包等操作。
解包和制作加密包,当然也可以分成两个软件,但是做成一个软件似乎更加方便点,所以还是只考虑做成一个软件吧。
所以整个计划重点,在于软件部分,以及文件加密方法。
当然,还有加密如何防止破解,但是世界上只要有软件,肯定就存在破解方法,这部分只要做到不那么容易被破解就可以了。
软件部分:
软件分为几个模块:
- 创建时间加密文件:
加密是按“读取时间”来进行分类的,为了方便快速读取与管理,所以需要把时间和文件分开(本来还考虑过标题,但是也许删掉也一样),整个加密后的文件是一个单文件(如果觉得太大,可以按“可读时间”来打包,反正也不能一次把所有文件都打开。)
因为读取时间不是按创建时间的,所以还需要一个管理方式,将所有已经打包好的文件再打包成新的文件。
其实这一个模块的主要功能,就是整理文件,创建文件,加密。 - 按可读时间解压缩:
为了放置破解,解压缩的部分是需要进行验证的,目前能想要的方式就是通过网络读取网络时间,然后再进行和目录比对,如果目录和网络时间一致,则使用密码进行解压缩。
解压缩的唯一验证就是时间,所以这个时间可信度要求就非常高,需要能够避免被欺骗,比如重定向至中间服务器,无法获取时间等等。这一部分做起来可能会有些困难,毕竟现在写的软件,未来也许就不能使用了。
所以需要解决以下几个问题:
获取时间、解压密匙,当然环节越多越容易出问题,所以需要考虑一下怎么解决。
使用逻辑:
-
打开软件,此时可以选择:
- 进行加密,输入一个文件夹,设置一个打开时间,输出一个加密包,输入一堆加密包,制作一个加密档。输入一堆加密档,排序,合并多个加密档。
- 资源浏览,打开资源档,查看资源档中,加密包的可解谜时间,快速切换档,排序。
- 进行解密,验证时间,将某个加密档中的内容解压到指定的文件夹,并标记为“已打开”
-
进行加密,此时需要选择一个目录,然后确定制作解密包,软件直接调用7z或者rar5(直接调用7z改后缀然后加入一段数值进行扰乱7z防止打开能不能实现呢?然后在文件头写入标记语言开头和结尾,之后加密包就利用这段内容进行时间查询(解密的密码是解密时间+某个固定密码的非对称hash内容,这个密码是默认的,当然,如果不是默认的话,也可以利用口令来解密,是一个可选项,但是为了防止密码忘记,所以口令得是一个直接写死在软件中的内容,至少是可配置但难以逆向的hash,在文件标头可以写这个配置解密的名称,软件库中就用这个配置名称下的密码解密。
总之,还是挺复杂的一个事,但好在加密解密都可以用现成的软件,我只用考虑怎么对应文件其实就ok了,
版权声明:
作者:zhangchen
链接:https://www.techfm.club/p/76564.html
来源:TechFM
文章版权归作者所有,未经允许请勿转载。
共有 0 条评论