[Bitcoin micropayments] Source code for a prototype implementation of a Bitcoin micropayments system
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


Monetization on the Modern Web: Automated Micropayments from Bitcoin-Enabled Browsers

A prototype implementation of a Bitcoin miropayments-based monetization system for online content.

The client-side software enables users to pay for access to web resources (e.g. news articles, API endpoints, live video streams) in Bitcoin, without entering into a long-standing contract with the content provider. The server-side software enables hosts to charge clients for usage in a granular, secure, scalable way.

This repository links to the four software components of the system:

  • Monetized webpage - a sample webpage supported by two independent monetization schemes - 1) Google AdSense advertising and 2) a backing payments server that renders an ad-free version of the page if a visitor pays the requested Bitcoin fee. We implemented the page as a single-page Node.js webapp hosted on Heroku.
  • Client browser extension - a Chrome extension installed by the user that funds her usage of payable web services, by adding proof-of-payment to the headers of outgoing HTTP requests.
  • Payments server - a backend process that handles billing and payments for the monetized page or resource. Our implementation is built with Python and Flask, and uses the 21 Bitcoin Library.
  • Client payment module - a software module with access to a client's Bitcoin wallet that issues payment transactions and generates proof-of-payment.

Client-Server Setup

For more information, please see Section 5 of our paper.

Institution: Department of Computer Science, Princeton University