SoatDev IT Consulting
SoatDev IT Consulting
  • About us
  • Expertise
  • Services
  • How it works
  • Contact Us
  • News
  • November 13, 2023
  • Rss Fetcher

The latest episode of Darknet Diaries interviews someone using the pseudonym Default. He says in the interview that he had nearly a thousand Bitcoins (about $36 M) in a wallet stored on an external hard drive that was seized by federal agents when they raided his home. Default went to prison for five years for some audacious hacking, but now he’s out and the feds won’t give him his hard drive back.

Default isn’t the only person who has lost a fortune because he lost a number. It’s fairly common.

If Default had memorized his account number(s) he’d be rich today. Memorizing a Bitcoin address would take some work, but I’d do it for a million dollars. I’d do it for a whole lot less than that because it’s not that much work.

How long is a Bitcoin address?

A Bitcoin address is essentially [1] a 200-bit number encoded in base 58. Why base 58? That’s 10 digits, 26 lower case letters, and 26 upper case letters, with four visually similar characters removed. The characters 1, l, and I are similar, as are 0, o, and O. Base 58 keeps the numeral 1 and the lower case letter o and discards the characters that look similar to these. More on base 58 encoding here.

So you can think of a Bitcoin address as either a 200-bit number or a string of 34 alphanumeric characters.

I’ll present two ways to memorize this 200-bit number.

Base 58

The most direct approach would be to memorize the address in its base 58 form. This is a string of 34 alphanumeric characters. As I mention here, I memorize numbers using the Major system, and letters using the NATO alphabet. To distinguish lower case and upper case I have two variants of each NATO name, a large object for capital letters and a small object for lower case letters. For example, golf cart for G and golf ball for g.

Decimal

A 200-bit number corresponds to a 60-digit number. It’s easier to memorize 60 digits than to memorize 34 alphanumeric characters because the digits can easily be chunked into groups whereas the alphanumeric characters cannot.

You can go back and forth between base 58 encoding of an address and hexidecimal using this online calculator and you can go between hexadecimal and decimal easily in any programming language.

For example, I typed the address

    1MycacnJaSqwwJqjawXBErnLsZ7RkXUAs

into the online calculator and got back

   00F54A5851E9372B87810A8E60CDD2E7CFD80B6E31C7F18FE8

Then I appended 0x to this and typed it into the Python REPL to get a decimal number.

   
    >>> 0x00F54A5851E9372B87810A8E60CDD2E7CFD80B6E31C7F18FE8
    6014503356492732657644518984173176634541310227850984525800

There are two ways to group digits for memorization: regularly and irregularly.

Irregular grouping

The Major system for memorizing numbers is typically presented using irregular grouping. You convert each digit into a consonant sound and improvise a way a grouping the consonants into words. Some words may encode one or two digits, some three digits. You might get lucky occasionally and be able to group four digits into a single word. Then you create mental images that string the words together.

In the example above, you might divide the number into 60 1450 33 … which you could encode as “goose drills mummy …” and maybe you’d imaging a goose as a drill sergeant, barking at a mummy soldier, etc.

Regular grouping

It’s easy to get started with irregular grouping, but regular grouping has its advantages. You might group your 60 digits into 30 pairs or 20 triples. If you’re using two-digit groups, you might have a rule that only the first two consonant sounds count, giving yourself the freedom to use words that have more than two consonant sounds. Of course you could have an analogous rule for three digits.

If you break a 60-digit address into 20 three-digit numbers, and convert each three-digit number to a word, you have to memorize a sequence of 20 words. Choose words that are easy to visualize, and you have to remember a sequence of 20 images. That takes some effort, but people go to greater effort to save Bitcoin addresses.

Related posts

  • Memorize ASCII
  • Memorize Unicode
  • Creating mnemonic images with Midjourney

[1] You can find details here. You start with the output of a 160-bit hashing algorithm, and add 40 bits of checksum and version information. The encoding is not strictly base 58 encoding but rather Base 58 Check, which at its core is base 58 encoding.

Photo by Lukas Eggers on Unsplash

The post How to memorize a Bitcoin address first appeared on John D. Cook.

Previous Post
Next Post

Recent Posts

  • Standard Bank Group Adjusts its Executive Retirement Age
  • German data protection official wants Apple, Google to remove DeepSeek from the country’s app stores
  • OpenAI hires team behind AI recommendation startup Crossing Minds
  • Meta in talks to acquire voice cloning startup Play AI
  • Tyme Group Named One of TIME Magazine’s 100 Most Influential Companies of 2025

Categories

  • Industry News
  • Programming
  • RSS Fetched Articles
  • Uncategorized

Archives

  • June 2025
  • May 2025
  • April 2025
  • February 2025
  • January 2025
  • December 2024
  • November 2024
  • October 2024
  • September 2024
  • August 2024
  • July 2024
  • June 2024
  • May 2024
  • April 2024
  • March 2024
  • February 2024
  • January 2024
  • December 2023
  • November 2023
  • October 2023
  • September 2023
  • August 2023
  • July 2023
  • June 2023
  • May 2023
  • April 2023

Tap into the power of Microservices, MVC Architecture, Cloud, Containers, UML, and Scrum methodologies to bolster your project planning, execution, and application development processes.

Solutions

  • IT Consultation
  • Agile Transformation
  • Software Development
  • DevOps & CI/CD

Regions Covered

  • Montreal
  • New York
  • Paris
  • Mauritius
  • Abidjan
  • Dakar

Subscribe to Newsletter

Join our monthly newsletter subscribers to get the latest news and insights.

© Copyright 2023. All Rights Reserved by Soatdev IT Consulting Inc.