python反編譯 簡單入門python位元組碼混淆

2021-10-12 16:52:03 字數 799 閱讀 5596

前言

本文是基於python2.7

python檔案如果要發布的話,有時候還是難免想保護一下自己的原始碼,有些人就直接編譯成了pyc檔案,因為這樣既可以保留跨平台的特性,又可以不能直接看到**,也看到網上很多人說為了保護自己的**可以編譯成pyc檔案。

用pyc檔案可以保護python**的想法其實是不正確的,pyc檔案是可以被很容易反編譯的,比如說比較著名的uncompyle6庫(用來反編譯檔案最爽不過了,幾乎支援python全版本的pyc檔案的反編譯。

pyc檔案結構

py檔案編譯成pyc檔案可以使用 python -m ***.py

常規pyc檔案的結構如下:

magic 03f30d0a日期 aa813e59 (mon jun 12 19:57:30 2017)code **物件
首先pyc前四個位元組是魔術字,魔術字是用來標記python版本的標識。如03f30d0a是python2.7的標識。

在python2.7中,獲取魔術字的方式:

import impmagic = imp.get_magic()print(magic)
魔術字之後四個位元組是時間戳,時間戳解開的方式如下:

import timeimport structcontent = open("a.pyc

Android反編譯入門

ps 主要參考這個部落格的思路,感謝博主 apktool反編譯apk apktool d 重打包apk apktool b dextojar jd guid 1.寫乙個原來沒有廣告的apk apk 1 2.單獨寫乙個只有前面廣告的apk,apk 2 可以在廣告頁面停留一會然後跳轉到apk 1的啟動頁...

Python反編譯 pyc檔案反編譯

最近一直在研究python反編譯的問題,以前的decompyle只支援到2.2就不再公升級了,而且國內的depython 也不知道怎麼回事,上面說是支援2.4 2.5,但是每次我提交後,返回的內容都是空的。在網上找了乙個專案,自己改了很長時間,總算有點起色了,大部分的2.5特性都是支援的,只是2.5...

Android apk簡單檔案反編譯

首先準備好三個工具 首先將.apk檔案字尾名改為.zip或.rar解壓 apktool.bat d 檔名.apk一定要保證apktool.bat和apktoo.jar同時在本目錄下,之後就會產生檔名同名資料夾,xml檔案以及androidmanifest檔案可讀 拿出之前解壓出的.dex檔案放入de...