Skip to content
KitploitKITPLOIT
工具漏洞利用博客
Log in
提交
工具漏洞利用博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

订阅源联系隐私© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
Ciphey — ⚡ 自动解密加密(无需知道密钥或密码)、解码编码、破解哈希 ⚡ | Kitploit
工具/GitHubGitHub/bee-san/ciphey
加密/解密工具哈希分析密码学CTF渗透测试学习与教育密码学 分类第 13 名CTF 分类第 6 名加密/解密工具 分类第 14 名哈希分析 分类第 5 名
21.6k1.4k1557天前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
GitHubbee-san/ciphey

Ciphey

⚡ 自动解密加密(无需知道密钥或密码)、解码编码、破解哈希 ⚡

查看仓库

终端中的 Ciphey:输入四层 Base64,Ciphey 询问“Ciphey peels back every layer of encoding”是否为明文,然后输出明文并给出路径 Base64 → Base64 → Base64 → Base64。点击观看一分钟演示。

Ciphey

粘贴经过编码或加密的文本。Ciphey 会找出方法并把明文交给你。
无需密钥、无需密码名称、无需提示。Base64、hex、Caesar/ROT13、Vigenère、摩尔斯电码以及另外 19 种,支持多层嵌套。

crates.io docs.rs MIT license

安装 · 快速开始 · 功能特性 · 作为库使用 · MCP · 文档 · Discord
▶ 观看一分钟演示(MP4,61 秒)

安装

cargo install ciphey

适用于 Linux(x86_64)、macOS(Intel 和 Apple silicon)以及 Windows(x86_64)的预编译二进制文件位于发布页面,每个文件都附带 .sha256 校验和。

要从源码构建,你需要 Rust 工具链:

git clone https://github.com/bee-san/Ciphey
cd Ciphey
cargo build --release    # the binary is target/release/ciphey

或者跳过安装:加入 Discord 服务器,进入 #bots 频道并输入 $ciphey <your text>($help 会列出可用命令)。

快速开始

$ ciphey -t 'aGVsbG8gdGhlcmUgZ2VuZXJhbA=='
🕵️ I think the plaintext is Words.
Possible plaintext: 'hello there general' (y/N):
y

🥳 ciphey has decoded 64 times.

The plaintext is:
hello there general
the decoder used is Base64

首次运行时,会有一个简短的设置流程,询问你喜欢的配色主题、希望如何显示结果以及是否使用词表,并将你的回答保存到 ~/.ciphey/config.toml。

ciphey -t 'NTA3NjYzNzU3MjZjMjA3NjY2MjA2OTcyNjU2YzIwNzM2ZTY2Njc='   # ROT13 → hex → Base64, nothing else needed
ciphey -f secret.txt                    # read the input from a file
ciphey -d -t '...'                      # no y/N prompt: take the first plaintext found (handy in scripts)
ciphey -c 15 -t '...'                   # keep searching for up to 15 seconds (the default is 5)
ciphey -r 'flag\{' -t '...'             # only accept plaintext that matches a regex (a crib)
ciphey --wordlist words.txt -t '...'    # also accept any exact match from a wordlist

ciphey --help 会列出所有选项。

功能特性

⚡ 快速

一个终端对 Base64 字符串运行 time ciphey -d。Ciphey 打印出 'Ciphey is very fast' 以及路径 Base64 → Hexadecimal → caesar,bash 报告 real 0m0.157s。随后一张图表将 Ciphey 的 0.19 秒(10 次运行的中位数)与 Python Ciphey 5.14.0 在相同输入上 60 秒后仍无答案进行对比。

▶ 观看片段(16 秒)

三层(先是 ROT13,然后是十六进制,最后是 Base64)在 0.16 秒内被剥离,这是在真实录制中由 bash 的 time 测量得出的。以下是更多输入与 Python Ciphey 5.14(Ciphey 所取代的版本)的相同对比:

输入CipheyPython Ciphey 5.14
Base640.11 秒0.92 秒
十六进制 → Base640.14 秒1.02 秒
ROT13 → 十六进制 → Base640.19 秒60 秒内无答案
URL → Base64 → 十六进制0.24 秒1.15 秒
Base64 ×40.41 秒0.78 秒
十六进制 → Base32 → Base64 → 十六进制0.54 秒0.72 秒,答案错误
ROT13 → 十六进制 → Base64 → Base321.15 秒60 秒内无答案

在共享的 16-CPU Linux 机器上,每个输入 10 次运行(Python Ciphey:3 次)的挂钟时间中位数,Ciphey 位于 47bd16d6,关闭 y/N 提示,每次运行使用全新的 $HOME,使其缓存无法发挥作用。每次运行上限为 60 秒。脚本和原始数据位于 media/readme-videos 分支的 media/tui-video/bench 中。

在两者都能得到正确答案的情况下,Ciphey 快 1.9 到 8.6 倍。速度从何而来?

  • 它是用 Rust 编写的。
  • A* 搜索会优先尝试最有希望的解码器链。
  • 每个解码器都通过 Rayon 并行运行,一次最多处理 10 个候选文本。
  • 答案缓存在 ~/.ciphey/database.sqlite 中,因此第二次输入相同内容时会在毫秒内返回。

🧅 一层又一层,无需密钥

Ciphey 不需要被告知它面对的是什么。它会搜索解码器链(十六进制里的 Base64 里的 ROT13、四层 Base64 等等),并在第一个看起来像明文的候选结果处停止。默认情况下,它会向你展示该候选结果并在接受前询问(-d 会关闭此行为)。本页顶部的片段展示了一次四层解码。

还有一个计时器:如果 Ciphey 在 5 秒后仍未找到任何内容,它会停止并说明这一点(-c 可更改该限制)。

它认识 24 种解码器和破解器:

类型解码器
Base 编码Base64(标准和 URL 安全)、Base32、Base58(Bitcoin、Flickr、Monero、Ripple)、Base91、Base65536、Z85
其他编码十六进制、二进制、URL(百分号编码)、摩尔斯电码、盲文、A1Z26、Citrix CTX1
密码凯撒(包括 ROT13)、ROT47、Atbash、维吉尼亚(它会自行算出密钥)、栅栏、反转文本
奇趣Brainfuck(它会运行该程序)、用其他符号书写的摩尔斯或二进制

更多解码器正在路上:#1030 追踪了 109 种尚未加入的解码器。

🕵️ 知道它发现了什么

三次 Ciphey 运行。Base64 解码为 'mount -o username=bee,password=hunter2',被识别为 Mount Command With Clear Credentials。Base64 解码为 otpauth:// 链接,被识别为 Time-Based One-Time Password (TOTP) URI。十六进制解码为 192.168.0.1,被识别为 Internet Protocol (IP) Address Version 4。

▶ 观看片段(21 秒)

每个候选明文还会经过 LemmeKnow——pyWhat 的 Rust 移植版——进行识别,它可识别 120 多种格式。因此 Ciphey 不仅能解码字符串,还能告诉你它是什么:mount 或 sshpass 命令中的密码、TOTP 密钥、GitHub token 或 Stripe 密钥、IP 或 MAC 地址、电子邮件地址或 URL、卡号、加密钱包、AWS ARN 或 CTF flag。

$ ciphey -t '3139322e3136382e302e31'
🕵️ I think the plaintext is Internet Protocol (IP) Address Version 4.
Possible plaintext: '192.168.0.1' (y/N):

🎯 Crib 与正则模式

一个终端对 Base64 字符串运行 ciphey -t 并带上 -r 'picoCTF\{'。Ciphey 报告“Regex matched: picoCTF\{”,询问关于“picoCTF{b4s3_64_1s_fun}”的信息,并将其作为明文打印出来,使用 Base64 解码。

▶ 观看片段(14.5 秒)

如果你知道答案的一部分(flag 格式、必须包含的某个词、开头是什么),可以用 -r 以正则表达式的形式把它交给 Ciphey。其他检查器会关闭,只有匹配的文本才会被接受。这样就能找出英文检测会漏掉的明文:Base64 编码的 picoCTF{b4s3_64_1s_fun} 默认会被当作乱码返回,但加上 -r 'picoCTF\{' 后,它就是第一个匹配项。

--wordlist words.txt 对精确匹配的作用相同:只要候选结果是文件中的某一行,就算作明文。

🎨 为你的终端而打造

首次运行设置会让你选择配色主题(Capptucin、Darcula、GirlyPop、默认主题,或你自己的 RGB 值),并选择是逐个询问每个明文,还是在最后给出候选列表。你可以在导览的 0:32 处看到它。所有设置都会保存到 ~/.ciphey/config.toml,之后可以编辑。

📚 库优先

ciphey 二进制文件只是 ciphey crate 的一层薄封装。Discord 机器人也使用它,你的代码同样可以。

作为库使用

perform_cracking 会像 ciphey 二进制文件那样运行整个搜索过程:

use ciphey::config::Config;
use ciphey::{perform_cracking, CipheyError};

fn main() {
    let mut config = Config::default();
    config.timeout = 5; // seconds
    config.human_checker_on = false; // never prompt on stdin
    config.api_mode = true; // don't print progress to stdout
    // config.regex = Some(r"flag\{".to_string()); // only accept plaintext matching a crib
下载工具