This is the command gnunet-scalarproduct that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator
gnunet-vectorproduct - compute a vectorproduct
gnunet-vectorproduct enables you to compute a vectorproduct across two peers Alice and
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 tupel element count and session ID.
Alice´s client must supply the ASCII encoded peer ID of bob´s service, 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, 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.
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.
-e ELEMENTS, --elements=ELEMENTS
The element-vector the vectorproduct should be computed over in signed decimal
-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
-k KEY, --key=KEY
The session key, a shared string of arbitrary length from which the SID will be
-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. If
this option is not given, the peer will take the Bob´s role.
Print short help on options.
-L LOGLEVEL, --loglevel=LOGLEVEL
Use LOGLEVEL for logging. Valid values are DEBUG, INFO, WARNING and ERROR.
Print GNUnet version number.
Use gnunet-scalarproduct online using onworks.net services