AmeyPacharkar1896/cipherself
GitHub: AmeyPacharkar1896/cipherself
一款基于 Python 的 CLI 工具,通过聚合 GitHub、Reddit 和搜索引擎的公开信息,自动为目标人物生成情报风格的数字足迹 PDF 档案。
Stars: 1 | Forks: 0
# 🕵️♂️ cipher
**cipher** 是一个简单的 CLI 工具,可以向展示公共互联网对你的了解程度。它会扫描你的 GitHub 活动和公开搜索记录,生成一份关于你数字足迹的“解密”情报报告。
[](https://www.python.org/)
[](https://opensource.org/licenses/MIT)
## 🔍 功能说明
简而言之,**cipher** 接收一个 GitHub 用户名和真实姓名,然后通过搜索公开网络来回答:
- **你的编程风格是怎样的?** (使用的编程语言、活跃高峰时段、账号年龄)。
- **你的公开表现如何?** (来自 Google 和 DuckDuckGo 的摘要片段)。
- **社交情报?** (公开的 Reddit 活动、karma 值和社区参与度——**无需 API 密钥**)。
- **可以推断出关于你的哪些信息?** (对你的性格和工作风格的启发式分析)。
- **你的数据价值几何?** (你在广告平台上的市场价值估算)。
所有调查结果都会被汇编成一份样式精美的 **PDF Dossier**,看起来就像一份泄露的情报文件。
## 📸 示例输出
### 情报档案 (PDF)

*该报告具有深色页眉、等宽字体以及“涂黑遮挡栏”的美学风格。*
### CLI 交互
```
[*] Initiating collection for: Linus Torvalds (@torvalds)
[+] Fetching GitHub intelligence...
[+] Scanning public records via Google...
[*] Attempting Google search for "Linus Torvalds"...
[+] Compiling intelligence report...
[*] Report successfully generated: Linus_Torvalds_exposed.pdf
[*] Operation complete.
```
## 🛠️ 安装说明
### 1. 克隆仓库
```
git clone https://github.com/AmeyPacharkar1896/cipherself.git
cd cipherself
```
### 2. 安装依赖项
本项目使用 [uv](https://github.com/astral-sh/uv) 进行快速的包管理。
**选项 A:全局安装(推荐)**
将其作为全局工具安装,以便你可以在任何地方运行 `cipher`:
```
uv tool install .
```
**选项 B:本地虚拟环境**
如果在本地进行开发或直接从仓库运行:
```
uv sync
uv pip install -e .
```
*(注意:如果在本地安装,请通过 `uv run cipher ...` 运行命令,或者先运行 `source .venv/bin/activate`)。*
## 📖 使用说明
使用 `cipher` 命令(如果使用本地安装,则使用 `uv run cipher`)运行该工具。它使用子命令来实现不同的功能。
```
usage: cipher [options]
commands:
scan Scan a subject's public digital footprint
compare Compare two subjects side by side (coming soon)
demo Generate a demo report with fictional data
run 'cipher --help' for command-specific options
```
### 示例:
```
# Full intel
cipher scan --github torvalds --name "Linus Torvalds" --reddit torvalds
# 仅限 Reddit
cipher scan --reddit spez
# GitHub 和 Name
cipher scan --github torvalds --name "Linus Torvalds"
# 仅限 Name(Google search)
cipher scan --name "Linus Torvalds"
# Demo mode
cipher demo
# 比较
cipher compare
```
### `scan` 的选项:
- `--github`:目标的 GitHub 用户名(可选)。
- `--name`:目标的真实全名(可选)。
- `--reddit`:目标的 Reddit 用户名(可选,无需 API 密钥)。
- `--email`:目标的电子邮件地址(占位符)。
## 📂 输出组织结构
生成的档案会根据用于收集的来源,自动组织到 `outputs/` 文件夹内的子目录中:
- **仅 GitHub**:`outputs/github/`
- **仅 Reddit**:`outputs/reddit/`
- **仅姓名**:`outputs/name/`
- **多个来源**:`outputs/github_reddit/`、`outputs/github_name/` 等。
- **完整情报(所有来源)**:`outputs/full/`
- **演示模式**:`outputs/demo/`
## 🧪 测试说明
本项目包含一套集成测试,以确保 CLI 的稳定性和正确的输出组织结构。
有关运行测试的详细说明,请参阅 [测试 README](tests/README.md)。
```
uv run python -m unittest discover tests
```
## ⚠️ 局限性
- **仅限公开数据**:此工具无法访问私密账户、已删除的数据或受密码保护的内容。
- **搜索抓取**:网络搜索结果取决于公开的可访问性。Google 和 DuckDuckGo 可能会偶尔对请求进行速率限制。
- **启发式推断**:性格和工作风格的推断基于常见的模式(例如,“在凌晨 2 点提交代码 = 夜猫子”),仅供研究参考,并非绝对的定性分析。
## ⚖️ 免责声明
**cipher** 仅用于教育和研究目的。它**仅**使用公开的 API 和可公开访问的信息。它不执行未经授权的访问,不需要登录凭据,也不存储私人数据。用户需自行负责遵守当地的隐私法律和平台的服务条款。
## 📄 许可证
在 MIT 许可证下分发。有关更多信息,请参阅 `LICENSE`。
标签:ESC4, ESC8, GitHub分析, Kali工具, OSINT, PDF生成, Python, Unix, URL抓取, 个人信息收集, 个人隐私, 二进制模式, 信息侦察, 加密文件系统, 反取证, 安全评估, 实时处理, 情报收集, 搜索引擎抓取, 数字足迹, 数字身份, 数据抓取, 无后门, 漏洞研究, 画像分析, 社会工程学, 网络侦查