Skip to content

HelloWorldImJoe/CryptoClipboard

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CryptoCP

一个跨平台的加密剪贴板管理器,支持在macOS、Windows和Linux上运行。

✨ 功能特性

  • 🔐 自动加密复制的文本 - 复制时自动加密到剪贴板
  • 🛡️ 剪贴板始终保持加密 - 新安全策略,最大化数据保护
  • 👁️ 智能预览解密 - 查看内容不修改剪贴板安全性
  • 临时解密功能 - 短期解密后自动重新加密,时间可配置(5-300秒)
  • 🎯 全局快捷键 - 直接解密并粘贴到当前输入框,不修改剪贴板
  • 🖥️ 跨平台支持 - 支持macOS、Windows和Linux
  • 🎛️ 图形化配置界面 - 直观的用户界面
  • 📱 系统托盘后台运行 - 最小化到系统托盘,不影响使用
  • 🔑 密码保护 - 使用用户自定义密码保护
  • 💾 配置持久化 - 自动保存用户设置
  • 🔄 手动操作 - 支持手动加密/解密剪贴板内容

🛠️ 技术栈

  • Python 3.8+ - 核心开发语言
  • tkinter - 图形用户界面
  • cryptography - AES-256加密算法
  • pyperclip - 跨平台剪贴板操作
  • pystray - 系统托盘功能
  • pynput - 全局快捷键和键盘模拟

📦 安装与依赖

系统要求

  • Python 3.8+
  • 支持的操作系统:Windows 10+, macOS 10.12+, Linux (Ubuntu 18.04+)

快速安装

# 克隆项目
git clone https://github.com/HelloWorldImJoe/CryptoClipboard.git
cd CryptoClipboard

# 创建虚拟环境 (推荐)
python -m venv .venv
source .venv/bin/activate  # macOS/Linux
# 或 .venv\Scripts\activate  # Windows

# 安装依赖
pip install -r requirements.txt

特殊权限配置

macOS 用户

快捷键功能需要辅助功能权限

  1. 打开"系统偏好设置" > "安全性与隐私" > "隐私"
  2. 选择"辅助功能"
  3. 点击锁图标输入密码
  4. 添加终端应用或 Python 可执行文件
  5. 重启应用

🚀 快速开始

GUI版本(废弃掉了)

# 启动图形化版本
python main.py

CLI版本

# 启动命令行版本
python cli_main.py

🎯 全局快捷键功能(不好用, 不想折腾了)

应用支持全局快捷键,可以直接解密剪贴板内容并粘贴到当前输入框,不修改剪贴板本身

功能特点:

  • 🔐 自动检测剪贴板内容是否加密
  • 📝 解密后直接输入到当前焦点输入框
  • 🛡️ 不修改剪贴板内容,保持安全性
  • ⚡ 快速便捷,无需手动操作
  • 🔧 支持自定义快捷键组合

默认快捷键:

  • Windows/Linux: Ctrl + Shift + V
  • macOS: Cmd + Shift + V

使用示例:

# 启用快捷键功能
> hotkey
❌ 快捷键功能需要系统权限
是否现在请求必要权限?(y/N): y
🔧 权限设置已完成,请重新启动应用

# 检查权限状态
> check-permissions
🔍 检查系统权限状态...
操作系统: Darwin
管理员权限: ❌
辅助功能权限: ✅
快捷键功能: ✅ 可用

# 自定义快捷键
> set-hotkey
当前快捷键: ctrl+shift+v
请输入新的快捷键组合: ctrl+alt+d
✅ 快捷键已设置为: ctrl+alt+d

# 测试快捷键
> test-hotkey
🧪 快捷键功能测试
当前快捷键: ctrl+alt+d
✅ 快捷键功能正常

权限要求:

  • macOS: 需要在"系统偏好设置 > 安全性与隐私 > 隐私 > 辅助功能"中添加应用
  • Windows: 可能需要管理员权限(取决于系统设置)
  • Linux: 通常无需特殊权限

💡 自动权限请求: 应用会自动检测权限状态,在需要时引导用户进行权限设置。

📱 使用指南

首次使用

  1. 设置密码

    > set-password
    请输入密码: your-secure-password
    ✅ 密码设置成功
  2. 开始监控剪贴板

    > start
    🔍 开始监控剪贴板
  3. 复制任何文本

    • 文本会自动加密并存储在剪贴板中
    • 加密内容类似:CryptoCP:encrypted:base64-encoded-content

基本操作

查看和解密内容

# 预览解密内容(不修改剪贴板)
> peek
📝 解密内容: Hello World!

# 临时解密剪贴板(30秒后自动重新加密)
> decrypt
✅ 剪贴板已临时解密(30秒后自动加密)

配置管理

# 查看当前配置
> config
临时解密时间: 30秒
自动监控: 开启
系统托盘: 开启

# 修改解密时间
> set-time
当前解密时间: 30秒
请输入新的时间(5-300秒): 60
✅ 解密时间已设置为60秒

🎮 命令参考

CLI 命令列表

核心功能

命令 简写 描述
start s 开始监控剪贴板
stop st 停止监控剪贴板
encrypt e 手动加密剪贴板内容
decrypt d 手动解密剪贴板内容
peek p 预览解密内容(不修改剪贴板)

配置命令

命令 简写 描述
set-password sp 设置或修改密码
set-time st 设置临时解密时间
config c 查看当前配置

快捷键命令 🆕

命令 简写 描述
hotkey hk 切换快捷键功能
set-hotkey shk 设置快捷键组合
test-hotkey thk 测试快捷键功能

权限管理命令 🔒

命令 简写 描述
check-permissions cp 检查系统权限状态
request-permissions rp 请求必要的系统权限

系统命令

命令 简写 描述
status st 查看系统状态
help h 显示帮助信息
exit q 退出程序

🔒 安全特性

加密算法

  • 算法: AES-256-CBC
  • 密钥派生: PBKDF2-HMAC-SHA256
  • 迭代次数: 100,000次
  • 随机盐: 每次加密使用新的随机盐

安全策略

  • 🛡️ 始终加密: 剪贴板始终保持加密状态,最大化数据保护
  • 👁️ 预览机制: 查看内容不影响剪贴板安全性
  • 临时解密: 可配置的短期解密,自动重新加密
  • 🎯 直接粘贴: 快捷键功能不修改剪贴板,保持加密状态
  • 💾 密钥保护: 密码使用安全的哈希算法存储
  • 🔄 会话管理: 支持密钥的安全持久化和验证

🐛 故障排除

常见问题

1. 剪贴板监控无效

# 检查权限设置
> status
监控状态: ❌ 未运行

# 重新启动监控
> start
🔍 开始监控剪贴板

2. 快捷键不工作

# 检查权限状态
> check-permissions
🔍 检查系统权限状态...
操作系统: Darwin
辅助功能权限: ❌
快捷键功能: ❌ 需要权限

# 请求权限
> request-permissions
🔧 请求系统权限...
是否继续请求权限?(y/N): y
✅ 权限请求完成,请重新启动应用

# 或在GUI中
当用户尝试启用快捷键时,应用会自动弹出权限设置对话框

3. 解密失败

# 检查密码
> set-password
请输入密码: your-password
✅ 密码设置成功

📋 更新日志

v2.1.0 (最新)

  • 🔒 新增: 智能权限管理系统 - 自动检测和请求必要权限
  • 🎯 增强: 全局快捷键权限检查和引导设置
  • 🖥️ 改进: GUI和CLI都支持权限状态检查和请求
  • 🛡️ 优化: macOS辅助功能权限自动化配置
  • 🔧 新增: Windows管理员权限检测和提升
  • 📋 新增: 权限检查命令 (check-permissions, request-permissions)

v2.0.0

  • 🎯 新增: 全局快捷键功能 - 直接解密+粘贴
  • 🛡️ 改进: 始终加密策略,最大化安全性
  • 👁️ 新增: 智能预览功能,不修改剪贴板
  • 增强: 可配置临时解密时间(5-300秒)
  • 🔧 优化: GUI和CLI界面改进
  • 🐛 修复: 跨平台兼容性问题

v1.0.0

  • 🎉 首次发布: 基础加密剪贴板功能
  • 🖥️ 支持: Windows和macOS跨平台
  • 🎨 界面: 图形化和命令行双界面
  • 🔒 安全: AES-256加密算法

📄 许可证

本项目采用 MIT 许可证。


⭐ 如果这个项目对你有帮助,请给它一个星标!

About

Crypto Clipboard

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published