Skip to content

Instantly share code, notes, and snippets.

View lukem512's full-sized avatar

Luke lukem512

View GitHub Profile
@lukem512
lukem512 / OneName Verification
Created August 30, 2014 21:19
OneName Verification
Verifying that +lukecrypto is my Bitcoin username. You can send me #bitcoin here: https://onename.io/lukecrypto
@lukem512
lukem512 / alert.cpp
Created September 2, 2014 14:41
Generate Alert Tests in Bitcoin Core (SignAndSave alternative)
// Sign CAlert with stored private key
bool SignAlert(CAlert &alert)
{
// key in WIF format
const char* pszPrivKey = "";
// serialize alert data
CDataStream sMsg(SER_NETWORK, PROTOCOL_VERSION);
sMsg << *(CUnsignedAlert*)&alert;
alert.vchMsg = std::vector<unsigned char>(sMsg.begin(), sMsg.end());
@lukem512
lukem512 / OP_RETURN.js
Last active May 26, 2018 07:07
OP_RETURN using Bitcore
// Extend the TransactionBuilder class to include OP_RETURN scripts.
// The two parameters are the amount to use for the output and the data
// to push onto the blockchain.
// This is done inside bitcore/lib/TransactionBuilder.js
TransactionBuilder.prototype.setUnspendableOutput = function(amount, msg) {
var valueOutSat = bignum(0);
var txobj = {};
txobj.version = 1;
txobj.lock_time = this.lockTime || 0;
txobj.ins = [];
@lukem512
lukem512 / watcher.html
Created March 24, 2015 09:44
Insight Payment Watcher for StartCOIN
<html>
<head>
<title>StartCOIN Payment Watcher</title>
<script src="https://cdn.socket.io/socket.io-1.3.4.js"></script>
<script>
// Create an XML request
var createRequest = function() {
var result = null;
if (window.XMLHttpRequest) {
// FireFox, Safari, etc.
@lukem512
lukem512 / currencies.json
Last active August 29, 2015 14:18
StartCOIN Ticker
{
"START": "StartCOIN",
"BTC": "Bitcoin",
"USD": "US Dollar",
"EUR": "Eurozone Euro",
"GBP": "Pound Sterling",
"JPY": "Japanese Yen",
"CAD": "Canadian Dollar",
"AUD": "Australian Dollar",
"CNY": "Chinese Yuan",
@lukem512
lukem512 / main.cpp
Last active November 17, 2018 18:14
Ban address in Bitcoin
// Check that the destination is not banned
bool IsDestinationBanned(CScript scriptPubKey)
{
txnouttype typeRet;
vector<CTxDestination> addressRet;
int nRequiredRet;
if (!ExtractDestinations(scriptPubKey, typeRet, addressRet, nRequiredRet))
// Could not extract destinations
return true;
@lukem512
lukem512 / list.c
Created April 13, 2015 09:45
Linked List ADS
// Luke Mitchell
// Linked List
// 22-11-2011
// edited 12/12/2011 for CW1 [100%]
// edited 27/12/2011 for CW2
#ifndef LIST_H
#define LIST_H
/* Includes */
@lukem512
lukem512 / elf_hash.c
Created April 13, 2015 09:47
Hash Table ADS
int hash (int table_size, char* data)
{
unsigned h = 0, g;
int len = strlen (data);
int i;
for ( i = 0; i < len; i++ ) {
h = ( h << 4 ) + data[i];
g = h & 0xf0000000L;
@lukem512
lukem512 / tree.c
Last active August 29, 2015 14:19
Binary Tree ADS
/*
*
* Principles of programming, coursework 1 [100%]
* Luke Mitchell - lm0466
* 08/12/2011
*
*/
#include <stdio.h>
#include <string.h>
@lukem512
lukem512 / Shell
Last active February 20, 2016 12:58
Convert an image into a favicon with multiple sizes using ImageMagick
convert image.png -bordercolor white -border 0 \
\( -clone 0 -resize 16x16 \) \
\( -clone 0 -resize 32x32 \) \
\( -clone 0 -resize 48x48 \) \
\( -clone 0 -resize 64x64 \) \
-delete 0 -colors 256 favicon.ico