加密的逻辑
- 数据打算怎样加密?
- 那些数据要加密?
- 数据要不要解密?
ps:本人行业特殊,所以在此不提源数据内容,望谅解。
数据的加密形式
比较常见的MD5加密、sha256加密等,此类加密方式都是不可解密的(MD5也有一些破解网站,但一般都是计算好的)
Des加密、Aes加密为对称的加密手法,是用来同一个钥匙进行加密,Des目前可以强制破击,所以使用的较少,Aes加密等级较高。
非对称加密RSA,采用了公钥和私钥的形式加密,一般使用私钥加密,公钥解密的形式,目前来说也是非常安全的
加密方式的缺点
如果计算机专业的或者热爱技术的,用以上的加密方式加密都可以,并且能够保证数据安全,但是如果是非技术的,看起来就非常不舒服,感觉一长串的字母和数字和乱码一样
姓名 | 学号 | 身份证号 | 手机号 |
---|---|---|---|
张三 | 202104331 | 37232819901212043X | 10086 |
李四 | 202104320 | 372328189003120010 | 10010 |
如果是以上的数据要进行加密,使用MD5,将得到以下结果
姓名 | 学号 | 身份证号 | 手机号 |
---|---|---|---|
615DB57AA314529AAA0FBE95B3E95BD3 | 2FCC1CAB33B6AFEBFCD255EFC606F605 | 1B56C577963F6D3719558A8E976EE4CE | 6412121CBB2DC2CB9E460CFEE7046BE2 |
36C942351EC9CC3AD124E288A5C9CF0B | 7DCB628D41723AB2A2C051293AB49C94 | 6C0012F36D95383E6968879677CDEEFC | A17479231DC298309A3FDA7D7D00111A |
以上的数据我们确实是加密了,但是看起来舒服吗?
“特殊的加密方式”
我们最终想要实现的效果是,长度需要保持不变,并且保证看起来舒服
姓名 | 学号 | 身份证号 | 手机号 |
---|---|---|---|
张*三 | 757659886 | 82787160056767598C | 65513 |
李*四 | 757659875 | 827871610558675565 | 65565 |
这样看起来是不是好看了很多。聪明的人可能已经发现了这个加密的算法了,不就是简单的换个数嘛,有些时候我们的数据是无需贴别加密的,只需要简简单单的加个密脱个敏就可以了
深层次加密
有的人可能会说,你这样的加密手段也太low了,所以当时想了一种二次加密的手法,Bios码,通过Bios的机器码,将数据二次加密,由于自己的bios码自己一般都不会知道,所以使用bios码进行二次加密将会得到新的加密后字段,使数据更加保密一些
姓名 | 学号 | 身份证号 | 手机号 |
---|---|---|---|
张*三 | 535437664 | 62565140034545376C | 43319 |
李*四 | 535437653 | 625651410336453343 | 43343 |
以上的数据已经被二次加密过,数据破解起来稍微复杂一点,但是肯定功夫不负有心人,想要破解还是可以拿到的,再次就不多提了
数据要不要恢复
以上的算法是肯定可以恢复的,应为都是使用了简单的加密字典,姓名列的数据是没有办法恢复的,除非有原始表那是可以恢复的
加密系统的界面
懂得人一看就懂,我就在此多说了,这是在学习pyqt时简单做个小工具,平时可能有很多的数据演示需要脱敏,则自己写了个完,有想法的可以留言或私信。