国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

看我如何用云函數(shù)擼一個(gè)PC小程序代碼包在線解密工具

這篇具有很好參考價(jià)值的文章主要介紹了看我如何用云函數(shù)擼一個(gè)PC小程序代碼包在線解密工具。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

前一段時(shí)間突發(fā)奇想,想白嫖騰訊云云函數(shù)的能力來實(shí)現(xiàn)無服務(wù)模式下 PC 端小程序包的在線解密(注意這里僅僅是做解密)。

因?yàn)闃I(yè)余時(shí)間以搗鼓有意思的東西作為娛樂活動(dòng),對(duì)于小程序技術(shù)這塊本身理解也是比較深刻了,所以碰到相關(guān)需求都會(huì)首先去想:這 gie 能不能用云函數(shù)實(shí)現(xiàn)?

于是碰上這種有意思的功能自然想嘗試用云函數(shù)去搞一下了,順便積累下云開發(fā)經(jīng)驗(yàn),看看無服務(wù)器云函數(shù)到底可以做到什么程度。

開發(fā)前準(zhǔn)備

開發(fā)之前我們是肯定有一套理論指導(dǎo)的,而且這個(gè)算法也是開源的。

主要內(nèi)容如下:

  • 文件特征:文件起始為 V1MMWX
  • 文件加密方法:
    • 首先 pbkdf2 生成 AES 的 key。利用微信小程序 id 字符串為 pass,salt 為 saltiest 迭代次數(shù)為 1000。調(diào)用 pbkdf2 生成一個(gè) 32 位的 key
    • 取原始的 wxapkg 的包得前 1023 個(gè)字節(jié)通過 AES 通過 1 生成的 key 和 iv(the iv: 16 bytes),進(jìn)行加密
    • 利用微信小程序 id 字符串的倒數(shù)第 2 個(gè)字符為 xor key,依次異或 1023 字節(jié)后的所有數(shù)據(jù),如果微信小程序 id 小于 2 位,則 xorkey 為 0x66
    • 把 AES 加密后的數(shù)據(jù)(1024 字節(jié))和 xor 后的數(shù)據(jù)一起寫入文件,并在文件頭部添加 V1MMWX 標(biāo)識(shí)

有這個(gè)理論知識(shí)只要專注實(shí)現(xiàn)就可以了,而且已經(jīng)有大佬實(shí)現(xiàn)了相應(yīng)算法,我們只要拿來測(cè)試改一改就可以了。

本地調(diào)試

這里調(diào)試分別使用了 go 語言版本與 nodejs 版本,go 版本是沒有問題的,node 版需要稍微改動(dòng)一下。

調(diào)試環(huán)境

  • MacOS Catalina 10.15.7
  • Nodejs 14.17.0
  • go 1.17.2 darwin/amd64

本地驗(yàn)證運(yùn)行 go 及 nodejs 版本都沒有問題,然后就是如何遷移到云函數(shù)環(huán)境了。

云端開發(fā)

這里并沒有糾結(jié)于具體使用什么版本的 node,所以一開始就默認(rèn)用了 10.15,在騰訊云的云開發(fā)控制臺(tái)創(chuàng)建應(yīng)用時(shí)如果選擇 koa 應(yīng)用就默認(rèn)是這個(gè)版本。

然后就是一頓操作了:

  1. 注冊(cè)處理路由;
  2. 增加文件上傳功能(小文件可以用云函數(shù)直接接收,大的就不行了會(huì)報(bào)請(qǐng)求體大小超限錯(cuò)誤),上傳文件至云存儲(chǔ);

看我如何用云函數(shù)擼一個(gè)PC小程序代碼包在線解密工具

  1. 觸發(fā)解密操作后從云存儲(chǔ)下載文件;
  2. 調(diào)用 node 腳本去執(zhí)行解密操作;
  3. 將解密后文件上傳至云存儲(chǔ)后提供下載鏈接。

文件上傳這塊有個(gè)小插曲,因?yàn)椴恢С执笪募眰?,所以專門問了云函數(shù)產(chǎn)品頁(yè)面上的客服,說云函數(shù)的使用遇到了問題,結(jié)果告訴我說這塊不歸他們管,需要找云開發(fā)團(tuán)隊(duì),然后我就懵了,云函數(shù)不是云開發(fā)下面的產(chǎn)品嗎??咋還不歸他們管??這是什么合作關(guān)系??不過最后為了解決問題我就加了客服微信,然后客服把云開發(fā)的技術(shù)大佬們拉了一個(gè)外部群,群內(nèi)有十幾個(gè)人之多,這陣勢(shì)可讓我是受寵若驚啊。不過最后還是解決了,技術(shù)大佬給了個(gè)方案,扔了幾個(gè)文檔鏈接讓我自己搗鼓,就是看個(gè)文檔手?jǐn)]代碼嘛,沒啥難的,我就"好的"然后自己搗鼓去了。

看我如何用云函數(shù)擼一個(gè)PC小程序代碼包在線解密工具

具體方案就是:

  1. 前端上傳文件
  2. 服務(wù)端獲取文件或者獲取文件鏈接

并且額度方面也是夠用的:
看我如何用云函數(shù)擼一個(gè)PC小程序代碼包在線解密工具

所以我就按著大佬給的提示繼續(xù)往下嘗試了,編寫初始版本。

完事之后我們要進(jìn)行調(diào)試。

云函數(shù)調(diào)試

這里要區(qū)分下大小文件的情況,大文件倒是 OK 的,可以正常獲取解密后的文件。

看我如何用云函數(shù)擼一個(gè)PC小程序代碼包在線解密工具

小文件(主要 5M 以內(nèi))的情況下測(cè)試了很多遍,無一例外都失敗了,而且錯(cuò)誤原因是(這個(gè)和是否使用云存儲(chǔ)無關(guān)):

{
  "library": "digital envelope routines",
  "function": "EVP_DecryptFinal_ex",
  "reason": "bad decrypt",
  "code": "ERR_OSSL_EVP_BAD_DECRYPT"
}

個(gè)人感覺是云端 nodejs 運(yùn)行時(shí)帶來的版本兼容問題,因?yàn)?10.15 是有些低了,所以將函數(shù)下載到了本地并把運(yùn)行時(shí)改為了相對(duì)較新的 12.16 看看有沒有救。

修改 cloudbaserc.json 里面的 runtime 運(yùn)行時(shí)配置:

{
  "envId": "xxx",
  "functionRoot": "functions",
  "functions": [
    {
      "name": "koa-decrypt",
      "timeout": 50,
      "runtime": "Nodejs12.16",
      "installDependency": true,
      "handler": "tcbindex.main"
    }
  ]
}

然后使用命令行覆蓋上傳云函數(shù)即可更改云端運(yùn)行時(shí)。

不過遺憾的是并沒有作用,錯(cuò)誤依舊。

總結(jié)

使用最新的無服務(wù)模式實(shí)現(xiàn) PC 端代碼包解密功能上云,聽起來有意思但是實(shí)際上做的時(shí)候并沒有那么美麗,一番體驗(yàn)下來感覺就是坑好多啊。不過還好大文件的解密是執(zhí)行成功的,算是成功了一半,要啥 ??。

體驗(yàn)地址

工具地址:PC 代碼包在線解密

AppId:wxd968ed6b8bb866da

測(cè)試包:.wxapkg文章來源地址http://www.zghlxwxcb.cn/news/detail-437113.html

參考資料

  • 前端上傳文件
  • 服務(wù)端獲取文件
  • 獲取文件鏈接

到了這里,關(guān)于看我如何用云函數(shù)擼一個(gè)PC小程序代碼包在線解密工具的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 如何用 python 設(shè)計(jì)一個(gè)兌獎(jiǎng)程序?

    如何用 python 設(shè)計(jì)一個(gè)兌獎(jiǎng)程序?

    ?? 個(gè)人網(wǎng)站:【海擁】【摸魚游戲】【神級(jí)源碼資源網(wǎng)】 ?? 前端學(xué)習(xí)課程:??【28個(gè)案例趣學(xué)前端】【400個(gè)JS面試題】 ?? 想尋找共同學(xué)習(xí)交流、摸魚劃水的小伙伴,請(qǐng)點(diǎn)擊【摸魚學(xué)習(xí)交流群】 設(shè)計(jì)一個(gè)兌獎(jiǎng)程序通常需要考慮很多方面,包括獎(jiǎng)品種類、兌獎(jiǎng)規(guī)則、輸入輸出

    2024年02月02日
    瀏覽(29)
  • 如何用python搭建一個(gè)小程序

    要用 Python 搭建小程序,首先需要了解小程序的基本框架和構(gòu)建方式。 一種常用的方法是使用微信小程序框架,如微信小程序框架(mpvue)。這種框架可以使用 Vue.js 的語法來構(gòu)建小程序,并使用 Python 編寫后端邏輯。 步驟如下: 安裝 Node.js 和 Vue CLI。 使用 Vue CLI 創(chuàng)建一個(gè)新項(xiàng)目

    2024年02月12日
    瀏覽(22)
  • python簡(jiǎn)單的病毒編程代碼,如何用python寫一個(gè)病毒

    python簡(jiǎn)單的病毒編程代碼,如何用python寫一個(gè)病毒

    大家好,本文將圍繞python簡(jiǎn)單的病毒編程代碼展開說明,如何用python做惡搞病毒是一個(gè)很多人都想弄明白的事情,想搞清楚如何用python寫一個(gè)病毒需要先了解以下幾個(gè)事情。 國(guó)家計(jì)算機(jī)病毒應(yīng)急處理中心通過對(duì)互聯(lián)網(wǎng)的監(jiān)測(cè)發(fā)現(xiàn),一種利用python語言編寫的惡意木馬程序出現(xiàn)。

    2024年02月09日
    瀏覽(20)
  • 如何用unity做一個(gè)合成圖片的程序

    如何用unity做一個(gè)合成圖片的程序

    最近一直在做抗原檢測(cè),然后幾個(gè)室友的圖片需要合成一張然后傳到大群里,每次都用ps來處理感覺一直在做重復(fù)動(dòng)作,有點(diǎn)麻煩,于是就想能不能用我所學(xué)的知識(shí)來優(yōu)化這個(gè)過程,減少重復(fù)勞動(dòng)呢。 答案是肯定的,好歹也干了這么多年的客戶端,這么點(diǎn)需求都不能實(shí)現(xiàn),那

    2023年04月16日
    瀏覽(21)
  • 如何用python做一個(gè)小程序,怎么用python做一個(gè)app

    如何用python做一個(gè)小程序,怎么用python做一個(gè)app

    這篇文章主要介紹了如何用python做一個(gè)小程序,具有一定借鑒價(jià)值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲,下面讓小編帶著大家一起了解一下。 大家好,本文將圍繞如何用python寫小工具展開說明,python開發(fā)小工具項(xiàng)目是一個(gè)很多人都想弄明白的事情,

    2024年01月17日
    瀏覽(20)
  • 如何用Python做一個(gè)聊天程序(1)(沒廢話,超實(shí)用!)

    如何用Python做一個(gè)聊天程序(1)(沒廢話,超實(shí)用!)

    以前我用過編程貓的Coco編輯器做過一個(gè)聊天App,但感覺不是很爽,處處都要受到限制。于是我按照我在編程貓上的思路,用Python制作了一個(gè)聊天程序。 下載一個(gè)MySQL數(shù)據(jù)庫(kù),并做好處理。這個(gè)數(shù)據(jù)庫(kù)相當(dāng)于整個(gè)程序的服務(wù)端。 客戶端使用tkinter的GUI制作,主要功能包括:收信

    2024年02月05日
    瀏覽(24)
  • 用python編寫一個(gè)小程序,如何用python編寫軟件

    用python編寫一個(gè)小程序,如何用python編寫軟件

    大家好,給大家分享一下用python編寫一個(gè)小程序,很多人還不知道這一點(diǎn)。下面詳細(xì)解釋一下?,F(xiàn)在讓我們來看看! 我想有人曲解意思了,人家說用python開發(fā)渣蔽一個(gè)手機(jī)app,不是說用手機(jī)敲寫python代碼,當(dāng)然可以啊,只不過在電腦上開發(fā)的應(yīng)用軟件要進(jìn)行打包什么的,才能

    2024年02月07日
    瀏覽(26)
  • Vue + JS + tauri 開發(fā)一個(gè)簡(jiǎn)單的PC端桌面應(yīng)用程序

    Vue + JS + tauri 開發(fā)一個(gè)簡(jiǎn)單的PC端桌面應(yīng)用程序

    Tauri 1 是一款應(yīng)用構(gòu)建工具包,讓您能夠?yàn)槭褂?Web 技術(shù)的所有主流桌面操作系統(tǒng)構(gòu)建軟件。tauri 框架與 electron 非常相似。 tauri electron 體積 10MB 100MB 打包速度 2s 17s Tauri 由一個(gè)可搭配任何前端來構(gòu)建桌面應(yīng)用的框架和 Rust 核心構(gòu)成。 創(chuàng)建窗口并向其提供原生功能支持的 Rust 二

    2024年01月17日
    瀏覽(25)
  • 如何用Hbuilder創(chuàng)建一個(gè)微信小程序的前端界面

    如何用Hbuilder創(chuàng)建一個(gè)微信小程序的前端界面

    目錄 1.下載Hbuuilder軟件https://www.dcloud.io/hbuilderx.html 2.打開軟件 3.選擇默認(rèn)模板 4.創(chuàng)建項(xiàng)目成功 5.獲取APPid 6.立即注冊(cè)小程序 7.注冊(cè)完成之后,登錄小程序 8.復(fù)制Appid到微信小程序發(fā)行 9.在目錄manifest.json配置中,配置Uni-app的(AppID) 10.點(diǎn)擊發(fā)行 11.下載微信開發(fā)者工具 12.假如遇到報(bào)

    2024年04月17日
    瀏覽(180)
  • 用python編寫一個(gè)小程序,如何用python做小軟件

    用python編寫一個(gè)小程序,如何用python做小軟件

    本篇文章給大家談?wù)動(dòng)胮ython編寫一個(gè)小程序,以及如何用python做小軟件,希望對(duì)各位有所幫助,不要忘了收藏本站喔。 大家好,本文將圍繞如何用python寫小工具展開說明,python開發(fā)小工具項(xiàng)目是一個(gè)很多人都想弄明白的事情,想搞清楚python 做的小工具需要先了解以下幾個(gè)事

    2024年02月02日
    瀏覽(15)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包