sybilsim(8)

πŸ“¦
version 21.1 Β· 2 versions
, in fedora 43, fedora 44

✨ sybilsim(8) ✨

cjdns packet switch πŸ’… β€” yeah bestie, this is the simulation corner of the cjdns universe, no real packets were harmed in the making of this mesh.


🌸 SYNOPSIS 🌸

/usr/libexec/cjdns/sybilsim < config.json

πŸ’– DESCRIPTION πŸ’–

Okay so here's the vibe: sybilsim reads a list of nodes and peers from stdin and then simulates the corresponding mesh β€” no actual networking β€” using the exact same code as cjdroute. Like, same brain, different body. 🧚

It's giving testing and optimizing cjdroute, and honestly? Iconic for that. πŸ”₯

Heads up bestie: every single node must have a valid cjdns private key. No key, no node, periodt.

And if you're writing scripts that generate the config, the makekeys(1) utility is lowkey your best friend for that. 🫢


πŸŽ€ USAGE πŸŽ€

Example config, look at her:

{
  "nodes": {
"alice": {
  "privateKey":
    "5e2295679394e5e1db67c238abbc10292ad9b127904394c52cc5fff39383e920",
  "peers": []
},
"bob": {
  "privateKey":
    "6569bf3f0d168faa6dfb2912f8ee5ee9b938319e97618fdf06caed73b1aad1cc",
  "peers": [ "alice" ]
}
  }
}

Example use β€” pipe it, bestie:

makekeys | head -20 >keys.txt
node /usr/libexec/cjdns/tools/lib/makesim.js keys.txt |
/usr/libexec/cjdns/sybilsim

πŸ¦‹ SEE ALSO πŸ¦‹


And that's the whole page, babes πŸ’œ β€” this was sybilsim(8) from the cjdns packet switch era, and yeah, the footer is just... sybilsim(8) again with no version or date in sight, which is very mysterious main character energy of it, ngl. Go simulate something cute. 🌈✨

πŸ“¦ where this page comes from