• Stars
    star
    104
  • Rank 330,604 (Top 7 %)
  • Language
    Go
  • License
    MIT License
  • Created over 11 years ago
  • Updated over 3 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A standalone Bitcoin keypair/address generator, written in Go.

btckeygenie

Disclaimer

This project was written in May 2013 for educational purposes.

Modern cryptocurrency wallets should use hierarchical deterministic (HD) keys instead.

Introduction

btckeygenie is a standalone Bitcoin keypair/address generator written in Go. btckeygenie generates an ECDSA secp256k1 keypair, dumps the public key in compressed and uncompressed Bitcoin address, hexadecimal, and base64 formats, and dumps the private key in Wallet Import Format (WIF), Wallet Import Format Compressed (WIFC), hexadecimal, and base64 formats.

btckeygenie includes a lightweight Go package called btckey to easily generate keypairs, and convert them between compressed and uncompressed varieties of Bitcoin Address, Wallet Import Format, and raw bytes.

See documentation on btckey here: https://godoc.org/github.com/vsergeev/btckeygenie/btckey

Donations are welcome at 15PKyTs3jJ3Nyf3i6R7D9tfGCY1ZbtqWdv :-)

Usage

Generating a new keypair

$ btckeygenie
Bitcoin Address (Compressed)        1GwX827vFH6cc11sE7jKyhUTsRTZbrNBbD
Public Key Bytes (Compressed)       02EF0D9A8BA1EB52E14DD33AF3C326B9F5B3C50BFE83D1CD94BDD572DC6492D54E
Public Key Base64 (Compressed)      Au8Nmouh61LhTdM688MmufWzxQv+g9HNlL3VctxkktVO

Bitcoin Address (Uncompressed)      1EEadeAXyPywyP4AbBijtSVEUDrJ6Uze9b
Public Key Bytes (Uncompressed)     04EF0D9A8BA1EB52E14DD33AF3C326B9F5B3C50BFE83D1CD94BDD572DC6492D54
                                    EE53FB170859899EDA81F0FF13B6D8A070D3EB872CE96DFAF2D4E06689F154868
Public Key Base64 (Uncompressed)    BO8Nmouh61LhTdM688MmufWzxQv+g9HNlL3VctxkktVO5T+xcIWYme2oHw/xO22KBw0+uHLOlt+vLU4GaJ8VSGg=

Private Key WIFC (Compressed)       L51L6m126TParjMtoscEiY2Fr9rfXCMW2vyhtLd3wRs9aY27WEKR
Private Key WIF (Uncompressed)      5Kac96tfK167mM27JR9tbLGEnaGnRy3Nz5XX7CF4PJR3rMHPxgN
Private Key Bytes                   E8547D576CE8A911BF4DE684BE9E8CBF4F438CE31390D7B9C228FEA18D73786C
Private Key Base64                  6FR9V2zoqRG/TeaEvp6Mv09DjOMTkNe5wij+oY1zeGw=
$

Importing an existing WIF/WIFC

$ btckeygenie L51L6m126TParjMtoscEiY2Fr9rfXCMW2vyhtLd3wRs9aY27WEKR
Bitcoin Address (Compressed)        1GwX827vFH6cc11sE7jKyhUTsRTZbrNBbD
Public Key Bytes (Compressed)       02EF0D9A8BA1EB52E14DD33AF3C326B9F5B3C50BFE83D1CD94BDD572DC6492D54E
Public Key Base64 (Compressed)      Au8Nmouh61LhTdM688MmufWzxQv+g9HNlL3VctxkktVO

Bitcoin Address (Uncompressed)      1EEadeAXyPywyP4AbBijtSVEUDrJ6Uze9b
Public Key Bytes (Uncompressed)     04EF0D9A8BA1EB52E14DD33AF3C326B9F5B3C50BFE83D1CD94BDD572DC6492D54
                                    EE53FB170859899EDA81F0FF13B6D8A070D3EB872CE96DFAF2D4E06689F154868
Public Key Base64 (Uncompressed)    BO8Nmouh61LhTdM688MmufWzxQv+g9HNlL3VctxkktVO5T+xcIWYme2oHw/xO22KBw0+uHLOlt+vLU4GaJ8VSGg=

Private Key WIFC (Compressed)       L51L6m126TParjMtoscEiY2Fr9rfXCMW2vyhtLd3wRs9aY27WEKR
Private Key WIF (Uncompressed)      5Kac96tfK167mM27JR9tbLGEnaGnRy3Nz5XX7CF4PJR3rMHPxgN
Private Key Bytes                   E8547D576CE8A911BF4DE684BE9E8CBF4F438CE31390D7B9C228FEA18D73786C
Private Key Base64                  6FR9V2zoqRG/TeaEvp6Mv09DjOMTkNe5wij+oY1zeGw=
$

Help/Usage

$ btckeygenie -h
Usage: btckeygenie [WIF/WIFC]

btckeygenie v1.0.0 - https://github.com/vsergeev/btckeygenie
$

Installation

To fetch, build, and install btckeygenie to $GOPATH/bin:

$ go get github.com/vsergeev/btckeygenie

License

btckeygenie is MIT licensed. See the included LICENSE file for more details.

More Repositories

1

c-periphery

A C library for peripheral I/O (GPIO, LED, PWM, SPI, I2C, MMIO, Serial) in Linux.
C
727
star
2

luaradio

A lightweight, embeddable software-defined radio framework built on LuaJIT
Lua
604
star
3

python-periphery

A pure Python 2/3 library for peripheral I/O (GPIO, LED, PWM, SPI, I2C, MMIO, Serial) in Linux.
Python
529
star
4

u-msgpack-python

A portable, lightweight MessagePack serializer and deserializer written in pure Python, compatible with Python 2, Python 3, CPython, PyPy / msgpack.org[Python]
Python
253
star
5

briefsky

A free weather frontend to a variety of weather providers
TypeScript
243
star
6

apfcp

x86 Assembly Primer for C Programmers
Assembly
211
star
7

lua-periphery

A Lua library for peripheral I/O (GPIO, LED, PWM, SPI, I2C, MMIO, Serial) in Linux.
C
181
star
8

ntgbtminer

A no thrills getblocktemplate Bitcoin miner, written in Python.
Python
83
star
9

vavrdisasm

vAVRdisasm is an 8-bit Atmel AVR disassembler.
C
74
star
10

audioprism

A spectrogram tool for PulseAudio and WAV files, written in C++11.
C++
63
star
11

tinytaptunnel

a point-to-point layer 2 tap interface tunnel over UDP/IP with HMAC-SHA256 authentication, written in Go.
Go
57
star
12

ssterm

A simple console-based serial port terminal, written in Python.
Python
52
star
13

libGIS

libGIS is a collection of utility functions to create, read and write Atmel Generic, Intel HEX8, and Motorola S-Record formatted files.
C
50
star
14

0xtrades.info

A real-time trade viewer for the 0x protocol.
TypeScript
36
star
15

snake.ts

A simple snake implementation in TypeScript and blessed.
TypeScript
22
star
16

3d-gears

3D Parametric Gears made with Fusion 360
18
star
17

arm-bmw-sw

ARM Bare Metal Widget (arm-bmw) software
C
18
star
18

mbed-cmsis

Building your own CMSIS Code for the mbed.
C
17
star
19

vpicdisasm

vPICdisasm is a Microchip PIC disassembler for Baseline, Mid-Range, and Mid-Range Enhanced 8-bit PIC cores.
C
16
star
20

arm-bmw-hw

ARM Bare Metal Widget (arm-bmw) hardware
Eagle
15
star
21

cmsis-templates

CMSIS v3.20 Bootstrapping Templates for GNU ARM Tools
C
14
star
22

v8cpu

v8cpu is a simple multi-cycle von Neumann architecture 8-bit CPU in under 500 lines of Verilog.
Verilog
14
star
23

teatimer

A simple kitchen timer implemented in digital logic on a Lattice MachXO2 CPLD.
Eagle
14
star
24

gardend-lua

A modular, discrete-time control daemon for a hydroponic garden, written in Lua.
Lua
12
star
25

radio-decoders

Python
11
star
26

evolve110

Rule 110 on the Ethereum blockchain
JavaScript
9
star
27

libGISdotnet

libGIS ported to .NET.
C#
8
star
28

wireless-triac

Wireless ZigBee/XBee Controlled TRIAC (Sep 2009)
C
8
star
29

zigradio

A lightweight software-defined radio framework built with Zig
Zig
7
star
30

rigexpert-tool

Dump, plot, and convert impedance sweeps from a RigExpert antenna analyzer.
Python
6
star
31

qrd

Simple QR Code decoder for educational purposes
Python
6
star
32

minifortune

A minimal fortune-mod clone, written in C.
C
6
star
33

basic-makefiles

TeX
6
star
34

3d-simple-iso-thread

A simple, single-file modeled ISO thread module for OpenSCAD
OpenSCAD
4
star
35

3d-holster-claw

A 3D printable holster claw accessory made with Fusion 360
3
star
36

wireless-power-meter

Wireless ZigBee/XBee V-I Power Meter (Sep 2009)
Python
2
star
37

3d-mini-turntable

A miniature motorized turntable for small objects made with OpenSCAD
OpenSCAD
2
star
38

3d-fiber-enclosure

A 3D printable fiber optic project enclosure made with Fusion 360
1
star
39

3d-webcam-mount

3D Printable Webcam Mount made with Fusion 360
1
star
40

3d-jewelry-box

A 3D printable jewelry box made with OpenSCAD
OpenSCAD
1
star
41

3d-flosser-holder

A 3D printable flosser holder made with OpenSCAD
OpenSCAD
1
star
42

template110

Rule 110 implemented with C++11 templates and std::array.
C++
1
star
43

wclock

LED Word Clock (Mar 2012)
Eagle
1
star
44

yatumblr-backup

yet another tumblr backup script
Python
1
star