Indexed by TopGit from live GitHub metadata: gchq/CyberChef-server has 177 stars, written primarily in JavaScript. A server providing RESTful access to CyberChef
Snapshot summary built from the project's own GitHub metadata — there's no written TopGit review yet. The page will update automatically when a full review is published.
WHY NO REVIEW YET
TopGit writes full reviews for the most-starred, most-requested repositories. This page is a snapshot until then — see the READ ME tab for the original README in full.
Run CyberChef in a server and provide an API for clients to send Cyberchef recipes to bake.
Motivation
CyberChef has a useful Node.js API, but sometimes we want to be able to programmatically run CyberChef recipes in languages other than JavaScript. By running this server, you can use CyberChef operations in any language, as long as you can communicate via HTTP.
Example use
Assuming you've downloaded the repository and are running it locally:
{
value: "SO LONG, AND THANKS FOR ALL THE FISH",
type: "string"
}
Features
Compatible with recipes saved from CyberChef.
After using CyberChef to experiment and find a suitable recipe, the exported recipe JSON can be used to post to the /bake endpoint. Just copy/paste it in as your recipe property as part of the POST body.
Installing
While the instructions below are straightforward, it's worth understanding what happens under the hood as quirks in the installation process can cause issues with upgrades etc. The upstream CyberChef library uses a postinstall script to manipulate some dependencies after installation. That postinstall script doesn't work when installing CC as a dependency into another project, so we now have our own postinstall process to install the CyberChef library (hence it does not appear in the package.json dependency list).
This process can cause problems when updating libs, so the recommended approach is to remove node_modules and package-lock.json and install from scratch.
Clone the repository
cd into the project and run npm install
Run npm run
In a browser, navigate to localhost:3000 to see usage documentation.
Docker
A Docker image can be built, then run by doing the following:
docker run -it --rm --name=cyberchef-server -p 3000:3000 cyberchef-server
API overview
For full documentation of the API, you can find the swagger page hosted at the root url. See Installing to run the application and browse the docs.
The server has two endpoints: /bake and /magic.
/bake
/bake allows a user to POST some input and configuration for a CyberChef Recipe. The application will run the input through the recipe and return the baked operation.
This endpoint accepts a POST request with the following body:
Parameter
Type
Description
input
String
The input data for the recipe. Currently accepts strings.
recipe
String or Object or Array
One or more operations, with optional arguments. Uses default arguments if they're not defined here.
outputType (optional)
String
The Data Type that you would like the result of the bake to be returned as. This will not work with File or List<File> at the moment.
{
// Be wary, type conversions do not always behave as expected.
"value": 79,
"type": "number"
}
/batch/bake
/batch/bake allows a user to POST multiple input values and a configuration for a CyberChef Recipe. The application will run each elemnt of the input through the recipe and return the results as an array of output objects.
This endpoint accepts a POST request with the following body:
Parameter
Type
Description
input
Array
The input data for the recipe. Currently accepts an array of Strings.
recipe
String or Object or Array
One or more operations, with optional arguments. Uses default arguments if they're not defined here.
outputType (optional)
String
The Data Type that you would like the result of the bakes to be returned as. This will not work with File or List<File> at the moment.
Does gchq/CyberChef-server have a project website?
No homepage URL was recorded for gchq/CyberChef-server in TopGit's last sync. The README tab above frequently contains screenshots and demo links, or check the repository description on GitHub.
Does gchq/CyberChef-server have any tags?
TopGit's last sync did not record any GitHub topics for gchq/CyberChef-server. GitHub topics appear in the right sidebar of a repository page; that's the authoritative place to check.
How active is development on gchq/CyberChef-server?
The most recent commit recorded on gchq/CyberChef-server was 5 days ago, based on the GitHub push timestamp. The repository has 65 forks — one of the better signals of community interest.
Is gchq/CyberChef-server open source?
Yes — gchq/CyberChef-server ships under the Apache-2.0 license, which makes its source code freely readable (and, depending on license terms, forkable and reusable). Source: github.com/gchq/CyberChef-server.
What license does gchq/CyberChef-server use?
gchq/CyberChef-server is released under the Apache-2.0 license. Always verify the LICENSE file directly on GitHub for the authoritative terms — license strings can be edited out of sync with a project's actual stance.
Where do I read more about gchq/CyberChef-server?
This TopGit page is a snapshot — the READ ME tab shows the project's own README content (links stripped, images preserved). The GitHub repository at github.com/gchq/CyberChef-server is the definitive source.
Read full README in the tab above.
Want a second opinion on CyberChef-server?
Ask an AI that can read this page — one click and you get its take on CyberChef-server.