>  기사  >  웹 프론트엔드  >  crypto-js 암호화를 기반으로 한 문제의 예를 공유하세요

crypto-js 암호화를 기반으로 한 문제의 예를 공유하세요

零下一度
零下一度원래의
2017-05-16 09:58:002622검색

최근에는 PHP를 사용하여 영화/TV 시리즈의 온라인 스트리밍을 위한 HTML5 웹사이트를 구축했습니다. 실시간 크롤링을 위해 PHP의 컬을 사용했는데 JS 암호화 문제가 발생하여 Google에서 이 문제를 해결했습니다. 이 기사를 요약했습니다.

광고의 물결

개인 홈페이지: www.linganmin.cn
영화관 주소: www.ifilm.ltd

암호화 기반 js에 대해 이야기해보자- Node.js Crypto

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는 코드

// 定义变量
$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);

에서 js

와 동일한 변수 이름을 사용합니다. [관련 권장 사항]

1. 특별 추천 : "php Programmer Toolbox" V0.1 버전 다운로드

무료 js 온라인 비디오 튜토리얼

3. php.cn Dugu Jiujian (3) - JavaScript 동영상 튜토리얼

위 내용은 crypto-js 암호화를 기반으로 한 문제의 예를 공유하세요의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.