Skip to content

私密密码本 2.1 源代码

Updated: at 08:22,Created: at 00:31

本文告诉大家如何开发一个软件,本文记录了开发软件的遇到的问题

创建 LaculooTome 用 des 加密解密

KasteFirmou 管理多个不同的文件夹

MooborNursou 提供输入密码

KekerYallku 一个文件夹下的多个文件

CerpislaTeerurchu 关于界面

文件存放

文件存放的方式是在一个文件夹里存放文件 data.data 用于记录所有存放的文件的顺序

这个 data.data 文件的前 100 个 byte 是用于说明是哪个版本的软件

然后有 1024 个字节,里面存放的字符串是用户创建仓库输入的密码 key 进行下面的计算拿到的值

des(md5(key))

所以可以通过读取这 1024 字节进行判断,使用 des 解密方式,用当前输入的密码解密,然后判断当前密码的md5和解密的值是否相同,如果相同就是解密成功

之后的内容就是存放同个文件夹的列表的是如何存放的

这里的存放方式是使用 json 的存储方式,表示的是存放的文件列表和解密文件需要使用的密码

class KanaHerkocou
{
/// <summary>
/// 对应的文件
/// </summary>
public string Name { get; set; }
/// <summary>
/// 解密文件的密码
/// </summary>
public string Key { get; set; }
}

这里解密文件的密码是通过随机创建的密码

在文件夹的相同文件是使用一串小写英文和数字组合的文件,文件的存放是直接使用对应的字符串加密之后直接存放的值


知识共享许可协议

原文链接: http://blog.lindexi.com/post/%E7%A7%81%E5%AF%86%E5%AF%86%E7%A0%81%E6%9C%AC-2.1-%E6%BA%90%E4%BB%A3%E7%A0%81

本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。 欢迎转载、使用、重新发布,但务必保留文章署名 林德熙 (包含链接: https://blog.lindexi.com ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。如有任何疑问,请与我 联系