doc/man/Makefile: rename section7 leftover to new name
[oweals/gnunet.git] / doc / man / gnunet-scalarproduct.1
1 .TH GNUNET-VECTORPRODUCT 1 "August 8, 2013" "GNUnet"
2 .SH NAME
3 gnunet\-vectorproduct \- compute a vectorproduct
4 .SH SYNOPSIS
5 .B gnunet\-vectorproduct
6 .RI [ options ]
7 .SH DESCRIPTION
8 \fBgnunet-vectorproduct\fP enables you to compute a vectorproduct
9 across two peers \fBAlice\fP and \fBBob\fP.
10 .PP
11 A client can issue one of two messages to its service:
12 .TS
13 tab (@);
14 l lx.
15 1@T{
16 A request to compute a vectorproduct with another peer (\fBAlice\fP)
17 T}
18 2@T{
19 Elements to support a peer in computing a vectorproduct (\fBBob\fP)
20 T}
21 .TE
22 Both requests must share the same SID, which can be an arbitrary
23 string identifying the session. SIDs should be unique, however it is
24 sufficient to guarantee the uniqueness of the tupel element count and
25 session ID.
26 .PP
27 \fBAlice\fP\'s client must supply the ASCII encoded peer ID of bob\'s
28 service, it will internally be checked by the client for
29 validity. Invalid values here result in the client or the service
30 failing the session.
31 .PP
32 Elements are handed over as signed decimal integers, the element count
33 supplied by \fBAlice\fP and \fBBob\fP must match. \fBAlice\fP can also
34 supply a mask for these values to her service, which allows partial
35 vector products to be computed across the vector. Elements can be
36 masked by setting their the corresponding mask element to zero, any
37 other value means the element will not be masked. \fBAlice\fP\'s
38 client will also mask all 0-values to avoid information leakage to
39 \fBBob\fP.
40 .PP
41 The protocol by definition relies on \fBAlice\fP and \fBBob\fP being
42 benign, thus \fBBob\fP can arbitrarily falsify his information. Both
43 peers collaborate to achieve a correct result.
44 .SH OPTIONS
45 .B
46 .IP "\-e ELEMENTS, \-\-elements=ELEMENTS"
47 The element-vector the vectorproduct should be computed over in signed
48 decimal form, eg: \"42,1,-3,3,7\". Zero value elements will be automatically masked.
49 .B
50 .IP "\-m MASK, \-\-mask=MASK"
51 Elements in the vector can be masked. There must be at least two
52 elements left in the vector to compute a vectorproduct. Non-Zero
53 values indicate an element is not maskes.
54 .B
55 .IP "\-k KEY, \-\-key=KEY"
56 The session key, a shared string of arbitrary length from which the
57 SID will be generated
58 .B
59 .IP "\-c FILENAME,  \-\-config=FILENAME"
60 Use the configuration file FILENAME.
61 .B
62 .IP "\-p PEERID, \-\-peer=PEERID"
63 The remote peer\'s ASCII-armored gnunet-peer ID as output by
64 gnunet-peerinfo. If this option is not given, the peer will take the
65 \fBBob\fP\'s role.
66 .B
67 .IP "\-h, \-\-help"
68 Print short help on options.
69 .B
70 .IP "\-L LOGLEVEL, \-\-loglevel=LOGLEVEL"
71 Use LOGLEVEL for logging.  Valid values are DEBUG, INFO, WARNING and ERROR.
72 .B
73 .IP "\-v, \-\-version"
74 Print GNUnet version number.
75 .SH BUGS
76 Report bugs by using Mantis <https://gnunet.org/bugs/> or by sending
77 electronic mail to <gnunet\-developers@gnu.org>
78 .SH SEE ALSO
79 gnunet\-peerinfo(1)
80 .PP
81 The full documentation for
82 .B gnunet
83 is maintained as a Texinfo manual.
84 If the
85 .B info
86 and
87 .B gnunet
88 programs are properly installed at your site, the command
89 .IP
90 .B info gnunet
91 .PP
92 should give you access to the complete handbook,
93 .IP
94 .B info gnunet-c-tutorial
95 .PP
96 will give you access to a tutorial for developers.
97 .PP
98 Depending on your installation, this information is also
99 available in
100 \fBgnunet\fP(7) and \fBgnunet-c-tutorial\fP(7).