Bitcoin Forum
November 03, 2024, 11:09:55 AM *
News: Latest Bitcoin Core release: 28.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Human-readable bitcoin hashes  (Read 1322 times)
crazyideas21 (OP)
Newbie
*
Offline Offline

Activity: 33
Merit: 0


View Profile WWW
January 11, 2013, 06:06:32 AM
Last edit: January 11, 2013, 06:56:57 AM by crazyideas21
 #1

Hash strings are everywhere on the bitcoin network, e.g. transaction IDs, block IDs and wallet addresses. They are hard to read, recognize and remember, especially if you're dealing with lots of them every day. Moreover, it's difficult to verbally reference these strings to another person.

I have developed a Chrome extension turns any hash string into four short English words:

https://chrome.google.com/webstore/detail/happyhashes/nopdpmfhmopklpghdlakpbcjbdjhflhn

For instance, a bitcoin wallet address "13RWC...dLrkr" is transformed into "@_Dozen_Concord_Flavor_Hint". You can talk about it with a colleague by saying the four words, rather than the long string. Any verbal communications as such are clear and convenient.

Also, four words are easier to read, recognize and remember. For example, a suspicious payout address simply stand out, making it faster to spot any recurring patterns.

This extension is ideal for developers and researchers who have to deal with lots of bitcoin hashes on a regular basis. I'd like to share the first version of it and seek my fellow researchers/developers' opinion, before I expand the project.

(Note that a hash corresponds to a unique combination of four English words, but one such combination may be mapped to multiple hashes. It is unlikely that you will run into collisions, which happen once in 24,000^4 hashes.)
cbeast
Donator
Legendary
*
Offline Offline

Activity: 1736
Merit: 1014

Let's talk governance, lipstick, and pigs.


View Profile
January 11, 2013, 06:10:26 AM
 #2

 Shocked really?!

Any significantly advanced cryptocurrency is indistinguishable from Ponzi Tulips.
grondilu
Legendary
*
Offline Offline

Activity: 1288
Merit: 1080


View Profile
January 11, 2013, 06:26:59 AM
Last edit: January 11, 2013, 06:50:34 AM by grondilu
 #3

Where did you get your 24,000-words list?

crazyideas21 (OP)
Newbie
*
Offline Offline

Activity: 33
Merit: 0


View Profile WWW
January 11, 2013, 06:54:59 AM
 #4

For this current version, I'm using the American English dictionary that is built into Unix. Only words with at most seven letters are selected.
2weiX
Legendary
*
Offline Offline

Activity: 2058
Merit: 1005

this space intentionally left blank


View Profile
January 11, 2013, 07:13:35 AM
 #5

that is very awesome.
grondilu
Legendary
*
Offline Offline

Activity: 1288
Merit: 1080


View Profile
January 11, 2013, 07:25:04 AM
 #6


I can't believe this has not been done already.  I had no idea the risk of collision could be that low with just four english words.

BkkCoins
Hero Member
*****
Offline Offline

Activity: 784
Merit: 1009


firstbits:1MinerQ


View Profile WWW
January 11, 2013, 07:39:17 AM
 #7

Well, you also need to be sure you're using identical dictionaries. So best have a fixed url to a standardized wordlist that doesn't change so devs can create other tools. Any dictionary built in to linux can easily change so isn't reliable for this.

grondilu
Legendary
*
Offline Offline

Activity: 1288
Merit: 1080


View Profile
January 11, 2013, 07:43:51 AM
 #8

Well, you also need to be sure you're using identical dictionaries. So best have a fixed url to a standardized wordlist that doesn't change so devs can create other tools. Any dictionary built in to linux can easily change so isn't reliable for this.

Indeed.  Similar issues occured with electrum, but it is not that important here since this is not a critical application.  It's only a convenient way to display bitcoin addresses.  One should not rely on it too hard.

crazyideas21 (OP)
Newbie
*
Offline Offline

Activity: 33
Merit: 0


View Profile WWW
January 11, 2013, 07:55:04 AM
 #9

The word list is embedded as an array in a javascript within the plugin itself.
grondilu
Legendary
*
Offline Offline

Activity: 1288
Merit: 1080


View Profile
January 11, 2013, 08:19:35 AM
 #10

In the "details" section tab, I'm told that your extension can access my data on all websites.

What for?

crazyideas21 (OP)
Newbie
*
Offline Offline

Activity: 33
Merit: 0


View Profile WWW
January 11, 2013, 08:40:34 AM
 #11

The extension has to access the data in all tabs. From this raw data, the extension searches for hashes, converts them into English words, and updates the pages accordingly. You can actually inspect the javascript source code in Chrome's extension directory. The extension does not make any network connections. No information ever leaves your computer.
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!