All Projects ā†’ alexbakker ā†’ gonano

alexbakker / gonano

Licence: MIT license
An implementation of the Nano cryptocurrency in Go

Programming Languages

go
31211 projects - #10 most used programming language
Makefile
30231 projects

Projects that are alternatives of or similar to gonano

nanook
Ruby library for making and receiving payments and managing a nano currency node
Stars: āœ­ 17 (-50%)
Mutual labels:  nano, wallet
rai
šŸ—æ rai is a pythonic client for interacting with Raiblocks nodes
Stars: āœ­ 21 (-38.24%)
Mutual labels:  nano, raiblocks
wallet-address-validator
Useful library for validation of Bitcoin, Litecoin, Ethereum and other cryptocoin addresses
Stars: āœ­ 240 (+605.88%)
Mutual labels:  nano, wallet
jNano
A comprehensive Java library for the Nano cryptocurrency.
Stars: āœ­ 25 (-26.47%)
Mutual labels:  nano, raiblocks
Openwallet Android
The first truly free, libre, and open source light wallet for multiple cryptocurrencies (Bitcoin, Ethereum, Ripple, etc).
Stars: āœ­ 86 (+152.94%)
Mutual labels:  currency, wallet
Nault
āš” The most advanced Nano wallet with focus on security, speed and robustness
Stars: āœ­ 228 (+570.59%)
Mutual labels:  nano, wallet
nano-vanity
Vanity address generator for Nano
Stars: āœ­ 37 (+8.82%)
Mutual labels:  nano, raiblocks
reblocks
React Components for Nano cryptocurrency (formerly RaiBlocks) - including Payments via Brainblocks
Stars: āœ­ 21 (-38.24%)
Mutual labels:  nano, raiblocks
Coinonline
A Cryptocurrency/Blockchain wallet app based on React Native
Stars: āœ­ 59 (+73.53%)
Mutual labels:  currency, wallet
Currencyviewer
Short python framework that dynamically displays and converts the cryptocurrencies in your Kraken wallet into equivalents fiat money.
Stars: āœ­ 13 (-61.76%)
Mutual labels:  currency, wallet
RaiBlocksPHP
A bunch of PHP methods to build and sign transactions
Stars: āœ­ 20 (-41.18%)
Mutual labels:  nano, wallet
Framework
0xcert Framework - JavaScript framework for building decentralized applications - build something unique
Stars: āœ­ 213 (+526.47%)
Mutual labels:  protocol, currency
RetroXRBWallet
No description or website provided.
Stars: āœ­ 13 (-61.76%)
Mutual labels:  wallet, raiblocks
cashuwallet
Cashu is a cryptocurrency wallet for smartphones. Be your own bank. Accept payments or spend crypto directly from your phone.
Stars: āœ­ 35 (+2.94%)
Mutual labels:  nano, wallet
NanoWalletBot
[DISCONTINUED] Open source Telegram bot for Nano currency
Stars: āœ­ 52 (+52.94%)
Mutual labels:  nano, raiblocks
Credits
Credits(CRDS) - An Evolving Currency For An Evolving Society
Stars: āœ­ 14 (-58.82%)
Mutual labels:  protocol, currency
Ipban
IPBan Monitors failed logins and bad behavior and bans ip addresses on Windows and Linux. Highly configurable, lean and powerful. Learn more at -->
Stars: āœ­ 652 (+1817.65%)
Mutual labels:  block, protocol
seamless
Seamless is a framework to set up reproducible computations (and visualizations) that respond to changes in cells. Cells contain the input data as well as the source code of the computations, and all cells can be edited interactively.
Stars: āœ­ 19 (-44.12%)
Mutual labels:  protocol
can-prog
Command-line tool to flashing devices by CAN-BUS
Stars: āœ­ 66 (+94.12%)
Mutual labels:  protocol
Megacoin
Welcome to Megacoin MĪ£C - Around the World!
Stars: āœ­ 16 (-52.94%)
Mutual labels:  currency

gonano Build Status Documentation

gonano is a WIP implementation of the Nano cryptocurrency in Go.

This is a work in progress. Do not use this in production environments. All of the exported API's are subject to change and should thus not be considered stable. The same applies to the database format, configuration files and wallet files.

Protocol documentation can be found at: doc/protocol.md.

The address of my motivational back account is: xrb_1tt5p7agt63f3q37151o1yz3k1pfdan7wet9anejzrdqnuz5kgtcqiwwtfm6.

Goals

The goals of this project are to:

  • Provide an alternative to the existing C++ implementation
  • Learn about the protocol
  • Document the protocol
  • Make Nano more accessible to developers

Progress

  • Network Protocol
    • Documentation (see also: doc/protocol.md)
    • Data structures
      • Keep alive
      • Publish
      • Confirm Req
      • Confirm ACK
      • Bulk Pull
      • Bulk Push
      • Frontier Req
      • Bulk Pull Blocks
    • Synchronization
      • Pull
      • Push
    • Pinging
    • (Re)broadcasting blocks
    • Voting
  • Blocks
    • Data structures
      • Send
      • Receive
      • Open
      • Change
      • State
    • Proof of Work
  • Node
    • Persist state to a database
      • Blocks
      • Address balance
      • Pending transactions
      • Representatives (voting weight)
      • Votes
    • Block verification
    • Fork resolution
      • Block rollback
    • RPC interface
  • Wallet
    • Data structures
      • Balance
      • Address
      • Seed
    • Persist state to an encrypted file
    • RPC interface
  • Tests

Compiling

Go 1.8 or newer is required.

Run make all to build everything. Binaries can be found in the 'build' folder.

Run make test to run the tests.

Dependencies

This project directly depends on the following packages:

  • badger - Fast key-value DB in Go
  • cobra - A Commander for modern Go CLI interactions
  • blake2b and ed25519 - Go supplementary cryptography libraries
  • uint128 128-bit unsigned integer package from CockroachDB
  • decimal - Arbitrary-precision fixed-point decimal numbers in go

The above packages are vendored and can be found in the vendor directory. The ed25519 and uint128 packages are placed elsewhere as those had to be customized for gonano.

License

The source code of this project is licensed under the MIT license. The protocol documentation is licensed under CC BY-SA.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].