Encrypt Python scripts and execute decrypted code.
Project description
ixi
ixi 用于加密 Python 脚本,并生成可执行的加密启动脚本。运行时只在内存中解密并执行,不落盘明文。
安装
pip install --only-binary=:all: ixi
命令
ixi -v:输出当前版本号ixi -e script.py:加密脚本并输出script_<timestamp>.py
分发模型
- 仅发布
abi3wheel(cp310-abi3),覆盖 Windows / Linux / macOS。 - Linux 同时覆盖
manylinux(glibc) 与musllinux(musl)。 - 目标矩阵:
win32、win_amd64、manylinux_x86_64、manylinux_aarch64、musllinux_x86_64、musllinux_aarch64、macosx_x86_64、macosx_arm64。 - 不发布
sdist。 - 敏感逻辑统一由 Rust 扩展模块
ixi._core提供。 - 若平台不在已发布 wheel 标签内,
pip安装会失败。
运行时行为
- 启动脚本会先尝试
import ixi。 - 若导入失败,自动执行
python -m pip install --upgrade --only-binary=:all: ixi,依次尝试默认源、清华源与官方 PyPI simple 源。 - 若本地
ixi低于云端最新版,启动脚本会按默认源、清华源、官方 PyPI simple 源的顺序尝试自动升级;升级成功后重启当前脚本以加载新版运行时。 - 解密前强制请求清华源:
GET https://pypi.tuna.tsinghua.edu.cn/simple/ixi/Accept: application/vnd.pypi.simple.v1+json- TLS 信任根固定为
certifi(Mozilla CA Bundle),不使用系统证书库。 - 运行时额外要求对端证书签发组织为
Let's Encrypt。
- 本地版本低于最新版且自动升级失败时,打印告警并终止执行。
- 若接口返回 404,直接终止执行。
- 自动安装失败时会输出
machine/libc/python诊断信息,便于定位 wheel 标签不匹配问题(例如 Alpine/musl 环境缺少musllinux产物)。
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ixi-1.0.103-cp310-abi3-win_amd64.whl.
File metadata
- Download URL: ixi-1.0.103-cp310-abi3-win_amd64.whl
- Upload date:
- Size: 1.1 MB
- Tags: CPython 3.10+, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
34a6a937037a38051c2435992e26c22822cf40b52280f680a5d07fa80673065a
|
|
| MD5 |
a5faa07eab63d5bfbaa053b4a9e21e0c
|
|
| BLAKE2b-256 |
e27a977d1493061f1e459299a5fb5736657df5e503c05df71d55139956231e4a
|
File details
Details for the file ixi-1.0.103-cp310-abi3-win32.whl.
File metadata
- Download URL: ixi-1.0.103-cp310-abi3-win32.whl
- Upload date:
- Size: 890.0 kB
- Tags: CPython 3.10+, Windows x86
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
30883c37af3b5142d6db7438b02244643d85f70760e3f964502cb75c2086a6a4
|
|
| MD5 |
5993283901a7ae68a0338ec9e1c77bb7
|
|
| BLAKE2b-256 |
1782998a5c9129c47664ae1b4ac9a6b000c051435c0ff7d327658940b2c6a8f2
|
File details
Details for the file ixi-1.0.103-cp310-abi3-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: ixi-1.0.103-cp310-abi3-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 1.3 MB
- Tags: CPython 3.10+, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
60dd278cd66fd56edc460243a8fb23d87e60bfe593567ccf52b65e705981496e
|
|
| MD5 |
3e9479c8b9bfef921f153a986c3696dc
|
|
| BLAKE2b-256 |
7fe782085f043e623f09903c194cc9665047c38e11f82e387fbc461e3ef856f6
|
File details
Details for the file ixi-1.0.103-cp310-abi3-musllinux_1_2_aarch64.whl.
File metadata
- Download URL: ixi-1.0.103-cp310-abi3-musllinux_1_2_aarch64.whl
- Upload date:
- Size: 1.2 MB
- Tags: CPython 3.10+, musllinux: musl 1.2+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
acb51f034d8c51f34a7128c05a1e99b5127b128e88a072b8f5e9f38f6266e281
|
|
| MD5 |
fb2b181c1487e453011249fcf57a296e
|
|
| BLAKE2b-256 |
f4a1fa9d49722b693398ee9cdfced65b59bea97c50e5558a5272420a75f69755
|
File details
Details for the file ixi-1.0.103-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: ixi-1.0.103-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 1.3 MB
- Tags: CPython 3.10+, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
973d92aa88399577b412e195c6081845bc80bb487f7e91280041f74c488c43c3
|
|
| MD5 |
6a43020b346716ab9a445d66d8fc13d6
|
|
| BLAKE2b-256 |
6f12f45746267581439087f5a4daf6c72f033d46a1263b72684caa80e58af8db
|
File details
Details for the file ixi-1.0.103-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: ixi-1.0.103-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 1.2 MB
- Tags: CPython 3.10+, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a40a2595c26e9f074790692c8cd4e20f70af8e2263be8e53316cd87b673deba8
|
|
| MD5 |
50345e5c1840e3e70f75497a62ce5f68
|
|
| BLAKE2b-256 |
8603aa2422500508c7d66911dbfee9e9e1d7675c9c3c268b92cd90c0a1cb0f5c
|