Sergi Delgado Segura
bd08b151df
Replaces locator with common/constants value
2019-12-05 11:03:36 +01:00
Sergi Delgado Segura
f0150ce585
Removes hash/cipher configuration and changes AESGCM128 for CHACHA20POLY1305
...
Updates tests accordingly
2019-12-04 17:46:07 +01:00
Sergi Delgado Segura
3c6f13ef00
Rename delete_completed_appointments and rearange arguments
2019-11-11 13:27:57 +00:00
Sergi Delgado Segura
4233c9d5cc
Refactor get_matches and filter_valid_matches to not be static
2019-11-08 18:21:42 +00:00
Sergi Delgado Segura
20faa04c4c
Refactord Watcher and BlockProcessor. Closes #36 .
...
Brings back check_potential_matches and check_matches to the Watcher.
The methods have now been renamed to check_matches (old check_potential_matches) and filter_valid_matches (old check_matches) to provide a better description of their purpose.
decode_raw_transaction has been added to BlockProcessor
2019-11-08 16:25:35 +00:00
Sergi Delgado Segura
8b2f0efa2f
Moves appointment deletion + db update to the cleaner
2019-11-07 19:16:05 +00:00
Sergi Delgado Segura
20f296c9d4
Reformats code to match code guidelines
2019-11-07 15:47:35 +00:00
Sergi Delgado Segura
e6e577c99e
Updates Watcher to use serialize instead of to_json
2019-11-07 15:08:05 +00:00
Sergi Delgado Segura
31afb1373a
Integrates the locator map dumping to the Watcher and Cleaner
2019-11-06 17:08:42 +00:00
Sergi Delgado Segura
8ad3ae5f1d
Initializes block_queue on init
...
Building from backed up data may require initializing the block queues of both the watcher and responder with the blocks they've missed.
2019-10-30 12:20:42 -07:00
Sergi Delgado Segura
ddcbc6a6de
Fixes log level
2019-10-29 15:20:32 -07:00
Sergi Delgado Segura
bc7c7dc26f
Fixes based on DBManager unit tests
2019-10-29 14:52:27 -07:00
Sergi Delgado Segura
f61474216c
Fixes and tests updates
...
Updates tests so they run with the db_manager and fixes some bugs introduced in d7d42c9.
2019-10-28 14:49:40 -07:00
Sergi Delgado Segura
cf61e6e265
Reports the block hash to the responder on adding response
...
The responder can use the block hash to figure out whether or not he is on sync
2019-10-28 14:40:44 -07:00
Sergi Delgado Segura
a0538739d2
Starts data persistence integration
...
The difference between master and the old data-persistence branch was huge, seems more effective to manually cherry pick the changes and integrate them
2019-10-28 14:38:50 -07:00
Salvatore Ingala
21b54f048e
Refactored error handling in add_appointment; minor comments from PR review
2019-10-25 14:51:15 +08:00
Salvatore Ingala
a19bfa13ff
Separated signing logic of the Watcher in sign_appointment function; added unit test
2019-10-24 12:19:33 +08:00
Salvatore Ingala
9b1af92fc3
Minor fixes
2019-10-22 18:59:27 +08:00
Salvatore Ingala
1601f0ca15
Renamed constants and default file names for Pisa's private and public keys
2019-10-22 12:13:12 +08:00
Salvatore Ingala
ca64b59277
Added signature verification to pisa_cli
2019-10-18 14:56:59 +08:00
Salvatore Ingala
414a4638bd
Added signature verification to watcher's add_appointment test
2019-10-18 12:37:06 +08:00
Salvatore Ingala
db522500c3
Switched to cryptography instead of ecdsa for signatures
2019-10-17 17:02:09 +08:00
Salvatore Ingala
f19c499efa
Handling errors when constructing the Watcher in pisa daemon
2019-10-17 12:08:01 +08:00
Salvatore Ingala
deaf704bc5
Removed redundant parentheses
2019-10-17 09:59:36 +08:00
Salvatore Ingala
c6db6eddb3
Using a PEM keyfile instead of a DER for the signing key
2019-10-17 09:59:34 +08:00
Salvatore Ingala
7c1d8b69c7
Changed to_json to to_dict in Appointment and Job; added to_json to Appointment to actually return a string
2019-10-17 09:59:34 +08:00
Salvatore Ingala
e4e83167b7
Made signing key optional (will only sign if given)
2019-10-17 09:59:34 +08:00
Salvatore Ingala
99db9a29ad
Added signatures to appointment
2019-10-17 09:59:29 +08:00
Sergi Delgado Segura
d7c89ddc91
Modifies behaviour towards a failed EncryptedBlob decrpytion
...
The decryption for the `EncryptedBlob` using AES-GCM-128 (the only cipher available atm) raises an `InvalidTag` exception. This was not properly captured by the watcher making it crash. This behavior was already discovered during the `EncryptedBlob` unit testing and left to be fixed in the `Watcher` unit testing.
However, making the EncryptedBlob raise such an exception may not be a good practice, since other ciphers may run into different exceptions. Therefore, the `EncryptedBlob` has been modified to return None upon facing a decryption issue, the `BlockProcessor` will detect that and return a None justice_txm and justice_txid. Upon receiving a None `justice_txid` the `Watcher` will delete the appointment without notifiying the `Responder`.
2019-10-14 16:57:46 +01:00
Salvatore Ingala
9f25ef8603
Fixes from PR review
2019-10-10 18:22:33 +07:00
Salvatore Ingala
aea1d1f1e0
Fixes from PR review
2019-10-10 11:07:58 +07:00
Salvatore Ingala
dee93e5c62
Moved StructuredMessage and Logger to separate file; refactored pisa-cli logging using new format
2019-10-10 09:59:11 +07:00
Salvatore Ingala
c524319027
Several fixes and improvements
2019-10-10 09:59:11 +07:00
Salvatore Ingala
bae9b6b913
Added Logger class; refactored logging accordingly
2019-10-10 09:59:10 +07:00
Salvatore Ingala
2a5dd48950
PEP8 linting
2019-10-10 09:58:27 +07:00
Salvatore Ingala
ed0cb4f632
Changed log format to JSON; fixed missing return value in get_potential_matches
2019-10-10 09:58:27 +07:00
Sergi Delgado Segura
8b62ff9e56
Update some comments/todos/discuss
2019-10-09 17:38:15 +01:00
Sergi Delgado Segura
1e18630ce2
Adds Cleaner tests. Fixes Cleaner, Watcher and Responder
...
There is no need to return the dictionaries modified by the client since they are "passed-by-reference" in Python.
2019-10-04 17:23:45 +01:00
Sergi Delgado Segura
3e0cca14d7
Clean up + higher modular design
2019-10-03 11:49:49 +01:00
Sergi Delgado Segura
93e23e769f
Code clean up
...
Deletes debug/logging pair. Defines logging and bitcoin_cli as system-wide variables
2019-10-02 17:03:43 +01:00
Sergi Delgado Segura
9bb3b38b3f
Clears old commented code
2019-08-27 11:21:08 +02:00
Sergi Delgado Segura
ae2cf26195
Improves internal data structures and reorgs the code for readability
2019-08-26 16:26:29 +02:00
Sergi Delgado Segura
400e524c36
Changes appointment structure
...
Updates the former appointment structure from `dicts` containing `lists` accessed by `index` to `dicts` containing `dicts` identified by `uuid4`. Needs testing.
2019-08-20 11:54:04 +01:00
Sergi Delgado Segura
d34ccc46a1
Adds/Updates further comments and fixes small issues
2019-08-13 12:03:36 +01:00
Sergi Delgado Segura
1cde4a2a11
refactors project structure
2019-08-12 13:24:04 +01:00