Skip to content

Instantly share code, notes, and snippets.

@stoichammer
stoichammer / Bitcoin-paymail-protocol-and-beyond.md
Last active December 23, 2020 01:30
Bitcoin user-friendly identity, the paymail protocol and beyond!

Bitcoin user-friendly identity, the paymail protocol and beyond!

The article spans across multiple areas, the agenda outline is below:

  • Philosophical underpinnings of online identity. High level view of the evolution of digital identity centralized → federated → self-sovereign (user autonomy).
  • A critique of the paymail protocol, its strengths and limitations
  • Establish the need for a new naming protocol suite with a fundamental focus on user autonomy.
  • An attempt to present dispassionate arguments without social bias
@rohenaz
rohenaz / bitcoin.conf
Last active May 16, 2020 16:09
Bitcoin SV node configuration example - for planaria + ubuntu
# location to store blockchain and other data.
datadir=/home/satchmo/.bitcoin
dbcache=4000
usecashaddr=0
# Must set txindex=1 so Bitcoin keeps the full index
txindex=1
# [rpc]
@deevolutionism
deevolutionism / bitcoinsupply.md
Last active October 18, 2019 04:03
Table that shows the maximum bitcoin supply at the end of each subsidy halving era
block height subsidy era subsidy (sats) total supply (sats)
210000 1 5000000000 1050000000000000
420000 2 2500000000 1575000000000000
630000 3 1250000000 1837500000000000
840000 4 625000000 1968750000000000
1050000 5 312500000 2034375000000000
1260000 6 156250000 2067187500000000
1470000 7 78125000 2083593750000000
1680000 8 39062500 2091796875000000
<!doctype html>
<html lang="en">
<head>
<!-- Required meta tags -->
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<!-- Bootstrap CSS -->
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" integrity="sha384-MCw98/SFnGE8fJT3GXwEOngsV7Zt27NXFoaoApmYm81iuXoPkFOJwJ8ERdknLPMO" crossorigin="anonymo
us">
@markblundeberg
markblundeberg / pgp-checkdatasig.md
Created August 31, 2018 01:23
Using PGP signatures with bitcoin script OP_CHECKDATASIG

Using PGP signatures with bitcoin script OP_CHECKDATASIG

Dr. Mark B. Lundeberg, 2018 August 30 bitcoincash:qqy9myvyt7qffgye5a2mn2vn8ry95qm6asy40ptgx2

Since version 2.1, GnuPG is able to use the very same secp256k1 elliptic curve signature algorithm (ECDSA) as used in bitcoin. Quite soon Bitcoin Cash will add a new script opcode OP_CHECKDATASIG that is able to check signatures not just on the containing transaction, but also on arbitrary data. For fun, let's try to intersect the two signature systems and see what can be done!

Background

OP_CHECKDATASIG signatures

@rohenaz
rohenaz / UserScript-RedditNoPromoted.js
Last active June 4, 2024 15:17
UserScript - Remove Reddit Promoted Post
// ==UserScript==
// @name Reddit Hide Promoted Links (New Design)
// @namespace http://github.com/rohenaz
// @version 0.1
// @description remove promoted posts and advertisements
// @author Satchmo
// @match https://www.reddit.com/*
// @grant none
// ==/UserScript==
@LaurentMT
LaurentMT / gist:e758767ca4038ac40aaf
Last active April 29, 2024 07:45
Bitcoin Transactions & Privacy (part 1)
This document is an attempt to define metrics quantifying the degree of privacy provided by a bitcoin transaction.
Objectives
Definition of metrics measuring the resistance of a transaction to a set of attacks against users privacy.
Attacks considered in the scope of these metrics are:
- Merged Inputs Heuristic: methods identifying the inputs controlled by a same entity
- Coinjoin Sudoku: methods identifying the links existing between the inputs and outputs of a transaction
// Retrieved during authentication:
String authToken = ...
String noteStoreUrl = ...
String userAgent = myCompanyName + " " + myAppName + "/" + myAppVersion;
THttpClient noteStoreTrans = new THttpClient(noteStoreUrl);
userStoreTrans.setCustomHeader("User-Agent", userAgent);
TBinaryProtocol noteStoreProt = new TBinaryProtocol(noteStoreTrans);
NoteStore.Client noteStore = new NoteStore.Client(noteStoreProt, noteStoreProt);