pywayne-crypto

Encryption and decryption toolkit for string and byte data. Supports Fernet (AES-128) symmetric encryption, fallback XOR encryption, custom password protection, code obfuscation, and batch processing. Use when users need to encrypt/decrypt sensitive data, protect algorithms, or obfuscate Python code.

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "pywayne-crypto" with this command: npx skills add wangyendt/crypto-2

Pywayne Crypto

加密解密工具集,支持对称加密、自定义密码和代码混淆保护。

Quick Start

from pywayne.crypto import encrypt, decrypt

# 基础加密/解密
encrypted = encrypt("Hello World")
decrypted = decrypt(encrypted)
print(decrypted)  # 输出: Hello World

# 使用自定义密码加密
encrypted = encrypt("Secret message", "my_password")
decrypted = decrypt(encrypted, "my_password")
print(decrypted)  # 输出: Secret message

encrypt - 加密函数

加密字符串或字节数据。

# 文本加密
encrypted = encrypt("机密信息", "password")
# 字节加密
byte_data = b"binary data"
encrypted = encrypt(byte_data, "password")

参数

参数类型说明
textstr or bytes要加密的文本数据或字节数据
passwordstr可选,自定义密码。不提供时使用默认密钥

返回值str - base64 编码的加密字符串

参数类型错误处理

  • 当输入不是 strbytes 时抛出 ValueError

decrypt - 解密函数

解密之前加密的字符串。

# 解密(使用默认密钥)
decrypted = decrypt(encrypted_text)

# 解密(使用自定义密码)
decrypted = decrypt(encrypted_text, "my_password")

参数

参数类型说明
encrypted_textstr要解密的 base64 编码字符串
passwordstr可选,解密密码。必须与加密时使用的密码相同

返回值str - 解密后的原始字符串

批量操作

支持批量加密和解密操作。

from pywayne.crypto import encrypt, decrypt

data = ["数据1", "数据2", "数据3"]
password = "batch_password"

# 批量加密
encrypted_list = encrypt_batch(data, password)

# 批量解密
decrypted_list = decrypt_batch(encrypted_list, password)

参数

函数参数说明
encrypt_batch(data_list, password)data_list: 数据列表password: 密码
decrypt_batch(encrypted_list, password)encrypted_list: 加密数据列表password: 密码

返回值list[str] - 解密结果列表(失败项目为 None)

配置文件管理

保存和加载加密配置文件(JSON 格式)。

from pywayne.crypto import encrypt, decrypt

# 保存配置
config = {"database": {"host": "localhost", "username": "admin", "password": "secret"}}
save_config(config, "master_password", "config.enc")

# 加载配置
loaded_config = load_config("master_password", "config.enc")
print(loaded_config)  # 输出: {'database': {...}}

参数

函数参数说明
save_config(config_dict, password, filename)config_dict: 配置字典password: 加密密码
load_config(password, filename)password: 解密密码filename: 配置文件名

异常

  • ValueError:配置文件解密失败(密码错误或数据损坏)

加密策略

模块采用分层加密策略,优先使用 Fernet,回退到 XOR。

| 策略 | 说明 | |------|------|------| | Fernet 加密(推荐) | AES-128 对称加密,带消息完整性验证 | | XOR 加密(回退) | 简单异或加密,无依赖,基本功能 | | 代码混淆保护 | Base64 编码隐藏、动态函数生成、命名空间清理 |

错误处理

完善的异常处理机制,支持密码错误、数据格式错误、解密失败等情况。

# 密码错误
try:
    decrypted = decrypt(encrypted_text, "wrong_password")
except ValueError:
    print("错误: 解密失败,密码不正确")

# 数据格式错误
try:
    encrypted = encrypt(123)
except ValueError:
    print("错误: 输入类型必须是字符串或字节")

最佳实践

  • 密码妥善保管,避免硬编码在源码中
  • 高安全性要求的应用使用专业加密库
  • 密钥通过环境变量传递,避免写入日志

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

aiq-assessment

AIQ(AI商数)评估工具。基于"三层18原子能力"框架,对个人或团队的AI协作效能进行 结构化评估。包含提示素养、算法共情、判断锐度三大维度,覆盖18个可量化的原子能力。 适用于自我诊断、招聘评估、团队AI成熟度审计等场景。触发词:AIQ、AI商数、AI能力评估、 AI协作效能、会不会用AI、AI Native...

Registry SourceRecently Updated
General

Reptile Pet Health Diagnosis Tool | 爬行类宠物健康诊断分析工具

Analyzes uploaded reptile or arachnid videos to identify scale, skin, and body issues, then generates a detailed health diagnosis report.

Registry SourceRecently Updated
General

Whop Digital Sales

Auto-create and manage digital products on Whop.com. Manages product lifecycle from creation to checkout link generation. Uses Whop REST API v1 with Company...

Registry SourceRecently Updated
General

ClawCap

Spending cap proxy for OpenClaw. Enforce hard daily and monthly limits across all your AI models (Claude, GPT, Gemini, and more) under one cap. Stop runaway...

Registry SourceRecently Updated