发表于: 2017-08-20 23:32:24
5 1132
【今日做的事情】
任务五需要DES加密和cookie,今天了解了一下何为DES加密。
DES算法的原理:
DES算法的入口参数有三个:Key、Data、Mode。
Key为8个字节共64位,是DES算法的工作密钥;
Data也为8个字节64位,是要被加密或被解密的数据;
Mode为DES的工作方式,有两种:加密或解密。
DES加密属于对称加密,对称加密就是指:加密系统的加密密钥和解密密钥相同,或者虽然不同,但是可以轻松的从一个密钥推导出另外的一个密钥。
DES算法是这样工作的:如Mode为加密,则用Key 去把数据Data进行加密, 生成Data的密码形式(64位)作为DES的输出结果;如Mode为解密,则用Key去把密码形式的数据Data解密,还原为Data的明码形式(64位)作为DES的输出结果。在通信网络的两端,双方约定一致的Key,在通信的源点用Key对核心数据进行DES加密,然后以密码形式在公共通信网(如电话网)中传输到通信网络的终点,数据到达目的地后,用同样的Key对密码数据进行解密,便再现了明码形式的核心数据。这样,便保证了核心数据(如PIN、MAC等)在公共通信网中传输的安全性和可靠性。
总的来说,DES加密的核心本质就是通过一个秘钥KEY,将原有的数据分为左右两部分,不断地调换位置,打乱左右顺序,如此循环N次后,会变成一个密文。而密文还原也是通过秘钥,一步一步调换位置,最后变成明文。
当然,我觉得做任务使用DES加密,也不必知道DES的每一步工作原理(我看了一下,蛮复杂的,还是无法理解),只需要会使用DES加密来帮助自己加密用户信息即可。
Cookie的原理
通常情况下,当用户结束浏览器会话时,系统将终止所有的 Cookie。当 Web 服务器创建了Cookies 后,只要在其有效期内,当用户访问同一个 Web 服务器时,浏览器首先要检查本地的Cookies,并将其原样发送给 Web 服务器。这种状态信息称作“Persistent Client State HTTP Cookie” ,简称为 Cookies。
总的来说,cookie就是一个本地的缓存,里面记录了一些网页的信息,如果在有效期内再次访问网站,那么网站会根据cookie的数据信息进行对应的操作(比如已经登录过淘宝了,短时间内再次登录,就不用输入密码)。当然,如果有效期过了,cookie文件会自动被删除的。
【今日收获】
今天搞清楚了两个任务相关的概念,扫清了知识点的障碍
【今天遇到的问题】
我今天有个比较有意思的脑洞,就是cookie不是本地文件么,网站不是会自动检测做出操作么。那么问题来了:如果师兄把淘宝的cookie在本地复制,发送给我,我存放在本地。那么我打开淘宝网,是不是进去就是已经登录了师兄的账号呢?仔细想想好像不太安全啊,cookie。
【明日计划】
明天会直接下个有关DES加密和cookie的demo研究一下,或者找到相关的API或者工具类,直接上手搞一个小demo
【任务进度】
这个任务预计6天可以做完,禅道今天进不去了,所以还没设置。
PS:任务四代码已经传至SVN了,请师兄审阅。
评论