发表于: 2017-11-04 23:14:39
1 779
今天完成的内容:
(1)开始任务五,学习DES加密。
DES(data encryption standard),即数据加密标准,是一种使用密钥加密的块算法,DES算法的入口参数有三个:Key、Data、Mode。其中Key为7个字节共56位,是DES算法的工作密钥;Data为8个字节64位,是要被加密或被解密的数据;Mode为DES的工作方式,有两种:加密或解密。
DES是一种对称加密算法,所谓对称加密算法即:加密和解密使用相同密钥的算法。
明文(原文)(plaintext):这是原始信息或数据,作为算法的输入。
加密算法(encryption algorithm):加密算法对明文进行各种替换和转换。
密钥(secret key):密钥也是算法的输入。算法进行的具体替换和转换取决于密钥。
密文(ciphertext):这是产生的已被打乱的消息输出。
解密算法(decryption algorithm):本质上是加密算法的反向执行。它使用密文和同一密钥产生产生原始明文。
DES算法是这样工作的:如Mode为加密,则用Key 去把数据Data进行加密, 生成Data的密码形式(64位)作为DES的输出结果;如Mode为解密,则用Key去把密码形式的数据Data解密,还原为Data的明码形式(64位)作为DES的输出结果。在通信网络的两端,双方约定一致的Key,在通信的源点用Key对核心数据进行DES加密,然后以密码形式在公共通信网(如电话网)中传输到通信网络的终点,数据到达目的地后,用同样的Key对密码数据进行解密,便再现了明码形式的核心数据。这样,便保证了核心数据(如PIN、MAC等)在公共通信网中传输的安全性和可靠性。
基本流程:
初始置换:
对于明文M = m1m2...m64,按照下图所示的初始置换IP指示的顺序从输出中取出指定的位放在这一位上,得到输出,比如c1 = m58,c2=m50以此类推。
逆初始置换是初始置换的逆变换:
设输入为m1m2...m64,输出为c1c2...c64,则c1c2c3c4c5c6c7c8 = m40m8m48m16m56m24m64m32。
明天的计划:继续学习其他加密。
遇到的问题:理解困难。
收获:以上。
禅道:http://task.ptteng.com/zentao/task-view-10682.html
评论