Communications with servers - and your privacy ============================================== The Special Circumstances YPP yarrg client talks to several different servers for different purposes. (The information below is true if you invoke the system using the main `yarrg' program. If you want to know the relationships between it and its various helper programs, and the specific behaviours of the helpers, you'll have to read the source. Sorry.) 1. YARRG and PCTB servers ========================= These servers records everyone's uploads of commodity prices and allows you to search for routes using the PCTB and YARRG websites. (*NB* currently the YARRG website is still under development.) The YARRG data upload server may also distribute the uploaded data to other searching site operators for inclusion in their databases; your IP address is not passed on to those other operators. We upload to the PCTB and YARRG servers if you select one of the --upload options, and not otherwise - but note that this is the default. We also query the PCTB server to determine possible island names, if we don't recognise the island and want to ask you about it. It is not currently possible to disable this behaviour, but if you don't select an operating mode (like --upload) which needs to know your island, it won't happen. 2. YPP SC YARRG dictionary server ================================= This server maintains the master copies of various databases which are used to assist the OCR and upload process. Collectively I call these `dictionaries'. There are dictionaries of character and island name images, of (existing and new) commodity names, of notable known OCR misrecognitions, and of islands and archipelagoes. These are used for the commodity screen OCR, for determining your island name, and for checking whether commodities missing on the servers are real. By default, we ask the YARRG disctionary server for appropriate updated dictionaries every time we run; this is done with the rsync protocol (indeed, by invoking rsync). You can disable this with --dict-local-only. If we find a screen display we don't understand, we will ask you about it by popping up a window which allows you to select the island (or provide character set information - see README.charset). Your answers to these questions are recorded locally and will be used by your client in future. By default, these dictionary updates are also submitted to my server. That allows me to check them; if they are correct, I will include them in the master database so that everyone gets the benefit of them. If there are any incorrect submissions, I can contradict them in the master database so that your client will automatically behave correctly anyway. So, thanks for your help! Dictionary submissions (uploads) include your pirate name by default -------------------------------------------------------------------- These dictionary submissions are reported to me along with the ocean name and your pirate name. I will only use this to talk to you about your dictionary submissions (for example, to let you know if you have made a mistake, or to thank you for your contributions). However, if you prefer to be anonymous, you can tell your yarrg client not to mention your pirate name (in the GUI, or with the --dict-anon option). In this case I won't see your ocean or your pirate name, although of course the actual images in your submissions may reveal your island and thus your ocean. User interface for privacy -------------------------- The dictionary submission feature, and whether to quote your pirate identity, is exposed in and controllable from the dictionary update GUI, for maximum visibility. The settings in the GUI are not recorded anywhere from one run to the next. If you want to consistently increase your privacy setting, use the --dict-* privacy options. See the table of options in the README for details. Having said all that, please do not upload data to the YARRG and PCTB servers without also participating in dictionary sharing. If you don't update your dictionary, your parses may be wrong and thus the data you uploads may be wrong. If you don't submit your dictionary entries, any mistakes you make will remain uncorrected. Records kept ------------ I keep a permanent log of all the dictionary submissions, including date, time, submitting pirate or IP address, and YPP SC yarrg client version. This is so that I have enough information to go back and fix the dictionary if anything goes badly wrong (for example, if a particular client is broken). I keep a log of the data uploads including date, time, submitting IP address, YPP SC yarrg client version but NOT including your pirate name. This information (except your IP address) is passed on to any third parties who've asked to get copies of data updates. My rsync server (file server) also records your IP address when your client fetches new master dictionaries; those logs are used only for debugging the rsync server (which also serves many other files), and they are routinely expired, currently after about two months. The information about the source of a submissions doesn't appear in the dictionaries as available for download, so other people won't know you're using my program. I don't know what records the actual PCTB server keeps, but the upload process tells the server your ocean and island name, and your PCTB upload client version number (including the fact that it's this Linux client). The PCTB server is not told your pirate name.