Ravin Perera
5cef95c9f6
Enabled and fixed compiler warnings. ( #359 )
2022-01-28 16:03:34 +05:30
Ravin Perera
d4646179c2
Returned input hash and ledger info for input submissions. ( #283 )
...
- Introduced input hash which can later be used to query the ledger.
- Returned input hash and ledger info at input submission.
- Updated js client lib to support input hash.
- Updated consensus proposal candidate expiration rules.
2021-04-07 21:22:29 +05:30
Savinda Senevirathne
7cec6d01c1
Changes for unstable consensus. ( #272 )
...
* Return empty hash when set or vector is empty in crypto.
* Changing <operator in sequence_hash struct.
* Fixing vm script and allowing only single sync target per vpath.
* Making vm cluster log level to debug.
* Increasing hpws max message size and fixing lcl mode in vm cluster scripts.
* lcl block fix.
2021-03-17 12:17:50 +05:30
Ravin Perera
5b56d9c1b3
Updated hpfs hash verification with file mode checks. ( #257 )
...
* Added file mode to hpfs responses.
* Parse file mode on hpfs response read.
* Apply file/dir mode.
* Fixed mode apply logic.
* Fixed code review comments.
* Additional fix.
2021-02-24 11:13:28 +05:30
Ravin Perera
9f4499653a
Dynamic roundtime detection. ( #244 )
...
When consensus is unreliable detect roundtime based on roundtime reported by peers.
2021-02-16 13:34:29 +05:30
adheeb-adb
62c91ad90c
sqlite wrapper for ledger database. ( #228 )
...
Added wrapper methods to create ledger table and insert records for sqlite database.
2021-01-29 18:06:31 +05:30
Ravin Perera
c25ebe66f4
Util helper func simplification. ( #203 )
2020-12-23 21:49:13 +05:30
Savinda Senevirathne
e835e18d18
New config file structure. ( #201 )
2020-12-23 18:52:58 +05:30
Ravin Perera
f2ed9040c0
User protocol upgrade and js client lib. ( #191 )
...
* Unified js client lib for browser and nodejs.
* Client lib multiple connections support.
* Implemented server challenge response.
* Contract guid and version validation.
* Server key validation.
* User json message encoding improvements.
2020-12-11 11:02:58 +05:30
Ravin Perera
da0eb08512
SIGTERM handler and minor startup improvements. ( #185 )
...
* SIGTERM handler and stderr usage.
* Create-contract state seed dir creation.
2020-12-06 10:38:35 +05:30
Ravin Perera
d9517b6164
Reorganized util and hpws source files. ( #161 )
2020-11-23 23:18:42 +05:30
Ravin Perera
86e2e1211c
Introduced consensus round nonce and reintroduced stage 0. ( #160 )
...
* Reintroduced stage 0.
* Introduced round nonce for reduced lcl predictability.
2020-11-23 23:00:13 +05:30
Savinda Senevirathne
51173e37f2
Support message separation for multiple inputs from same user. ( #142 )
2020-11-06 10:55:40 +05:30
Savinda Senevirathne
648b70892c
Blake2 to Blake3 hash migration ( #111 )
...
* hash call update from blake2b to blake3
* including installation steps for blake3 in readme
2020-08-21 15:50:39 +05:30
Asanka Indrajith
95683035b9
LCL history request and response. ( #59 )
...
Detect and request missing lcl history from another random node.
Sending lcl history response to a asked node.
Getting lcl history response and applying it.
Delete lcl that exceeds max ledger sequence.
2019-11-19 07:50:33 -05:00
Ravin Perera
83189556de
Refactored user I/O with signed inputs and NUPs. ( #53 )
2019-11-03 22:45:23 +05:30
Ravin Perera
cb364cc420
Compilation time improvements. ( #52 )
...
* Precompiled header for all common library headers (with cmake 3.16rc3).
* Divided cmake build into shared libraries.
* Added gold linker support.
* Separated websockets lambda expressions to an independent file.
2019-11-02 14:46:21 +05:30
Ravin Perera
7b78387cef
Switched to specific libsodium crypto funcs.
2019-11-01 15:23:29 +05:30
Asanka Indrajith
b598025346
Loading and saving ledger and lcl consensus. ( #51 )
...
* Ledger saving, loading, consensus with ledger sequence number.
* std terminate exception handler.
2019-11-01 15:21:25 +05:30
Ravin Perera
93d4abfd2a
Updated hashing algorithm.
2019-10-30 18:35:08 +05:30
Ravin Perera
5ea2bef62a
Improved user inputs handling in consensus ( #46 )
...
Updated flatbuffer proposal raw_inputs, raw_outputs data structure.
Improved user inputs handling in consensus.
2019-10-28 00:17:35 +05:30
Asanka Indrajith
d6acee4e09
Basic consensus implementation ( #45 )
...
Consensus for user connections, user inputs, contract outputs and time.
2019-10-26 11:46:32 -04:00
Asanka Indrajith
7ed1466ad9
p2p connection, message handling, validation and serialization ( #38 )
...
Implement basic peer to peer connection establishment and maintenance.
Message serialization and parsing using FlatBuffer(Including defining message schema).
Validating incoming proposal messages.
2019-10-21 08:32:25 -04:00
Ravin Perera
2d5d8960c0
Boost log integration. ( #37 )
2019-10-20 21:45:59 +05:30
Ravin Perera
da9c5de9d0
Removed keytype config field in favour of key prefix.
2019-10-17 10:18:51 +05:30
Ravin Perera
0fb9ebf79f
Changed base64 to hex encoding.
2019-10-17 00:17:15 +05:30
Ravin Perera
8b003aeaa2
Switched to binary pubkeys from base64 for internal user data ( #29 )
...
* String copy optmisations.
* User pubkey binary.
2019-10-16 06:45:49 +05:30
Ravin Perera
56c3e3ee93
Optimized string passing with string_view.
2019-10-14 17:03:11 +05:30
Ravin Perera
ebf13209e1
Code consistency improvements ( #21 )
...
Fully-qualified namespace accessors
Updated function out param order
reinterpret_cast
2019-10-11 20:08:53 +05:30
Ravin Perera
f64cdc6ad0
Implemented user connection challenge handshake ( #20 )
...
Implemented user connection challenge handshake.
Optimized user challenge message processing.
2019-10-11 17:29:45 +05:30
Ravidu Lashan
070994277d
Added key type to the config file ( #17 )
...
Added key type to the config
2019-10-10 15:33:42 +05:30
Ravin Perera
d8581f7ce9
General code optmisations and cleanup. ( #15 )
...
Updated `version_compare` based on this issue: #13
Got rid of `replace_string_contents` helper func.
Replaced #define macros with static consts.
Moved comments from headers to source files.
2019-10-10 12:57:46 +05:30
Ravin Perera
374424f98f
Code comments and consistency improvements. ( #12 )
2019-10-09 22:26:08 +05:30
Ravin Perera
d1d59ddf63
Refactored conf and crypto namespaces.
2019-10-05 09:42:47 +05:30
Ravin Perera
e109e1be47
Improved contract loading validation.
2019-10-04 17:02:17 +05:30
Ravin Perera
8c8793da21
Added user challenge generation and verification.
2019-10-04 15:12:46 +05:30
Ravin Perera
e3c1f85034
Reogranised usr files and updated readme.
2019-10-03 18:21:46 +05:30
Ravin Perera
040bc76c95
Replaced custom base64 code with sodium base64 helpers.
2019-10-01 14:48:55 +05:30
Ravin Perera
15019d4e96
Added config file schema and signing key validation.
2019-09-30 14:40:16 +05:30
Ravin Perera
1a8672b656
Added base64 sign/verify methods.
2019-09-27 17:17:54 +05:30
Ravin Perera
36fae44008
Added contract-based config file. ( #4 )
...
Added contract-based config file and command line flow. Added contract creation and rekey support.
2019-09-27 15:55:49 +05:30
Ravin Perera
0382475de1
Implemented config and crypto infrastructure ( #2 )
...
Added config file read/write infrastructure with RapidJSON.
Added key pair generation and sign/verify helper with libsodium.
2019-09-26 19:05:23 +05:30