Commit Graph

723 Commits (08a1b74c3be679f8cf76e2487c884f17b29de0bc)

Author SHA1 Message Date
Jeff Becker e6174efa21
don't derive x25519 key from ed25519 key 4 years ago
Jason Rhinelander f1171ed7a2 make format 😠 🤮 4 years ago
Jason Rhinelander 46f3459b79 Fixed EncryptedIntroSet signing to use PrivateKey
We can generate both root and derived signatures from a PrivateKey, but
only root from a SecretKey, so just change it to use a PrivateKey.
4 years ago
Jason Rhinelander 860c5efd47 Derived key fixes
The reason things weren't working here is because libsodium does
something completely unintuitive and called the seed the "secret key"
when it isn't, it's the seed.

This adds a new PrivateKey class (alongside the existing SecretKey and
PubKey) that holds just a private key value but no seed -- which we need
to do because there is no way we can get a seed after calculating a
derived keypair.

With these changes, we now generate exactly the same keys and subkeys as
Tor (and a new test case uses values generated in Tor to verify this).

This is incomplete -- the subkey signing code is still not implemented;
it has to be adapted to create a signature from a PrivateKey rather than
a SecretKey which will probably requiring working around/reimplementing
some of what libsodium does for creating a signature since it expects
"secret keys" i.e. the seed.
4 years ago
Jeff Becker 0f13591802
does not work 4 years ago
Jeff Becker 99eb7726ff
initial dht key blinding 4 years ago
Jeff Becker e87b754906
fix recursion depth on introset lookup 4 years ago
Jeff Becker 2c0dc12f39
refactor single char variables in DHT (mostly) 4 years ago
Jeff Becker 3b66cf6e75
dht fixes, disable iterative lookups on clients, revert "fixes" from 0.6.3, pass in recursion depth from introset lookup 5 years ago
Jeff Becker a17b5f25b5
check for zero'd rc 5 years ago
Jeff 0e2c5736a8
Merge pull request #1034 from majestrate/dht-timeout-fixes-2020-01-10
dht timeout tweak
5 years ago
Jeff 0ad2809ac7
Merge pull request #1033 from majestrate/prevent-segfault-2020-01-10
prevent segfault
5 years ago
Jeff Becker 8bb492da6e
dht timeout tweak 5 years ago
Jeff Becker 77f0944d6d
use shared_from_this 5 years ago
Jeff Becker 78e325c4c5
always lookup introset from nearest router 5 years ago
Jeff Becker 2d82e931da
try doing lookup from close router, randomize when above lookup threshold 5 years ago
Jeff Becker 8a5365d9a6
diversify endpoints 5 years ago
Jeff Becker c1ad5f955a
remove mutex 5 years ago
Jeff Becker 3147e2d357
shuffle intros when more than 1 exists 5 years ago
Jeff Becker b3ad65f470
randomize intro order on shift 5 years ago
Jeff Becker 79badd6714
* clients expore dht faster
* use random path when doing dht lookups for .loki
5 years ago
Jeff Becker 5ae428a114
Revert "remove call to link manager"
This reverts commit 3dd36fa11a.
5 years ago
Jeff Becker a5121c346c
remove call to link manager 5 years ago
Jeff Becker d1a29884df
client side perf improvement 5 years ago
Jeff Becker 79c3c748e4
limit number of snode sessions client side 5 years ago
Jeff Becker 8b8d636ded
make format 5 years ago
Thomas Winget 71bb0dd520 implement timers using libuv
So far only a bit of the code using timers has been modified to use
the new libuv-based timers.  Also only the non-Windows case has been
implemented.  Seems to be working though, so it's a good time to commit.
5 years ago
Jeff Becker 7f6d1ebb92
fix slow start bug 5 years ago
Stephen Shelton 5d3cb8f405 Include error code in log output in Identity::EnsureKeys() 5 years ago
Stephen Shelton 2c6226f54a Backup SNApp keys when migrating to new ed25519 crypto 5 years ago
Stephen Shelton 66a058a2af Make format 5 years ago
Stephen Shelton 93b8832026
Merge branch 'dev' into private-keys-backup-support 5 years ago
Jeff Becker 28a2d471d6 style nitch 5 years ago
Jeff Becker 44e0e2c034 dont flood the logic queue 5 years ago
Jeff Becker 0828307906 fix address mapping bug 5 years ago
Jeff Becker 8849173112 try async decrypt then verify 5 years ago
Jeff Becker 285a9a1dd5 prevent segfault 5 years ago
Jeff Becker ba0fd223d9 reduce number of jobs we put onto the logic thread 5 years ago
Jeff Becker 56dce90de9
add trace log level for tracking logic thread jobs 5 years ago
Stephen Shelton db56e17c23 Rename bencode function for clarity 5 years ago
Jeff Becker 1a864832c8
make format 5 years ago
Thomas Winget 23a9773e1e
remove our paths from outbound queues 5 years ago
Jeff Becker 2c5561fc3c
make format 5 years ago
Jeff Becker 7ee026fa50
make path builds work again 5 years ago
Jeff Becker 2bf1e4f46a
enable IOS on IOS 5 years ago
jeff c26b67c379 finish wiring up jni shizz 5 years ago
jeff 52757fef0e Merge remote-tracking branch 'micheal/background_mode' into vpn-api-2019-10-03 5 years ago
jeff 32ed821763 Merge remote-tracking branch 'upstream/dev' into multithreaded-cryptography 5 years ago
jeff f9fb40f590 final touches 5 years ago
jeff 7c691cf334 handover should be fixed now 5 years ago
Jeff Becker 993e4c2637
try fixing handover 5 years ago
jeff 6c2ebbb925 try fixing handover and add snapp traffic to multithreaded crypto workers 5 years ago
Jeff Becker 327c545530
finish multithread cryptography first pass 5 years ago
jeff 14c9ef15ed try calling stuff in logic thread from event loop 5 years ago
Jeff Becker 1adae338ce
Merge remote-tracking branch 'origin/master' 5 years ago
Michael edd0ec398f
Move thread stuff to subdirectory 5 years ago
Michael 4d8fe2a8a8
Move meta programming to subdirectory 5 years ago
Michael 1aec0dfa2b
Move logging to subdirectory 5 years ago
Jeff Becker c01112e4b7
tracy lock contention testing and other fun things 5 years ago
Jeff 093021ef99 try fixing handover drop bug 5 years ago
Jeff Becker eabbb83149
use estimated build time instead of expiration time for delta when determining when to space out builds 5 years ago
Jeff Becker e0424a91a7
bump path build handover window, check cooldown on build. 5 years ago
Jeff Becker 3c3338e801
Merge remote-tracking branch 'origin/master' into memlink 5 years ago
Michael 094b697b01
Replace StatusObject with underlying JSON type 5 years ago
Michael 16cdfbd5f0
clang-tidy modernize pass 5 years ago
Jeff Becker fdbb2e8dc8
make format 5 years ago
Jeff Becker 847fcdf5f3
move convotag missmatch check to the right place 5 years ago
Michael 84601fa474
Make format 5 years ago
Michael d1990b5e93
Fix suspicious thread-unsafety 5 years ago
Jeff da4f1ddb0a
Merge pull request #757 from majestrate/master
don't expire based on reply intro
5 years ago
Jeff c2c4f61ded don't expire based on reply intro 5 years ago
Jeff Becker c1f33bb1ac
initial mempipe implementation 5 years ago
Jeff Becker e3d13fc2a0
drop missmatched convotags 5 years ago
Michael f9e9227e19
Fix gcc trunk warnings 5 years ago
Michael 4763888d2c
Add fail-able docker build for gcc trunk 5 years ago
Jeff Becker db2206664a
fix crashes in testnet 5 years ago
Jeff Becker 7a3c8e5ca0
set limits correctly 5 years ago
Jeff Becker f48754c45d
make hop count and length configurable 5 years ago
Jeff Becker d465400840
revert 5 years ago
Michael 5cef2865bd
Fix Ubuntu builds 5 years ago
Michael e52492911d
Refactor endpoint state management to a new class 5 years ago
Jeff Becker 1fd6b5ae74
Merge remote-tracking branch 'origin/master' into ipv6-tun 5 years ago
Michael 488695047f
Remove redundant else blocks 5 years ago
Jeff Becker b9bcc2b775
make threadpool consice 5 years ago
Jeff Becker 0eb6431eb1
initialize tun with 0 and set defaults in correct places 5 years ago
Jeff Becker fd911d0c52
make format 5 years ago
Jeff Becker 58005c5f81
Merge remote-tracking branch 'origin/master' into ipv6-tun 5 years ago
Michael a2326efa37
Revert "Merge pull request #679 from tewinget/revert-config-refactor"
This reverts commit 2996a7f29c, reversing
changes made to 10df3bd4b3.
5 years ago
Jeff Becker 6467d21ba0
* fix testnet codepath
* add packet info for osx
5 years ago
Jeff Becker 81cab62bb9
* fix testnet codepath
* add packet info for osx
5 years ago
Thomas Winget d044d60101 Reverts #678 #677 and #669 with hashes:
10df3bd
766ece8
979f095

See those commits for further details
5 years ago
Michael b51f7d8015
Convert to load config in config loader 5 years ago
Michael bd78471dae
Move ini parser as well 5 years ago
Jeff Becker 5874c38b38
swap path on inbound convo if expires soon 5 years ago
Jeff Becker f211ff182a
pick ready paths for reply 5 years ago
Jeff Becker d6ec528a72
start work on seperating ips out of endpoint 5 years ago
Jeff Becker 64e9622270
start seperating tun and endpoint 5 years ago
Jeff Becker fbf01bd129
fix order 5 years ago
Jeff Becker 1061ae4fee
set outbound context to be outbound session 5 years ago
Jeff Becker 0146a967d0
fix convotag inbound state setting 5 years ago
Jeff Becker 6ab3678f5c
correct comparison 5 years ago
Jeff Becker 5c8b17154c
swap intros only on path build success 5 years ago
Jeff Becker 4734fa91fe
check for zero 5 years ago
Jeff Becker f66e37ca37
oooof 5 years ago
Jeff Becker 289eb2a04c
fix previous commit 5 years ago
Jeff Becker 5c679a10e8
outbound context build more 5 years ago
Jeff Becker 6bca652182
choose first timestamp 5 years ago
Jeff Becker 0b90acff75
handle reply intro 5 years ago
Jeff Becker 8830ac8fac
tweak 5 years ago
Jeff Becker ba6f9ed2d7
continue using llarp::openfilestream 5 years ago
Jeff Becker 54a098356d
continue using llarp::openfilestream 5 years ago
Jeff Becker b0612e2ee1
Merge remote-tracking branch 'origin/master' into ipv6-tun 5 years ago
Michael b6b400baef
Tidy up pathbuilder code 5 years ago
Jeff Becker 5c61df08b5
Merge remote-tracking branch 'origin/master' into ipv6-tun 5 years ago
Michael 08609f9e5a
Rename message files 5 years ago
Michael 8a058fcb34
Move other messages 5 years ago
Michael d6751e3eeb
Move subset of messages to right directory 5 years ago
Jeff Becker 2557a9ab25
check for expiration 5 years ago
Jeff Becker cd05fa6150
Merge remote-tracking branch 'origin/master' into ipv6-tun 5 years ago
Rick V c6c31efec9
make format 5 years ago
Jeff Becker 30f6a8ccd2
make format 5 years ago
Jeff Becker 9c24fc15a8
try not spamming network with builds 5 years ago
Jeff Becker 5853e5e3f4
pass in path 5 years ago
Jeff Becker a323003824
differentiate between inbound and outbound convos 5 years ago
Jeff b857be3d02
Merge pull request #639 from majestrate/master
[WIP] libuv
5 years ago
Jeff Becker d8aebf36fb
swap intros on message rejection 5 years ago
Jeff Becker 1883c63997
swap intros on message rejection 5 years ago
Jeff Becker 2403ab8f86
ipv6 5 years ago
Jeff Becker 9ec41b8831
update RC expiration logic, lookup more often and remove stale entries 5 years ago
Jeff Becker 73c1538518
fix 5 years ago
Jeff Becker f7ccbf0c78
eh 5 years ago
Jeff Becker f8e2edae28
fix 5 years ago
Jeff Becker 223f2702d3
Merge branch 'fix-big-ooooofff' 5 years ago
Jeff Becker a33dbce680
try switching logic 5 years ago
Jeff Becker f8026b8a2d
use latest tag not oldest tag in inbound convos 5 years ago
Jeff Becker 39b1f104a8
revert 5 years ago
Jeff Becker 471a4bf6dd
use reply intro for inbound sessions 5 years ago
Michael 75430a234c
Convert to use memFn 5 years ago
Jeff 674f272a46
Merge pull request #630 from majestrate/master
recent stability stuff
5 years ago
Jeff Becker 762a0c534f
Merge remote-tracking branch 'origin/master' 5 years ago
Michael 491fee206b
Port code to use CryptoManager over passing Crypto pointers 5 years ago
Jeff Becker 2897141036
make format and introduce new function EnsureRouter on router to check nodedb or do dht lookup 5 years ago
Jeff Becker d113f06ebd
use for each loop
don't lookup expired routers we don't need that right now
5 years ago
Michael 3f53965b71
Remove all use of IBEncodeMessage 5 years ago
Jeff Becker 8b2dd72472
Merge remote-tracking branch 'origin/master' 5 years ago
Jeff Becker 41523b934c
more 5 years ago
Jeff Becker 2ac89c0afb
DRY 5 years ago
Michael d49e57aa8d
Fix thread safety issue in service::Endpoint::ProcessDataMessage 5 years ago
Jeff Becker e85cc1bc8a
fix 5 years ago
Jeff Becker 64c7ed42fc
make format 5 years ago