0基础跟我学python 七、加密python代码

2024-10-13 15:29:47

在正式踏入python的理论知识前,我想插入这样一篇,加密源代码的经验。为什么要加密源代码?python是个解释型语言,当你把源文件(也是脚本程序)直接拷贝给别人的时候,源代码是开放的。例如你把一个cgi.py拷贝给别人,那么别人只要cat或者vim打开就能完全看到源代码,对你的程序了如指掌。这时我们就要考虑到加密的问题了。

0基础跟我学python 七、加密python代码

2、我们试试这个加密后的文件是否可以运行?

0基础跟我学python 七、加密python代码

4、我们咸犴孜稍先来看看第一种方式。我们先用它来生成pyc文件。通过导入py_compile内置模块来生成加密的python程序。在这里我们需要建立两个py程又挨喁钒序,一个作为加密程序,另外一个作为被加密程序。(其实说把它编译成字节码会更适合,╮( ̄▽ ̄")╭)我们先来建立第一个程序。就叫p_compile.py吧(注意一点,我们的文件名不要和模块名相同,切记)。touch p_compile.py

0基础跟我学python 七、加密python代码

6、vim打开p_compile.py。代码如下:#!/usr/bin/pythonimport py_compile#导入内置的py_compile模块py_compile.compile("mypy.py")

0基础跟我学python 七、加密python代码

8、改完运行权限后,我们直接来看看结果。先ls -l看看当前目录有什么文件。

0基础跟我学python 七、加密python代码

10、我们用vim和cat分别看看这个编译后的字节码文件。

0基础跟我学python 七、加密python代码

11、运行这个字节码文件。python mypy.pyc这里注意一点,我们是不能直接./mypy.pyc的方式运行的,因为这是字节码文件,它没有解释器路径(因为这是个挂平台的字节码),如果这台造婷用痃linux,我们的python是在/usr/bin/python没错,可能在bsd上就不是这个路径,所以,pyc是没办法./直接运行的,要通过解释器调用运行。

0基础跟我学python 七、加密python代码

13、我们直接python mypy.pyc试试看?

0基础跟我学python 七、加密python代码

2、再看看结果?注意的是,pyo也和pyc一样,只能打开python解释器直接解释运行,不能通过./*.py的方式。

0基础跟我学python 七、加密python代码
猜你喜欢