Python编译成.so文件进行加密后调用的实现


Posted in Python onDecember 23, 2019

pyc的破解相对容易,使用cython将python文件编译成.so文件,能在一定程度上增强python源码的私密性。

编译成.so文件

环境准备:cython

测试脚本准备:test.py

#-*-coding: UTF-8 -* -
class test:
  def say(self):
    print 'hello'

脚本编译准备:

3.1 编写compile.py文件,内容如下:

#-*-coding: UTF-8 -* -
from distutils.core import setup
from Cython.Build import cythonize
setup(
  ext_modules = cythonize("test.py") #注意这里推荐使用相对路径,编译出的so文件在引用其他模块时可能会出现路径问题
)

3.2 编译出的so文件(test.so)在调用compile.py时所在目录的build/lib下

使用方式

编写useTest.py脚本:

#-*-coding: UTF-8 -* -
from test import test #注意test.so文件要在可访问到的路径下
test.say()

执行验证。

以上这篇Python编译成.so文件进行加密后调用的实现就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中的startswith和endswith函数使用实例
Aug 25 Python
Python 2.7.x 和 3.x 版本的重要区别小结
Nov 28 Python
详解Python的迭代器、生成器以及相关的itertools包
Apr 02 Python
利用Python学习RabbitMQ消息队列
Nov 30 Python
Python单体模式的几种常见实现方法详解
Jul 28 Python
对python中的for循环和range内置函数详解
Apr 17 Python
基于python-opencv3的图像显示和保存操作
Jun 27 Python
PyTorch中Tensor的拼接与拆分的实现
Aug 18 Python
Python Pandas对缺失值的处理方法
Sep 27 Python
Django使用rest_framework写出API
May 21 Python
Python基于locals返回作用域字典
Oct 17 Python
Python 调用C++封装的进一步探索交流
Mar 04 Python
Cython编译python为so 代码加密示例
Dec 23 #Python
Python编译为二进制so可执行文件实例
Dec 23 #Python
Python+opencv+pyaudio实现带声音屏幕录制
Dec 23 #Python
python 实现屏幕录制示例
Dec 23 #Python
关于ZeroMQ 三种模式python3实现方式
Dec 23 #Python
Python 内置函数globals()和locals()对比详解
Dec 23 #Python
Python 项目转化为so文件实例
Dec 23 #Python
You might like
php下利用curl判断远程文件是否存在的实现代码
2011/10/08 PHP
PHP编程函数安全篇
2013/01/08 PHP
php实现获取及设置用户访问页面语言类
2014/09/24 PHP
php 的多进程操作实践案例分析
2020/02/28 PHP
JavaScript 判断指定字符串是否为有效数字
2010/05/11 Javascript
Javascript中的window.event.keyCode使用介绍
2011/04/26 Javascript
利用jQuery实现可输入搜索文字的下拉框
2013/10/23 Javascript
理解Javascript闭包
2013/11/01 Javascript
如何从jQuery的ajax请求中删除X-Requested-With
2013/12/11 Javascript
Jquery创建层显示标题和内容且随鼠标移动而移动
2014/01/26 Javascript
JavaScript实现的in_array函数
2014/08/27 Javascript
JavaScript获取图片真实大小代码实例
2014/09/24 Javascript
js获取会话框prompt的返回值的方法
2015/01/10 Javascript
在AngularJS中使用AJAX的方法
2015/06/17 Javascript
JS实现带鼠标效果的头像及文章列表代码
2015/09/27 Javascript
jquery表格datatables实例解析 直接加载和延迟加载
2016/08/12 Javascript
javascript实现非常简单的小数取整功能示例
2017/06/13 Javascript
JavaScript异步加载问题总结
2018/02/17 Javascript
javascript实现视频弹幕效果(两个版本)
2019/11/28 Javascript
pandas 选择某几列的方法
2018/07/03 Python
Django2 连接MySQL及model测试实例分析
2019/12/10 Python
python实现井字棋小游戏
2020/03/04 Python
python爬虫学习笔记之Beautifulsoup模块用法详解
2020/04/09 Python
python中使用.py配置文件的方法详解
2020/11/23 Python
html5 postMessage前端跨域并前端监听的方法示例
2018/11/01 HTML / CSS
美国优质马术服装购买网站:Breeches.com
2019/12/16 全球购物
Marlies Dekkers内衣荷兰官方网店:荷兰奢侈内衣品牌
2020/03/27 全球购物
介绍一下Java中的static关键字
2012/05/12 面试题
应用化学专业本科生求职信
2013/09/29 职场文书
个人学习群众路线心得体会
2014/11/05 职场文书
优秀工作者事迹材料
2014/12/26 职场文书
加班费申请报告
2015/05/15 职场文书
python之django路由和视图案例教程
2021/07/26 Python
关于Oracle12C默认用户名system密码不正确的解决方案
2021/10/16 Oracle
python中tkinter复选框使用操作
2021/11/11 Python
bootstrapv4轮播图去除两侧阴影及线框的方法
2022/02/15 HTML / CSS