Aidos Kuneen (v2 network) daemon program that is controlled through the command line and remotely via RPC calls

GoDoc GitHub license

adk-daemon: aidosd.v2

aidosd (v2) is a deamon which acts as bitcoind for adk. This version has been built specifically for network mesh version 2+

For now implemented APIs are:

NOTE: DON'T USE MULTIPLE ACCOUNTS. Account feature will be removed in a later version.

  • getnewaddress
  • listaccounts
  • listaddressgroupings
  • validateaddress
  • settxfee
  • walletpassphrase
  • sendmany
  • sendfrom
  • gettransaction
  • getbalance
  • sendtoaddress

and walletnotify feature.

Refer Bitcoin API Reference (e.g. here) for more details about how to call these APIs.

See incompatibility lists for details about incompatibilities with Bitcoin APIs.

Reqirements

  • go 1.15+
  • gcc (for linux)
  • mingw (for windows)

Build

	$ mkdir go
	$ cd go
	$ mkdir src
	$ mkdir bin
	$ mkdir pkg
	$ exoprt GOPATH=`pwd`
	$ cd src
	$ go get -u github.com/AidosKuneen/adk-daemon
	$ cd github.com/AidosKuneen/adk-daemon
	$ go build -o aidosd

NOTE: if you dont specify "-o aidosd" durign the build, your executable will be named adk-daemon instead (still works..). But if you want to replace an old installation you should rename it to "aidosd".

Configuration

Configurations are in aidosd.conf.

  • rpcuser : Username for JSON-RPC connections
  • rpcpassword: Password for JSON-RPC connections
  • rpcport: Listen for JSON-RPC connections on (default: 8332)
  • walletnotify: Execute command when a transaction comes into a wallet (%s in cmd is replaced by bundle ID)
  • aidos_node: Host address of an Aidos node server , which must be configured for wallet.
  • passphrase: Set false if your program sends tokens withtout walletpassphrase (default :true) .
  • tag: Set your identifier. You can use charcters 9 and A~Z and don't use other ones, and it must be under 20 characters.

This is used as tag in transactions aidosd sends.

Note that aidosd always encrypts seeds with AES regardless passphrase settings.

Examples of aidosd.conf:

rpcuser=put_your_username
rpcpassword=put_your_password
rpcport=8332
walletnotify=/home/adk/script/receive.sh %s
aidos_node=http://api1.mainnet.aidoskuneen.com:14266
testnet=false
passphrase=true
tag="AWESOME9EXCHANGER"

Usage

CHANGES TO VERSION 1 (aidosd):

Set up a new wallet

start aidosd with command

./aidosd -generate

This will set up a new wallet and generate a new seed for you. Make sure you write down the seed as it will only be shown once!

Set up a wallet by importing an existing seed

start aidosd with command

./aidosd -import

This will set up a new wallet, but prompt you for a seed. Once entered it will scan the Mesh for existing transactions and balances, and it will pre-calculate 50000 addresses (please be patient, this can take a while)

Set up a wallet by importing an existing seed from a V1 aidosd installation (aidosd.db)

In order to UPGRADE an existing aidosd setup (v1), simply overwrite the old v1 aidosd executable with the new v2 one. Then simply start aidosd with command

./aidosd

aidosd v2 will automatically recognize that you don't have a v2 seed database, so it will prompt you interactively if you want to scan the old database (aidosd.db) for the seed, and for existing/known addresses. (Note, it will also ask you the same if you use the -import parameter, but it sees that there is an old v1 aidosd.db file)

This will scan and import known addresses from the old database, and scan the Mesh for existing transactions and balances, and it will pre-calculate 50000 addresses (please be patient, this can take a while)

Once the wallet is set up:

In order to start aidosd, simply run it from commandline without parameter. It will prompt you for the password (unless you have set it via ENV parameter AIDOSD_PASSWORD )

$ ./aidosd
enter password: <input your password> 

Then aidosd starts to run in background.

$ ./aidosd
Enter password: 
starting the aidosd server at port http://0.0.0.0:8332
aidosd has started

To know if it is still running, run:

	$ ./aidosd status

This prints the status ("running" or "stopped").

When you want to stop:

	$ ./aidosd stop
Owner
Aidos Kuneen
Aidos Kuneen is a cryptocurrency without fees that covers the aspects of privacy, decentralization and scalability, while operating on a directed-acyclic-graph.
Aidos Kuneen
Similar Resources

network multiplexing and framing protocol for RPC

TChannel Network multiplexing and framing protocol for RPC Read the Docs Languages: Node.js, Python, Go, Java Questions: Open a Github issue Uber's OS

Nov 26, 2022

Receive phone calls from anybody on the Web. Or host a telephony server yourself.

Receive phone calls from anybody on the Web. Or host a telephony server yourself.

WebCall WebRTC Telephony Server Browser based telephony over E2E-encrypted P2P-links with very high audio quality. WebCall is lightweight and easy to

Jan 5, 2023

simplified helper to create http client calls to test your server

Overview Simplified creating http client calls for testing http servers or handlers. Cleanly build and execute http requests in tests so that you can

Nov 1, 2021

scrapligo -- is a Go library focused on connecting to devices, specifically network devices (routers/switches/firewalls/etc.) via SSH and NETCONF.

scrapligo -- is a Go library focused on connecting to devices, specifically network devices (routers/switches/firewalls/etc.) via SSH and NETCONF.

scrapligo -- scrap(e c)li (but in go!) -- is a Go library focused on connecting to devices, specifically network devices (routers/switches/firewalls/etc.) via SSH and NETCONF.

Jan 4, 2023

get WHOIS with library, command or through HTTP server

Go Whois Provide WHOIS library, command line tool and server with restful APIs to query whois information for domains and IPs. It's also available to

Oct 24, 2022

Command-line tool and library for Windows remote command execution in Go

WinRM for Go Note: if you're looking for the winrm command-line tool, this has been splitted from this project and is available at winrm-cli This is a

Nov 29, 2022

CoreRAD is an extensible and observable IPv6 Neighbor Discovery Protocol router advertisement daemon. Apache 2.0 Licensed.

CoreRAD is an extensible and observable IPv6 Neighbor Discovery Protocol router advertisement daemon. Apache 2.0 Licensed.

CoreRAD CoreRAD is an extensible and observable IPv6 Neighbor Discovery Protocol router advertisement daemon. Apache 2.0 Licensed. To get started with

Nov 14, 2022

Helps you to send ssh commands to target machine in your local network from outside via gRPC

Helps you to send ssh commands to target machine in your local network from outside via gRPC

rpc-ssh In case, you don't want to make your ssh port accessible from outside local network. This repository helps you to send ssh commands to target

Nov 16, 2022

Minimalistic paste daemon written in golang

Minimalistic paste daemon written in golang

Dec 4, 2022
Related tags
Antenna RPC is an RPC protocol for distributed computing, it's based on QUIC and Colfer. its currently an WIP.

aRPC - Antenna Remote Procedure Call Antenna remote procedure call (aRPC) is an RPC protocol focused on distributed processing and HPC. aRPC is implem

Jun 16, 2021
Wrapper for Lightning Network Daemon (lnd). It provides separate accounts with minimum trust for end users.

LndHub.go Wrapper for Lightning Network Daemon (lnd). It provides separate accounts with minimum trust for end users. LndHub compatible API implemente

Dec 21, 2022
A TCP Wrapper to use QSVEncC "Remotely"*

TCP Wrapper for QSVEncC This is a tcp wrapper implementation for QSVEncC command from QSVEnc, simply sending the input & args to the server-side, and

Dec 19, 2021
rpc/v2 support for JSON-RPC 2.0 Specification.

rpc rpc/v2 support for JSON-RPC 2.0 Specification. gorilla/rpc is a foundation for RPC over HTTP services, providing access to the exported methods of

Jul 4, 2021
Go Substrate RPC Client (GSRPC)Go Substrate RPC Client (GSRPC)

Go Substrate RPC Client (GSRPC) Substrate RPC client in Go. It provides APIs and types around Polkadot and any Substrate-based chain RPC calls. This c

Nov 11, 2021
A simple go program to proxy http request through a server with caching

go-http-proxy A simple go program to proxy http requests through a server with caching Usage All cli options are optional, and have the default values

Nov 21, 2021
Group peer to peer video calls for everyone written in Go and TypeScript

Peer Calls v4 WebRTC peer to peer calls for everyone. See it live in action at peercalls.com. The server has been completely rewriten in Go and all th

Dec 30, 2022
Service that calls uzma24/project1 service, takes input from .txt file and prints JSON output returned from the service.

Service that calls uzma24/project1 service, takes input from .txt file and prints JSON output returned from the service. Program can take large input files.

Feb 6, 2022
⚙️ subnetting via command line
⚙️ subnetting via command line

# Subnet subnetting via command line installation intall from binary file git clone https://github.com/nekonako/subnet.git cd subnet sudo ./install.sh

Oct 10, 2022
Golang `net/rpc` over SSH using installed SSH program

Golang net/rpc over SSH using installed SSH program This package implements a helper functions to launch an RPC client and server. It uses the install

Nov 16, 2022