Javascript與java相同的3des加密(使用etdesede/CBC/PKCS5Padding )

在某個項目中鸠删,需要開發(fā)一個與native相對應(yīng)的web前端app职烧,后臺用的是java restful接口,請求數(shù)據(jù)時需要用的3des加密虑绵。如果想要請求接口尿瞭,則需要javascript的加密與java相同,于是在baidu與google進行了大量搜索翅睛,在此記錄一下過程声搁,并希望能幫助有同樣需求的小伙伴。

3des加密捕发,通俗的理解是應(yīng)用三次DES加密算法疏旨,其中有許多參數(shù)與標(biāo)準(zhǔn),此處只介紹 java接口中使用的“etdesede/CBC/PKCS5Padding” ,IvParameterSpec自行配置扎酷。
以下是java源碼:

Key deskey = "key";
String iv = "01234567";
DESedeKeySpec spec = new DESedeKeySpec(secretKey.getBytes());
SecretKeyFactory keyfactory = SecretKeyFactory.getInstance("desede");
deskey = keyfactory.generateSecret(spec);
Cipher cipher = Cipher.getInstance("desede/CBC/PKCS5Padding");
IvParameterSpec ips = new IvParameterSpec(iv.getBytes());cipher.init(Cipher.ENCRYPT_MODE, deskey, ips);
byte[] encryptData = cipher.doFinal(plainText.getBytes(encoding));
return Base64.encode(encryptData);

javascript加密碼的方法我采用了開源的CryptoJS檐涝,github地址:https://github.com/sytelus/CryptoJS
需要引入js文件:rollups/tripledes.js,components/mode-ecb.js

var encrypted = CryptoJS.DES.encrypt(message, keyHex, {  
iv:CryptoJS.enc.Utf8.parse('01234567'),    
mode: CryptoJS.mode.CBC,    
padding: CryptoJS.pad.Pkcs7});

以為一切就緒法挨,結(jié)果console.log發(fā)現(xiàn)與java的3des結(jié)果不對應(yīng)谁榜。
padding:CptoJS.pad.Pkcs7,可是java代碼明明是pkcs5,但是javascript沒有pkcs5,后來搜索凡纳,發(fā)現(xiàn)有人說Pkcs7與Pkcs5沒什么區(qū)別窃植。可是問題到底在哪呢荐糜?
又經(jīng)過了一陣子漫長地搜索巷怜,后來終于在stackoverfllow中找到答案
CryptoJS.DES.encrypt只是des加密,而我用的是3des,需要用:CryptoJS.TripleDES.encrypt暴氏。終于換上TripleDES后問題解決 最終代碼如下:

var keyHex = CryptoJS.enc.Utf8.parse('key');
var encrypted = CryptoJS.TripleDES.encrypt(message, keyHex, {    
iv:CryptoJS.enc.Utf8.parse('01234567'),    
mode: CryptoJS.mode.CBC,    
padding: CryptoJS.pad.Pkcs7});
console.log(encrypted);
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末延塑,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子答渔,更是在濱河造成了極大的恐慌关带,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,723評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件研儒,死亡現(xiàn)場離奇詭異豫缨,居然都是意外死亡独令,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,485評論 2 382
  • 文/潘曉璐 我一進店門好芭,熙熙樓的掌柜王于貴愁眉苦臉地迎上來燃箭,“玉大人,你說我怎么就攤上這事舍败≌欣辏” “怎么了?”我有些...
    開封第一講書人閱讀 152,998評論 0 344
  • 文/不壞的土叔 我叫張陵邻薯,是天一觀的道長裙戏。 經(jīng)常有香客問我,道長厕诡,這世上最難降的妖魔是什么累榜? 我笑而不...
    開封第一講書人閱讀 55,323評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮灵嫌,結(jié)果婚禮上壹罚,老公的妹妹穿的比我還像新娘。我一直安慰自己寿羞,他們只是感情好猖凛,可當(dāng)我...
    茶點故事閱讀 64,355評論 5 374
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著绪穆,像睡著了一般辨泳。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上玖院,一...
    開封第一講書人閱讀 49,079評論 1 285
  • 那天菠红,我揣著相機與錄音,去河邊找鬼司恳。 笑死途乃,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的扔傅。 我是一名探鬼主播,決...
    沈念sama閱讀 38,389評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼烫饼,長吁一口氣:“原來是場噩夢啊……” “哼猎塞!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起杠纵,我...
    開封第一講書人閱讀 37,019評論 0 259
  • 序言:老撾萬榮一對情侶失蹤荠耽,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后比藻,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體铝量,經(jīng)...
    沈念sama閱讀 43,519評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡倘屹,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,971評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了慢叨。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片纽匙。...
    茶點故事閱讀 38,100評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖拍谐,靈堂內(nèi)的尸體忽然破棺而出烛缔,到底是詐尸還是另有隱情,我是刑警寧澤轩拨,帶...
    沈念sama閱讀 33,738評論 4 324
  • 正文 年R本政府宣布践瓷,位于F島的核電站,受9級特大地震影響亡蓉,放射性物質(zhì)發(fā)生泄漏晕翠。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,293評論 3 307
  • 文/蒙蒙 一砍濒、第九天 我趴在偏房一處隱蔽的房頂上張望淋肾。 院中可真熱鬧,春花似錦梯影、人聲如沸巫员。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,289評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽简识。三九已至,卻和暖如春感猛,著一層夾襖步出監(jiān)牢的瞬間七扰,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,517評論 1 262
  • 我被黑心中介騙來泰國打工陪白, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留颈走,地道東北人。 一個月前我還...
    沈念sama閱讀 45,547評論 2 354
  • 正文 我出身青樓咱士,卻偏偏與公主長得像立由,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子序厉,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,834評論 2 345

推薦閱讀更多精彩內(nèi)容

  • 概述 之前一直對加密相關(guān)的算法知之甚少锐膜,只知道類似DES、RSA等加密算法能對數(shù)據(jù)傳輸進行加密弛房,且各種加密算法各有...
    Henryzhu閱讀 3,008評論 0 14
  • 1. ASCII 編碼 ASCII(American Standard Code for Information ...
    s酸菜閱讀 8,656評論 0 8
  • 介紹 加密和解密都使用同一把秘鑰道盏,這種加密方法稱為對稱加密,也稱為單密鑰加密。簡單理解為:加密解密都是同一把鑰匙 ...
    Blizzard_liu閱讀 800評論 0 1
  • “爆竹聲中一歲除荷逞,春風(fēng)送暖入屠蘇媒咳。千門萬戶曈曈日,總把新桃換舊符”种远,這首十分經(jīng)典的詩《元日》涩澡,一直是我所認為...
    宋昊妖怪閱讀 239評論 0 0
  • 今年,六小齡童不上春晚院促,噢不是筏养,是上不了春晚,結(jié)果春晚導(dǎo)演招來網(wǎng)友的一片罵聲常拓。在這里我不想多說什么渐溶,只是看到娛樂圈...
    阿枚閱讀 300評論 3 11