Skip to content

Commit

Permalink
Merge pull request #114 from anoncore/echelon
Browse files Browse the repository at this point in the history
Echelon
  • Loading branch information
Skellers21 authored Nov 10, 2019
2 parents e862094 + 29cc2e2 commit e3c5b42
Show file tree
Hide file tree
Showing 60 changed files with 1,138 additions and 209 deletions.
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

This issue tracker is only for technical issues related to anond.

General Anonymous Bitcoin questions and/or support requests and are best directed to the [ANON Github Repo](https://github.com/anonymousbitcoin/anon/issues).
General Anon questions and/or support requests and are best directed to the [ANON Github Repo](https://github.com/anonymousbitcoin/anon/issues).

### Describe the issue
Please provide a general summary of the issue you're experiencing
Expand Down
6 changes: 3 additions & 3 deletions INSTALL
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
Copyright (c) 2017-2018 The ANON developers
Copyright (c) 2017-2018 The Bitcoin Private developers

Building Anonymous Bitcoin
Building Anon

See the Anonymous Bitcoin github wiki ([https://github.com/anonymousbitcoin/anon]) for instructions on building anond,
See the Anon github wiki ([https://github.com/anonymousbitcoin/anon]) for instructions on building anond,
the intended-for-services, no-graphical-interface, reference
implementation of Anonymous Bitcoin.
implementation of Anon.
10 changes: 5 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

[![Build Status](https://travis-ci.com/ByeBugDevelopment/anon-backup.svg?token=WBBgtRXJbdCRsjxqqhJy&branch=master)](https://travis-ci.com/ByeBugDevelopment/anon-backup)

**Anonymous Bitcoin v.2.2.0**
**Anon v.2.2.0**

ANON is an implementation of the zerocash protocol, bootstrapped with a merge of the Official Bitcoin and Zclassic UTXO sets via a snapshot and airdrop, and with the additional implementation of masternodes.

Expand All @@ -26,19 +26,19 @@ ANON is an implementation of the zerocash protocol, bootstrapped with a merge of
See important security warnings in
[doc/security-warnings.md](doc/security-warnings.md).

**Anonymous Bitcoin is unfinished and highly experimental.** Use at your own risk.
**Anon is unfinished and highly experimental.** Use at your own risk.
<!-- ### Any optional sections -->

## Background

[Anonymous Bitcoin](https://www.anonymousbitcoin.io/), like [Zclassic](https://zclassic.org/) and [Zcash](https://z.cash/), is an implementation of the "Zerocash" protocol.
[Anon](https://www.anonymousbitcoin.io/), like [Zclassic](https://zclassic.org/) and [Zcash](https://z.cash/), is an implementation of the "Zerocash" protocol.
Based on Zclassic's code, it intends to offer a far higher standard of privacy
through a sophisticated zero-knowledge proving scheme that preserves
confidentiality of transaction metadata. Technical details are available
in the Zcash [Protocol Specification](https://github.com/zcash/zips/raw/master/protocol/protocol.pdf).

This software is the Anonymous Bitcoin client. It downloads and stores the entire history
of Anonymous Bitcoin transactions. Depending on the speed of your computer and network
This software is the Anon client. It downloads and stores the entire history
of Anon transactions. Depending on the speed of your computer and network
connection, the synchronization process could take a day or more once the
blockchain has reached a significant size.

Expand Down
16 changes: 8 additions & 8 deletions anonutil/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -36,24 +36,24 @@ $0 --help
Show this help message and exit.
$0 [ --enable-lcov || --disable-tests ] [ --disable-mining ] [ --disable-rust ] [ --enable-proton ] [ --disable-libs ] [ MAKEARGS... ]
Build Anonymous Bitcoin and most of its transitive dependencies from
source. MAKEARGS are applied to both dependencies and Anonymous Bitcoin itself.
Build Anon and most of its transitive dependencies from
source. MAKEARGS are applied to both dependencies and Anon itself.
If --enable-lcov is passed, Anonymous Bitcoin is configured to add coverage
If --enable-lcov is passed, Anon is configured to add coverage
instrumentation, thus enabling "make cov" to work.
If --disable-tests is passed instead, the Anonymous Bitcoin tests are not built.
If --disable-tests is passed instead, the Anon tests are not built.
If --disable-mining is passed, Anonymous Bitcoin is configured to not build any mining
If --disable-mining is passed, Anon is configured to not build any mining
code. It must be passed after the test arguments, if present.
If --disable-rust is passed, Anonymous Bitcoin is configured to not build any Rust language
If --disable-rust is passed, Anon is configured to not build any Rust language
assets. It must be passed after test/mining arguments, if present.
If --enable-proton is passed, Anonymous Bitcoin is configured to build the Apache Qpid Proton
If --enable-proton is passed, Anon is configured to build the Apache Qpid Proton
library required for AMQP support. This library is not built by default.
It must be passed after the test/mining/Rust arguments, if present.
If --disable-libs is passed, Anonymous Bitcoin is configured to not build any libraries like
If --disable-libs is passed, Anon is configured to not build any libraries like
'libzcashconsensus'.
EOF
exit 0
Expand Down
6 changes: 3 additions & 3 deletions anonutil/init-mac.sh
Original file line number Diff line number Diff line change
Expand Up @@ -85,9 +85,9 @@ function main() {
|| exit_locked_error

cat <<EOF
Anonymous Bitcoin - fetch-params.sh
Anon - fetch-params.sh
This script will fetch the Anonymous Bitcoin (and Zcash) zkSNARK parameters and
This script will fetch the Anon (and Zcash) zkSNARK parameters and
verify their integrity with sha256sum.
If they already exist locally, it will exit now and do nothing else.
Expand All @@ -99,7 +99,7 @@ EOF
mkdir -p "$PARAMS_DIR"
README_PATH="$PARAMS_DIR/README"
cat >> "$README_PATH" <<EOF
This directory stores common Anonymous Bitcoin zkSNARK parameters. Note that it is
This directory stores common Anon zkSNARK parameters. Note that it is
distinct from the daemon's -datadir argument because the parameters are
large and may be shared across multiple distinct -datadir's such as when
setting up test networks.
Expand Down
8 changes: 4 additions & 4 deletions anonutil/make-release.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@

def main(args=sys.argv[1:]):
"""
Perform the final Anonymous Bitcoin release process up to the git tag.
Perform the final Anon release process up to the git tag.
"""
opts = parse_args(args)
chdir_to_repo(opts.REPO)
Expand Down Expand Up @@ -202,7 +202,7 @@ def gen_release_notes(release):
@phase('Updating debian changelog.')
def update_debian_changelog(release):
os.environ['DEBEMAIL'] = 'team@'
os.environ['DEBFULLNAME'] = 'Anonymous Bitcoin'
os.environ['DEBFULLNAME'] = 'Anon'
sh_log(
'debchange',
'--newversion', release.debversion,
Expand All @@ -229,10 +229,10 @@ def chdir_to_repo(repo):
def patch_README(release, releaseprev):
with PathPatcher('README.md') as (inf, outf):
firstline = inf.readline()
assert firstline == 'Anonymous Bitcoin {}\n'.format(releaseprev.novtext), \
assert firstline == 'Anon {}\n'.format(releaseprev.novtext), \
repr(firstline)

outf.write('Anonymous Bitcoin {}\n'.format(release.novtext))
outf.write('Anon {}\n'.format(release.novtext))
outf.write(inf.read())


Expand Down
4 changes: 2 additions & 2 deletions anonutil/release-notes.py
Original file line number Diff line number Diff line change
Expand Up @@ -49,12 +49,12 @@ def authors_in_release_notes(filename):
authors[apply_author_aliases(name)] = commits
return authors

## Sums commits made by contributors in each Anonymous Bitcoin release note in ./doc/release-notes and writes to authors.md
## Sums commits made by contributors in each Anon release note in ./doc/release-notes and writes to authors.md
def document_authors():
print "Writing contributors documented in release-notes directory to authors.md."
authors_file = os.path.join(doc_dir, 'authors.md')
with open(authors_file, 'w') as f:
f.write('Anonymous Bitcoin Contributors\n==================\n\n')
f.write('Anon Contributors\n==================\n\n')
total_contrib = {}
for notes in os.listdir(os.path.join(doc_dir, 'release-notes')):
authors = authors_in_release_notes(notes)
Expand Down
4 changes: 2 additions & 2 deletions configure.ac
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ AC_PREREQ([2.60])
define(_CLIENT_VERSION_MAJOR, 2)
define(_CLIENT_VERSION_MINOR, 2)
define(_CLIENT_VERSION_REVISION, 0)
define(_CLIENT_VERSION_BUILD, 51)
define(_CLIENT_VERSION_BUILD, 60)
define(_ZC_BUILD_VAL, m4_if(m4_eval(_CLIENT_VERSION_BUILD < 25), 1, m4_incr(_CLIENT_VERSION_BUILD), m4_eval(_CLIENT_VERSION_BUILD < 50), 1, m4_eval(_CLIENT_VERSION_BUILD - 24), m4_eval(_CLIENT_VERSION_BUILD == 50), 1, , m4_eval(_CLIENT_VERSION_BUILD - 50)))
define(_CLIENT_VERSION_SUFFIX, m4_if(m4_eval(_CLIENT_VERSION_BUILD < 25), 1, _CLIENT_VERSION_REVISION-beta$1, m4_eval(_CLIENT_VERSION_BUILD < 50), 1, _CLIENT_VERSION_REVISION-rc$1, m4_eval(_CLIENT_VERSION_BUILD == 50), 1, _CLIENT_VERSION_REVISION, _CLIENT_VERSION_REVISION-$1)))
define(_CLIENT_VERSION_IS_RELEASE, true)
Expand Down Expand Up @@ -40,7 +40,7 @@ else
CXXFLAGS_overridden=no
fi

# Anonymous Bitcoin / Zcash requries C++11 compatibility; set it early:
# Anon / Zcash requries C++11 compatibility; set it early:
CXXFLAGS="-std=c++11 $CXXFLAGS"

AC_PROG_CXX
Expand Down
16 changes: 8 additions & 8 deletions contrib/debian/examples/anon.conf
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

# Network-related settings:

# Run on the test network instead of the real Anonymous Bitcoin network.
# Run on the test network instead of the real Anon network.
#testnet=0

# Run a regression test network
Expand Down Expand Up @@ -57,7 +57,7 @@
#maxconnections=

#
# JSON-RPC options (for controlling a running Anonymous Bitcoin/anond process)
# JSON-RPC options (for controlling a running Anon/anond process)
#

# server=1 tells anond to accept JSON-RPC commands (set as default if not specified)
Expand All @@ -71,7 +71,7 @@
#rpcuser=Ulysses
#rpcpassword=YourSuperGreatPasswordNumber_DO_NOT_USE_THIS_OR_YOU_WILL_GET_ROBBED_385593

# How many seconds Anonymous Bitcoin will wait for a complete RPC HTTP request.
# How many seconds Anon will wait for a complete RPC HTTP request.
# after the HTTP connection is established.
#rpcclienttimeout=30

Expand All @@ -91,7 +91,7 @@
# Listen for RPC connections on this TCP port:
#rpcport=7932

# You can use Anonymous Bitcoin or anond to send commands to anond
# You can use Anon or anond to send commands to anond
# running on another host using this option:
#rpcconnect=127.0.0.1

Expand All @@ -106,21 +106,21 @@

# Miscellaneous options

# Enable attempt to mine Anonymous Bitcoin.
# Enable attempt to mine Anon.
#gen=0

# Set the number of threads to be used for mining Anonymous Bitcoin (-1 = all cores).
# Set the number of threads to be used for mining Anon (-1 = all cores).
#genproclimit=1

# Specify a different Equihash solver (e.g. "tromp") to try to mine Anonymous Bitcoin
# Specify a different Equihash solver (e.g. "tromp") to try to mine Anon
# faster when gen=1.
#equihashsolver=default

# Pre-generate this many public/private key pairs, so wallet backups will be valid for
# both prior transactions and several dozen future transactions.
#keypool=100

# Pay an optional transaction fee every time you send Anonymous Bitcoin. Transactions with fees
# Pay an optional transaction fee every time you send Anon. Transactions with fees
# are more likely than free transactions to be included in generated blocks, so may
# be validated sooner. This setting does not affect private transactions created with
# 'z_sendmany'.
Expand Down
8 changes: 4 additions & 4 deletions doc/amqp.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@ transactions between applications. AMQP supports both broker and
brokerless messaging. AMQP 1.0 is an open standard and has been
ratified as ISO/IEC 19464.

The Anonymous Bitcoin daemon can be configured to act as a trusted "border
router", implementing the Anonymous Bitcoin P2P protocol and relay, making
The Anon daemon can be configured to act as a trusted "border
router", implementing the Anon P2P protocol and relay, making
consensus decisions, maintaining the local blockchain database,
broadcasting locally generated transactions into the network, and
providing a queryable RPC interface to interact on a polled basis for
Expand All @@ -31,7 +31,7 @@ buffering or reassembly.

## Prerequisites

The AMQP feature in Anonymous Bitcoin requires [Qpid Proton](https://qpid.apache.org/proton/)
The AMQP feature in Anon requires [Qpid Proton](https://qpid.apache.org/proton/)
version 0.17 or newer, which you will need to install if you are not
using the depends system. Typically, it is packaged by distributions as
something like *libqpid-proton*. The C++ wrapper for AMQP *is* required.
Expand Down Expand Up @@ -105,7 +105,7 @@ No authentication or authorization is done on peers that anond connects
to; it is assumed that the AMQP link is exposed only to trusted entities,
using other means such as firewalling.

TLS support may be added once OpenSSL has been removed from the Anonymous Bitcoin
TLS support may be added once OpenSSL has been removed from the Anon
project and alternative TLS implementations have been evaluated.

SASL support may be added in a future update for secure communication.
Expand Down
4 changes: 2 additions & 2 deletions doc/dnsseed-policy.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
Expectations for DNS Seed operators
====================================

Anonymous Bitcoin attempts to minimize the level of trust in DNS seeds,
Anon attempts to minimize the level of trust in DNS seeds,
but DNS seeds still pose a small amount of risk for the network.
As such, DNS seeds must be run by entities which have some minimum
level of trust within the ANON community.
Expand Down Expand Up @@ -43,7 +43,7 @@ related to the DNS seed operation.

If these expectations cannot be satisfied the operator should discontinue
providing services and contact the active ANON development team as well as
creating an issue in the [Anonymous Bitcoin repository](https://github.com/anonymousbitcoin/anon/issues).
creating an issue in the [Anon repository](https://github.com/anonymousbitcoin/anon/issues).

Behavior outside of these expectations may be reasonable in some
situations but should be discussed in public in advance.
Expand Down
6 changes: 3 additions & 3 deletions doc/man/anon-cli.1
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,14 @@
.SH NAME
anon-cli \- manual page for anon-cli v1.0.10-1
.SH DESCRIPTION
Anonymous Bitcoin RPC client version v1.0.10\-1
Anon RPC client version v1.0.10\-1
.PP
In order to ensure you are adequately protecting your privacy when using Anonymous Bitcoin,
In order to ensure you are adequately protecting your privacy when using Anon,
please see <https://z.cash/support/security/index.html>.
.SS "Usage:"
.TP
anon\-cli [options] <command> [params]
Send command to Anonymous Bitcoin
Send command to Anon
.TP
anon\-cli [options] help
List commands
Expand Down
2 changes: 1 addition & 1 deletion doc/man/anond.1
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ anond \- manual page for anond v1.0.10-1
.SH DESCRIPTION
Zcash Daemon version v1.0.10\-1
.PP
In order to ensure you are adequately protecting your privacy when using Anonymous Bitcoin,
In order to ensure you are adequately protecting your privacy when using Anon,
please see <https://z.cash/support/security/index.html>.
.SS "Usage:"
.TP
Expand Down
2 changes: 1 addition & 1 deletion doc/masternode_conf.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
Masternode config
=======================

Anonymous Bitcoin Core allows controlling multiple remote masternodes from a single wallet. The wallet needs to have a valid collateral output of 500 coins for each masternode and uses a configuration file named `masternode.conf` which can be found in the following data directory (depending on your operating system):
Anon Core allows controlling multiple remote masternodes from a single wallet. The wallet needs to have a valid collateral output of 500 coins for each masternode and uses a configuration file named `masternode.conf` which can be found in the following data directory (depending on your operating system):
* Windows: %APPDATA%\Anon\
* Mac OS: ~/Library/Application Support/Anon/
* Unix/Linux: ~/.anon/
Expand Down
4 changes: 2 additions & 2 deletions doc/release-process.md
Original file line number Diff line number Diff line change
Expand Up @@ -88,9 +88,9 @@ signed. **CAUTION:** Remember the `v` at the beginning here:

### Deploy testnet

Notify the Anonymous Bitcoin DevOps engineer/sysadmin that the release has been tagged. They update some variables in the company's automation code and then run an Ansible playbook, which:
Notify the Anon DevOps engineer/sysadmin that the release has been tagged. They update some variables in the company's automation code and then run an Ansible playbook, which:

* builds Anonymous Bitcoin based on the specified branch
* builds Anon based on the specified branch
* deploys it as a public service (e.g. betatestnet.z.cash, mainnet.z.cash)
* often the same server can be re-used, and the role idempotently handles upgrades, but if not then they also need to update DNS records
* possible manual steps: blowing away the `testnet3` dir, deleting old parameters, restarting DNS seeder
Expand Down
6 changes: 3 additions & 3 deletions doc/security-warnings.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Security Warnings
Security Audit
--------------

Anonymous Bitcoin's originally forked codebase, Zcash, has been subjected to a formal third-party security review. For security
Anon's originally forked codebase, Zcash, has been subjected to a formal third-party security review. For security
announcements, audit results, and other general security information, see
https://z.cash/support/security.html

Expand Down Expand Up @@ -47,7 +47,7 @@ runnng on your OS can read your wallet.dat file.
Side-Channel Attacks
--------------------

This implementation of Anonymous Bitcoin is not resistant to side-channel attacks. You
This implementation of Anon is not resistant to side-channel attacks. You
should assume (even unprivileged) users who are running on the hardware, or who
are physically near the hardware, that your `anond` process is running on will
be able to:
Expand Down Expand Up @@ -84,7 +84,7 @@ Users should also refrain from changing the default setting that only allows RPC
Block Chain Reorganization: Major Differences
-------------------------------------------------

Users should be aware of new behavior in Anonymous Bitcoin (and Zcash) that differs significantly from Bitcoin: in the case of a block chain reorganization, Bitcoin's coinbase maturity rule helps to ensure that any reorganization shorter than the maturity interval will not invalidate any of the rolled-back transactions. ANON & Zcash keep Bitcoin's 100-block maturity interval for generation transactions, but because JoinSplits must be anchored within a block, this provides more limited protection against transactions becoming invalidated. In the case of a block chain reorganization for ANON & Zcash, all JoinSplits which were anchored within the reorganization interval and any transactions that depend on them will become invalid, rolling back transactions and reverting funds to the original owner. The transaction rebroadcast mechanism inherited from Bitcoin will not successfully rebroadcast transactions depending on invalidated JoinSplits if the anchor needs to change. The creator of an invalidated JoinSplit, as well as the creators of all transactions dependent on it, must rebroadcast the transactions themselves.
Users should be aware of new behavior in Anon (and Zcash) that differs significantly from Bitcoin: in the case of a block chain reorganization, Bitcoin's coinbase maturity rule helps to ensure that any reorganization shorter than the maturity interval will not invalidate any of the rolled-back transactions. ANON & Zcash keep Bitcoin's 100-block maturity interval for generation transactions, but because JoinSplits must be anchored within a block, this provides more limited protection against transactions becoming invalidated. In the case of a block chain reorganization for ANON & Zcash, all JoinSplits which were anchored within the reorganization interval and any transactions that depend on them will become invalid, rolling back transactions and reverting funds to the original owner. The transaction rebroadcast mechanism inherited from Bitcoin will not successfully rebroadcast transactions depending on invalidated JoinSplits if the anchor needs to change. The creator of an invalidated JoinSplit, as well as the creators of all transactions dependent on it, must rebroadcast the transactions themselves.

Receivers of funds from a JoinSplit can mitigate the risk of relying on funds received from transactions that may be rolled back by using a higher minconf (minimum number of confirmations).

Expand Down
2 changes: 1 addition & 1 deletion doc/zmq.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ buffering or reassembly.

## Prerequisites

The ZeroMQ feature in Anonymous Bitcoin requires ZeroMQ API version 4.x or
The ZeroMQ feature in Anon requires ZeroMQ API version 4.x or
newer, which you will need to install if you are not using the depends
system. Typically, it is packaged by distributions as something like
*libzmq5-dev*. The C++ wrapper for ZeroMQ is *not* needed.
Expand Down
2 changes: 1 addition & 1 deletion libzcashconsensus.pc.in
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ exec_prefix=@exec_prefix@
libdir=@libdir@
includedir=@includedir@

Name: Anonymous Bitcoin consensus library
Name: Anon consensus library
Description: Library for the Anon consensus protocol.
Version: @PACKAGE_VERSION@
Libs: -L${libdir} -lzcashconsensus
Expand Down
Loading

0 comments on commit e3c5b42

Please sign in to comment.