Have you ever wanted to hide a message in plain sight? Or maybe just look super cool using the command line like a digital ninja? 😎 In this post, I’ll show you how to encode and decode files using the Windows command line — no extra software required!
We’re not doing anything fancy like encryption here — we’re just encoding data using a format called Base64. It’s a neat way to turn your files into a scrambled-looking format that’s still perfectly reversible.
Let’s jump right in!
Step 1: Create a File to Encode
First, let’s make a little text file that contains a top secret message.
Open a Command Prompt window and type the following:
echo This is a secret message! > secret.txt
That creates a file called secret.txt
in your current folder, containing the sentence:
This is a secret message!
You can peek inside it just to be sure:
type secret.txt
You should see your message printed back at you.
Step 2: Encode It Using certutil
Here’s where the magic happens.
Windows has a built-in utility called certutil
that, among many other things, can encode files in Base64 format. Try this:
certutil -encode secret.txt secret_encoded.txt
Output:
Input Length = 28
Output Length = 98
CertUtil: -encode command completed successfully.
That command tells Windows to take the file secret.txt
, encode it using Base64, and save the result as secret_encoded.txt
.
Open secret_encoded.txt
in Notepad or use type
to look at it:
type secret_encoded.txt
Output:
-----BEGIN CERTIFICATE-----
VGhpcyBpcyBhIHNlY3JldCBtZXNzYWdlISANCg==
-----END CERTIFICATE-----
Congratulations — you’ve just encoded your first file like a secret agent 🕶️
Step 3: Decode It Back to the Original
Now let’s bring it back from its encoded form.
Use this command:
certutil -decode secret_encoded.txt secret_decoded.txt
Output:
Input Length = 98
Output Length = 28
CertUtil: -decode command completed successfully.
This tells Windows to take the Base64-encoded file and turn it back into plain text.
To confirm it worked:
type secret_decoded.txt
Output:
This is a secret message!
Bonus: Compare Files
Let’s compare the original and decoded files to be sure they’re identical.
Use the fc
command:
fc secret.txt secret_decoded.txt
Output:
Comparing files secret.txt and SECRET_DECODED.TXT
FC: no differences encountered
If you get the message no differences encountered
, then everything worked perfectly.
⚠️ Quick Notes Before You Get Carried Away
- Encoding is not encryption: Don’t use this to protect sensitive data. Base64 is easily reversible.
- You can use this trick with text files, scripts, even small binary files — but be aware that the encoded version will be bigger in size.
- Wanna get fancier? PowerShell and tools like
openssl
offer even more control, but we’ll save that for another post.
Wrap-Up
That’s it — now you know how to use the Windows command line to encode and decode files like a pro. It’s a simple trick, but super useful for learning and a great stepping stone toward understanding data transformation and security basics.
Got any cool uses for this? Or want to see the PowerShell version next? Let me know in the comments!