python 算法加密

news2024/10/7 4:30:47

加密代码片段样例

文件名:iter_n.py

import time

def iter_from_n(n):
    list_n = []
    for index,value in enumerate(range(n)):
        list_n.append([index,value])
    return list_n
    
if __name__=="__main__":
    t1 = time.time()
    iter_from_n(100000)
    t2 = time.time()
    print ("花费时间:{}".format(t2-t1))

0. 直接执行py文件

命令:python iter_n.py
在这里插入图片描述

1.pyc加密

命令:python -m compileall [目录|文件.py]

在这里插入图片描述
命令:python iter_n.cpython-37.pyc
在这里插入图片描述

说明:无法直接调用内部封装模块

2.pyd加密

2.1 Cython加密

pip install Cython==0.29.22
gcc相关环境编译相关文件

setup.py文件

from distutils.core import setup
from Cython.Build import cythonize

setup(name='iter_n',
     ext_modules=cythonize('iter_n.py'))

2.1.1 编译命令

python setup.py build_ext --inplace

2.1.2 编译命令

python setup.py [build|build_ext]
python setup.py install
在这里插入图片描述

2.2 easycython加密

pip install easycython

2.2.1 编译命令

easycython iter_n.py

2.2.2 编译命令

easycython iter_n.pyx
在这里插入图片描述

2.3 模块使用

2.3.1 生成pyd文件

在这里插入图片描述

2.3.2 模块调用

test.py

from iter_n import iter_from_n
print (iter_from_n(10))

在这里插入图片描述

3.py2exe

pip install py2exe
setup.py文件

#coding=utf-8
from distutils.core import setup
import py2exe

options = {"py2exe":
  {
    "compressed": 1, #压缩
    "optimize": 2,
    "ascii": 1,
    "bundle_files": 1 #所有文件打包成一个exe文件
  }
}


setup (
  options = options,
  zipfile=None,  #不生成library.zip文件
  console=[{"script": "iter_n .py", 'icon_resources': [(1, 'icon.ico')]  }]#源文件,程序图标
)

3.1 编译命令

python setup.py py2exe

在这里插入图片描述
在这里插入图片描述

4.pyinstaller

pip install pyinstaller

常用参数:
–icon=图标路径
-F 打包成一个exe文件
-w 使用窗口,无控制台
-c 使用控制台,无窗口
-D 创建一个目录,里面包含exe以及其他一些依赖性文件
pyinstaller -h 来查看参数
pyinstaller -F -w -i icon.ico iter_n .py
在这里插入图片描述
在这里插入图片描述

5.pyarmor

pip install pyarmor

5.1pyarmor加密

pyarmor obfuscate --recursive [目录|文件.py]
在这里插入图片描述

5.2 设置使用日期

5.2.1 生成日期许可证

pyarmor licenses --expired 2024-01-01 目录

在这里插入图片描述

在这里插入图片描述

5.2.2 生成日期许可证

pyarmor obfuscate --recursive --with-license licenses/r001/license.lic iter_n.py
在这里插入图片描述
在这里插入图片描述

5.3加密后的文件

在这里插入图片描述
在这里插入图片描述

5.4 模块调用

在这里插入图片描述

test.py

from iter_n import iter_from_n
print (iter_from_n(10))

5.4.1 正常 模块调用

在这里插入图片描述

5.4.2 到期 模块调用

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/84056.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

精彩预告 | 美创科技与您线上相约第十三届中国数据库技术大会

12月14日~16日,由IT168联合旗下ITPUB、ChinaUnix两大技术社区主办的第13届中国数据库技术大会(DTCC2022)将在线上隆重召开。 作为一家在数据库技术领域深研探索十余年的厂商,美创科技持续专注推动数据库技术的发展与实践。此次大会…

在平台上便捷使用LS-DYNA的方式

LS-DYNA 由Livermore Software Technology Corporation (LSTC) 开发,是一种多用途的显式和隐式有限元和多物理场程序,用于分析结构的非线性响应;其全自动接触分析和广泛的材料模型使全球用户能够解决复杂的现实问题。 这里要注意的是&#x…

【Vue】Vue2基本使用

文章目录一、模板语法1、插值语法写法介绍2、指令语法写法介绍模板语法示例二、数据绑定介绍数据绑定示例效果三、初始化Vue时,data属性与el属性的两种写法el的两种写法data的两种写法演示案例四、MVVM模型介绍五、数据代理JS数据代理案例演示Vue数据代理介绍原理六…

汽车自动驾驶的L0-L5是什么意思?

一、问题 汽车L0、L1、L2、L3、L4、L5自动驾驶都是什么意思呢? 近年来「自动驾驶」对我们来说不再陌生,很多人虽然早有所闻,但是真不懂自动驾驶的L0、L1、L2、L3、L4、L5是什么意思,都有哪些功能,今天就来为大家科普一…

什么蓝牙耳机质量好?公认最好用的蓝牙耳机推荐

现如今,蓝牙耳机在人们的日常使用设备当中扮演着较为重要的角色。无论是听歌、玩游戏、追剧、通话等,都可以通过蓝牙耳机来实现。而蓝牙耳机因为摆脱了线的束缚,日常携带会更便捷。作为一名耳机发烧友,今天来给大家分享几款公认最…

[附源码]Python计算机毕业设计SSM基于大数据的超市进销存预警系统(程序+LW)

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

7 种模型加权集成方法

# 7 种模型加权集成方法 不同任务 -> 不同加权方法 分类 类别投票概率值加权 回归 预测值加权 排序 排序次序加权 目标检测 预测结果NMS 语义分割 像素类别投票加权 集成学习 考虑 模型的多样性 多样性不足 -> 最终预测结果和单个模型类似。 模型的精度差异…

基于MATLAB开发AUTOSAR软件应用层模块-part12.AUTOSAR Dictionary-3 AUTOSAR dictionary界面介绍

本篇我们讲解下AUTOSAR工具箱的Dictionary界面,以及如何使用Dictionary编辑AUTOSAR的元素。 初识界面 打开AUTOSAR Dictionary方式见下图, 点击这个按钮,打开界面, 上图就是AUTOSAR Dictionary的便捷界面 1)AtomicComponnet,是SWC软件组件,一个模型就对应一个

作业-12.12【写注释,QT项目和对象对象树模型】

将QT项目中每个文件的每行代码自行注释一遍 #项目过程管理文件 QT core gui greaterThan(QT_MAJOR_VERSION, 4): QT widgets #所需的类库,超过4版本要加widgets CONFIG c11 #支持c11 # The following define makes your compiler emit warnings if you use…

MySQL 自定义函数一文读懂

MySQL函数 含义:一组预先编译好的SQL语句的集合,理解成批处理语句 1、提高代码的重用性 2、简化操作 3、减少了编译次数并且减少了和数据库服务器的连接次数,提高了效率。 存储过程与函数区别: 存储过程:可以有0个返…

内部群炸锅了,同事又删库了

事件起因 我们的系统中有数据导入的功能,可以把特定的格式的excel数据导入到系统中来 由于客户电脑的文件比较多,很多文件的名字也比较相近,客户在导入excel时选错了文件 这个错误的excel文件的格式恰好能被系统解析,客户也没及…

【专栏】实践篇08| All in docker!动手搭建Redis集群

关注公众号:【离心计划】,一起逃离舒适圈 Redis专栏合集 【专栏】01| Redis夜的第一章 【专栏】基础篇02| Redis 旁路缓存的价值 【专栏】基础篇03| Redis 花样的数据结构 【专栏】基础篇04| Redis 该怎么保证数据不丢失(上&#xff09…

(附源码)Spring Boot的网上作业管理系统 毕业设计 612317

基于Spring Boot的网上作业管理系统 摘 要 科技进步的飞速发展引起人们日常生活的巨大变化,电子信息技术的飞速发展使得电子信息技术的各个领域的应用水平得到普及和应用。信息时代的到来已成为不可阻挡的时尚潮流,人类发展的历史正进入一个新时代。在现…

【正点原子FPGA连载】第三十三章OV5640摄像头HDMI显示实验 摘自【正点原子】DFZU2EG/4EV MPSoC 之FPGA开发指南V1.0

1)实验平台:正点原子MPSoC开发板 2)平台购买地址:https://detail.tmall.com/item.htm?id692450874670 3)全套实验源码手册视频下载地址: http://www.openedv.com/thread-340252-1-1.html 第三十三章OV564…

02-Neo4j-CQL

02-Neo4j-CQL: 1、CQL简介 CQL代表Cypher查询语言。 像Oracle数据库具有查询语言SQL,Neo4j具有CQL作为查询语言。 Neo4j CQL 它是Neo4j图形数据库的查询语言。它是一种声明性模式匹配语言它遵循SQL语法。它的语法是非常简单且人性化、可读的格式。 …

具有成本效益的深度信任网络的智能LEACH的多级动态优化(Matlab代码实现)

目录 💥1 概述 📚2 运行结果 🎉3 参考文献 👨‍💻4 Matlab代码 💥1 概述 能量利用率是能量受限无线传感器网络(WSN)的关键属性,它直接影响网络的寿命。LEACH&#x…

C++入门篇之 注释语法什么写

📒博客主页: ​​开心档博客主页​​ 🎉欢迎关注🔎点赞👍收藏⭐留言📝 📌本文由开心档原创! 📆51CTO首发时间:🌴2022年12月12日🌴 ✉…

python+requests接口自动化测试框架实例详解教程

前段时间由于公司测试方向的转型,由原来的web页面功能测试转变成接口测试,之前大多都是手工进行,利用postman和jmeter进行的接口测试,后来,组内有人讲原先web自动化的测试框架移驾成接口的自动化框架,使用的…

windows下Qt 5的安装与编译打包

环境与版本 操作系统:windows 10 Qt版本:5.14.2,最后一个有独立安装包的版本,下载地址:archive/qt/5.14/5.14.2 IDE:自带的qt-creator 4.11.1,也可以自行下载其他版本4.14.2,下载…

Mybatis实现增删改查

准备工作:建立项目,连接数据库MySQL,安装Mybatix插件 数据库代码准备: -- 删除tb_brand表 drop table if exists tb_brand; -- 创建tb_brand表 create table tb_brand (-- id 主键id int primary key auto_increment,…