當前位置: 北京赛车pk10皇家开奖 » 資訊 » 創業故事 » 什么是代碼混淆

北京赛车pk10蜂巢计划:什么是代碼混淆

放大字體  縮小字體 發布日期:2017-04-28  來源:北京赛车pk10皇家开奖  瀏覽次數:69

北京赛车pk10皇家开奖 www.acdie.icu 這還要從很久以前的一個故事說起,某電商在做手機預訂時,為了顯得這款手機很火爆,在顯示預定數的頁面上,將預定數顯示為實際預定數的3倍。雖然這是一個簡單吸引眼球的方式,但是他們操作起來也太草率了,直接在前端頁面里面將數字乘以3,然后就自然地被網友們扒了底褲。

要知道,很多的場景下,我們不得不將程序的源代碼暴露到外界,比如說網頁應用,用戶在瀏覽這個網頁時,使用右鍵查看網頁或者打開開發者工具,都可以輕松地看到HTML和前端JS的源代碼;又比如說一個Android程序,在下載到安裝包的APK文件后,使用一些反編譯工具,也可以將這個應用的Java源代碼反編譯出來查看。

既然源代碼都暴露了,那么寫在代碼里的一些有點小心思的邏輯自然也隱藏不了咯。如果代碼不可避免地要暴露出去,同時又想隱藏一些邏輯,或者說想讓別人不是那么容易的被看出來,那么『代碼混淆』你值得擁有。

『代碼混淆』其實并不是什么高科技,它的作用就是將一句條理清晰的話翻譯得晦澀難懂,但是功能卻保持不變。一般采用的方法,就是將代碼中各種有意義的變量名、函數名都用簡單的幾個字母組合來表示,還有就是將一些等價的代碼邏輯轉換一下,比如將for循環改成while循環,將while循環改成for循環等。比如說,我有個函數是從銀行取錢1萬塊錢,這樣寫的Bank.giveMeMoney(10000),經過混淆后就變成a.b(10000),單純地看a.b(10000)鬼才知道是什么意思。

我們再來看個實際的栗子,這次混淆基本上將代碼中有意思的詞都替換了:

最后要說一句,『代碼混淆』并不是加密代碼,它只是讓代碼看起來比較難懂,但是機器執行起來的邏輯是一樣一樣的,增加的是人為分析的難度和時間成本。

文章來源:給產品經理講技術(微信公眾號:pm_teacher),為互聯網產品經理普及技術基礎知識,作者:果果。本文由作者授權創業邦發布,轉載請聯系原作者,違者必究。

分享與收藏: 關閉窗口 打印本文 本文關鍵字:

為您推薦的更多相關文章

 
推薦圖文
推薦資訊
熱點文章
 
2018最新二八杠游戏 全天北京pk计划数据 北京pk10技巧压6法 猜大小怎么玩 前三组选包胆什么意思 百人牛牛如何赢#### 重庆时时开奖直播视频 pk10技巧12358定位技巧 福彩3d猜大小中奖概率 哪个手机炸金花能赢钱 pk10走势图看法教程 世界篮球国家排名 足球14场胜负彩开奖结果 360老时时彩走势图 大乐透玩法中奖规则图 彩仙阁手机计划