首頁 web前端 js教程 分享一個基於crypto-js加密的問題實例

分享一個基於crypto-js加密的問題實例

May 16, 2017 am 09:58 AM

最近用php做了一個電影/電視劇在線播放的HTML5 的小站,使用到的是php的curl進行實時抓取,其中遇到了js加密的問題,遂谷歌解決之,才有了這篇總結。

一波廣告

個人主頁:www.linganmin.cn
電影小站地址:www.ifilm.ltd

先說js基於crypto-js的加密

CryptoJS是一個純javascript寫的加密類別庫,他的GitHub倉庫位址github.com/brix/crypt...

在使用時我們需要引用該js文件,為了方便我引用了的CDN上的鏈接

上代碼

<script src="cdn.bootcss.com/crypto-js/3.1.9/crypto-js.js"></script>
<script>
var data = "en2JprK0nMyYgbd6dQO0O0OO0O0O" // 需要加密的字符串
var key_base="contentWindowHig"; // 加密秘钥的基值
var iv_base="contentDocuments"; // 加密所需iv基值
/**
 * 定义加密函数
 * @param  {[type]} a [形参,需要加密的值]
 * @return {[type]}   [加密后的值]
 */
 var get=function(a){
     var key_hash=CryptoJS.MD5(key_base); 
     var key=CryptoJS.enc.Utf8.parse(key_hash);
     var iv=CryptoJS.enc.Utf8.parse(iv_base);
     var res=CryptoJS.AES.encrypt(a,key,{iv:iv,mode:CryptoJS.mode.CBC,padding:CryptoJS.pad.ZeroPadding});
     return res.toString()
 }
    console.log(get(data)) // tPYJv39iEbdFD/UqNejyvkLG8ATdifyfE+BDeld2jWk=
</script>
登入後複製

再說PHP相同的加密與解密

為了文章的優雅,php將使用和js相同的變數命名

上程式碼

// 定义变量
$data = "en2JprK0nMyYgbd6dQO0O0OO0O0O";
$key_base = "contentWindowHig";
$iv_base = "contentDocuments";
// 加密前处理
$key = md5(&#39;contentWindowHig&#39;);
$iv = $iv_base;
// 加密
$cryptText = mcrypt_encrypt(MCRYPT_RIJNDAEL_128, $key, $data, MCRYPT_MODE_CBC, $iv);
$res = base64_encode($cryptText);
// 解密
$cryptText = base64_decode($res); 
$decode = mcrypt_decrypt(MCRYPT_RIJNDAEL_128, $key, $cryptText, MCRYPT_MODE_CBC, $iv);
登入後複製

【相關推薦】

1. ##特別推薦「php程式設計師工具箱」V0.1版本下載

#2. 

免費js線上影片教學

3. 

php.cn獨孤九賤(3)-JavaScript影片教學

以上是分享一個基於crypto-js加密的問題實例的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1663
14
CakePHP 教程
1420
52
Laravel 教程
1315
25
PHP教程
1266
29
C# 教程
1239
24
win11加密dns詳細教學 win11加密dns詳細教學 Dec 25, 2023 am 10:13 AM

先前微軟為win11提供了dns加密服務,但不少用戶不知道win11加密dns怎麼使用,其實我們只需要打開網路設定下的dns設定。 win11加密dns詳細教學:1、先進入磁碟,找到想要加密的資料夾。 2.接著開啟右側的「乙太網路」3、然後再下方找到DNS伺服器分配,點選「編輯」4、將其中的「自動(DHCP)」改為「手動」後,開啟下方「IPv4」5、開啟後,在首選DNS中輸入“8.8.8.8”6、然後將首選DNS加密改為“僅加密(通過HTTPS的DNS)”7、更改完成後點擊“保存”,就可以發現

Win10家用版支援資料夾加密功能嗎? Win10家用版支援資料夾加密功能嗎? Jan 09, 2024 am 08:58 AM

文件加密,旨在對資料實施專業級別的加密從而更有效地確保資料的安全性!僅掌握了正確加密金鑰方可執行解密操作,實質保障資訊資產安全。然而,Win10家庭版檔案加密功能尚不具備此項特性。 win10家庭版能加密資料夾嗎答:win10家庭版不能加密資料夾。 Windows系統加密檔案的教學1、在想要加密的檔案或資料夾上使用右鍵操作(或長按一段時間),接下來請選取「屬性」功能。 2.在展開的新介面中,尋找「進階」選項,點選進入後,記得勾選位於下方「加密內容以保護資料」選項。 3、設定完成後,點選「確定」來

winrar怎麼加密壓縮包-winrar加密壓縮包方法 winrar怎麼加密壓縮包-winrar加密壓縮包方法 Mar 23, 2024 pm 12:10 PM

小編將為大家介紹加密壓縮的三種方法:方法一:加密最簡單的加密方法,就是在加密檔案時輸入想要設定的密碼,完成加密和壓縮了。方法二:自動加密普通的加密方式,需要我們加密每個檔案的時候都需要輸入密碼,如果你想要加密大量壓縮包,並且密碼是一樣的話,那麼我們可以在WinRAR中設定自動加密,之後只要正常壓縮文件,WinRAR會為每個壓縮包添加密碼。方法如下:開啟WinRAR,點選選項–設定設定介面中,切換到【壓縮】,點選建立預設設定–設定密碼在這裡輸入我們想要設定的密碼,點選確定就完成設定了,我們只需要正

資料夾加密如何設定密碼不壓縮 資料夾加密如何設定密碼不壓縮 Feb 20, 2024 pm 03:27 PM

資料夾加密是一種常見的資料保護方法,它可以將資料夾中的內容加密,使得只有掌握解密密碼的人能夠存取其中的檔案。在進行資料夾加密時,有一些常見的方法可以用來設定密碼,而不需要壓縮檔案。首先,我們可以使用作業系統自帶的加密功能來設定資料夾密碼。對於Windows使用者來說,可以透過以下步驟來設定:選擇要加密的資料夾,滑鼠右鍵點選資料夾,選擇「屬性」選

蘋果手機相簿加密怎麼設定 蘋果手機相簿加密怎麼設定 Mar 02, 2024 pm 05:31 PM

在蘋果手機中,用戶可以根據自己的需求來加密相簿。有些用戶並不清楚該怎麼設定。可以將需要加密圖片加入備忘錄後,再去鎖定備忘錄即可,接下來就是小編為用戶帶來的手機相簿加密設定方法的介紹,有興趣的用戶快來一起看看吧!蘋果手機使用教學蘋果手機相簿加密怎麼設定答:將需要加密圖片加入備忘錄後,再去鎖定備忘錄即可詳情介紹:1、進入相冊,選擇需要加密的圖片,再點擊下方的【新增到】。 2、選擇【加入備忘錄】。 3.進入備忘錄,找到剛更創建的備忘錄,進入,點選右上角的【傳送】圖示。 4.點選下方的【鎖定備

win11文件加密完整指南 win11文件加密完整指南 Jan 09, 2024 pm 02:50 PM

有的朋友想要保護自己的文件,但不知道win11文件怎麼加密,其實我們可以直接使用資料夾加密也可以用第三方軟體加密文件。 win11文件加密詳細教學:1、先找到想要加密的文件,右鍵選中,開啟「屬性」2、接著點擊屬性一欄的「高級」3、在高級中選擇「加密內容以便保護資料」並點選「確定」4、然後點選「確定」儲存。 5.最後選擇想要的加密模式並「確定」儲存即可加密文件了。

學習Golang指標轉換的最佳實務範例 學習Golang指標轉換的最佳實務範例 Feb 24, 2024 pm 03:51 PM

Golang是一門功能強大且高效的程式語言,可用於開發各種應用程式和服務。在Golang中,指標是一種非常重要的概念,它可以幫助我們更靈活和有效率地操作資料。指標轉換是指在不同類型之間進行指標操作的過程,本文將透過具體的實例來學習Golang中指標轉換的最佳實踐。 1.基本概念在Golang中,每個變數都有一個位址,位址就是變數在記憶體中的位置。

CentOS中詳細介紹Vim文字的加密與解密方法 CentOS中詳細介紹Vim文字的加密與解密方法 Dec 31, 2023 pm 02:49 PM

CentOS用vim/vi給文件加密和解密一、利用vim/vi加密:優點:加密後,如果不知道密碼,就看不到明文,包括root用戶也看不了;缺點:很明顯讓別人知道加密了,容易讓別人把加密的檔案破壞掉,包括內容破壞和刪除;vi編輯器相信大家都很熟悉了吧,vi裡有一個命令是給文件加密的,舉個例子吧:1)首先在root主目錄/root/下建立一個實驗檔案text.txt:[root@www~]#vim/vitext.txt2)轉到編輯模式,輸入內容後按ESC,然後輸入:X(注意是大寫的X),回車;3)

See all articles