JS逆向基礎( AES 解密密文WordArray和Uint8Array實戰②)

1. Uint8Array 就像「快遞柜」

  • 每個格子固定放「1 瓶飲料」(1 字節 = 8 位,范圍 0-255 就像飲料編號)
  • 比如裝了 3 瓶:可樂(編號 255)、雪碧(10)、礦泉水(0)
  • 這是超市通用的標準貨架,任何工具(JS 內置功能)都認識這種擺放方式
  • 用途:運輸、存儲所有二進制東西(圖片、文件、網絡數據等)

2. WordArray 就像「加密專用禮盒」

  • 是某個品牌(比如 CryptoJS)自己設計的盒子,每個盒子固定裝「4 瓶飲料」(4 字節 = 32 位)
  • 比如要加密 "hello",先把它拆成飲料,再裝進這種 4 瓶裝的禮盒
  • 只有這個品牌的工具(CryptoJS 的加密 / 解密函數)才方便處理這種禮盒
  • 要想讓別人(其他 JS 功能)看懂,得先把禮盒拆開,把飲料倒回普通冰柜(轉成 Uint8Array 或字符串)

  • 1 字節:能表示的范圍很小,比如可以存一個英文字母(如 'a')、一個數字(如 '5'),或者一個簡單的符號(如 '!')。
    舉例:字母 “a” 在計算機中就用 1 字節存儲(二進制是01100001)。

  • 4 字節:是 1 字節的 4 倍(32 個二進制位),能表示更大的范圍。
    比如可以存一個中文漢字(大部分中文用 2 字節,但有些編碼下可能用 4 字節)、一個較大的整數(比如 123456),或者一段簡短的指令。
    舉例:整數 “100000” 在計算機中可能用 4 字節存儲。

因為 1 字節 = 8 個二進制位,最大能表示的數就是 2? - 1 = 255(二進制是 11111111),最小是 0(二進制 00000000)。

把一串被壓縮過的二進制數據(Uint8Array)還原成原來的字符串

舉個生活例子:
就像把一件羽絨服壓縮成小方塊(節省空間),現在需要解開壓縮,讓它變回原來蓬松的樣子。這里的 “小方塊” 就是 Uint8Array(壓縮后的二進制數據),“蓬松的羽絨服” 就是最終的字符串。

關鍵步驟:

  1. 壓縮:原始字符串 → 變成二進制數據(Uint8Array),體積變小(比如 “abcdef” 壓縮后可能只有幾個字節)。
  2. 解壓縮:壓縮后的 Uint8Array → 還原成原來的二進制數據(還是 Uint8Array,但體積變大)。
  3. 轉字符串:用 TextDecoder 把二進制數據翻譯成人類能看懂的文字。

為什么要這么做?
因為字符串直接傳輸 / 存儲體積大,壓縮后能節省空間和流量,就像郵件附件會先壓縮再發送一樣。

AES 算法就像一臺「特殊的榨汁機」,它的進料口和出料口只認「特定規格的水果盒」(WordArray),而不認散裝水果(字符串)或其他盒子(如 Uint8Array)。不是不能用其他格式,而是加密庫為了方便用戶,自動幫你做了格式轉換,讓你不用關心底層細節。

不是 AES 算法只能輸出 WordArray,而是 加密庫為了適配 AES 的底層計算邏輯,選擇用 WordArray 作為中間格式,讓整個加密流程更順暢。就像你用洗衣機時,衣服要放進「洗衣機專用洗衣袋」(WordArray),而不是直接扔進去 —— 不是洗衣機不能洗散裝衣服,而是專用袋子能讓洗滌更高效、更安全。

整個流程是:

  1. 使用 AES 解密密文,得到 WordArray 對象。

  2. 將 WordArray 轉換為 Uint8Array。

  3. 解壓縮 Uint8Array 數據,得到字符串。

  4. 將字符串解析為 JSON 對象。

  5. 如果過程中發生錯誤,捕獲并處理異常。

開始實戰

抖音商品銷量排行榜_抖音高傭爆款商品銷量排行榜 - 蟬媽媽數據

然后查看響應

然后搜素is_encrypt

然后鼠標移動到ZP  點擊

[[FunctionLocation]]:app.eefc8413.js:1 進行一個跳轉

跳轉到這里

然后向下翻到這里

看到了這個

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/92668.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/92668.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/92668.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

論文閱讀:《針對多目標優化和應用的 NSGA-II 綜述》一些關于優化算法的簡介

前言 提醒: 文章內容為方便作者自己后日復習與查閱而進行的書寫與發布,其中引用內容都會使用鏈接表明出處(如有侵權問題,請及時聯系)。 其中內容多為一次書寫,缺少檢查與訂正,如有問題或其他拓展…

Elasticsearch(ES)安裝

docker下安裝ES 拉取鏡像docker pull elasticsearch:7.4.0 創建文件夾 權限賦值 chmod -R 777 /usr/local/docker/es 創建配置 #可訪問IP http.host: 0.0.0.0 # 跨域 http.cors.enabled: true http.cors.allow-origin: "*" 編寫腳本并賦權 首先先返回上一級目錄&…

Pycharm、Python安裝及配置小白教程

本篇博客主要介紹了如何使用工具軟件快速安裝Pycharm和Python并完成基礎配置。 目錄 一、Python與Pycharm是什么? 二、安裝工具軟件 三、安裝Python 四、安裝Pycharm 五、配置Pycharm 1. 基礎設置 2. 配置解釋器 一、Python與Pycharm是什么? …

Redis數據庫入門教程

Redis(Remote Dictionary Server)是一個開源的、基于內存的高性能鍵值存儲系統,它可以用作數據庫、緩存和消息中間件。本教程將帶你從零開始全面學習Redis,涵蓋基礎概念、安裝配置、數據結構、持久化機制以及與Python的交互等內容…

工業儀表識別(一)環境安裝

儀表識別環境安裝 1.cuda cuda 11.8 intall(cuda11.8、cuda12.6按照需求安裝) ref: https://developer.nvidia.com/cuda-11-8-0-download-archive?target_osLinux&target_archx86_64&DistributionUbuntu&target_vers…

閑庭信步使用圖像驗證平臺加速FPGA的開發:第三十四課——車牌識別的FPGA實現(6)疊加車牌識別的信息

(本系列只需要modelsim即可完成數字圖像的處理,每個工程都搭建了全自動化的仿真環境,只需要雙擊top_tb.bat文件就可以完成整個的仿真,大大降低了初學者的門檻!!!!如需要該系列的工程…

Windows上用于跨平臺開發的環境工具

1. MSYS2(Minimal SYStem 2) 一款模擬Unix環境的軟件,可以執行unix命令。通過pacman管理工具,類似Ubuntu上apt-get,RedHat中的yum。 MSYS2最大好處就是能夠在Windows上輕松編譯一些由Unix環境工具鏈開發的工程&#…

【硬件-筆試面試題】硬件/電子工程師,筆試面試題-15,(知識點:DC-DC電源,BUCK電路,鐵損,銅損)

目錄 1、題目 2、解答 選項 A 選項 B 選項 C 選項 D 3、相關知識點 一、紋波 二、感量(電感量L) 三、開關頻率f 四、鐵損 五、銅損 題目匯總版: 【硬件-筆試面試題】硬件/電子工程師,筆試面試題匯總版,持…

Ethereum: 從 1e+21 到千枚以太幣:解密 Geth 控制臺的余額查詢

大家好今天,我們來聊一個新手在接觸以太坊節點時經常會遇到的場景。想象一下,我們成功運行了一個私有以太坊節點,并嘗試查詢一個賬戶的余額,然后我們看到了這樣一個返回結果:1e21。 這是什么意思?是出錯了&…

2025最新軟件測試面試八股文(含答案+文檔)

🍅 點擊文末小卡片,免費獲取軟件測試全套資料,資料在手,漲薪更快 1、什么是POM,為什么要使用它?POM是Page Object Model的簡稱,它是一種設計思想,而不是框架。大概的意思是&#xff…

表格數據處理-TabNet模型使用說明(模型構建+SHAP)

一、模型介紹 論文為《TabNet: Attentive Interpretable Tabular Learning》發表于2021年,屬于Google Cloud AI。該研究針對表格數據提出了一種新的深度神經網絡(DNN)架構TabNet,旨在解決傳統深度學習在表格數據上表現不如決策樹模…

數據集成難在哪?制造企業該怎么做?

目錄 一、為什么你的數據集成總失敗? 1.數據沒有統一標準 2.數據 “斷點多”,打通成本高 3.數據 “用不起來”,價值難落地 二、數據集成的正確做法是什么? 第一步:明確 “集成為了誰”— 用業務目標倒推數據需求…

Datawhale AI數據分析 作業2

學生考試表現影響因素數據集第一步:數據概覽與清洗Prompt 1:加載StudentPerformanceFactors.csv文件,并顯示前5行數據以及各列的數據類型和非空值數量,檢查是否存在缺失值。處理缺失值是數據預處理的重要一步。對于您提到的缺失值&#xff1a…

Flowable 與 Spring Boot 深度集成:從環境搭建到平臺構建

在前三篇文章中,我們依次認識了 Flowable 的基礎概念、用 Modeler 設計流程,以及通過 API 控制流程運行。但在實際項目中,我們更需要將 Flowable 與 Spring Boot 深度融合,構建完整的工作流平臺。本文將從環境配置、設計器集成、權…

Jenkins最新版本的安裝以及集成Allure生成測試報告

目錄 Jenkins的安裝 將上面的目錄添加到系統環境變量中 為Jenkins配置密碼 創建一個用戶,用于登錄jenkins 為Jenkins安裝Allure插件 幾個大坑 使用jenkins集成python測試項目 Jenkins的安裝 Jenkins官方網址 Jenkins 點擊download 點擊 past Release選擇你想要下載…

Vue3 面試題及詳細答案120道 (1-15 )

《前后端面試題》專欄集合了前后端各個知識模塊的面試題,包括html,javascript,css,vue,react,java,Openlayers,leaflet,cesium,mapboxGL,threejs&…

基于 GitLab 實踐敏捷開發

在軟件開發中,**基于 GitLab 實踐敏捷開發**,并建立一套**規范的日常管理流程**,不僅可以提升團隊協作效率,還能確保平臺持續向好迭代、性能穩步提升。以下是一個完整的實踐方案,適用于中小型團隊或中大型項目&#xf…

黑馬點評使用Apifox導入接口測試合集(持續更新、詳細圖解)

目錄 一、前言 二、更新店鋪 三、添加秒殺券 四、秒殺下單和秒殺下單user2 一、前言 本博客將持續更新記錄黑馬點評所有接口測試的導入(學到哪更新到哪),以此博客為完整導入接口測試的合集。第一次在黑馬點評項目使用Apifox進行接口測試直接先看我前面的博客&a…

MYOJ_10583:CSP初賽題單7:計算機常識綜合練習

更多初賽題單請參見題目整理CSP初賽題目整理題單,謝謝。 注:閱讀此題單時建議先看1~5,再試著自己做。 題目描述 1. [J-2010-6][S-2010-6]提出“存儲程序”的計算機工作原理的是( )。 A. 克勞德香農 B. 戈登摩爾 C.…

代碼隨想錄day22回溯算法1

文章目錄77. 組合216.組合總和III17. 電話號碼的字母組合77. 組合 題目鏈接 文章講解 class Solution { public:vector<vector<int>> res; // 存儲所有的組合vector<int> path; // 當前正在構建的組合// 回溯算法void solve(int n, int k, int st…