Commit Graph
49 Commits
Author SHA1 Message Date
Teknique 469aefb873 Encrypt messages between nodes
Both sides of the chat now generate secrets based on their private key
and the other side's public key. They encrypt each message with a nonce
before sending it, and use the nonce in the decryption.

This _does_ mean that the responder has to specify the starter's name
now so that they can select the proper public key for encryption.
2023-08-02 23:21:46 -07:00
Teknique 04354d79c9 Cleanups and prepping for encryption
This cleans up some types, moves some typing to loading and saving keys,
uses clearer object names, and passes a crypto system into chatter.

This lays the groundwork for adding encryption.
2023-08-02 21:20:01 -07:00
Teknique 11858a1f5c Added with_privacy changes 2023-08-02 12:28:52 -07:00
Teknique 92439fede9 Working cross-server chat 2023-08-02 12:28:05 -07:00
Teknique 781051783c Responder tries to open the key before writing. 2023-08-02 12:28:05 -07:00
Teknique 18e283bb84 WIP snapshot. 2023-08-02 12:28:05 -07:00
Teknique be2b3ec1e8 More helpful class reprs 2023-08-02 12:28:05 -07:00
Teknique d9d03885d9 Run Black on veilid-python 2023-08-02 12:28:05 -07:00
Teknique 7fa1df0474 Check b.len() < Self::FIXED_SIZE, not b.len() < 4
The original thinking was that if len(b) < FIXED_SIZE, then that would
be picked up later by the "invalid member length" check. In that case,
this only really *needs* to make sure that the check after this for
"wrong fourcc" wouldn't fail. But if len(b) < FIXED_SIZE, it really is
an invalid size, and should get that error message before even starting
to validate its other qualities.
2023-07-25 08:39:15 -07:00
Teknique f8bb97b39c Fix(?) size check in try_from for DHTSchemaSMPL 2023-07-24 21:43:14 -07:00
Teknique c4620218aa Worked around globals 2023-07-21 17:35:39 -07:00
Teknique 1e529c2474 Automatically skip tests when veilid-server isn't running 2023-07-21 16:54:32 -07:00
Teknique e0efb2853b Fix remaining type issues 2023-06-17 12:29:38 -07:00
Teknique f1aad14099 tests/__init__ => conftest 2023-06-17 12:29:37 -07:00
Teknique 553ea7a3e0 Big refactoring sweep through tests 2023-06-17 12:29:36 -07:00
Teknique b545c5c2be Fixes 2023-06-17 12:29:35 -07:00
Teknique 00521a1283 Clean state types 2023-06-17 12:29:34 -07:00
Teknique cf2c26e99b Clean api types 2023-06-17 12:29:33 -07:00
Teknique 69087f2854 Clean json_api types 2023-06-17 12:29:32 -07:00
Teknique fa92c9902d Cleanup types 2023-06-17 12:29:31 -07:00
Teknique 861ca706ab Simplify error dispatch. 2023-06-17 12:29:30 -07:00
Teknique 0a9cfb3338 Use dataclasses for configuration. 2023-06-17 12:29:29 -07:00
Teknique e3a20a352e Added JSON dht and dht/schema tests. 2023-06-01 15:40:47 -07:00
Teknique cb49477490 Rearrangement for easier scaling of test count 2023-06-01 14:14:24 -07:00
Teknique b397b5c66b Finish coverage of veilid_api::types 2023-06-01 13:57:18 -07:00
Teknique ded3f22870 Factor out fixtures; add path to things tested 2023-06-01 13:38:35 -07:00
Teknique c25029b10f Added veilid_state tests. 2023-06-01 13:04:51 -07:00
Teknique 075da7fe49 Refactoring snapshot 2023-05-31 18:12:57 -07:00
Teknique febd5fe2dd Added veilid_log tests. 2023-05-31 16:26:28 -07:00
Teknique 04c52a4ddb Added tunnel.rs tests. 2023-05-31 16:16:57 -07:00
Teknique 4b14bbb4f4 Add stats JSON serde tests 2023-05-31 15:49:21 -07:00
Teknique e2b8c4488e Fix routing_table test imports 2023-05-31 13:34:53 -07:00
Teknique cdff17dca1 Snapshot 2023-05-31 12:58:18 -07:00
Teknique f1e12a8ac3 More type testing. 2023-05-31 12:57:01 -07:00
Teknique 9daf47d117 Tested AlignedU64 2023-05-31 12:57:01 -07:00
Teknique 367e160075 Better run_test! macro param naming 2023-05-31 12:57:01 -07:00
Teknique c01566cc69 Round-trip de/ser for PeerInfo 2023-05-31 12:57:01 -07:00
Teknique cd8e90cafa Added the bones of test_serialize_json 2023-05-31 12:57:00 -07:00
Teknique d0ac838708 test_serialize => test_serialize_routing_table 2023-05-31 12:55:54 -07:00
Teknique a74b0cf3b6 Refactor veilid_core::tests::native with macros 2023-05-31 12:53:59 -07:00
Tek d93c007d8a Merge branch 'tek/165-test-serializers' into 'dev'
Round trip serialization/deserialization tests for RoutingTable

See merge request veilid/veilid!19
2023-05-25 18:42:04 +00:00
Teknique db4646a716 Warnings cleanups 2023-05-25 11:02:49 -07:00
Teknique 983176a9e7 terminate() what we’ve init()ed. 2023-05-25 10:56:24 -07:00
Teknique f9a9949466 Added serialization tests to iOS/Android and wasm 2023-05-25 10:42:25 -07:00
Teknique ff711080ab Extract RoutingTable inline types 2023-05-25 09:59:55 -07:00
Teknique 4d3d549a4a TableStore requires a ProtectedStore arg now 2023-05-24 17:52:11 -07:00
Teknique f7c5154fab Basic framework for testing RoutingTable load/save 2023-05-24 17:35:12 -07:00
Teknique f46fb87864 Remove extra parens that annoy cargo check 2023-05-24 17:24:55 -07:00
Teknique 1654d03ad2 Added 1st simple rkyv serializer test 2023-05-24 17:24:55 -07:00