Commit Graph

85 Commits

Author SHA1 Message Date
l0k18
0f3f5af8c3 updating for new hosting 2023-08-10 18:48:59 +01:00
l0k18
b23bf1aaab everything switched over but the reverse header size thing... 2023-08-03 09:34:30 +01:00
l0k18
a2bac60a30 encryption added to tests that didn't refactor correctly
note about encryption and why it must be

test datastore now using same settings as seed

badger options extracted from storage for test and other uses

one place it was missing

all using badger/v3 now

peer database entry count implemented

fixed stray incorrect refactorings

added expiry to interface, now propagates correctly

eliminated type switch with extending of interface

Access to badger View and Update now in Engine

Datastore now available via Listener
2023-08-01 10:50:29 +01:00
l0k18
cf50b0245a Node key fingerprint for quickly distinguished node labels
The result of this better trace/log feature was it was found the peers were not gossiping to each other. This appears to be because they only gossip when connected.
2023-07-21 08:27:05 +01:00
l0k18
bebef495a4 Ads all now fully correctly formed and signed 2023-07-20 11:05:26 +01:00
l0k18
ae8e4785e0 Refactored ad.Ad interface to cert.Act since it resembles an Act at Law.
Added explanation of this naming showing it's more abstract meaning as well as how it applies to hidden services.
2023-07-19 14:10:51 +01:00
l0k18
b86dcb68c4 removed redundant ad.Ad method from interface, replaced with Sign
The Splice method was literally the same as codec.Encode except no error return. Both wrong and redundant. Sign method was already primed to become interface so now ad.Ad is an interface that can do all the main things required of an Ad. Codec, plus sign and validate. This means that the implementation could now largely be purely abstract except for the conversion to and from the wire format.
2023-07-19 13:52:15 +01:00
l0k18
fc365800e4 All ad codec/signing tests passing 2023-07-18 14:37:36 +01:00
l0k18
9b1455660f put node into session manager properly, change to sig API
switching over to schnorr next, just moving things around so the necessary hash and key parameters for a simple schnorr key validation without embedded recoverable signature. The ads must have the pubkey in them, for simplicity, they can then be parsed in and then the key is there to be used in a regular non-embedded signature.

DSA signatures overall are to be deprecated, and note to follow up on the equivalent type of Schnorr construction that enables recovery, just so it's available without having to use ecdsa to use this method.
2023-07-17 18:18:20 +01:00
l0k18
6774cf93e8 refactor peer ad generator and scaffold gossip update service 2023-07-17 12:02:46 +01:00
l0k18
1024b7e38d Init discovery immediately first then on ticker, local node address accessor and matcher 2023-07-13 17:28:19 +01:00
l0k18
61f010bb6e fixed cleanup for peerstore test 2023-07-11 11:08:08 +01:00
l0k18
83569879a4 fixed cleanups for mock engines with Host 2023-07-11 10:45:04 +01:00
l0k18
c8e330f00a All of the onions and Codec now commentated.
*whew*
2023-07-06 09:24:17 +01:00
l0k18
a1dc03a015 total restructure of ads and onions
does not yet include peer messages like key change
2023-07-05 13:01:11 +01:00
l0k18
7999bf7e5a Addresses now pluralised. Most engine tests fail now due to mock not making libp2p host. 2023-07-04 15:09:30 +01:00
l0k18
d690a2eb2f fixed error causing test failure 2023-07-03 17:36:12 +01:00
l0k18
fe87ad4911 added godoc comments to address ad 2023-07-03 09:31:51 +01:00
l0k18
96648d7e5b updating documentation for all godoc package headings 2023-07-02 12:52:20 +01:00
l0k18
7d07acc307 modularising the p2p/gossip/dht peer database so it becomes the seed 2023-06-20 16:43:28 +01:00
l0k18
e943991f8f viper flags and tidier bits in engine 2023-06-20 12:14:21 +01:00
l0k18
55f806c9f4 relay and client launcher started 2023-06-19 17:07:54 +01:00
l0k18
b4810106ce Refactor to PayChan, use Mgr() method and unexport manager, ad load ad. 2023-06-19 11:54:09 +01:00
l0k18
9f664db500 remove gossip method, start ad handling for node 2023-06-19 09:20:03 +01:00
херетик
f8fbf0a513 peer and service ads now insert into peerstore 2023-06-17 08:34:49 +01:00
херетик
1f7145a43d peer ad test passing correctly with embedded proto 2023-06-16 11:09:04 +01:00
херетик
773f3487da don't start up ad handler without sub 2023-06-15 19:37:57 +01:00
херетик
724446e0d3 Peers now gossip ads 2023-06-09 07:12:53 +01:00
херетик
efa031008c fixing tests, or trisdekaphobia, you be the judge 2023-06-07 20:01:04 +01:00
херетик
30455bb592 Simpler constructor function name. 2023-06-07 17:43:23 +01:00
херетик
a07a013c00 Added and establishing listening for peer information gossip. 2023-06-07 16:36:49 +01:00
херетик
c0f4fe517c Moved listener out of sessionmanager into engine. 2023-06-07 14:52:30 +01:00
херетик
16b6766d74 added helper for multiaddr->AddrPort 2023-06-06 18:15:06 +01:00
херетик
b02250ee66 Pulled in peerstore to main engine package. 2023-06-04 18:28:23 +01:00
херетик
e284faf114 documenting and tidying of engine, session manager and transport 2023-06-03 12:43:50 +01:00
херетик
eb56b7cfb2 separated all things in onions, hidden service not working atm 2023-06-01 13:44:51 +01:00
херетик
d242bd4874 moved registry and ad/gossip interface out of onions 2023-06-01 06:54:46 +01:00
херетик
3acd24530e registry in separate package 2023-06-01 06:22:53 +01:00
херетик
e201947968 fixing addresses
how did this even work on the ci???
2023-05-29 17:34:41 +01:00
херетик
32a13c0e38 using gofmtsort to try and make things a bit easier to splice and find 2023-05-29 12:20:55 +01:00
херетик
fdcb3f176f dispatcher has dummy listener for mock use case 2023-05-12 13:22:55 +01:00
херетик
707568fce2 updated dispatcher test to use bigger messages 2023-05-11 11:46:02 +01:00
херетик
9a568ff720 starting integration of listener, remove holo 2023-05-11 09:04:10 +01:00
херетик
cba46e7298 Add listener to engine 2023-05-11 08:49:44 +01:00
херетик
1f915b44a6 sessions now index and search on header key bytes 2023-05-07 13:53:56 +01:00
херетик
f3f053abca changed node identity to crypto.Keys 2023-05-07 11:47:57 +01:00
херетик
962cc22c31 un-embedded the things 2023-05-02 23:59:16 +01:00
херетик
6c762914ca restructured some things, messing around with primes... 2023-05-01 15:48:31 +01:00
херетик
3118d3f82f dispatcher key change now working 2023-04-28 01:20:47 +01:00
херетик
5828b96ef3 test sends and acks correctly 2023-04-22 09:42:08 +01:00