Morning Musings

I'm not ready to wake up yet...

Bitcoin Paper Wallets

| Comments

Paper wallets are a form of cold storage, meaning that the private key has never touched a computer with internet access. This is one of the most secure ways to store Bitcoins when done properly. You should never use a paper wallet you did not create yourself. For that reason, this is a tutorial to create a paper wallet in a secure fashion.

Generate Hashes

| Comments

This is a handy script to recursively generate hashes for a folder tree, in a format that the standard unix tools can use for checking.

Squashed Truecrypt Archive

| Comments

This post presents a script that can create a squashfs filesystem inside of a truecrypt container.
This has many benefits over encrypted zip files as well as normal truecrypt containers:

  • Resulting file can be mounted and accessed directly
    • No need to “unzip” to the hard drive
    • No chance for leaking unencrypted data to the hard drive
  • Achieve both good compression as well as strong encryption
    • Better compression ratio than NTFS, BTRFS, GZIP, BZIP2
  • Truecrypt container is only as large as it needs to be
    • No need to guess the approximate size of the compressed result before compressing
  • Resulting file is immutable
    • Making changes is still possible with an easy workaround, described below

Hex to Mnemonics

| Comments

Hex values are the common representation for things like hashes, fingerprints, and uuids. They are great for machines, but clumsy for humans. In this post, you will find two scripts used to convert a hex string to english words. This is useful for memorization or sharing by voice.

Bitcoin Address to Hash

| Comments

In the previous post, I walked through how to store a hash in the Bitcoin blockchain, by converting the hash to a valid Bitcoin address and sending a small amount of bitcoin to it. I neglected to include a script that goes the other way, so here it is.

Blockchain Identity

| Comments

I stumbled upon Christopher Ellis’ “World Citizenship” Blockchain ID concept and was immediately intrigued. His idea is to create proof of an individual’s existence by storing their PGP identity in the blockchain.

The trick is that the blockchain acts as an immutable database that includes full history tracking, meaning that a record can be proven to exist in some state at some time. These services are similar to this concept:

This post will detail how to create a Blockchain Identity.