Author

Topic: HandyDandy a tool to work with entropy (Read 183 times)

legendary
Activity: 1040
Merit: 2785
Bitcoin and C♯ Enthusiast
January 04, 2022, 06:44:23 AM
#6
Sorry for a late reply, it's been challenging to find free time lately and I'm working on 5 projects in parallel which is an additional challenge. Thanks everyone for your feedback, I've released the second beta, v0.2.0.0 with the following changes:

  • Added a new input type with keyboard which captures keys pressed and treats all keys as 1 except 0, space and escape keys which are treated as 0.
  • There are 2 buttons that let you fill all bits with either 0 or 1.
  • The result or checksum are not longer dynamically computed. You have to click Finalize button to calculate checksum and get the final result.
  • Each view is now cached so even if the options are changed, the bits that are already set will not change
Yeah like bitaddress or maybe something similar like MrFreeDragon VisualBTC program but with some improvements.
While implementing this I experienced some bugs while capturing mouse event so this option will be postponed for next release.
legendary
Activity: 2212
Merit: 7064
November 28, 2021, 01:25:04 PM
#5
You mean something like what bitaddress.org does? I guess I could add a canvas and track mouse movement then combine it with a strong random entropy generated programmatically.
Yeah like bitaddress or maybe something similar like MrFreeDragon VisualBTC program but with some improvements.

Well, generating entropy by hand is slow. 128 to 256 bits is 128 to 256 coin flips. However I will add an option to use 6-16 sides die to reduce the effort.
Yeah I know it's usually a slower process, and my suggestion should only be optional for people who want to speed things up just a bit.
Maybe you should also add some information that it's better to use program on offline computer for generating seed words for cold storage.
legendary
Activity: 2870
Merit: 7490
Crypto Swap Exchange
November 28, 2021, 04:05:00 AM
#4
Neat tool, but definitely need improvement. Here are few feedback,
1. I really don't want to press "left click" at least 128 times. Consider keyboard support or other way to reduce press amount (such as drawing which already suggested).
2. Add option to fill all "?" with 0 or 1.
3. Do not discard user progress when they switch between BinaryGrid and GroupedBinary.
legendary
Activity: 1040
Merit: 2785
Bitcoin and C♯ Enthusiast
November 28, 2021, 12:44:51 AM
#3
Interesting tool but how can I confirm it is really giving me true random results?
It is not producing the entropy, the user produces each bit by random (like by flipping a coin) and the program converts the bit-stream to whatever they need.

I tried generating few Private Keys and Mnemonic words but it always giving me number 1 (head)with one click, and I have to click again to get number 0 (tails).
That is how it is supposed to work. You flip your coin and if it came up heads you click the button once to set it to 1, if it came up tails you click it twice to set it to 0.

My suggestion is to add optional function of ''drawing'' so I could generate private keys with holding mouse button and moving around fields.
You mean something like what bitaddress.org does? I guess I could add a canvas and track mouse movement then combine it with a strong random entropy generated programmatically.

This would be faster for generating than it is currently.
Well, generating entropy by hand is slow. 128 to 256 bits is 128 to 256 coin flips. However I will add an option to use 6-16 sides die to reduce the effort.
legendary
Activity: 2212
Merit: 7064
November 27, 2021, 02:59:44 PM
#2
Interesting tool but how can I confirm it is really giving me true random results?
I tried generating few Private Keys and Mnemonic words but it always giving me number 1 (head)with one click, and I have to click again to get number 0 (tails).
My suggestion is to add optional function of ''drawing'' so I could generate private keys with holding mouse button and moving around fields.
This would be faster for generating than it is currently.
legendary
Activity: 1040
Merit: 2785
Bitcoin and C♯ Enthusiast
November 27, 2021, 11:11:41 AM
#1
Handy Dandy is a tool that helps visualize and work with data in different formats that are used in Bitcoin protocol such as private keys and mnemonics.

A potential use case is offline generation of private keys or mnemonics using a coin flip.
User selects what result they want to generate (eg. a 15-word BIP-39 mnemonic) by selecting the appropriate options on top of the window and the program automatically generates appropriate number of bits to be set. In this example it is 165 bits (160 bit entropy + 5 bit dynamically computed checksum).
Then the user has to flip a coin and set each bit. For example
Heads: 1
Tails: 0
Heads: 1
Heads: 1


As each bit is being set, the respective value is also printed as integer, hexadecimal and BIP-39 word.
After all bits were set the final result will be printed in the result TextBox at the bottom of the page and can be copied.



Source code and compiled binaries can be found here: https://github.com/Coding-Enthusiast/HandyDandy
This project is in beta. Please report any bugs you find here or on GitHub

If You found this tool helpful consider making a donation:
Legacy address: 1Q9swRQuwhTtjZZ2yguFWk7m7pszknkWyk
SegWit address: bc1q3n5t9gv40ayq68nwf0yth49dt5c799wpld376s

The idea for project was influenced by: https://bitcointalksearch.org/topic/bitcoin-visual-private-key-generator-5187401
Jump to: