Commit Graph

16 Commits

Author SHA1 Message Date
Revertron d513c29cfe Code reformatting. 2021-06-09 20:36:36 +02:00
Revertron 319051edbd Implemented P2P traffic encryption.
Changed serialization format of P2P messages.
Refactored P2P network code.
2021-05-30 00:33:13 +02:00
Revertron bcb4cc1b6b Changed behavior on spurious wakeups of p2p connections. 2021-05-10 11:17:03 +02:00
Revertron 47c398118a Optimized new block processing. Added quick-ban for those, who send wrong blocks. 2021-04-17 01:51:14 +02:00
Revertron a74a0733ac Changed identity format in transactions, now it will be double Sha256.
Added new checks for forked blocks.
Added options table.
Added posibility to replace blocks in DB by more appropriate forks.
Divided transactions table to domains and zones tables.
Added a timestamp to domains and zones table, it will give us possibility to purge old domains.
Changed difficulty check to check head and tail (sum of them) of the hash.
Added encrypted (by Chacha20) domain name to DomainData, added contacts and owners vectors for it too.
Added yggdrasil flag to ZoneData - it will restrict all IPs for domains in particular zone to Yggdrasil only.
Changed difficulties of various block types.
Added a temporary (for a run) unique ID to all handshakes.
Start of signing blocks mining will be after 60 seconds after full block.
Added mining status to statusbar.
2021-04-10 09:47:21 +02:00
Revertron db6b96f8dc Added a disconnect for sockets with 3+ spurious wakeups. 2021-04-02 15:25:56 +02:00
Revertron 8d7f1b2c6b Some optimization for P2P part. Added panic on error of reregistering server token - needed for investigation of stuck network. 2021-04-01 14:44:37 +02:00
Revertron 0b5f5d0793 Implemented purging old disconnected peers. 2021-03-21 01:31:33 +01:00
Revertron dcf5bb72b0 Eliminated connection loops.
Optimized network processes.
Removed some unnecessary logging.
Fixed status bar info inconsistency.
2021-03-21 00:19:09 +01:00
Revertron b0e78edb3d Changed origin block index to 1. Added "locker" blocks - mining, exchange etc. Removed unnecesarry creation of 'zones' directory on startup. Changed bind port of DNS-UDP socket to random (fixes inability to start several copies of Alfis). Sped up block exchange by sending additional pings when we have more blocks than other peers. Fixed unnecesarry double requests of blocks. Totally reworked block checking on arrival. Added target tags for logging in main. Added a commandline flag to list all blocks in DB and exit. 2021-03-06 21:28:06 +01:00
Revertron e53245315f Implemented status bar with some status information: sync process, connected nodes and blockchain height. 2021-02-27 18:57:15 +01:00
Revertron 803b70fc25 Speedup initial blockchain receiving. 2021-02-22 12:49:36 +01:00
Revertron 483be5215a Improved peer reconnection code. 2021-02-20 21:36:58 +01:00
Revertron abb2455d1c Implemented block adding check. Cleared many warnings, cleaned code. 2021-02-14 18:20:30 +01:00
Revertron 279b3e87c3 Implemented P2P peer exchange. Refactored project structure. 2021-02-11 21:51:32 +01:00
Revertron 9e7a1b8834 Implemented P2P network protocol. Refactored project structure. 2021-02-05 22:24:28 +01:00