Adam Ierymenko
|
70655cc3f7
|
Docs and auto-update of Earth network ID.
|
2013-10-20 16:00:41 -04:00 |
|
Adam Ierymenko
|
c89cdcc3fd
|
Blech... moving on!
|
2013-10-20 15:54:32 -04:00 |
|
Adam Ierymenko
|
1ed8a22d19
|
And then it turns out to be too slow on a slower 32-bit machine... we do want to do tablets eventually.
|
2013-10-20 15:46:36 -04:00 |
|
Adam Ierymenko
|
bad043729f
|
Yet another revision of this algo... yeesh... and update to supernode IDs. I think I am gonna go with this one. Seems memory-hard enough to me. I am probably procrastinating by obsessing over it.
|
2013-10-20 15:31:32 -04:00 |
|
Adam Ierymenko
|
3c5c3280ff
|
Fix an endian-non-neutrality bug in new hashcash identity algo.
|
2013-10-20 11:04:58 -04:00 |
|
Adam Ierymenko
|
8c9b73f67b
|
Make Salsa20 variable-round, allowing for Salsa20/12 to be used for Packet encrypt and decrypt. Profiling analysis found that Salsa20 encrypt was accounting for a nontrivial percentage of CPU time, so it makes sense to cut this load fundamentally. There are no published attacks against Salsa20/12, and DJB believes 20 rounds to be overkill. This should be more than enough for our needs. Obviously incorporating ASM Salsa20 is among the next steps for performance.
|
2013-10-18 17:39:48 -04:00 |
|
Adam Ierymenko
|
fbf6ab5d4d
|
Bug fixes: inverted sense bug, printf format bug.
|
2013-10-18 16:27:07 -04:00 |
|
Adam Ierymenko
|
e13d4df9ab
|
Forgot to set defaults if multicast parameters are unset.
|
2013-10-18 15:50:31 -04:00 |
|
Adam Ierymenko
|
fb7d9b1029
|
Oops we needed _r in there...
|
2013-10-18 15:00:55 -04:00 |
|
Adam Ierymenko
|
5ef758bbd4
|
Eliminate unused private field (compiler warning).
|
2013-10-18 14:27:37 -04:00 |
|
Adam Ierymenko
|
ca93b4a1ac
|
Clean up some stuff, including a few spots where exceptions were not being handled correctly.
|
2013-10-18 14:16:53 -04:00 |
|
Adam Ierymenko
|
03b909603a
|
Clean up the awful Network::Config mess and break that out into NetworkConfig.
|
2013-10-18 13:20:34 -04:00 |
|
Adam Ierymenko
|
5a8f213c23
|
Work in progress...
|
2013-10-18 12:01:48 -04:00 |
|
Adam Ierymenko
|
b10871cedc
|
More work in netconf cleanup.
|
2013-10-18 11:01:41 -04:00 |
|
Adam Ierymenko
|
9f107dbd4e
|
Work in progress on cleaning up netconf mess in node code...
|
2013-10-18 09:48:02 -04:00 |
|
Adam Ierymenko
|
e6eb65be00
|
Netconf support for ARP and NDP caching TTLs.
|
2013-10-17 16:49:31 -04:00 |
|
Adam Ierymenko
|
d0dbd869c9
|
Increase verbosity of multicast tracing and fix tap build problem / GitHub Issue #19
|
2013-10-17 15:20:43 -04:00 |
|
Adam Ierymenko
|
797bba04dd
|
Get rid of not used and maybe never to be used Filter code.
|
2013-10-17 13:07:53 -04:00 |
|
Adam Ierymenko
|
ce14ba9004
|
Take the 0.6.0 opportunity to add flags to a few protocol verbs and do a bit more cleanup. Also fix it so certificates wont be accepted unless they are newer than existing ones.
|
2013-10-17 06:41:52 -04:00 |
|
Adam Ierymenko
|
7e7e28f5f7
|
Add support for pushing network config refresh hints from a MEMORY queue table. That ways it will be possible for network changes to take effect almost immediately across all active peers.
|
2013-10-17 05:37:01 -04:00 |
|
Adam Ierymenko
|
46f868bd4f
|
Lots of cleanup, more work on certificates, some security fixes.
|
2013-10-16 17:47:26 -04:00 |
|
Adam Ierymenko
|
58fa6cab43
|
Auto-pushing of membership certs on: MULTICAST_FRAME,FRAME,MULTICAST_LIKE and on receipt of MULTICAST_LIKE.
|
2013-10-07 17:00:53 -04:00 |
|
Adam Ierymenko
|
4d594b24bc
|
Automagically push netconf certs -- Network support.
|
2013-10-07 16:13:52 -04:00 |
|
Adam Ierymenko
|
b4ae1adfbf
|
Break out certificate of membership into its own class.
|
2013-10-07 15:29:03 -04:00 |
|
Adam Ierymenko
|
dcbc9c8ddd
|
Rename error code for no membership certificate.
|
2013-10-07 15:21:40 -04:00 |
|
Adam Ierymenko
|
430882327e
|
Couple of small fixes, works again with new ID code.
|
2013-10-07 15:00:38 -04:00 |
|
Adam Ierymenko
|
2fa2796f2a
|
Another tweak, hopefully final, to reduce variance on identity generation times.
|
2013-10-07 14:31:13 -04:00 |
|
Adam Ierymenko
|
343b7f44fc
|
Old algo for ID derivation was not in fact memory-hard since Salsa20 is seekable, so take two.
|
2013-10-07 12:48:27 -04:00 |
|
Adam Ierymenko
|
0c8614b9c6
|
Add a second arg to idtool generate to make generating both secret and public easier, add new supernode identities after generating them, fix known good and bad IDs in selftest.
|
2013-10-07 09:36:20 -04:00 |
|
Adam Ierymenko
|
5fa7a92048
|
Allocate genmem[] since its too big for the stack on some systems.
|
2013-10-06 05:28:25 -04:00 |
|
Adam Ierymenko
|
bc715fbd51
|
Make new identity hashcash algo memory hard, and tweak generation time a bit. Current hashcash cost should be overkill for what we need but still tolerable to users.
|
2013-10-05 14:15:59 -04:00 |
|
Adam Ierymenko
|
4267e7da93
|
Remove a whole bunch of now-unnecessary cruft from Topology and PacketDecoder.
|
2013-10-05 10:19:12 -04:00 |
|
Adam Ierymenko
|
0e43e5e8f2
|
Rest of work on new hashcash based identity scheme.
|
2013-10-05 07:00:55 -04:00 |
|
Adam Ierymenko
|
b0187f4472
|
Hashcash-based identity, work in progress... committing to test speed on other boxes.
|
2013-10-05 06:00:47 -04:00 |
|
Adam Ierymenko
|
588a47be89
|
Some API improvements to C25519 in preparation for that thing I woke up thinking about at 4am.
|
2013-10-05 05:26:38 -04:00 |
|
Adam Ierymenko
|
ea4e1136dd
|
Flesh out membership certificate with signature, better serialize/deserialize, and rename parameter to qualifier to make better conceptual sense.
|
2013-10-04 12:24:21 -04:00 |
|
Adam Ierymenko
|
bb4a96c630
|
Add more info to remote multicast trace (debug facility).
|
2013-10-03 14:53:15 -04:00 |
|
Adam Ierymenko
|
c7590634e8
|
Eliminate a lot of redundant WHOIS requests, clean up WHOIS clutter in TRACE, flesh out multicast tracing a bit.
|
2013-10-03 14:38:07 -04:00 |
|
Adam Ierymenko
|
58538500f2
|
Clean up some routine stuff like pings, and stop keeping links open forever even if there are no frames passing between them.
|
2013-10-02 16:12:10 -04:00 |
|
Adam Ierymenko
|
2cfa76fa8b
|
Multicast propagation is now working from non-supernodes, and working quite well. Time for some more simulation before 0.5.0!
|
2013-10-02 13:50:42 -04:00 |
|
Adam Ierymenko
|
929ed5d8b8
|
Merge branch 'adamierymenko-dev' of /Users/api/Code/local-ZeroTierOne into adamierymenko-dev
|
2013-10-01 17:19:36 -04:00 |
|
Adam Ierymenko
|
4b6ec872c7
|
More multicast fixes.
|
2013-10-01 17:19:24 -04:00 |
|
Adam Ierymenko
|
676f391ccf
|
Multicast debug changes.
|
2013-10-01 16:31:46 -04:00 |
|
Adam Ierymenko
|
3443b203e4
|
Each peer now tracks the last time it announced multicast LIKEs independently and does so frequently enough to prevent expires. Also add a multicast debug facility for use on the testnet.
|
2013-10-01 16:01:36 -04:00 |
|
Adam Ierymenko
|
1a76455986
|
Fix for multicast propagation to prevent buildup of frames ping-ponging between supernodes.
|
2013-09-30 17:10:34 -04:00 |
|
Adam Ierymenko
|
e72a1de0d5
|
Fix bug in next hop selection.
|
2013-09-30 16:31:22 -04:00 |
|
Adam Ierymenko
|
20832a0562
|
Send reset of OK(HELLO) in both places where it gets composed.
|
2013-09-30 14:55:10 -04:00 |
|
Adam Ierymenko
|
9db7939d38
|
Make new multicast depth and prefix bits parameters configurable.
|
2013-09-30 13:51:56 -04:00 |
|
Adam Ierymenko
|
4ecb9369b5
|
Fix for multicast propagation -- supernodes must always keep propagating. Also fix mac-tap build on new version of Xcode CL tools. Must use old llvm-g++ instead of clang for i686 -mkernel.
|
2013-09-30 11:05:35 -04:00 |
|
Adam Ierymenko
|
0dca9964bf
|
Whew, it builds!
|
2013-09-27 16:03:13 -04:00 |
|
Adam Ierymenko
|
4e010da54b
|
Work in progress...
|
2013-09-26 17:45:19 -04:00 |
|
Adam Ierymenko
|
24bad9f3d1
|
More work in progress in new multicast propagation...
|
2013-09-25 17:41:49 -04:00 |
|
Adam Ierymenko
|
f3128a18fe
|
Work in progress...
|
2013-09-25 10:55:27 -04:00 |
|
Adam Ierymenko
|
5557a8192d
|
Work in progress...
|
2013-09-24 17:35:05 -04:00 |
|
Adam Ierymenko
|
bddbf4d276
|
Work in progress...
|
2013-09-24 12:44:15 -04:00 |
|
Adam Ierymenko
|
62a6f7ca63
|
More work in progress on new Multicaster. This should be pretty much good to go, and performance should not be too O(crappy).
|
2013-09-22 13:35:40 -04:00 |
|
Adam Ierymenko
|
770fbaf4b2
|
New multicast algorithm work in progress...
|
2013-09-21 16:46:00 -04:00 |
|
Adam Ierymenko
|
64c9c2e06b
|
New packet formats for MULTICAST_FRAME, and MULTICAST_GOT. Not implemented yet in decoder, so wont compile. Work in progress.
|
2013-09-20 13:36:14 -04:00 |
|
Adam Ierymenko
|
c26b64f24b
|
Fix for netconf advertising of multicast propagation parameters, and defaults in Network.hpp.
|
2013-09-19 16:16:48 -04:00 |
|
Adam Ierymenko
|
795f41c331
|
Change Linux default build back to debug, and fix startup message. Oh, and new crypto just kinda works. Awesome.
|
2013-09-19 15:17:11 -04:00 |
|
Adam Ierymenko
|
d8d71df301
|
Build fix for network ID remap hack.
|
2013-09-19 14:40:46 -04:00 |
|
Adam Ierymenko
|
aac40562d3
|
Add temporary code to remap old Earth network ID to new one.
|
2013-09-19 14:36:37 -04:00 |
|
Adam Ierymenko
|
fb8d5204e3
|
Remove code to automatically join Earth -- network joins will now be user-initiated and manual.
|
2013-09-18 12:32:08 -04:00 |
|
Adam Ierymenko
|
5ccc91a7c3
|
Prescient endian-ness fix in deriveAddress.
|
2013-09-17 16:49:16 -04:00 |
|
Adam Ierymenko
|
157aba5c3f
|
Get rid of 000000000000000.mcerts junk files.
|
2013-09-17 16:28:17 -04:00 |
|
Adam Ierymenko
|
f9079a110e
|
Make network multicast breadth/depth parameters configurable on a per-net basis.
|
2013-09-17 16:11:57 -04:00 |
|
Adam Ierymenko
|
4c06fcfc9d
|
More include formatting cleanup.
|
2013-09-17 15:53:59 -04:00 |
|
Adam Ierymenko
|
b2b24ca41b
|
Some file format cleanup.
|
2013-09-17 15:46:56 -04:00 |
|
Adam Ierymenko
|
0133da1dcd
|
Get rid of onSent(), which was never used consistently anyway.
|
2013-09-17 15:33:34 -04:00 |
|
Adam Ierymenko
|
300588c5e8
|
Add port and control port command line options to daemon and command line client, add new supernode keys to Defaults.
|
2013-09-17 14:47:48 -04:00 |
|
Adam Ierymenko
|
de5cc82b5b
|
Build fix to eliminate strict aliasing warnings, and a bug fix.
|
2013-09-16 19:25:31 +00:00 |
|
Adam Ierymenko
|
77f8d75529
|
Fix idtool build, tweak address derivation again.
|
2013-09-16 15:06:17 -04:00 |
|
Adam Ierymenko
|
94bf3e9a0e
|
More tweaks to address derivation, going to test on other boxen.
|
2013-09-16 14:54:17 -04:00 |
|
Adam Ierymenko
|
4f53d09c7e
|
Build fix for 32-bit Linux and tweaks to address derivation algorithm.
|
2013-09-16 14:47:48 -04:00 |
|
Adam Ierymenko
|
e376c6f6a9
|
New crypto integrated -- going to be testing new identity address generation algo a bit more before finalizing.
|
2013-09-16 13:57:57 -04:00 |
|
Adam Ierymenko
|
ceb024ab03
|
Integrating new crypto, work still in progress...
|
2013-09-16 13:02:10 -04:00 |
|
Adam Ierymenko
|
3b2d98e7dc
|
Integrating new crypto -- work in progress, wont build yet.
|
2013-09-16 09:20:59 -04:00 |
|
Adam Ierymenko
|
02f3369185
|
Small amount of crypto cleanup.
|
2013-09-15 11:02:53 -04:00 |
|
Adam Ierymenko
|
300d26973a
|
Test vectors for all new crypto.
|
2013-09-15 10:41:52 -04:00 |
|
Adam Ierymenko
|
660f92b6a7
|
Add test vectors for ensuring identical C25519 operation across systems.
|
2013-09-14 13:51:08 -04:00 |
|
Adam Ierymenko
|
09c8b4bbb3
|
More new crypto: Ed25519 signatures.
|
2013-09-13 19:18:01 -04:00 |
|
Adam Ierymenko
|
b2bb7b41fc
|
More work in progress on new crypto...
|
2013-09-13 17:32:00 -04:00 |
|
Adam Ierymenko
|
0b94a04914
|
More crypto work in progress...
|
2013-09-13 16:53:47 -04:00 |
|
Adam Ierymenko
|
032ce498c4
|
More new crypto -- poly1305 one-time auth code.
|
2013-09-13 15:59:45 -04:00 |
|
Adam Ierymenko
|
77965af288
|
Add new crypto: SHA512 and C25519 -- not integrated yet.
|
2013-09-13 15:47:00 -04:00 |
|
Adam Ierymenko
|
f6ad138561
|
Bit more of adding version to OK(HELLO)
|
2013-09-13 14:41:20 -04:00 |
|
Adam Ierymenko
|
d87a1d6b99
|
Add version info to OK(HELLO) so both sides know their version info.
|
2013-09-13 13:35:31 -04:00 |
|
Adam Ierymenko
|
07e1085dcc
|
More experimentation with multicast rate.
|
2013-09-12 17:27:10 -04:00 |
|
Adam Ierymenko
|
55e7ddba1e
|
Get a default rate that works for multicast.
|
2013-09-12 12:11:21 -04:00 |
|
Adam Ierymenko
|
553002e9d8
|
Reduce log noise, change to TRACE.
|
2013-09-11 16:49:01 -04:00 |
|
Adam Ierymenko
|
0e62857841
|
A few logging changes.
|
2013-09-11 16:32:53 -04:00 |
|
Adam Ierymenko
|
75471ee0e0
|
Small method rename.
|
2013-09-11 16:17:51 -04:00 |
|
Adam Ierymenko
|
5885c6186d
|
More updates to bandwidth accounting.
|
2013-09-11 16:08:31 -04:00 |
|
Adam Ierymenko
|
9cdaefdb9a
|
Drop old Certificate type from Network.
|
2013-09-11 15:13:05 -04:00 |
|
Adam Ierymenko
|
de744e6df6
|
Version two of network certificate of membership, a much more concise and fast approach.
|
2013-09-11 15:09:53 -04:00 |
|
Adam Ierymenko
|
3a563250f7
|
Finish stripping minBalance from BandwidthAccount
|
2013-09-10 14:13:04 -04:00 |
|
Adam Ierymenko
|
a3a2b8dedb
|
Look up rate info from database, but going to drop min balance cause it seems unnecessary. Also work in progress on membership certs.
|
2013-09-10 09:40:37 -04:00 |
|
Adam Ierymenko
|
a40b8c07f4
|
Apply multicast rate limits to my own multicasts. Will run locally and on a variety of system types to test the result of this.
|
2013-09-07 15:49:38 -04:00 |
|
Adam Ierymenko
|
cdb96726df
|
updateAndCheckMulticastBalance and friends
|
2013-09-07 12:23:53 -04:00 |
|
Adam Ierymenko
|
56d8bbf780
|
Bit more netconf cleanup...
|
2013-09-06 15:06:51 -04:00 |
|