Skip to content

Instantly share code, notes, and snippets.

View adlai's full-sized avatar
☠️
"My happiness should not be your concern"

Adlai adlai

☠️
"My happiness should not be your concern"
View GitHub Profile
@adlai
adlai / JMsnoopmitigation.md
Last active April 7, 2021 13:18 — forked from AdamISZ/JMsnoopmitigation.md
Snooping attacks on joinmarket - mitigation ideas.

I DID NOT WRITE THIS DOCUMENT!

IF YOU WISH TO READ THE ORIGINAL,

SEARCH POLITELY THROUGH THE METADATA.

@adlai
adlai / gist:7df4892d8dc953476895d61d41fba721
Created October 6, 2017 12:14 — forked from LaurentMT/gist:e8644d5bc903f02613c6
Bitcoin Transactions & Privacy (part 3)
Context
This third part is about known and potential attacks against the privacy provided by tools like coinjoin.
Known attacks & weaknesses
- Linkability of inputs and outputs
A good illustration of this attack is Coinjoin Sudoku (see (1) for details).
@adlai
adlai / gist:2a513d455269b1c3dd2252c1eee46445
Created October 6, 2017 12:14 — forked from LaurentMT/gist:d361bca6dc52868573a2
Bitcoin Transactions & Privacy (part 2)
Context
In part 1 of this document, we've defined the entropy of a transaction.
This metric is a first good proxy to qualify the degree of privacy provided by a transaction but it fails to detect privacy leaks occuring at lower levels (1).
In this second part, we define 2 complementary fine-grained tools/metrics: the Link Probability of 2 utxos (LP) and the Link Probability Matrix (LPM) of a transaction.
Link Probability of 2 UTXOs
We call Link Probability of a tuple (tx input, tx output) the probability that a link exists between the 2 utxos.
@adlai
adlai / gist:4c084087658a4d85b818b0f2698597c0
Created October 6, 2017 12:14 — forked from LaurentMT/gist:e758767ca4038ac40aaf
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
@adlai
adlai / On-chain-contracting.md
Created October 18, 2017 01:57 — forked from AdamISZ/On-chain-contracting.md
On chain contracting - privacy enhancing use-cases

On-chain contracting for privacy

(thanks to @fivepiece for significant contributions to these ideas)

"On chain contracting" is of course a very generic term; it applies to multisignature, coinjoin, coinswap or other exotic transactions that involve more than one party in one transaction (coinjoin, multisig) or multiple transactions (swaps with atomic-via-secret).

Here we're going to focus on a broader model that may allow more complex setups,