Skip to content

Instantly share code, notes, and snippets.

### Keybase proof
I hereby claim:
* I am moocowmoo on github.
* I am moocowmoo (https://keybase.io/moocowmoo) on keybase.
* I have a public key whose fingerprint is 6225 D915 217D CB1A B22A F7FF AE5C 4EE4 7DB5 2172
To claim this, I am signing this object:
@moocowmoo
moocowmoo / convert-xpub-to-drkv.rb
Created January 27, 2016 02:07 — forked from nmarley/conv.rb
Convert Dash BIP32 extended public key version prefix from 'xpub' to 'drkv'
#! /usr/bin/env ruby
# Example of converting Dash BIP32 extended public key (incorrectly) beginning
# with 'xpub' to correct prefix 'drkv'.
#
require 'bitcoin'
# test extended pub key
xpub = 'xpub661MyMwAqRbcF3jZGiw3QBt7nD13a7k8jVt9me27BL1vSeSpviDj6udJ5cnFyr2q2ofw7kMKGUepVhVsbLVsckxGzDmvnpGPr88CJAz1Ab5'
#!/usr/bin/env python2
now_height=460854
now_outstanding=6406809
def min_blok_subsidy(nHeight):
nSubsidy = float(5) # assume minimum subsidy
for i in range(210240, nHeight, 210240):
nSubsidy -= nSubsidy/14
return nSubsidy
Verifying that "moocowmoo.id" is my Blockstack ID. https://onename.com/moocowmoo
#!/usr/bin/env python2
def capture_probability( n_full_set, n_capture_set, rounds):
return (n_capture_set / n_full_set) ** rounds
masternode_count = 4270
if __name__ == "__main__":
for percentage in range (5, 100, 5):
@moocowmoo
moocowmoo / dash-minmax_coin_projection.py
Last active January 8, 2017 22:16
projection of total dash generated if budget is completely allocated (max) or never allocated (min)
# blockchain state at first block of 2017
year_now = 2017
now_height = 596411
now_outstanding = 6990727
# 200423 == average annual block discovery rate across 2 years
avg_blocks_per_year = float(((596411 - 395793) + (395793 - 195565)) / 2)
@moocowmoo
moocowmoo / get_dash_bootstrap.sh
Last active February 12, 2017 01:28
get latest dash blockchain bootstrap.dat from udjinm6's github
#!/bin/bash
# automatically download latest mainnet blockchain bootstrap file
cd ~/.dashcore
if [ ! -e bootstrap.dat ]; then
wget https://raw.githubusercontent.com/UdjinM6/dash-bootstrap/master/links.md -O links.md
MAINNET_BOOTSTRAP_FILE=$(head -1 links.md | awk '{print $11}' | sed 's/.*\(http.*\.zip\).*/\1/')
wget $MAINNET_BOOTSTRAP_FILE
#!/bin/bash
echo "getting checksum list"
wget -q https://github.com/dashpay/dash/releases/download/v0.12.1.5/SHA256SUMS.asc
FILENAMES=$(cat SHA256SUMS.asc | grep dash | awk '{print $2}')
echo "downloading binaries"
@moocowmoo
moocowmoo / tagchain-list.py
Last active July 11, 2017 13:13
block-a-doodle-chain - scan dash core bdb files for P2PK graffiti
#!/usr/bin/env python
# tagchain-list - scan dash core bdb files for P2PK graffiti
from __future__ import print_function
import re
import os
from collections import OrderedDict
from itertools import izip, repeat
@moocowmoo
moocowmoo / bitwalletrecover.py
Created April 17, 2017 01:35 — forked from UdjinM6/bitwalletrecover.py
bitwalletrecover.py - recover compressed private keys from your bitcoin/litecoin/darkcoin wallet. Requires python3, pycoin (https://pypi.python.org/pypi/pycoin), and base58 (https://pypi.python.org/pypi/base58).
## bitwalletrecover.py - recover private keys from your darkcoin wallet
## (this version was not tested with bitcoin/litecoin).
## Requires python3, pycoin (https://pypi.python.org/pypi/pycoin),
## and base58 (https://pypi.python.org/pypi/base58).
##
## Starting with Python 3.4, pip is included by default with the Python binary
## installers. To install pip for older versions 3.x:
##
## sudo apt-get install python3-setuptools
## sudo easy_install3 pip