No description
Find a file
Sergey Kroshnin 3d81f1609e
confirm_req_hash to reduce bandwidth usage (#1046)
* confirm_req_hash to reduce bandwidth usage

* Fixes

* Update tests

* rai::network::send_confirm_req_hash

* Formatting

* Confirm only hash for non-forked blocks

* Merge confirm by hash to confirm_req

* Typo

* Typo

* Fix issues

* Use send_confirm_req_hash in beta & test networks

* Remove unsused variable

* Batch confirmation request

* Logical errors

* Returning correct files permissions

* Simplify request by removing hash-only option

Usually root required for forks

* Fix issues

* confirm_req count for root-hash pairs

* Previous for send block cannot be 0

* Send vote-by-hash if successor = requested block

* restore file permissions

* Namespace renaming

* Networks remaning

* Fix republish_block

* Update test message_parser.exact_confirm_req_hash_size

* Formatting

* Add bitset for previous blocks in roots

* Use bool[32] for previous blocks in roots

* Test block.confirm_req_hash_bacth_serialization

* Typo

* Using auto & for vectors iteration

* Fix

* Use range-based for loop

* Use std::vector<uint8_t> bytes instead of shared pointer vector

* Fix message_parser.exact_confirm_req_hash_size test

* Use nano::block in test instead of pointers

* Use nano::block in test instead of pointers

* Use std::vector<uint8_t> bytes instead of shared pointer vector

* Better vectors initialization

* Correct assert for roots_hashes.size ()

* Make max hashes in confirm_req packet constant

Max count can be increased with TCP packets to 32

* Increase protocol version to 16

As indicator of support confirm_req by hash

* Remove unused variable

* Avoid using double root in confirm_req

* Recent changes fix
2019-01-28 22:07:18 +03:00
.github Rename all links to our GitHub repo (#1537) 2019-01-02 16:00:27 -06:00
ci Update CryptoPP & Argon2 (#1068) 2019-01-23 17:46:14 -06:00
CL Fix typo in comment 2017-12-28 01:24:23 -06:00
cmake/Modules Add latest version FindBoost.cmake 2018-07-18 14:05:13 -06:00
crypto Update CryptoPP & Argon2 (#1068) 2019-01-23 17:46:14 -06:00
docker For Docker, log output to a file (unrotated !) (#1228) 2019-01-14 06:47:58 -06:00
etc/gpg Updated script to generate source tarball and changelog (#1249) 2018-10-01 11:17:00 -05:00
gtest Inboarding gtest. 2016-04-16 10:24:41 -05:00
images Update README (#709) 2018-03-08 06:17:14 -05:00
lmdb@163c273b46 Update lmdb to latest with windows patch for db growth (#1563) 2019-01-16 09:21:12 -06:00
load-tester Rename internal project bits from RaiBlocks to Nano (#1504) 2018-12-28 14:58:50 -06:00
miniupnp@e24d7eca28 updated to latest beast directory including moving submodule link url and also porting commands to latest code 2017-07-29 20:38:51 +00:00
nano confirm_req_hash to reduce bandwidth usage (#1046) 2019-01-28 22:07:18 +03:00
util Get rid of nounset flag when running the bootstrap subscript (#1549) 2019-01-03 10:48:06 -06:00
.clang-format.base Ensure ".clang-format" works with current clang-format tool (#1378) 2018-11-15 10:28:10 -06:00
.gitignore Rename internal project bits from RaiBlocks to Nano (#1504) 2018-12-28 14:58:50 -06:00
.gitlab-ci.yml Rename internal project bits from RaiBlocks to Nano (#1504) 2018-12-28 14:58:50 -06:00
.gitmodules Update CryptoPP & Argon2 (#1068) 2019-01-23 17:46:14 -06:00
.travis.yml move secure variable into .travis.yml and limit scope to nix env (#1641) 2019-01-25 22:30:35 -05:00
appveyor.yml Rename internal project bits from RaiBlocks to Nano (#1504) 2018-12-28 14:58:50 -06:00
asan_blacklist Fixing an asan issue. 2014-11-04 22:01:22 -06:00
CMakeLists.txt tsan: blacklist mdb (#1637) 2019-01-26 12:26:07 +07:00
doxygen.config Rename internal project bits from RaiBlocks to Nano (#1504) 2018-12-28 14:58:50 -06:00
Info.plist Rename internal project bits from RaiBlocks to Nano (#1504) 2018-12-28 14:58:50 -06:00
LICENSE Update license year 2019 (#1527) 2019-01-01 17:47:29 -06:00
logo.png Minimal wallet rebranding 2018-02-06 20:26:00 -06:00
Nano.icns Rename internal project bits from RaiBlocks to Nano (#1504) 2018-12-28 14:58:50 -06:00
Nano.ico Rename internal project bits from RaiBlocks to Nano (#1504) 2018-12-28 14:58:50 -06:00
Nano.rc Rename internal project bits from RaiBlocks to Nano (#1504) 2018-12-28 14:58:50 -06:00
qt.conf Found the correct magic recipe to get packaging working. 2014-11-09 18:51:16 -06:00
README.md Update README.md 2019-01-25 22:38:35 -05:00
rep_weights_beta.bin Update bootstrap weights (#1480) 2018-12-18 10:31:28 -06:00
rep_weights_live.bin Update bootstrap weights (#1480) 2018-12-18 10:31:28 -06:00
resources.qrc fixed the inclusion of the logo file into the binary using QT resources 2017-04-20 13:19:26 -05:00
tsan_blacklist tsan: blacklist mdb (#1637) 2019-01-26 12:26:07 +07:00


Logo

Build Status Build status

What is Nano?


Nano's goal is to become "a global currency with instantaneous transactions and zero fees over a secure, decentralized network."

We've applied the philosophy of "do one thing and do it well." We are focused on building the best medium for value exchange in the world.


Key Features

  • Nano utilizes a novel block-lattice architecture, unlike conventional blockchains used in many other cryptocurrencies.
  • The network requires minimal resources, no high-power mining hardware, and can process high transaction throughput.
  • Offers instantaneous transactions with zero fees and unlimited scalability, making Nano an ideal solution for peer-to-peer transactions.
  • As of August 2018, the Nano network has processed over twelve million blocks with an unpruned ledger size of only 4.6GB.

For more information, see Nano.org or read the whitepaper.

Guides & Documentation

Want to Contribute?

Please see the contributors guide.

Contact us

We want to hear about any trouble, success, delight, or pain you experience when using Nano. Let us know by filing an issue, joining us on reddit, or joining us on Discord.