chiark / gitweb /
Merge branch 'ijackson' into stable-3.x
[ypp-sc-tools.db-test.git] / yarrg / README.privacy
1 Communications with servers - and your privacy
2 ==============================================
3
4 The Special Circumstances YPP yarrg client talks to several different
5 servers for different purposes.
6
7 (The information below is true if you invoke the system using the main
8 `yarrg' program.  If you want to know the relationships between it and
9 its various helper programs, and the specific behaviours of the
10 helpers, you'll have to read the source.  Sorry.)
11
12
13 1. YARRG and PCTB servers
14 =========================
15
16 These servers records everyone's uploads of commodity prices and
17 allows you to search for routes using the PCTB and YARRG websites.
18 (*NB* currently the YARRG website is still under development.)
19
20 The YARRG data upload server may also distributes the uploaded data to
21 other searching site operators for inclusion in their databases; your
22 IP address is not passed on to those other operators.
23
24 We upload to the PCTB and YARRG servers if you select one of the
25 --upload options, and not otherwise - but not that this is the
26 default.
27
28 We also query the PCTB server to determine possible island names, if
29 we don't recognise the island and want to ask you about it.  It is not
30 currently possible to disable this behaviour, but if you don't select
31 an operating mode (like --upload) which needs to know your island, it
32 won't happen.
33
34
35 2. YPP SC YARRG dictionary server
36 =================================
37
38 This server maintains the master copies of various databases which are
39 used to assist the OCR and upload process.  Collectively I call these
40 `dictionaries'.  There are dictionaries of character and island name
41 images, of (existing and new) commodity names, of notable known OCR
42 misrecognitions, and of islands and archipelagoes.  These are used for
43 the commodity screen OCR, for determining your island name, and for
44 checking whether commodities missing on the servers are real.
45
46 By default, we ask the YARRG disctionary server for appropriate
47 updated dictionaries every time we run; this is done with the rsync
48 protocol (indeed, by invoking rsync).  You can disable this with
49 --dict-local-only.
50
51 If we find a screen display we don't understand, we will ask you about
52 it by popping up a window which allows you to select the island (or
53 provide character set information - see README.charset).  Your answers
54 to these questions are recorded locally and will be used by your
55 client in future.
56
57 By default, these dictionary updates are also submitted to my server.
58 That allows me to check them; if they are correct, I will include them
59 in the master database so that everyone gets the benefit of them.
60 If there are any incorrect submissions, I can contradict them in the
61 master database so that your client will automatically behave
62 correctly anyway.
63
64 So, thanks for your help!
65
66
67 Dictionary submissions (uploads) include your pirate name by default
68 --------------------------------------------------------------------
69
70 These dictionary submissions are reported to me along with the ocean
71 name and your pirate name.
72
73 I will only use this to talk to you about your dictionary submissions
74 (for example, to let you know if you have made a mistake, or to thank
75 you for your contributions).
76
77 However, if you prefer to be anonymous, you can tell your yarrg client
78 not to mention your pirate name (in the GUI, or with the --dict-anon
79 option).  In this case I won't see your ocean or your pirate name,
80 although of course the actual images in your submissions may reveal
81 your island and thus your ocean.
82
83
84 User interface for privacy
85 --------------------------
86
87 The dictionary submission feature, and whether to quote your pirate
88 identity, is exposed in and controllable from the dictionary update
89 GUI, for maximum visibility.  The settings in the GUI are not recorded
90 anywhere from one run to the next.  If you want to consistently
91 increase your privacy setting, use the --dict-* privacy options.
92 See the table of options in the README for details.
93
94 Having said all that, please do not upload data to the YARRG and PCTB
95 servers without also participating in dictionary sharing.  If you
96 don't update your dictionary, your parses may be wrong and thus the
97 data you uploads may be wrong.  If you don't submit your dictionary
98 entries, any mistakes you make will remain uncorrected.
99
100
101 Records kept
102 ------------
103
104 I keep a permanent log of all the dictionary submissions, including
105 date, time, submitting pirate or IP address, and YPP SC yarrg client
106 version.  This is so that I have enough information to go back and fix
107 the dictionary if anything goes badly wrong (for example, if a
108 particular client is broken).
109
110 I keep a log of the data uploads including date, time, submitting IP
111 address, YPP SC yarrg client version but NOT including your pirate
112 name.  This information (except your IP address) is passed on to any
113 third parties who've asked to get copies of data updates.
114
115 My rsync server (file server) also records your IP address when your
116 client fetches new master dictionaries; those logs are used only for
117 debugging the rsync server (which also serves many other files), and
118 they are routinely expired, currently after about two months.
119
120 The information about the source of a submissions doesn't appear in
121 the dictionaries as available for download, so other people won't
122 know you're using my program.
123
124 I don't know what records the actual PCTB server keeps, but the upload
125 process tells the server your ocean and island name, and your PCTB
126 upload client version number (including the fact that it's this Linux
127 client).  The PCTB server is not told your pirate name.