Posts

How to put custom messages into Bitcoin blockchain - OP_RETURN

I have spent last few days looking very closely at OP_RETURN features. This blogpost summarizes my findings and thoughts. Bitcoin transactions – recap Every bitcoin transaction creates outputs (called transaction outputs, sometimes called txout) from one or more transaction inputs. All except one type of these transaction output types will create spendable outputs (called unspent transaction outputs – UTXO), the type that behaves differently is OP_RETURN The UTXO are tracked and stored by every full node (btcd or bitcoin-core/satoshi client).

Add code coverage metrics to your maven project

While working on the bitcoinj project I have added support for code coverage collection and tracking. This post summarizes steps you have to take to add that for your own maven projects. Figure out what type of code coverage you want For the bitcoinj library it is important to have a “unit test coverage” - it works by verifying which parts of the source code are reached during unit testing phase during build process.

Signing Android App With Gradle Using CLI

Recently I stumbled upon a problem of creating a signed Android app via command line, after spending some time on this, I have decided to post following tutorial. This problem exist in 2 situations. For example when you want to share your application publicly, but do not want to share any details about your signing key or you would like to automate building process using some kind of CI server.

DynDNS at OVH

When you want to use a domain name with dynamic IP address, very often you’ll either have to use one of paid or free providers like http://dyndns.com/, http://duckdns.org/, etc… But it turns out that most of DNS providers offer dynamic DNS solution, in many cases it’s not very widely advertised. I use OVH for my domains, and after some time spend looking around, it turns out that they also support dynamic DNS.

How to setup a Dogecoin node

Note: Setting up Dogecoin, Litecoin and Bitcoin nodes is very similar, you can check my other blog posts. This tutorial describes how to setup a new Dogecoin relay node on Linux server - this node will be used as relay node in the Dogecoin network and it’s not recommended to store anything in it’s wallet. Download Dogecoin from official website: http://dogecoin.com/">http://dogecoin.com/ At the moment the most recent version can be downloaded using this direct link: https://github.

How to run Transmission torrent server on Linux server

This post is a quick tutorial on how to install and configure Transmission torrent client on Linux (Debian, Ubuntu) server in headless mode. Create directory to store downloads: mkdir ~/Downloads Install transmission (run as root or with sudo): apt-get install transmission-daemon Add your user to debian-transmission group (run as root or with sudo): usermod -a -G debian-transmission user Setup correct permissions to Downloads folder, for starters I suggest setting 777:

How to setup a Bitcoin node

This tutorial describes how to setup a new Bitcoin node on Linux server - this node will be used as relay node in the Bitcoin network and it’s not recommended to store anything in it’s wallet. Download bitcoin from official website: https://bitcoin.org/en/download At the moment the most recent version can be downloaded using this direct link: https://bitcoin.org/bin/0.9.1/bitcoin-0.9.1-linux.tar.gz">https://bitcoin.org/bin/0.9.1/bitcoin-0.9.1-linux.tar.gz Extract archive: tar xf bitcoin-0.9.1-linux.tar.gz Create bitcoin configuration file: mkdir ~/.bitcoin Create new file in ~/.

How to setup a Litecoin node

Note: Setting up Litecoin and Bitcoin nodes is very similar, you can check my previous post on how to setup a Bitcoin node. This tutorial describes how to setup a new Litecoin relay node on Linux server - this node will be used as relay node in the Litecoin network and it’s not recommended to store anything in it’s wallet. Download Litecoin from official website: https://litecoin.org/">https://litecoin.org/ At the moment the most recent version can be downloaded using this direct link: https://download.

How to verify that SSL certificate matches key

In order to verify that OpenSSL key matches certificate you can run following command: For key: openssl rsa -noout -modulus -in yourdomain.key | openssl md5 and for certificate: openssl x509 -noout -modulus -in yourdomain.crt | openssl md5 and for CSR (Certificate Signing Request): openssl req -noout -modulus -in yourdomain.csr <span style="box-sizing: border-box; color: #2aa198;">| openssl md5</span> In all cases you should get the same output, for example: (stdin)=d41d8cd98f00b204e9800998ecf8427e If the output is the same in all cases this means that keys match certificate.