gchq / gchq/CyberChef

Line width option in To Base64

Open
#1,965 2 comments 0 reactions 0 assignees View on GitHub
feature
Dominant language
JavaScript
Stars
35.8k
Forks
4.1k
Avg merge
2d 26m
Merged PRs (30d)
33

Description

To Base64 produces a single unwrapped line of output, which isn't always very convenient to work with, particularly by naive uses who may not fully understand the output box display options. (Sometimes the output is displayed as a single unwrapped overflowing line.)

A great enhancement would be to add a width option, functionally like the -w option on the Linux base64 command.

The same comment may apply to other To Base operations, provided the corresponding From Base operations accept wrapped input.

As an alternative, I looked for an additional recipe I could add in order to linewrap the output of To Base64 but couldn't find one. But since not all Base encodings may allow line wrapping, this is better implemented in the individual To Base operations where valid.

Context:
I was wanting to Base64 encode some .jpg files used in steganography exercises in order to load them into Google Classroom, because Classroom was re-encoding and compressing the .jpg files, destroying hidden flags. A single line up to a few MB long probably would have confused my students and possibly Google Classroom as well!

Contributor guide

Open the contributing guide

Research direction

Start at the To Base64 operation and inspect how its output is presented and how the corresponding From Base operation handles wrapped input. Define the supported width behavior for Base64, then verify that wrapped output remains usable by the matching From Base operation; consider whether other To Base operations should be included.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
frontend
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.