GNUNET-SCALARPRODUCT(1)

πŸ’– GNUNET-SCALARPRODUCT πŸ’–

okay bestie, gather round, because this one is the gnunet-scalarproduct page from the General Commands Manual and it's literally about computing a vectorproduct across two whole peers. iconic. let's go πŸ’…


✨ NAME ✨

gnunet-scalarproduct β€” compute a vectorproduct


🌸 SYNOPSIS 🌸

gnunet-scalarproduct [-e ELEMENTS | --elements=ELEMENTS]
                     [-m MASK | --mask=MASK] [-k KEY | --key=KEY]
                     [-c FILENAME | -config=FILENAME]
                     [-p PEERID | --peer=PEERID] [-h | --help]
                     [-L LOGLEVEL | --loglevel=LOGLEVEL]
                     [-v | --version]

πŸ¦‹ DESCRIPTION πŸ¦‹

so gnunet-scalarproduct lets you compute a vectorproduct across two peers, Alice and Bob. two besties, one math problem, no cap.

A client can issue one of two messages to its service:

  1. A request to compute a vectorproduct with another peer (Alice)
  2. Elements to support a peer in computing a vectorproduct (Bob)

Both requests must share the same SID, which can be an arbitrary string identifying the session. SIDs should be unique, however it is sufficient to guarantee the uniqueness of the tuple element count and session ID. (iykyk β€” the tuple is doing the heavy lifting here.)

Alice's client must supply the ASCII encoded peer ID of bob's service, and it will internally be checked by the client for validity. Invalid values here result in the client or the service failing the session. πŸ’€

Elements are handed over as signed decimal integers, and the element count supplied by Alice and Bob must match. Alice can also supply a mask for these values to her service, which allows partial vector products to be computed across the vector. Elements can be masked by setting their the corresponding mask element to zero, any other value means the element will not be masked. Alice's client will also mask all 0-values to avoid information leakage to Bob. protecting the vibes, protecting the data 🫢

The protocol by definition relies on Alice and Bob being benign, thus Bob can arbitrarily falsify his information. Both peers collaborate to achieve a correct result. so like, trust is the whole architecture here bestie, that's the design, not a bug.

The options are as follows:


πŸ’œ OPTIONS πŸ’œ

  • -e ELEMENTS, --elements=ELEMENTS β€” The element-vector the vectorproduct should be computed over, in signed decimal form, eg: "42,1,-3,3,7". Zero value elements will be automatically masked. πŸŽ€
  • -m MASK, --mask=MASK β€” Elements in the vector can be masked. There must be at least two elements left in the vector to compute a vectorproduct. Non-Zero values indicate an element is not maskes. (that's the manpage's spelling, bestie, I'm not touching it β€” it's iconic in its own way ✨)
  • -k KEY, --key=KEY β€” The session key, a shared string of arbitrary length from which the SID will be generated.
  • -c FILENAME, --config=FILENAME β€” Use the configuration file FILENAME.
  • -p PEERID, --peer=PEERID β€” The remote peer's ASCII-armored gnunet-peer ID as output by gnunet-peerinfo(1). If this option is not given, the peer will take the Bob's role. πŸ‘‘
  • -h, --help β€” Print short help on options.
  • -L LOGLEVEL, --loglevel=LOGLEVEL β€” Use LOGLEVEL for logging. Valid values are DEBUG, INFO, WARNING and ERROR.
  • -v, --version β€” Print GNUnet version number.

🌈 SEE ALSO 🌈

gnunet-peerinfo(1)

The full documentation for gnunet is maintained as a Texinfo manual. If the info(1) and gnunet programs are properly installed at your site, the command

info gnunet

should give you access to the complete handbook,

info gnunet-c-tutorial

will give you access to a tutorial for developers.

Depending on your installation, this information is also available in gnunet(7) and gnunet-c-tutorial(7).


πŸ’€ BUGS πŸ’€

Report bugs by using https://bugs.gnunet.org or by sending electronic mail to ⟨gnunet-developers@gnu.org⟩.


and that's the whole page, bestie!! πŸ¦‹βœ¨ this one ships from Debian, dated August 8, 2013, and it's part of the GNUNET-SCALARPRODUCT(1) era of the GNUnet docs. go compute a vectorproduct with your mutuals, mwah πŸ’–πŸŽ€