Copyright Yourself with BitCoin (et. al) - No more registrars needed

Looking at Bitcoin addresses and the way they are constructed, we can easily write a bash script that generates a valid address from any SHA-256 hash.

ripemd160=`echo -n $initialsha | xxd -r -p | openssl rmd160 -binary | xxd -p`  
extripemd160=`echo 00$ripemd160`  
finalsha=`echo $extripemd160 | xxd -r -p | openssl sha256 -binary | openssl sha256 -binary | xxd -p`

We now need to encode that in Base58 and add a '1' in front of it:

base58=({1..9} {A..H} {J..N} {P..Z} {a..k} {m..z})
EncodeBase58() {  
    # 58 =0x3A  
    bc <<<"ibase=16; n=${1^^}; while(n>0) { n%3A ; n/=3A }" |  
    tac |  
    while read n  
    do echo -n ${base58[n]}  
address=$(EncodeBase58 $btc25)  
echo $btcaddress  

It is then sufficient to send any little amount of BTC to this address to permanently store a one-way derivative of the initial hash into the live block chain. We then get a worldwide checkable timestamp of the initial hash.

How to get a copyright then ? A copyright must guarantee the anteriority of a document (the timestamp), as well as the author. As an example, let us consider a GPL software or a CC-BY music. Before publishing your work, just generate a gnupg certificate with your name, construct a message containing the document hash and the type of licence you choose, sign it, and hash the result (you can publish it as your Copyright).

cat | gpg --sign -armor | sha256sum > initialsha.txt  
    user: "FirstName Surname <>"  
    1024-bit DSA key, ID 2AEC2964, created 2007-02-13  
This is my work SHA256 hash:  
This is the licence I choose:  
initialsha=`cat initialsha.txt`  
echo $initialsha  

Running the above scripts with that hash we get the BTC address 1N7U25T5qCYZvBFviDTkXbvQBXhGHMksoW. Just send 0.0001 BTC to that address and you are done. The guarantee relies on the fact that the whole BTC network time is valid (therefore the timestamp too), and that the transaction is permanently and publicly stored in a unbreakable chain (as long as the BTC story holds...).

Comments !