blobrand.

entropy from desktop chaos
scientists dream of potentialities.
engineers prototype final solutions.
artists hold both at once.

protocol

wire format: 8 bytes. big-endian uint64. UDP port 37373. that is the entire spec.

every second, the capacitor mixes all contributions with /dev/urandom into a SHA-256 chain. each epoch produces a new hash of everything before it. your contribution changes what everyone else derives next — and what this page suggests next.

self-referential entropy

the commands below derive from three independent sources mixed at the moment of each epoch:

  1. chain state — the cumulative SHA-256 of every value ever mixed, updated each second
  2. session secret — 32 bytes from crypto.getRandomValues, unique to this browser tab, never transmitted
  3. timestamp — millisecond-precision wall clock at derivation time

SHA-256(chain + session + time + counter) produces each value. when you contribute one, it mixes into the next epoch, which changes the chain, which changes what this page derives, which if contributed again creates a cascade. the old values cease to exist. the rate limiter (3/sec) prevents flooding — you contribute, you watch, you contribute again with fresh data.

this proves the chain accepts self-referential input safely. derived values carry entropy from all three sources. even two browsers viewing the same page derive completely different values. the chain cannot degenerate because /dev/urandom mixes into every epoch regardless.

contribute

copy a command, paste into a terminal. watch the chain advance. your old command vanishes, replaced by one derived from the new chain state + your session + the current time.


    

    

    

consume

stream entropy via server-sent events:

curl -N https://blobrand.com/entropy/stream

poll the current chain state:

curl https://blobrand.com/entropy/chain

check pool health:

curl https://blobrand.com/entropy/status | python3 -m json.tool

these bytes are public — every reader gets the same ones. that makes them useful for shared draws, coordination without a coordinator, and verifiable shuffles, and useless as key material. the consumer guide covers every use with code, and the ones that will burn you.

automate

run deskblob to harvest entropy from desktop chaos continuously:

cd ~/git/deskblob && make run-capacitor

or feed /dev/urandom into the pool (single socket, one contributor ID):

python3 -uc "import socket,time,os,sys;s=socket.socket(socket.AF_INET,socket.SOCK_DGRAM);n=0
while True:b=os.urandom(8);s.sendto(b,('blobrand.com',37373));n+=1;sys.stdout.write('\r#'+str(n)+' '+b.hex());sys.stdout.flush();time.sleep(1)"
live entropy stream
copied to clipboard