這篇文章主要介紹“怎么為Python程序加密”的相關(guān)知識,小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強(qiáng),希望這篇“怎么為Python程序加密”文章能幫助大家解決問題。
成都創(chuàng)新互聯(lián)是一家專注于網(wǎng)站制作、成都做網(wǎng)站與策劃設(shè)計,嫩江網(wǎng)站建設(shè)哪家好?成都創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)10多年,網(wǎng)設(shè)計領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:嫩江等地區(qū)。嫩江做網(wǎng)站價格咨詢:13518219792
首先,我們需要在Ubuntu系統(tǒng)中安裝一些準(zhǔn)備工具,包括python3-dev,gcc,Cython,其中Cython為Python的第三方模塊。安裝的命令如下:
$ sudo apt install python3-dev gcc
$ pip3 install cython
接著,我們新建pythontest文件夾,用于測試我們的代碼,文件夾的內(nèi)容如下:
其中,mytest.py為我們需要加密的Python程序,setup.py為加密的腳本。mytest.py的代碼如下:
import datetime
class Today():
def get_time(self):
print(datetime.datetime.now())
def say(self):
print("hello from JC!")
加密腳本setup.py的代碼如下:
from distutils.core import setup
from Cython.Build import cythonize
setup(ext_modules = cythonize(["mytest.py"]))
測試代碼so_test.py的代碼如下:
from mytest import Today
t = Today()
t.get_time()
t.say()
切換至pythontest文件夾,先運(yùn)行so_test.py腳本(為了顯示時間,便于跟后面的程序區(qū)分),再運(yùn)行setup.py對mytest.py程序加密,命令如下:
$ python3 so_test.py
$ python3 setup.py build_ext
輸出如下:
2019-01-18 21:15:21.126709
hello from JC!
運(yùn)行完加密命令行(python3 setup.py build_ext)后,文件夾中的文件如下:
在build文件夾中,有我們需要的so文件,如下:
生成的so文件一方面對我們的源程序進(jìn)行了加密,另一方面,我們還能繼續(xù)調(diào)用原來的mytest.py文件中的內(nèi)容。為了驗證此功能,我們先刪除mytest.py,再運(yùn)行so_test.py文件,如下:
可以發(fā)現(xiàn),我們刪除了mytest.py文件,即源代碼,但so_test.py文件可以正常調(diào)用源程序的內(nèi)容,這是因為,兩次運(yùn)行so_test.py的輸出時間不一樣。
關(guān)于“怎么為Python程序加密”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識,可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,小編每天都會為大家更新不同的知識點。
分享名稱:怎么為Python程序加密
路徑分享:http://aaarwkj.com/article24/gjigce.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站營銷、、網(wǎng)站設(shè)計公司、網(wǎng)站改版、服務(wù)器托管、定制網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)