Python程序编译为动态库pyd进行加密

这篇具有很好参考价值的文章主要介绍了Python程序编译为动态库pyd进行加密。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

1. 写一段Python代码

2. 准备编译环境

3. 开始编译

4. 调用(以Windows系统为例)


1. 写一段Python代码

  • 首先敲一段代码,这里在名为data.py的Python文件中写下一个求两数之和的简单函数,函数名为i_sum
  • 需要注意一个问题,除了代码前两行常见内容,第3行添加 # cython: language_level=3,以在Python3环境进行编译。
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# cython: language_level=3

"""
@File    :   data.py
@Time    :   2023-07-16 16:10:52
"""

# here put the import lib
import os

def i_sum(a, b):
	# 计算两数之和
	c = a + b
	return c

2. 准备编译环境

Windows系统下编译:

  • 安装easycython库,用来将 .py文件转换为二进制文件,点这里查看库的说明 ;
pip install easycython

3. 开始编译

Windows系统下编译:

  • 打开Windows系统的命令行程序,进入data.py程序的文件夹(我的放在D盘根目录),使用命令:
easycython data.py

如果出现以下报错,则需要安装Microsoft Visual C++ 

Python程序编译为动态库pyd进行加密,记录本,python,开发语言,linux

我们需要下载Microsoft Visual C++ 14. 0,地址:下载。选择安装(Windows 10 SDK可以不安装 )

Python程序编译为动态库pyd进行加密,记录本,python,开发语言,linux

如果还是报错,则删除安装目录下文件后,按以下安装。

Python程序编译为动态库pyd进行加密,记录本,python,开发语言,linux

安装完成后,再次运行命令即可编译成功。

Python程序编译为动态库pyd进行加密,记录本,python,开发语言,linux

  • 此时data.py程序所在的文件夹有以下文件,将 .pyd文件改名为data.pyd(其中,cp38表示适用Python版本是3.8,win_amd64表示适用Python位数是64位,在调用时需要注意),其他的文件都可以删除了:

Python程序编译为动态库pyd进行加密,记录本,python,开发语言,linux

4. 调用(以Windows系统为例)

敲代码时直接导入库使用:

  • 命令行操作演示:打开Windows系统的命令行程序,进入data.pyd文件所在路径(我的在D盘根目录),进入Python环境。然后可以将data当作一个Python库进行调用。

Python程序编译为动态库pyd进行加密,记录本,python,开发语言,linux

  • 这样就把Python 文件编译为Windows和Linux的动态链接库了,可以完美使用。

  • 注意:在调用时需要注意Python版本问题,调用环境要和编译的Python环境版本一致(如Python3.8.10编译,在Python3.8环境调用就行)。此外,还需注意编译的文件名是什么,在调用pyd时,也需要使用该文件名,否则报错。文章来源地址https://www.toymoban.com/news/detail-570460.html

到了这里,关于Python程序编译为动态库pyd进行加密的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Python使用CBC加密模式进行AES加密

    在这个示例中,我们使用了 cryptography 库的 Cipher、algorithms、modes、backend 和 padding 模块。 encrypt 函数接受明文字符串、密钥和初始向量(IV)作为参数。 我们首先使用 Cipher 类来创建一个 AES 密码器对象,指定所需的 AES 算法、CBC 加密模式和密钥。然后,我们获取密码器的加密

    2024年01月24日
    浏览(49)
  • 小程序动态调试-解密加密数据与签名校验

    前言: 微信小程序的加密与验签早前大多数情况,要么就是逆向获取源码而后拿到加密秘钥,要么就是逆向拿到源码后使用腾讯自带的小程序开发者功能进行动态调试模拟,今天介绍一款志远大佬的开源工具—WeChatOpenDevTool 工具下载地址: https://github.com/JaveleyQAQ/WeChatOpenDevTo

    2024年03月13日
    浏览(41)
  • python隐藏源码,生成pyd文件并调用的完整过程

    我们知道​ ​windows 系统有许多 DLL 后缀的文件,即动态链接库,在运行时链接到调用程序​​。在运行时链接到 DLL 之类的库的主要优点是,它可以促进代码重用,模块化体系结构和更快的程序启动。结果,DLL 在 Windows 操作系统周围提供了许多功能。​​pyd 这个 d 就是取自

    2024年02月04日
    浏览(51)
  • PE文件反编译为python脚本流程

    DetectltEasy、PeiD查壳 常见打包工具PyInstaller,脱壳方法 (1)用pyinstxtractor.py脱壳,用”python pyinstxtractor.py 1.exe“命令,生成“.exe文件名_extracted” (2)用pyinstaller脱壳,之后可用pyi-archive_viewer +exe文件名查看 exe 内部的文件结构 下载:pip install pyinstaller 使用:pyinstaller 1.exe、

    2023年04月25日
    浏览(41)
  • 用python对文件内容进行加密的2种方式

    方式1:有时候我们手中文件的内容十分的重要、十分地机密,我们可以选择对此进行加密,代码如下: 然后对文件内容进行加密,当然这个密钥后面在对文件进行解密的时候会派上用场,因此密钥一定要保存完好,解密的代码如下 上面的脚本,其中的密钥是一个随机生成的随

    2024年02月14日
    浏览(27)
  • Python对AES进行加密和解密的多种方法

    前言 本文是该专栏的第24篇,后面会持续分享python的各种干货知识,值得关注。 做过爬虫项目的同学,对AES加解密都有遇到过。 在密码学中,加密算法也分为双向加密和单向加密。单向加密包括MD5、SHA等摘要算法,它们是不可逆的。而双向加密包括 对称加密 和 非对称加密

    2023年04月14日
    浏览(37)
  • uniapp开发微信小程序使用base64进行加密解密

    涉及场景:uniapp开发微信小程序需要使用base64进行加解密。 涉及依赖包:base-64,utf8 涉及到问题描述:首先尝试引入js-base64这个包,经过尝试后发现无法使用,为什么无法使用不晓得,没研究出来。再搜索中找到一篇关于《uniapp使用base64》的文章,文章中使用base64这个包,经

    2024年02月16日
    浏览(55)
  • python使用pysqlcipher3对sqlite数据库进行加密

    python对很多项目都需要对sqlite数据库的数据进行加密,最流行的加密方式是使用pysqlcipher3,当前使用的python版本为3.7,本博文是直接使用pysqlcipher3在项目上的应用,使用的是已编译好的pysqlcipher3包,如果你需要pysqlcipher3,在后面有下载地址,下载后,可以直接使用,不需要再

    2024年04月13日
    浏览(37)
  • 使用Python突破某网游游戏JS加密限制,进行逆向解密,实现自动登录

    兄弟们天天看基础看腻了吧 今天来分享一下如何使用Python突破某网游游戏JS加密限制,进行逆向解密,实现自动登录。 目标:某 7 网游登录 主页:aHR0cHM6Ly93d3cuMzcuY29tLw== 接口:aHR0cHM6Ly9teS4zNy5jb20vYXBpL2xvZ2luLnBocA== 逆向参数:Query String Parameters: password: SlVEOThrcjgzNDNjaUYxOTQzNDM0eVM

    2023年04月13日
    浏览(62)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包