You are here

drupal planet

Bitcoin transaction forwarding

Submitted by jbrown on Tue, 02/10/2015 - 07:54

Forwarding of individual Bitcoin transactions to one or more addresses is a new feature in Coin Tools.

Because it spends the outputs from the transaction that is being forwarded instead of making a regular payment from the wallet pool of unspent outputs it is not necessary to wait for confirmations before sending the new transaction. If the original transaction did not ultimately make it onto the blockchain then the forwarding transaction would also not make it onto the blockchain.

Using Bitcoin dust transactions to prevent website spam

Submitted by jbrown on Fri, 01/30/2015 - 10:49

I quite often use Mollom to prevent spam submissions on contact and comment forms. It works pretty well, but some spam still gets through.

An alternative anti-spam technique is to require a Bitcoin dust transaction before an unprivileged user can POST a form. The value of such a transaction would only be about $0.001 USD. For a non-spammer this cost is fine, but for a spammer this is enough to make it totally uneconomical as they need to send out millions of posts.

Using HD Bitcoin wallets with Drupal Coin Tools

Submitted by jbrown on Wed, 01/07/2015 - 13:10

Each Coin Tools payment needs its own Bitcoin address. This is necessary so that it is clear whether or not the payment has been completed. It is also important for preserving anonymity.

In order to participate in the Bitcoin network, a Drupal website must talk to a Bitcoin node. Currently Coin Tools utilises the reference implementation, bitcoind.

bitcoind has wallet functionality built in. In fact, it was originally released as a desktop wallet for Microsoft Windows. By default, bitcoind will pre-generate a pool of 100 pairs of addresses and corresponding private keys. This pool will be increased as necessary.

This presents a number of problems. If data-loss were to occur on the server, the private keys could be unrecoverable and therefore the funds stored on the addresses would be unspendable. If a hacker gains access to the server they could copy the keys and steal the funds. The private keys can be encrypted, but the password is exposed on the server when generating new keys and spending funds.

Drupal / Bitcoin BIP 70 / PKI certificates

Submitted by jbrown on Mon, 11/03/2014 - 14:00

BIP 70 provides a mechanism so that a customer can be sure that they are sending a Bitcoin payment to the correct place. Before BIP 70, the customer would simply be presented with a Bitcoin address to send the amount to. This address could potentially be tampered with so the funds get sent to someone else. It is also not very user-friendly to be sending money to a random collection of letters and numbers.

Update on Drupal / Bitcoin Payment Protocol (BIP 70) integration

Submitted by jbrown on Thu, 10/30/2014 - 17:03

BIP 70 describes a high-level payment system for Bitcoin. It uses Protocol Buffers and X.509 certificates for the following major improvements:

  • Human-readable payment destinations instead of Bitcoin addresses
  • Resistance from man-in-the-middle attacks
  • Payment received messages sent back to the wallet
  • Refund addresses

Drupal & Bitcoin

Submitted by jbrown on Mon, 09/15/2014 - 14:46

Almost everything we do on the web will work better with autonomous blockchain technologies such as Bitcoin & ethereum because they allow systems to be built with unbreakable rules. Unlike Facebook, Twitter, Airbnb, Uber, PayPal or eBay, no executive authority can step in and say the rules don't apply to you.

Of all the blockchain technologies, Bitcoin is currently the most high profile. It is a massive area of growth in the startup eco-system.

Mozilla Persona

Submitted by jbrown on Sun, 07/14/2013 - 19:52

In Mozilla Chairperson Mitchell Baker's DrupalCon Denver 2012 keynote she announced a new web authentication system they are developing called Mozilla Persona. It's a federated and open standard that respects privacy. I wanted to use this technology for my own projects so I created the Drupal module.


Subscribe to RSS - drupal planet