$114.14 -1.46%
XMR · 4w

Let’s get vtnerd’s proposal funded!

3-Months full-time software development on monero "core" components in 2020 q4 (through early 2021).


Work primarily on the monerod and wallet2 base code (perhaps some monero-lws as well, provided supporters find this acceptable). Some of the work to be attempted or investigated:

Adding DANE support to wallet2/epee SSL (unbound->OpenSSL 1.1) to enhance wallet->monerod security. This allows for SSL without root certificate signing (relies on dnssec, which unfortunately has its own root+zone certificate chain). Also allows for "pinning" to a specific CA (so root CA + dnssec check). Adding trust-on-first-use support to wallet2 if DANE and CA are unavailable TLS certificate sharing for public RPC nodes. Possible to "piggy-back" on curve25519 keys for p2p stuff (see next point). Adding encryption+authentication to p2p connections. I have a proposal written (separate CCS entirely?) for either TLS 1.3 or Noise_XK depending on community goals. The proposal is unique from prior attempts because it attempts to authenticate the connection. Pontential performance improvements Various epee/p2p serialization (output) routines (some examples, will need more profiling): Improve container reading/writing in epee serialization Switching from std::ostringstream in the binary output to direct byte slice output Adding byte_slice internally so that binary values copy pointers instead of data Improvements to "cryptonote" serialization - risky since its used by blocks+transactions internally, but theres much speed to be gained in that code Potential compilation improvements: Moving some epee stuff from headers into cpp to reduce includes as performance is being modified Moving serialization code to cpp (although this could be spurious in updates which is frowned upon) Dropping unnecessary includes from epe...
Continue on
Recent news