PHP如何数据加密

  介绍

这篇文章主要介绍PHP如何数据加密,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

,环境Apache PHP-7.0.12

加密解决了什么问题:

1。防止通信内容被窃听;

2。防止通信内容被篡改

<强>加密类型:

1。对称加密:加密与解密使用的是同一个秘钥,例:DES(数据加密标准),1977 - 1999年,1999年被破解;AES(先进加密标准),目前最流行的对称加密算法

2。非对称加密:RSA

<强> AES加密/解密

1。使用PHP加密/解密函数openssl_encrypt/openssl_decrypt

注意:有很多例子使用的是PHP mcrypt_encrypt()函数,官网给我的解释:PHP 7.1.0这个函数被弃用。依赖>//获取可用的密码加密算法列表//$方法=openssl_get_cipher_methods ();//var_dump($方法);   # AES加密演示//明文(要加密的内容)   str=懊涝?这是测试用例我是明文“;//秘钥(用例:使用函数()函数生成了一个唯一ID)   $关键=? d3fb4acb2292";//加密算法   $方法=癮es - 128 cbc";//加密向量(要求18个字节)   $ 4=?234567812345678”;   美元encrypt_str=openssl_encrypt (str美元,美元的方法,键,0,4美元);   var_dump (“AES加密结果:“encrypt_str美元);   # AES解密演示//美元encrypt_str AES加密后产生的密文//美元关键秘钥(同上)   美元decrypt_str=openssl_decrypt (encrypt_str美元,美元的方法,关键,0,4美元);   var_dump (“AES解密结果:“decrypt_str美元);

<>强RSA加密

1。公/私钥加密算法,属于非对称加密:

2。优点:极难被破解;

3。缺点:速度慢,运算次数多,不适合加密长文本;

//公钥(项目中可在线生产亦可自己生成)   $ PUBLIC_KEY=? - - - - - - - - - -开始公钥   MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEApJJ7D/U9lHLNQdl4LZSr   jNvdCelIraMnSD/iujWxyw/QDLXPCtP06ll42JURGlYaO2DU5c5BKEUF0alyzlE9   XiHRXPl0LabI/CjGtrIB4RApy1PjkQ31QOt + 9 r2nmb7rukfzwncwhblnvnwj4u6j   woccrlUdElBWU5twFc2PNPbMR6nA/ldUwDpcveNHNp57BrgYfUFcLrjmf2LH6c7X   ngBNPbG5ha5pmsaXm8MAqBRtAvIwvUsvJLIr + XRc27pCJFe/1 mts4hhhtpe4un/z   Y/tIrpqm6MimdJcs8oqEQPoztfs5BTNu2jVgrKwtWExDXODWmHemQoaCwzgt3wMy   3 widaqab   ——————产生绯闻端公钥;;//私钥(项目中可在线生产亦可自己生成)   $ PRIVATE_KEY=? - - - - - - - - - -开始私钥   MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCkknsP9T2Ucs1B   2 xgtlkum290j6uitoydip + K6NbHLD9AMtc8K0/TqWXjYlREaVho7YNTlzkEoRQXR   qXLOUT1eIdFc + XQtpsj8KMa2sgHhECnLU + ORDfVA6371HY2ZvtFSR9nCcJYcGU1W   fCPhTonChxyuVR0SUFZTm3AVzY809sxHqcD + V1TAOly940c2nnsGuBh9QVwuuOZ/YsfpzteeAE09sbmFrmmaxpebwwCoFG0C8jC9Sy8ksiv5dFzbukIkV7/Uy1LiEeFM   8 ti6f/新泽西+ 0 iumqboykz0lyzyiora + jO1 + zkFM27aNWCsrC1YTENc4NaYd6ZChoLD   OC3fAzLfAgMBAAECggEAUcCieW7uREwzQr7xQFNWVQbzavUEMZ2W6gEydCYwSBt2   0 pmoxgamh7qiobsnbnq3w7/igrZPD94Z4ek3Kt6YiaZrBrC00ejEdt8at6791/vb   hzIJHgm9B5701nbz3Kg5 + 5 hnzxv2vealci0cle4z6rsnxtzrmepqxoac0ffnz/电视   033年zan4nwb9zelw03/D0nbcpaYA/WbwqsNiTxbbi0s54oTsaOTMBBAK9oH9H2M5J   506年iinckniymi6i0cf/cQ + tP6VUCOMHdWm/zJmQ5s2eU/2 sowskmxmliguh2q4ax   Z2htX4YwvdHGlGA5yPuiMznkFidVcERfbVl9yi54YQKBgQDQYqj2bb0bvD8YuvXx   htdBQrxiX53pZ1sVoh6SMxD + Lq6tpn4UtOJw6tpE7tgONmWRaKCH10fgX5nQoXPJ   0 y02qidyk/TkE0OGiYRTjjkjY3yPkBIz9KRCoIUcwirEfWdzmjFLTq9hiaGo9JXN   HcLXOgpAbiQe + qXf9x/waWB/hQKBgQDKLQB9Ep9A6UFlumXaEr971A7HcQI2BsfP   kRfCcT1rphnENHCa37o + 5 i6ttimaxi + aayp9Jpv0rXLbzFbBkdUdUDINulXSsLRT   bq3ttbu5c + NG21XW1fvVqf4VYOP7u/l0Z2eBIsg9uLswS3zltTG8ikm + RKhMf1DV   PDAOoLmMEwKBgDn0po9a9/Rlx5qmLM7OtMFGwUQO2clXYILEwvATmc9HxncvTfOO   V0gWWTxAvUA + qsLlOXhuTGQ/0 nsu4pgnusgquxef5n8l6grbhj0c2ityequoizd/m8uX/01/Rwu84O/K25jZOnfDIn3uAFe6xjy7vKwstckT5txCS9S + SgNNAoGAbvLl   Sr32cUvQXMA + 9 r7fihjolfsbaj6t9mw8ctntrm63wym4bfxzimn1ibrxdmtvvbur   1 irkn5cz8juhoxahqnwbengiezgjtap2hpxvccv9uzvqzpydnrksqhuq59hpyqca   cSiiVOTUrPswLmsSQVJuh7Dr7xcLSAnAobZoPMsCgYEAsJuY5RcB1sjYortRNsKb   KHLiLI93P0MFF46V/343 d3bu7tzfetg703mj2afoagtm2p2bkhfri3l + 4 oigmqpr   hAp4hNq4KFK2SCjzedrLV7QIgtp/uMZ + q/yhRtiG8kSWlI9c0Un00 + KqIwFqfwAB   l1zOX5QcMa1X7eWSvZ559ko=怂皆俊澄?;//待加密明文   $ data=https://www.yisu.com/zixun/闭馐荝SA待加密明文”;//用于接收加密后的密文   美元content_encrypt=" ";   #私钥加密   openssl_private_encrypt(数据,content_encrypt美元PRIVATE_KEY美元,1);   var_dump(“私钥加密结果:“content_encrypt美元);   #公钥解密//美元content_encrypt私钥加密后的密文//用于接收解密后的明文   美元content_decrypt=" ";   openssl_public_decrypt (content_encrypt, content_decrypt美元PUBLIC_KEY美元,1);   var_dump(“公钥解密结果:“content_decrypt美元);

PHP如何数据加密