


下載本文檔
版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第Js通過(guò)AES加密后PHP用Openssl解密的方法前言
最近遇到的幾個(gè)網(wǎng)站在提交密碼時(shí)提交的已經(jīng)是密文,也就是說(shuō)在網(wǎng)絡(luò)上傳輸?shù)拿艽a是密文,這樣提升了密碼在網(wǎng)絡(luò)傳輸中的安全性。
后端語(yǔ)言加解密已經(jīng)有很成熟的方案了,前端的話(huà)Google之前出過(guò)一個(gè)crypto-js,為瀏覽器的js提供了加解密方案。今天一起來(lái)了解一下基于AES的前后端加解密流程。
Javascript
1、安裝npm包npminstallcrypto-js
2、加密代碼
constCryptoJS=require("crypto-js");
constkey=CryptoJS.enc.Latin1.parse('1234567812345678');
constiv=CryptoJS.enc.Latin1.parse('1234567812345678');
constencoded=CryptoJS.AES.encrypt('hahaha',key,{
iv:iv,
mode:CryptoJS.mode.CBC,
adding:CryptoJS.pad.ZeroPadding
}).toString()
console.log('encoded',encoded)
3、解密代碼
constkey=CryptoJS.enc.Latin1.parse('123456781234567812345678');
constiv=CryptoJS.enc.Latin1.parse('1234567812345678');
constdecoded=CryptoJS.AES.decrypt(encoded,key,{
iv:iv,
mode:CryptoJS.mode.CBC,
adding:CryptoJS.pad.ZeroPadding
}).toString(CryptoJS.enc.Utf8)
console.log('decoded',decoded);
4、輸出如下
encoded6bcgYd4f4ZgNOQH/3tqMpg==
decodedhahaha
PHP
直接使用openssl解密即可,代碼如下:
$encoded='6bcgYd4f4ZgNOQH/3tqMpg==';
$key='123456781234567812345678';
$iv='1234567812345678';
var_dump(openssl_decrypt($encoded,'AES-192-CBC',$key,0,$iv));
輸出結(jié)果:
string(6)"hahaha"
注意事項(xiàng)
1、AES加密位數(shù)跟密鑰key有關(guān),以下是密鑰位數(shù)和加密對(duì)應(yīng)關(guān)系
16=AES-128
24=AES-192
32=AES-256
2、iv是初始化向量.超過(guò)16字節(jié)或者不足16字節(jié)都會(huì)被補(bǔ)足16字節(jié)或者截?cái)嗟?6字節(jié)。由于AES是塊加密,銘文被分割成固定長(zhǎng)度的塊(一般是16字節(jié)長(zhǎng)度),所以iv也是16字節(jié)。
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 歷史文物虛擬復(fù)原與數(shù)字化保存-洞察闡釋
- 智能數(shù)據(jù)分析中的多源數(shù)據(jù)融合方法-洞察闡釋
- 瀏覽器安全事件應(yīng)急響應(yīng)-洞察闡釋
- 可再生能源預(yù)測(cè)與電力系統(tǒng)穩(wěn)定性分析-洞察闡釋
- 數(shù)字體育營(yíng)銷(xiāo)趨勢(shì)-洞察闡釋
- 可持久化字典樹(shù)在動(dòng)態(tài)網(wǎng)絡(luò)路由中的應(yīng)用-洞察闡釋
- 社會(huì)支持與心理健康服務(wù)創(chuàng)新-洞察闡釋
- 智能化室內(nèi)設(shè)計(jì)與可持續(xù)性研究-洞察闡釋
- 機(jī)器學(xué)習(xí)輔助檢測(cè)-洞察闡釋
- 多切片協(xié)同技術(shù)-洞察闡釋
- 2025年物聯(lián)網(wǎng)工程師考試試題及答案
- 肥胖癥診療指南(2024年版)解讀
- DBJ50-T-078-2016重慶市城市道路工程施工質(zhì)量驗(yàn)收規(guī)范
- 中國(guó)歷史地理智慧樹(shù)知到期末考試答案章節(jié)答案2024年北京大學(xué)
- MOOC 跨文化交際通識(shí)通論-揚(yáng)州大學(xué) 中國(guó)大學(xué)慕課答案
- C-TPAT反恐程序文件(完整版)
- 艾默生PEX系列精密空調(diào)技術(shù)手冊(cè)
- 發(fā)改委招標(biāo)代理服務(wù)收費(fèi)管理暫行辦法
- 10kV備自投調(diào)試報(bào)告
- 名著導(dǎo)讀《簡(jiǎn)愛(ài)》ppt課件(58頁(yè))
- 人教部編版初中英語(yǔ)中考100個(gè)長(zhǎng)難句實(shí)例分析
評(píng)論
0/150
提交評(píng)論