admin管理员组

文章数量:1575546

对代码进行重构,页面跳转的时候总是提示参数错误,仔细检查了好几遍,确定就是那几个参数,最后找出原始页面对比,原来必须要加密传输才可以。

事实上,在平时的项目开发中,经常要考虑到对数据进行加密传输的问题。数据在传输的过程中,如果使用原始数据,就可能会出现被监听、被截获、被篡改的情况,会产生非常大的安全隐患。因此开发人员需要在客户端对传输数据进行加密,然后在服务器端进行解密!

看了看原来的代码,确定了他们用的是AES对称加密算法.

AES加密算法分为3种,分别是AES-128,AES-192,AES-256。AES加密的实现主要由4种操作组成,分别是字节代替、行位移、列混淆、轮密钥加。另外还需要对原始密钥进行扩展,这种加密方式计算量小、速度块,适合对大量数据进行加密的场景。

AES加密整套加密系统包括以下几个部分:

明文P

没有经过加密的数据。

密钥K

用来加密明文的密码,在对称加密算法中,加密与解密的密钥是相同的。密钥为接收方与发送方协商产生,但不可以直接在网络上传输,否则会导致密钥泄漏,通常是通过非对称加密算法加密密钥,然后再通过网络传输给对方,或者直接面对面商量密钥。密钥是绝对不可以泄漏的,否则会被攻击者还原密文,窃取机密数据。

加密函数

设AES加密函数为E,则 C = E(K, P),其中P为明文,K为密钥,C为密文。也就是说,把明文P和密钥K作为加密函数的参数输入,则加密函数E会输出密文C。

密文C

经加密函数处理后

本文标签: 算法原理加密解密加解密AES