A simple in-memory TCP key-value server written in Zig, using Linux epoll for
non-blocking I/O. Messages are framed with a 4-byte little-endian length header.
The text payload inside each frame uses \r\n as the command delimiter.
New connections must authenticate via a proof-of-work handshake before issuing
any commands. The client sends CONNECT, the server replies with a CHALLENGE
containing a random 128-bit hex nonce and a difficulty (default: 20 leading
zero bits). The client must find an integer counter such that
SHA-256(nonce:counter) has at least that many leading zero bits, then send it
as POW <counter>. On success the session becomes ready for PING, PUT,
GET, and DELETE commands.
References:
Licensed under the MIT License.