CyberChef

gchqApache-2.0活跃维护

网页版的数据处理工具,把加密、编码、压缩、哈希和解析等操作组合成流水线,方便安全分析人员快速转换和排查数据。

The Cyber Swiss Army Knife - a web app for encryption, encoding, compression and data analysis

v11.5.0发布于 2026-09-18 11:54 UTC36,359star +18 / 7 天4,195fork同步于 2026-11-10 11:20 UTC

怎么上手

由 README 提炼,执行前请确认
docker run -it -p 8080:8080 ghcr.io/gchq/cyberchef:latest
硬件要求按 README 说明

无 GPU 要求,纯浏览器端运行,支持 Chrome 50+ 与 Firefox 38+;也可用 Docker 或 Node.js v24 本地运行

有 Docker 镜像
下载:源码 zip·GitHub Releases(安装包)本站不镜像安装包

项目说明

由 README 自动翻译提炼

浏览器里拖拽组合操作的数据处理瑞士军刀,编解码、加解密、压缩分析一站搞定

网页版的数据处理工具,把加密、编码、压缩、哈希和解析等操作组合成流水线,方便安全分析人员快速转换和排查数据。

核心能力

  • 拖拽操作拼成 recipe,自动烘焙即时出结果
  • 内置 Magic 自动检测多层嵌套编码并解码
  • 支持断点与单步执行,逐操作查看中间数据
  • 可保存/分享 recipe,URL 深链接携带输入与配方
  • 纯客户端处理,输入与文件不上传服务器

容易踩的坑

源码构建需 Node.js v24,版本不符易失败;大 recipe 构建可能内存溢出,需用 npm run setheapsize 调大堆;拖入大文件(约 2GB 上限)时部分操作会非常慢,可关闭 Auto Bake

内容由模型根据 README 生成,可能不完整或不准确,以官方文档为准。看原文 README

最近发版

5 个版本v11.5.0
  1. v11.5.0最新正式版2026-09-18 · 2026-09-18 11:54 UTC

    See the CHANGELOG and commit messages for details.

  2. v11.4.02026-08-18 · 2026-08-18 18:50 UTC
    查看更新说明

    See the CHANGELOG and commit messages for details.

  3. v11.3.02026-07-24 · 2026-07-24 07:23 UTC
    查看更新说明

    See the CHANGELOG and commit messages for details.

  4. v11.2.02026-06-17 · 2026-06-17 11:26 UTC
    查看更新说明

    See the CHANGELOG and commit messages for details.

  5. v11.1.02026-06-13 · 2026-06-13 08:52 UTC
    查看更新说明

    See the CHANGELOG and commit messages for details.

用户点评

登录用户的真实使用记录,可按版本和硬件筛选
共 0 条

    还没有人点评。第一个说出真实体验的人最有价值。

    README 原文

    未翻译

    CyberChef

    npm Gitter

    The Cyber Swiss Army Knife

    CyberChef is a simple, intuitive web app for carrying out all manner of "cyber" operations within a web browser. These operations include simple encoding like XOR and Base64, more complex encryption like AES, DES and Blowfish, creating binary and hexdumps, compression and decompression of data, calculating hashes and checksums, IPv6 and X.509 parsing, changing character encodings, and much more.

    The tool is designed to enable both technical and non-technical analysts to manipulate data in complex ways without having to deal with complex tools or algorithms. It was conceived, designed, built and incrementally improved by an analyst in their 10% innovation time over several years.

    Contents

    Official website

    CyberChef's official website can be found here - have fun!

    Running Locally

    You can run CyberChef with Docker (no toolchain required) or build it from source with Node.js.

    With Docker

    Prerequisites

    • Docker
      • Docker Desktop must be open and running on your machine
    Option 1: Build the Docker Image Yourself
    1. Build the docker image
    docker build --tag cyberchef --ulimit nofile=10000 .
    
    1. Run the docker container
    docker run -it -p 8080:8080 cyberchef
    
    1. Navigate to http://localhost:8080 in your browser
    Option 2: Use the pre-built Docker Image

    If you prefer to skip the build process, you can use the pre-built image

    docker run -it -p 8080:8080 ghcr.io/gchq/cyberchef:latest
    

    Just like before, navigate to http://localhost:8080 in your browser.

    This image is built and published through our GitHub Workflows.

    From source

    If you want to develop CyberChef or run it without Docker, you can build it directly with Node.js.

    Prerequisites

    [!NOTE]

    You can use nvm to manage Node.js versions and use the current development version in this project to avoid conflicts with other projects on your machine.

    Setup

    git clone https://github.com/gchq/CyberChef.git
    cd CyberChef
    npm install
    

    Common tasks

    CommandDescription
    npm startRun the development server with live reload at http://localhost:8080.
    npm run buildProduce a production build in the build/prod directory.
    npm testRun the Node.js and operation test suites.
    npm run testuiRun the browser (UI) tests.
    npm run lintCheck the code against the linting rules.
    npm run newopScaffold a new operation via the interactive quickstart script.

    If you hit an out-of-memory error while building large recipes, increase Node's heap size with npm run setheapsize.

    How it works

    There are four main areas in CyberChef:

    1. The input box in the top right, where you can paste, type or drag the text or file you want to operate on.
    2. The output box in the bottom right, where the outcome of your processing will be displayed.
    3. The operations list on the far left, where you can find all the operations that CyberChef is capable of in categorised lists, or by searching.
    4. The recipe area in the middle, where you can drag the operations that you want to use and specify arguments and options.

    You can use as many operations as you like in simple or complex ways. Some examples are as follows:

    Features

    • Drag and drop
      • Operations can be dragged in and out of the recipe list, or reorganised.
      • Files up to 2GB can be dragged over the input box to load them directly into the browser.
    • Auto Bake
      • Whenever you modify the input or the recipe, CyberChef will automatically "bake" for you and produce the output immediately.
      • This can be turned off and operated manually if it is affecting performance (if the input is very large, for instance).
    • Automated encoding detection
      • CyberChef uses a number of techniques to attempt to automatically detect which encodings your data is under. If it finds a suitable operation that make sense of your data, it displays the 'magic' icon in the Output field which you can click to decode your data.
    • Breakpoints
      • You can set breakpoints on any operation in your recipe to pause execution before running it.
      • You can also step through the recipe one operation at a time to see what the data looks like at each stage.
    • Save and load recipes
      • If you come up with an awesome recipe that you know you’ll want to use again, just click "Save recipe" and add it to your local storage. It'll be waiting for you next time you visit CyberChef.
      • You can also copy the URL, which includes your recipe and input, to easily share it with others.
    • Search
      • If you know the name of the operation you want or a word associated with it, start typing it into the search field and any matching operations will immediately be shown.
    • Highlighting
    • Save to file and load from file
      • You can save the output to a file at any time or load a file by dragging and dropping it into the input field. Files up to around 2GB are supported (depending on your browser), however, some operations may take a very long time to run over this much data.
    • CyberChef is entirely client-side
      • It should be noted that none of your recipe configuration or input (either text or files) is ever sent to the CyberChef web server - all processing is carried out within your browser, on your own computer.
      • Due to this feature, CyberChef can be downloaded and run locally. You can use the link in the top left corner of the app to download a full copy of CyberChef and drop it into a virtual machine, share it with other people, or host it in a closed network.

    Deep linking

    By manipulating CyberChef's URL hash, you can change the initial settings with which the page opens. The format is https://gchq.github.io/CyberChef/#recipe=Operation()&input=...

    Supported arguments are recipe, input (encoded in Base64), and theme.

    Browser support

    CyberChef is built to support

    • Google Chrome 50+
    • Mozilla Firefox 38+

    Node.js support

    CyberChef is built to fully support Node.js v24 and is also tested against Node.js v26 ahead of it becoming the active LTS release. For more information, see the "Node API" wiki page

    Security

    Please see the CyberChef security policy.

    Contributing

    Contributing a new operation to CyberChef is super easy! The quickstart script will walk you through the process. If you can write basic JavaScript, you can write a CyberChef operation.

    An installation walkthrough, how-to guides for adding new operations and themes, descriptions of the repository structure, available data types and coding conventions can all be found in the "Contributing" wiki page.

    • Push your changes to your fork.
    • Submit a pull request. If you are doing this for the first time, you will be prompted to sign the GCHQ Contributor Licence Agreement via the CLA assistant on the pull request. This will also ask whether you are happy for GCHQ to contact you about a token of thanks for your contribution, or about job opportunities at GCHQ.

    Licencing

    CyberChef is released under the Apache 2.0 Licence and is covered by Crown Copyright.