Skip to content

Instantly share code, notes, and snippets.

✌( ͡ᵔ ͜ʖ ͡ᵔ )✌

Max Ogden maxogden

✌( ͡ᵔ ͜ʖ ͡ᵔ )✌
Block or report user

Report or block maxogden

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
View index.js
const bip39 = require('bip39')
function twelveWords (missing) {
return `fold supreme boat absurd mango menu number brick ${missing} sun gold stone`
function loadWords () {
return `abandon
maxogden / index.js
Created May 24, 2019
ed25519 private and public keys to pem
View index.js
import { composePrivateKey, composePublicKey } from 'crypto-key-composer'
function privateToPem(privateKey) {
var decomposed = {
format: 'pkcs8-pem',
keyAlgorithm: { id: 'ed25519' },
keyData: {
seed: privateKey,
maxogden / index.js
Created May 24, 2019
slip-0010 hdkey ed25519 derivation from seed in javascript
View index.js
var ehdKey = require("@hawkingnetwork/ed25519-hd-key-rn")
var EdDSA = require('elliptic').eddsa
// test vector from
var seed = new Buffer('fffcf9f6f3f0edeae7e4e1dedbd8d5d2cfccc9c6c3c0bdbab7b4b1aeaba8a5a29f9c999693908d8a8784817e7b7875726f6c696663605d5a5754514e4b484542', 'hex')
var ed25519 = new EdDSA('ed25519')
var derived = ehdKey.derivePath("m/0'/2147483647'", seed.toString('hex'))
var keys = ed25519.keyFromSecret(derived.key)
// expected test vector outputs
maxogden / index.js
Created May 17, 2019
secp256k1 encrypt/decrypt with bip32 keys
View index.js
var KeyEncoder = require('key-encoder')
var VirgilCrypto = require('virgil-crypto').VirgilCrypto
var HDKey = require('hdkey')
const secp256k1 = require('secp256k1')
var keyEncoder = new KeyEncoder('secp256k1')
var hdKey = HDKey.fromMasterSeed(Buffer.from(SEED, 'hex'))
var childKey = hdKey.derive(PATH)
maxogden /
Created Mar 27, 2019
upload large file to zenodo from command line (curl)
# in zenodo ui create a deposition. get the id
curl -H "Accept: application/json" -H "Authorization: Bearer $TOKEN" "$DEPOSITION"
# get the bucket id from above
curl --progress-bar -o /dev/null --upload-file ./$FILE$BUCKET/$FILE?access_token=$TOKEN
maxogden / list.txt
Created Sep 17, 2018
yay installed packages arch xps 9370
View list.txt
alsa-firmware 1.0.29-2
alsa-oss 1.1.6-1
alsa-utils 1.1.6-1
android-file-transfer 3.4-1
arch-backup 0.8.11-2
arch-install-scripts 19-1
asoundconf 1:1.2-1
autoconf 2.69-4
automake 1.15.1-1
bind-tools 9.13.2-1
maxogden /
Last active Jun 29, 2018
compile gdal with poppler from miniconda
source ~/.bashrc
conda config --add channels conda-forge
conda install poppler
export IFOLDER="/mnt/bigdisk/miniconda2/include"
export LFOLDER="/mnt/bigdisk/miniconda2/lib"
./configure --with-python --with-poppler=/mnt/bigdisk/miniconda2 --with-spatialite --with-pg --with-curl
maxogden / index.js
Created Jun 14, 2018
tar.gz browser storage import test
View index.js
// tar.gz browser storage import test
// test 1: 233mb zipped, 22 files, 10MB per file, jpg
// sw cache: 6s
// idb: did not finish (froze browser)
// test 2: 55mb zipped, 600 files, ~100kb per file, map tiles
// sw cache: 5s
// idb: 49s
maxogden / map.geojson
Last active May 14, 2018
Temple City Bicycle Routes GeoJSON (Hand Mapped From Table In Adopted Bicycle Master Plan 2011)
View map.geojson
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
maxogden / index.js
Created May 4, 2018
proxy multicast from one interface to another (node.js)
View index.js
// proxies from eth0 wlan0
var dgram = require('dgram')
var os = require('os')
var socket = dgram.createSocket({ type: 'udp4', reuseAddr: true })
socket.bind(5004, function () {
socket.addMembership('', getIpForInterface('eth0'))
You can’t perform that action at this time.