亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

JavaScript保護(hù)密鑰的方法詳解

 更新時(shí)間:2024年10月30日 08:45:31   作者:w2sfot  
在前端js編程中,如果涉及到加密通信、加密算法,經(jīng)常會(huì)用到密鑰,但密鑰,很容易暴露,?暴露原因:js代碼透明,在瀏覽器中可以查看源碼,從中找到密鑰,所以本文給大家介紹了前端js中如何保護(hù)密鑰,需要的朋友可以參考下

在前端js編程中,如果涉及到加密通信、加密算法,經(jīng)常會(huì)用到密鑰

但密鑰,很容易暴露。 暴露原因:js代碼透明,在瀏覽器中可以查看源碼,從中找到密鑰。

例如,下面的代碼中,變量key是密鑰:

如何保護(hù)源碼中的密鑰呢?

很多時(shí)候,人們認(rèn)為需要對(duì)密鑰字符串進(jìn)行加密。其實(shí)更重要的是對(duì)存儲(chǔ)密鑰的變量進(jìn)行加密。

加密了密鑰變量,使變量難以找到,才更能保護(hù)密鑰本身。

順著這個(gè)思路,下面給出一個(gè)不錯(cuò)的密鑰的保護(hù)方法:

還是以上面的代碼為例,

首先,用到j(luò)sfuck:

https://www.jshaman.com/tools/jsfuck.html

將代碼中的密鑰定義整體,用jsfuck加密:

var key = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";

加密后得到一串奇怪的字符,這是將變量“key ”以及密鑰字符“0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ”隱藏了起來(lái)。

注意:加密時(shí)需要選中“在父作用域中運(yùn)行”,選中之后,key 變量的定義雖然不存在,但變量key是可用的!(這點(diǎn)很神奇)。也就是雖然代碼中沒(méi)有定義這個(gè)變量,但這個(gè)變量存在,且可用。而且它存儲(chǔ)的就是密鑰!

用加密后的代碼替換掉原來(lái)的代碼,變成如下形式:

運(yùn)行效果:

即時(shí)他人拿走代碼去調(diào)試,也會(huì)顯示變量key未定義,如下圖所示:

但,這時(shí)候還不足夠安全,還能更安全。

將整體JS代碼,再用JS加密工具:JShaman,進(jìn)行混淆加密:

https://www.jshaman.com

然后得到更安全、更難調(diào)試分析的JS代碼,這時(shí)密鑰就變的更安全了:

注:用ajax等異步傳遞密鑰時(shí),也可以使用這個(gè)辦法,也能很好的隱藏密鑰。

用jsfuck+jshaman保護(hù)JS中的密鑰,你學(xué)會(huì)了嗎?

到此這篇關(guān)于JavaScript保護(hù)密鑰的方法詳解的文章就介紹到這了,更多相關(guān)JavaScript保護(hù)密鑰內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論