gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] [presentations] branch master updated: some old secushare s


From: gnunet
Subject: [GNUnet-SVN] [presentations] branch master updated: some old secushare slides
Date: Fri, 17 Nov 2017 17:19:18 +0100

This is an automated email from the git hooks/post-receive script.

lynx pushed a commit to branch master
in repository presentations.

The following commit(s) were added to refs/heads/master by this push:
     new 586cee5  some old secushare slides
586cee5 is described below

commit 586cee5b5159a4e640eaf8632c9b1217e5fedb77
Author: psyc://loupsycedyglgamf.onion/~lynX 
<ircs://psyced.org/youbroketheinternet>
AuthorDate: Wed Nov 15 18:27:21 2017 +0000

    some old secushare slides
---
 ...ketheinternet.pdf => lynx_slides_secushare.pdf} | Bin
 .../dc10-grothoff-gnunet.pdf                       | Bin
 .../grothoff_30c3gns.pdf                           | Bin
 .../grothoff_30c3panel.pdf                         | Bin
 .../grothoff_architecture-of-gnunet_psc2015.pdf    | Bin
 .../grothoff_armstattinit.pdf                      | Bin
 ...thoff_bigdata-littledata-nomoredata_tum2017.pdf | Bin
 .../grothoff_cryptography-in-gnunet_ecc2015.pdf    | Bin
 .../grothoff_daad2014.pdf                          | Bin
 .../grothoff_daghstuhl2014.pdf                     | Bin
 ...vacy-reserving-network-applications_snt2017.pdf | Bin
 .../grothoff_entropique2015.pdf                    | Bin
 .../grothoff_ghm2013.pdf                           | Bin
 .../grothoff_ghm2014.pdf                           | Bin
 .../grothoff_gibu2010.pdf                          | Bin
 .../grothoff_gns_jcsa2016.pdf                      | Bin
 .../grothoff_gns_jhu2016.pdf                       | Bin
 .../grothoff_gns_loria2015.pdf                     | Bin
 .../grothoff_gnunet2015.pdf                        | Bin
 .../grothoff_gnunet2017.pdf                        | Bin
 ...vation-comlexity-risk-and-trust_mapping2016.pdf | Bin
 .../grothoff_inria2013.pdf                         | Bin
 .../grothoff_inria2013rennes.pdf                   | Bin
 .../grothoff_lugcamp2013mhd.pdf                    | Bin
 .../grothoff_lugcamp2015.pdf                       | Bin
 .../grothoff_mapping2014.pdf                       | Bin
 .../grothoff_mhd2013gpn.pdf                        | Bin
 ...e-und-l\303\266sungsans\303\244tze_npo2016.pdf" | Bin
 .../grothoff_oii2014.pdf                           | Bin
 .../grothoff_prism-gnunet-berlin.pdf               | Bin
 .../grothoff_privacy2009.pdf                       | Bin
 .../grothoff_rmv608.pdf                            | Bin
 .../grothoff_slides-87-httpbis.pdf                 | Bin
 ...al-networks-vs-security-and-privacy_bfh2017.pdf | Bin
 ...he-age-of-universal-surveillance_-ccc2017ch.pdf | Bin
 ...e-resolution-on-the-internet_ndss2017slides.pdf | Bin
 .../grothoff_tsvwg2015.pdf                         | Bin
 .../grothoff_tue2015.pdf                           | Bin
 .../grothoff_uva2013.pdf                           | Bin
 secushare-old-html/2011-CBase.slides.html          | 297 +++++++
 secushare-old-html/2011-CCCamp.slides.html         | 262 ++++++
 secushare-old-html/2011-FSW.slides.html            | 152 ++++
 secushare-old-html/2012-02-Cbase.slides.html       | 369 +++++++++
 secushare-old-html/2012-08-MOCA.slides.html        | 375 +++++++++
 secushare-old-html/2012-11-digiyards.slides.pht    | 450 ++++++++++
 secushare-old-html/2012-Easterhegg.slides.html     | 169 ++++
 secushare-old-html/2012-UnlikeUs.slides.html       | 147 ++++
 .../UI/.thumbnails/greensquares.jpg.png            | Bin 0 -> 15538 bytes
 secushare-old-html/UI/.thumbnails/squares.jpg.png  | Bin 0 -> 20809 bytes
 secushare-old-html/UI/blank.gif                    | Bin 0 -> 49 bytes
 secushare-old-html/UI/dark/pretty.css              | 117 +++
 secushare-old-html/UI/darken.png                   | Bin 0 -> 124 bytes
 secushare-old-html/UI/framing.css                  |  23 +
 secushare-old-html/UI/greensquares.jpg             | Bin 0 -> 248804 bytes
 secushare-old-html/UI/iepngfix.htc                 |  42 +
 secushare-old-html/UI/lite/pretty.css              | 114 +++
 secushare-old-html/UI/opera.css                    |   7 +
 secushare-old-html/UI/outline.css                  |  15 +
 secushare-old-html/UI/pretty.css                   | 117 +++
 secushare-old-html/UI/print.css                    |   1 +
 secushare-old-html/UI/s5-core.css                  |   9 +
 secushare-old-html/UI/slides.css                   |   3 +
 secushare-old-html/UI/slides.js                    | 552 +++++++++++++
 secushare-old-html/UI/squares.jpg                  | Bin 0 -> 299681 bytes
 secushare-old-html/UI/stars_bg.jpg                 | Bin 0 -> 24180 bytes
 secushare-old-html/img/cloud.png                   | Bin 0 -> 34743 bytes
 secushare-old-html/img/gfx-cloud.png               | Bin 0 -> 42480 bytes
 secushare-old-html/img/gfx-multicast.png           | Bin 0 -> 44836 bytes
 secushare-old-html/img/gfx-unicast.png             | Bin 0 -> 37027 bytes
 secushare-old-html/img/gfx.odg                     | Bin 0 -> 15871 bytes
 secushare-old-html/img/gfx.png                     | Bin 0 -> 210165 bytes
 secushare-old-html/img/gfx.svg                     | 910 +++++++++++++++++++++
 secushare-old-html/img/multicast.png               | Bin 0 -> 89121 bytes
 secushare-old-html/img/phase0.jpeg                 | Bin 0 -> 58638 bytes
 secushare-old-html/img/phase1.jpeg                 | Bin 0 -> 60026 bytes
 secushare-old-html/img/phase2.jpeg                 | Bin 0 -> 67018 bytes
 secushare-old-html/img/phase3.jpeg                 | Bin 0 -> 89626 bytes
 secushare-old-html/img/secushare-0444.png          | Bin 0 -> 26484 bytes
 secushare-old-html/img/unicast.png                 | Bin 0 -> 61442 bytes
 secushare-old-latex/.init.el                       |  61 ++
 secushare-old-latex/.setup                         |  73 ++
 secushare-old-latex/.setup-back                    |   9 +
 secushare-old-latex/30c3-slides.README             |   7 +
 secushare-old-latex/Makefile                       |  27 +
 secushare-old-latex/abbrevs                        |  23 +
 secushare-old-latex/abstract                       |  20 +
 secushare-old-latex/arch                           | 203 +++++
 secushare-old-latex/arch.dia                       | Bin 0 -> 2194 bytes
 secushare-old-latex/arch.png                       | Bin 0 -> 13291 bytes
 secushare-old-latex/clients                        | 116 +++
 secushare-old-latex/conclusion                     |  37 +
 secushare-old-latex/context.dia                    | Bin 0 -> 1882 bytes
 secushare-old-latex/context.png                    | Bin 0 -> 9812 bytes
 secushare-old-latex/gnunet-h.png                   | Bin 0 -> 40591 bytes
 secushare-old-latex/gnunet.dia                     | Bin 0 -> 4404 bytes
 secushare-old-latex/gnunet.png                     | Bin 0 -> 38946 bytes
 secushare-old-latex/impl                           | 392 +++++++++
 secushare-old-latex/intro                          |  25 +
 secushare-old-latex/ref.bib                        | 116 +++
 secushare-old-latex/req                            | 129 +++
 secushare-old-latex/secushare                      |  56 ++
 secushare-old-latex/secushare.pdf                  | Bin 0 -> 377023 bytes
 secushare-old-latex/shot-irssyc.png                | Bin 0 -> 3796 bytes
 secushare-old-latex/shot-secushare.png             | Bin 0 -> 34831 bytes
 secushare-old-latex/slides.pdf                     | Bin 0 -> 424193 bytes
 secushare-old-latex/syntax                         |  46 ++
 secushare-old-orgmode/2012-29C3.slides.org         | 168 ++++
 secushare-old-orgmode/2012-SIGINT.slides.org       | 168 ++++
 secushare-old-orgmode/2012-SIGINT.slides.pdf       | Bin 0 -> 209268 bytes
 secushare-old-orgmode/2012-eth0.slides.org         | 168 ++++
 secushare-old-orgmode/slides.org                   | 318 +++++++
 111 files changed, 6293 insertions(+)

diff --git a/2013-youbroketheinternet-event/lynx_slides_youbroketheinternet.pdf 
b/2013-youbroketheinternet-event/lynx_slides_secushare.pdf
similarity index 100%
rename from 2013-youbroketheinternet-event/lynx_slides_youbroketheinternet.pdf
rename to 2013-youbroketheinternet-event/lynx_slides_secushare.pdf
diff --git a/dc10-grothoff-gnunet.pdf b/grothoff/dc10-grothoff-gnunet.pdf
similarity index 100%
rename from dc10-grothoff-gnunet.pdf
rename to grothoff/dc10-grothoff-gnunet.pdf
diff --git a/grothoff_30c3gns.pdf b/grothoff/grothoff_30c3gns.pdf
similarity index 100%
rename from grothoff_30c3gns.pdf
rename to grothoff/grothoff_30c3gns.pdf
diff --git a/grothoff_30c3panel.pdf b/grothoff/grothoff_30c3panel.pdf
similarity index 100%
rename from grothoff_30c3panel.pdf
rename to grothoff/grothoff_30c3panel.pdf
diff --git a/grothoff_architecture-of-gnunet_psc2015.pdf 
b/grothoff/grothoff_architecture-of-gnunet_psc2015.pdf
similarity index 100%
rename from grothoff_architecture-of-gnunet_psc2015.pdf
rename to grothoff/grothoff_architecture-of-gnunet_psc2015.pdf
diff --git a/grothoff_armstattinit.pdf b/grothoff/grothoff_armstattinit.pdf
similarity index 100%
rename from grothoff_armstattinit.pdf
rename to grothoff/grothoff_armstattinit.pdf
diff --git a/grothoff_bigdata-littledata-nomoredata_tum2017.pdf 
b/grothoff/grothoff_bigdata-littledata-nomoredata_tum2017.pdf
similarity index 100%
rename from grothoff_bigdata-littledata-nomoredata_tum2017.pdf
rename to grothoff/grothoff_bigdata-littledata-nomoredata_tum2017.pdf
diff --git a/grothoff_cryptography-in-gnunet_ecc2015.pdf 
b/grothoff/grothoff_cryptography-in-gnunet_ecc2015.pdf
similarity index 100%
rename from grothoff_cryptography-in-gnunet_ecc2015.pdf
rename to grothoff/grothoff_cryptography-in-gnunet_ecc2015.pdf
diff --git a/grothoff_daad2014.pdf b/grothoff/grothoff_daad2014.pdf
similarity index 100%
rename from grothoff_daad2014.pdf
rename to grothoff/grothoff_daad2014.pdf
diff --git a/grothoff_daghstuhl2014.pdf b/grothoff/grothoff_daghstuhl2014.pdf
similarity index 100%
rename from grothoff_daghstuhl2014.pdf
rename to grothoff/grothoff_daghstuhl2014.pdf
diff --git 
a/grothoff_decentralizing-privacy-reserving-network-applications_snt2017.pdf 
b/grothoff/grothoff_decentralizing-privacy-reserving-network-applications_snt2017.pdf
similarity index 100%
rename from 
grothoff_decentralizing-privacy-reserving-network-applications_snt2017.pdf
rename to 
grothoff/grothoff_decentralizing-privacy-reserving-network-applications_snt2017.pdf
diff --git a/grothoff_entropique2015.pdf b/grothoff/grothoff_entropique2015.pdf
similarity index 100%
rename from grothoff_entropique2015.pdf
rename to grothoff/grothoff_entropique2015.pdf
diff --git a/grothoff_ghm2013.pdf b/grothoff/grothoff_ghm2013.pdf
similarity index 100%
rename from grothoff_ghm2013.pdf
rename to grothoff/grothoff_ghm2013.pdf
diff --git a/grothoff_ghm2014.pdf b/grothoff/grothoff_ghm2014.pdf
similarity index 100%
rename from grothoff_ghm2014.pdf
rename to grothoff/grothoff_ghm2014.pdf
diff --git a/grothoff_gibu2010.pdf b/grothoff/grothoff_gibu2010.pdf
similarity index 100%
rename from grothoff_gibu2010.pdf
rename to grothoff/grothoff_gibu2010.pdf
diff --git a/grothoff_gns_jcsa2016.pdf b/grothoff/grothoff_gns_jcsa2016.pdf
similarity index 100%
rename from grothoff_gns_jcsa2016.pdf
rename to grothoff/grothoff_gns_jcsa2016.pdf
diff --git a/grothoff_gns_jhu2016.pdf b/grothoff/grothoff_gns_jhu2016.pdf
similarity index 100%
rename from grothoff_gns_jhu2016.pdf
rename to grothoff/grothoff_gns_jhu2016.pdf
diff --git a/grothoff_gns_loria2015.pdf b/grothoff/grothoff_gns_loria2015.pdf
similarity index 100%
rename from grothoff_gns_loria2015.pdf
rename to grothoff/grothoff_gns_loria2015.pdf
diff --git a/grothoff_gnunet2015.pdf b/grothoff/grothoff_gnunet2015.pdf
similarity index 100%
rename from grothoff_gnunet2015.pdf
rename to grothoff/grothoff_gnunet2015.pdf
diff --git a/grothoff_gnunet2017.pdf b/grothoff/grothoff_gnunet2017.pdf
similarity index 100%
rename from grothoff_gnunet2017.pdf
rename to grothoff/grothoff_gnunet2017.pdf
diff --git a/grothoff_innovation-comlexity-risk-and-trust_mapping2016.pdf 
b/grothoff/grothoff_innovation-comlexity-risk-and-trust_mapping2016.pdf
similarity index 100%
rename from grothoff_innovation-comlexity-risk-and-trust_mapping2016.pdf
rename to grothoff/grothoff_innovation-comlexity-risk-and-trust_mapping2016.pdf
diff --git a/grothoff_inria2013.pdf b/grothoff/grothoff_inria2013.pdf
similarity index 100%
rename from grothoff_inria2013.pdf
rename to grothoff/grothoff_inria2013.pdf
diff --git a/grothoff_inria2013rennes.pdf 
b/grothoff/grothoff_inria2013rennes.pdf
similarity index 100%
rename from grothoff_inria2013rennes.pdf
rename to grothoff/grothoff_inria2013rennes.pdf
diff --git a/grothoff_lugcamp2013mhd.pdf b/grothoff/grothoff_lugcamp2013mhd.pdf
similarity index 100%
rename from grothoff_lugcamp2013mhd.pdf
rename to grothoff/grothoff_lugcamp2013mhd.pdf
diff --git a/grothoff_lugcamp2015.pdf b/grothoff/grothoff_lugcamp2015.pdf
similarity index 100%
rename from grothoff_lugcamp2015.pdf
rename to grothoff/grothoff_lugcamp2015.pdf
diff --git a/grothoff_mapping2014.pdf b/grothoff/grothoff_mapping2014.pdf
similarity index 100%
rename from grothoff_mapping2014.pdf
rename to grothoff/grothoff_mapping2014.pdf
diff --git a/grothoff_mhd2013gpn.pdf b/grothoff/grothoff_mhd2013gpn.pdf
similarity index 100%
rename from grothoff_mhd2013gpn.pdf
rename to grothoff/grothoff_mhd2013gpn.pdf
diff --git 
"a/grothoff_netwerksicherheit-probleme-und-l\303\266sungsans\303\244tze_npo2016.pdf"
 
"b/grothoff/grothoff_netwerksicherheit-probleme-und-l\303\266sungsans\303\244tze_npo2016.pdf"
similarity index 100%
rename from 
"grothoff_netwerksicherheit-probleme-und-l\303\266sungsans\303\244tze_npo2016.pdf"
rename to 
"grothoff/grothoff_netwerksicherheit-probleme-und-l\303\266sungsans\303\244tze_npo2016.pdf"
diff --git a/grothoff_oii2014.pdf b/grothoff/grothoff_oii2014.pdf
similarity index 100%
rename from grothoff_oii2014.pdf
rename to grothoff/grothoff_oii2014.pdf
diff --git a/grothoff_prism-gnunet-berlin.pdf 
b/grothoff/grothoff_prism-gnunet-berlin.pdf
similarity index 100%
rename from grothoff_prism-gnunet-berlin.pdf
rename to grothoff/grothoff_prism-gnunet-berlin.pdf
diff --git a/grothoff_privacy2009.pdf b/grothoff/grothoff_privacy2009.pdf
similarity index 100%
rename from grothoff_privacy2009.pdf
rename to grothoff/grothoff_privacy2009.pdf
diff --git a/grothoff_rmv608.pdf b/grothoff/grothoff_rmv608.pdf
similarity index 100%
rename from grothoff_rmv608.pdf
rename to grothoff/grothoff_rmv608.pdf
diff --git a/grothoff_slides-87-httpbis.pdf 
b/grothoff/grothoff_slides-87-httpbis.pdf
similarity index 100%
rename from grothoff_slides-87-httpbis.pdf
rename to grothoff/grothoff_slides-87-httpbis.pdf
diff --git a/grothoff_social-networks-vs-security-and-privacy_bfh2017.pdf 
b/grothoff/grothoff_social-networks-vs-security-and-privacy_bfh2017.pdf
similarity index 100%
rename from grothoff_social-networks-vs-security-and-privacy_bfh2017.pdf
rename to grothoff/grothoff_social-networks-vs-security-and-privacy_bfh2017.pdf
diff --git 
a/grothoff_the-gnu-name-system-a-pki-for-social-movements-in-the-age-of-universal-surveillance_-ccc2017ch.pdf
 
b/grothoff/grothoff_the-gnu-name-system-a-pki-for-social-movements-in-the-age-of-universal-surveillance_-ccc2017ch.pdf
similarity index 100%
rename from 
grothoff_the-gnu-name-system-a-pki-for-social-movements-in-the-age-of-universal-surveillance_-ccc2017ch.pdf
rename to 
grothoff/grothoff_the-gnu-name-system-a-pki-for-social-movements-in-the-age-of-universal-surveillance_-ccc2017ch.pdf
diff --git 
a/grothoff_towards-secure-name-resolution-on-the-internet_ndss2017slides.pdf 
b/grothoff/grothoff_towards-secure-name-resolution-on-the-internet_ndss2017slides.pdf
similarity index 100%
rename from 
grothoff_towards-secure-name-resolution-on-the-internet_ndss2017slides.pdf
rename to 
grothoff/grothoff_towards-secure-name-resolution-on-the-internet_ndss2017slides.pdf
diff --git a/grothoff_tsvwg2015.pdf b/grothoff/grothoff_tsvwg2015.pdf
similarity index 100%
rename from grothoff_tsvwg2015.pdf
rename to grothoff/grothoff_tsvwg2015.pdf
diff --git a/grothoff_tue2015.pdf b/grothoff/grothoff_tue2015.pdf
similarity index 100%
rename from grothoff_tue2015.pdf
rename to grothoff/grothoff_tue2015.pdf
diff --git a/grothoff_uva2013.pdf b/grothoff/grothoff_uva2013.pdf
similarity index 100%
rename from grothoff_uva2013.pdf
rename to grothoff/grothoff_uva2013.pdf
diff --git a/secushare-old-html/2011-CBase.slides.html 
b/secushare-old-html/2011-CBase.slides.html
new file mode 100644
index 0000000..2e169ff
--- /dev/null
+++ b/secushare-old-html/2011-CBase.slides.html
@@ -0,0 +1,297 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
+       "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd";>
+
+<html xmlns="http://www.w3.org/1999/xhtml";>
+<head>
+<meta name="presdate" content="20111228" />
+<title>Scalable &amp; Paranoid: Secure Share</title>
+<!-- metadata -->
+<meta name="generator" content="S5" />
+<meta name="version" content="S5 1.1" />
+<meta name="author" content="Carlo v. Loesch" />
+<meta name="company" content="symlynX.com" />
+<!-- configuration parameters -->
+<meta name="defaultView" content="slideshow" />
+<meta name="controlVis" content="hidden" />
+<!-- style sheet links -->
+<link rel="stylesheet" href="http://www.psyc.eu/papers/ui/psyced/slides.css"; 
type="text/css" media="projection" id="slideProj" />
+<link rel="stylesheet" href="http://www.psyc.eu/papers/ui/psyced/outline.css"; 
type="text/css" media="screen" id="outlineStyle" />
+<link rel="stylesheet" href="http://www.psyc.eu/papers/ui/psyced/print.css"; 
type="text/css" media="print" id="slidePrint" />
+<link rel="stylesheet" href="http://www.psyc.eu/papers/ui/psyced/opera.css"; 
type="text/css" media="projection" id="operaFix" />
+<!-- S5 JS -->
+<script src="http://www.psyc.eu/papers/ui/psyced/slides.js"; 
type="text/javascript"></script>
+</head>
+<body>
+
+<div class="layout">
+<div id="controls"><!-- DO NOT EDIT --></div>
+<div id="currentSlide"><!-- DO NOT EDIT --></div>
+<div id="header"></div>
+<div id="footer">
+&nbsp; Scalable &amp; Paranoid: Secure Share
+</div>
+
+</div>
+
+
+<div class="presentation">
+
+<div class="slide">
+<h2>Scalable &amp; Paranoid: Secure Share</h2>
+<ul>
+<li>Carlo v. Loesch (symlynX)</li>
+<li>Gabor Toth (PSYC)</li>
+<li>Mathias Baumann (PSYC)</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>A Perfectionist's Social Network</h1>
+<h2>Overview of the Talk</h2>
+<ul>
+<li>Attack Vectors against Servers &amp; VMs</li>
+<li>How Much Privacy Is Enough?</li>
+<li>Social Onion Routing</li>
+<li>More Desired Features</li>
+<li>Architecture, Protocols</li>
+<li>How to Beat Faceboogle</li>
+<li>The 'Secure Share' App</li>
+</ul>
+</div>
+
+<div class="slide">
+<h2>Why am I talking here?</h2>
+<ul class="incremental">
+<li>20 years of messaging &amp; chat protocol design</li>
+<li>/me etc.</li>
+<li>PSYC: federated &amp; multicasting</li>
+<li>then Jabber came</li>
+<li>PSYC good for business, open source delayed</li>
+<li>back then servers were reliable</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Don't Trust Servers</h1>
+<h2>Hardware Servers are vulnerable</h2>
+<ul class="incremental">
+<li>client/server architecture: data resides on servers</li>
+<li>federation: data visible on even more servers</li>
+<li>memory access via bus sniffing</li>
+<li>no shutdown necessary</li>
+<li>automated memory image analysis proven</li>
+<li>eat-inside or take-away</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Don't Trust Virtual Machines</h1>
+<h2>Commodity Servers are VMs</h2>
+<ul class="incremental">
+<li>vulnerable cryptography</li>
+<li>memory can be monitored</li>
+<li>controlling system accessible by observers</li>
+<li>automated monitoring of federated social networks</li>
+<li>anti-terror legislation possible</li>
+<li>even if <em>your</em> server is at home</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Privacy vs. Paranoia</h1>
+<h2>How Much Privacy Is Enough? 1/2</h2>
+<ul class="incremental">
+<li>just to the intended recipients (e2e encryption)</li>
+<li>packet size padding (unobservability)</li>
+<li>flexible number of anonymization hops</li>
+<li>optional intentional delay</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Privacy vs. Paranoia</h1>
+<h2>How Much Privacy Is Enough? 2/2</h2>
+<ul class="incremental">
+<li>forward secrecy</li>
+<li>deniability (a log is no proof of nothing)</li>
+<li>private subscription lists (not on a server)</li>
+<li>robust and resilient against attacks</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>It's A Question Of Trust</h1>
+<h2>Social Onion Routing</h2>
+<ul class="incremental">
+<li>trust relationship between nodes</li>
+<li>multihop provides anonymization</li>
+<li>motivation to provide "servers" as fast routers</li>
+<li>"P2P" a lot faster over servers</li>
+<li>servers agnostically maintain messages (and data)</li>
+<!-- li>irony: role switch between servers and routers</li -->
+</ul>
+</div>
+
+<div class="slide">
+<h1>Portability &amp; Acceptance</h1>
+<h2>Lightweight Daemon</h2>
+<ul class="incremental">
+<li>personal devices and home routers</li>
+<li>lightweight for embedded and mobile</li>
+<li>lightweight for background daemon use</li>
+<li>compiled language</li>
+<li>more likely to get included in OS distros</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Architecture</h1>
+<h2>Technology</h2>
+<ul class="incremental">
+<li>"Enhanced" P2P with servers as agnostic routers</li>
+<li>GNUnet as a framework, lots of privacy</li>
+<li>TUM, learned from I2P, Freenet...</li>
+<li>social graph discovery instead of DHT</li>
+<li>no file sharing, no big traffic</li>
+<li>PSYC on top</li>
+<!-- <li>Multicast distribution for scalability (later)</li> -->
+</ul>
+</div>
+
+<div class="slide">
+<h1>PSYC vs XML and JSON</h1>
+
+<ul class="incremental">
+<li>extensible: semantically rich</li>
+<li>binary/encrypted data capable</li>
+<li>efficient as a binary format</li>
+</ul>
+<p/>
+
+<table class="smaller" border="2" cellspacing="0" cellpadding="6" 
rules="groups" frame="hsides">
+<caption></caption>
+<colgroup><col class="left" /></colgroup>
+<colgroup><col class="right" /><col class="right" /><col class="center" 
/></colgroup><colgroup><col class="right" /><col class="right" 
/></colgroup><colgroup><col class="right" /><col class="right" /><col 
class="right" /></colgroup>
+<thead>
+<tr><th scope="col" class="left"></th><th scope="col" 
class="right">libpsyc<br/>regular</th><th scope="col" 
class="center">libpsyc<br/>compact</th><th scope="col" 
class="right">json-c</th><th scope="col" class="right">json-glib</th><th 
scope="col" class="right">libxml sax</th><th scope="col" 
class="right">libxml</th><th scope="col" class="right">rapidxml</th></tr>
+
+</thead>
+<tbody>
+<tr><td class="left">presence</td><td class="right">236</td><td 
class="center">122</td><td class="right">2463</td><td 
class="right">10016</td><td class="right">4997</td><td 
class="right">7557</td><td class="right">1719</td></tr>
+<tr><td class="left">chat msg</td><td class="right">295</td><td 
class="center">258</td><td class="right">2147</td><td 
class="right">9526</td><td class="right">5911</td><td 
class="right">8999</td><td class="right">1850</td></tr>
+
+<tr><td class="left">activity</td><td class="right">353</td><td 
class="center">279</td><td class="right">4666</td><td 
class="right">16327</td><td class="right">13357</td><td 
class="right">28858</td><td class="right">4356</td></tr>
+</tbody>
+</table>
+
+</div>
+
+<div class="slide">
+<h1>One Too Many</h1>
+<h2>Multicasting for Scalability</h2>
+<ul class="incremental">
+<li>social interactions are one-to-many or many-to-many</li>
+<li>round robin distribution is slow (SMTP)</li>
+<li>IP Multicast doesn't do the job (router table overflow)</li>
+<li>HTTP is one-to-one, query/response</li>
+<li>XMPP has a trust issue (says the XSF)</li>
+<li>IRC and NNTP do/did multicast, but had other problems</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Flexibility</h1>
+<h2>Framework Architecture</h2>
+<ul class="incremental">
+<li>a truly private communications backend</li>
+<li>social applications to be built on top</li>
+<li>emulations of the 'open standards' possible</li>
+<li>OStatus, WebID, RDF, even the Twitter API</li>
+<li>optional modules for XMPP, IRC available</li>
+<li>Activity Streams</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Dissemination</h1>
+<h2>Hard to beat Faceboogle</h2>
+<ul class="incremental">
+<li>since we need to go onto every computer anyway..</li>
+<li>offer something Faceboogle can't provide?</li>
+<li>exchanging files between friends sucks</li>
+<li>USB sticks, e-mail, file hosters, skype, MSN, DropBox (brrr!)</li>
+<li>WTF is 'Secure Share' ?</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Desktop Integration</h1>
+<h2>'Secure Share' Function</h2>
+<ul class="incremental">
+<li>right mouse button click (context menu)</li>
+<li>share a file to a channel of subscribers</li>
+<li>appears in their file system soon</li>
+<li>realtime or delayed notification</li>
+<li>no permission dialogs</li>
+<li>shipped by default in your free OS?</li>
+</ul>
+</div>
+
+<!--
+
+-->
+
+<div class="slide">
+<h1>If you like what we do</h1>
+<h2>We need support</h2>
+<ul>
+<li>Manpower</li>
+<li>Alliances</li>
+<li>Finances</li>
+<li>Publicity</li>
+</ul>
+<br/>
+Check by: secushare.org<br/>
+Thank you.<br/>
+</div>
+
+<div class="slide">
+<h1>Cross That Bridge As We Get There?</h1>
+<h2>Let's just get started with something!</h2>
+<ul class="incremental">
+<li>The Mediocre is the Enemy of the Good</li>
+<li>Historic Examples:</li>
+<li>HTTP.. HTTP/NG?, SPDY!?</li>
+<li>SMTP.. What? Faceboogle!?</li>
+<li>XML.. What? JSON!?</li>
+<!-- li>SQL..</li -->
+</ul>
+</div>
+
+<div class="slide">
+<h1>End-to-end Encryption in the Browser?</h1>
+<h2>isn't possible by design of the web.</h2>
+See the 'end2end' page on the website for details.
+</div>
+
+<div class="slide">
+<h1>One Too Many (XMPP)</h1>
+<h2>Multicasting with XMPP?</h2>
+<ul class="incremental">
+<li>70% of S2S XMPP messages is presence updates (5 years ago)</li>
+<li>XMPP has limited support for one-to-many communications</li>
+<li>XMPP can be improved, but: trust problem with multicast</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>One Too Many (HTTP)</h1>
+<h2>Multicasting with HTTP?</h2>
+<ul class="incremental">
+<li>fundamentally feasible</li>
+<li>unnatural: HTTP is not bidirectional</li>
+<li>requires trust in a federated architecture</li>
+</ul>
+</div>
+
+</html>
diff --git a/secushare-old-html/2011-CCCamp.slides.html 
b/secushare-old-html/2011-CCCamp.slides.html
new file mode 100644
index 0000000..ce6fbfc
--- /dev/null
+++ b/secushare-old-html/2011-CCCamp.slides.html
@@ -0,0 +1,262 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
+       "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd";>
+
+<html xmlns="http://www.w3.org/1999/xhtml";>
+<head>
+<title>Scalable &amp; Paranoid: Secure Share</title>
+<!-- metadata -->
+<meta name="generator" content="S5" />
+<meta name="version" content="S5 1.1" />
+<meta name="presdate" content="20110814" />
+<meta name="author" content="Carlo v. Loesch" />
+<meta name="company" content="symlynX.com" />
+<!-- configuration parameters -->
+<meta name="defaultView" content="slideshow" />
+<meta name="controlVis" content="hidden" />
+<!-- style sheet links -->
+<link rel="stylesheet" href="http://www.psyc.eu/papers/ui/psyced/slides.css"; 
type="text/css" media="projection" id="slideProj" />
+<link rel="stylesheet" href="http://www.psyc.eu/papers/ui/psyced/outline.css"; 
type="text/css" media="screen" id="outlineStyle" />
+<link rel="stylesheet" href="http://www.psyc.eu/papers/ui/psyced/print.css"; 
type="text/css" media="print" id="slidePrint" />
+<link rel="stylesheet" href="http://www.psyc.eu/papers/ui/psyced/opera.css"; 
type="text/css" media="projection" id="operaFix" />
+<!-- S5 JS -->
+<script src="http://www.psyc.eu/papers/ui/psyced/slides.js"; 
type="text/javascript"></script>
+</head>
+<body>
+
+<div class="layout">
+<div id="controls"><!-- DO NOT EDIT --></div>
+<div id="currentSlide"><!-- DO NOT EDIT --></div>
+<div id="header"></div>
+<div id="footer">
+&nbsp; Scalable &amp; Paranoid: Secure Share
+</div>
+
+</div>
+
+
+<div class="presentation">
+
+<div class="slide">
+<h2>Scalable &amp; Paranoid: Secure Share</h2>
+<ul>
+<li>Carlo v. Loesch (symlynX)</li>
+<li>Gabor Toth (PSYC)</li>
+<li>Mathias Baumann (PSYC)</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>A Perfectionist's Social Network</h1>
+<h2>Overview of the Talk</h2>
+<ul>
+<li>Safety of Virtual Machines</li>
+<li>How Much Privacy Is Enough?</li>
+<li>Social Onion Routing</li>
+<li>More Desired Features</li>
+<li>Architecture, Protocols</li>
+<li>How to Beat Faceboogle</li>
+<li>The 'Secure Share' App</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Don't Trust Virtual Machines</h1>
+<h2>Commodity Servers are VMs</h2>
+<ul class="incremental">
+<li>vulnerable cryptography</li>
+<li>memory can be monitored</li>
+<li>controlling system accessible by observers</li>
+<li>automated monitoring of federated social networks</li>
+<li>anti-terror legislation possible</li>
+<li>even if <em>your</em> server is at home</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Privacy vs. Paranoia</h1>
+<h2>How Much Privacy Is Enough? 1/2</h2>
+<ul class="incremental">
+<li>just to the intended recipients (e2e encryption)</li>
+<li>packet size padding (unobservability)</li>
+<li>flexible number of anonymization hops</li>
+<li>optional intentional delay</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Privacy vs. Paranoia</h1>
+<h2>How Much Privacy Is Enough? 2/2</h2>
+<ul class="incremental">
+<li>forward secrecy</li>
+<li>deniability (a log is no proof of nothing)</li>
+<li>private subscription lists (not on a server)</li>
+<li>robust and resilient against attacks</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>It's A Question Of Trust</h1>
+<h2>Social Onion Routing</h2>
+<ul class="incremental">
+<li>trust relationship between nodes</li>
+<li>multihop provides anonymization</li>
+<li>motivation to provide "servers" as fast routers</li>
+<li>"P2P" a lot faster over servers</li>
+<li>irony: role switch between servers and routers</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Portability &amp; Acceptance</h1>
+<h2>Lightweight Daemon</h2>
+<ul class="incremental">
+<li>personal devices and home routers</li>
+<li>lightweight for embedded and mobile</li>
+<li>lightweight for background daemon use</li>
+<li>compiled language</li>
+<li>more likely to get included in OS distros</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Architecture</h1>
+<h2>Technology</h2>
+<ul class="incremental">
+<li>looking for the best framework...</li>
+<li>GnuNet, Maidsafe, A3 or Tonika?</li>
+<li>socially enhanced DHT?</li>
+<li>payload syntax: efficient, binary capable, extensible</li>
+<li>Multicast distribution for scalability (later)</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Flexibility</h1>
+<h2>Framework Architecture</h2>
+<ul class="incremental">
+<li>a truly private messaging backend</li>
+<li>social applications to be built on top</li>
+<li>emulations of the 'open standards' possible</li>
+<li>OStatus, WebID, RDF, even the Twitter API</li>
+<li>optional modules for XMPP, IRC?</li>
+<li>Activity Streams</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Dissemination</h1>
+<h2>Hard to beat Faceboogle</h2>
+<ul class="incremental">
+<li>since we need to go onto every computer anyway..</li>
+<li>offer something Faceboogle can't provide?</li>
+<li>exchanging files between friends sucks</li>
+<li>USB sticks, e-mail, file hosters, skype, MSN</li>
+<li>WTF is 'Secure Share' ?</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Desktop Integration</h1>
+<h2>'Secure Share' Function</h2>
+<ul class="incremental">
+<li>right mouse button click (context menu)</li>
+<li>share a file to a channel of subscribers</li>
+<li>appears in their file system soon</li>
+<li>realtime or delayed notification</li>
+<li>no permission dialogs</li>
+<li>shipped by default in your free OS?</li>
+</ul>
+</div>
+
+<!--
+
+<div class="slide">
+<h1>One Too Many</h1>
+<h2>Multicasting for Scalability</h2>
+<ul class="incremental">
+<li>social interactions are one-to-many or many-to-many</li>
+<li>HTTP is one-to-one</li>
+<li>round robin distribution is slow (SMTP)</li>
+<li>IP Multicast doesn't do the job (router table overflow)</li>
+<li>IRC and NNTP do/did multicast, but had other problems</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>One Too Many</h1>
+<h2>Multicasting with XMPP?</h2>
+<ul class="incremental">
+<li>70% of S2S XMPP messages is presence updates (5 years ago)</li>
+<li>XMPP has limited support for one-to-many communications</li>
+<li>XMPP can be improved, but: trust problem with multicast</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>One Too Many</h1>
+<h2>Multicasting with HTTP?</h2>
+<ul class="incremental">
+<li>fundamentally feasible</li>
+<li>unnatural: HTTP is not bidirectional</li>
+<li>requires trust in a federated architecture</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Possible Solution Part 1</h1>
+<h2>New Architecture?</h2>
+<ul class="incremental">
+<li>"Enhanced" P2P with servers as agnostic routers</li>
+<li>Options: GNUnet, Maidsafe, A3, Tonika</li>
+<li>Less possibly: I2P, Diaspora</li>
+<li>Features: Unobservability, End-To-End ...</li>
+<li>What's missing?</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Possible Solution Part 2</h1>
+<h2>Things to add on top</h2>
+<ul class="incremental">
+<li>multicast routing option</li>
+<li>social trust metrics</li>
+<li>... applied for routing</li>
+<li>flexible payload syntax</li>
+<li>standard formats may be portable</li>
+<li>web interface still likely</li>
+</ul>
+</div>
+
+-->
+
+<!-- div class="slide">
+</div -->
+
+<div class="slide">
+<h1>If you like what we do</h1>
+<h2>We need support</h2>
+<ul>
+<li>Manpower</li>
+<li>Alliances</li>
+<li>Finances</li>
+<li>Publicity</li>
+</ul>
+<br/>
+<br/>
+Thank you.<br/>
+</div>
+
+<div class="slide">
+<h1>Cross That Bridge As We Get There?</h1>
+<h2>Let's just get started with something!</h2>
+<ul class="incremental">
+<li>The Mediocre is the Enemy of the Good</li>
+<li>Historic Examples:</li>
+<li>HTTP.. HTTP/NG?, SPDY!?</li>
+<li>SMTP.. What? Faceboogle!?</li>
+<li>XML.. What? JSON!?</li>
+<!-- li>SQL..</li -->
+</ul>
+</div>
+
+</html>
diff --git a/secushare-old-html/2011-FSW.slides.html 
b/secushare-old-html/2011-FSW.slides.html
new file mode 100644
index 0000000..72a39a7
--- /dev/null
+++ b/secushare-old-html/2011-FSW.slides.html
@@ -0,0 +1,152 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
+       "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd";>
+
+<html xmlns="http://www.w3.org/1999/xhtml";>
+<head>
+<title>Scalability &amp; Paranoia in a Decentralized Social Network</title>
+<!-- metadata -->
+<meta name="generator" content="S5" />
+<meta name="version" content="S5 1.1" />
+<meta name="presdate" content="20110600" />
+<meta name="author" content="Carlo v. Loesch" />
+<meta name="company" content="symlynX.com" />
+<!-- configuration parameters -->
+<meta name="defaultView" content="slideshow" />
+<meta name="controlVis" content="hidden" />
+<!-- style sheet links -->
+<link rel="stylesheet" href="http://www.psyc.eu/papers/ui/psyced/slides.css"; 
type="text/css" media="projection" id="slideProj" />
+<link rel="stylesheet" href="http://www.psyc.eu/papers/ui/psyced/outline.css"; 
type="text/css" media="screen" id="outlineStyle" />
+<link rel="stylesheet" href="http://www.psyc.eu/papers/ui/psyced/print.css"; 
type="text/css" media="print" id="slidePrint" />
+<link rel="stylesheet" href="http://www.psyc.eu/papers/ui/psyced/opera.css"; 
type="text/css" media="projection" id="operaFix" />
+<!-- S5 JS -->
+<script src="http://www.psyc.eu/papers/ui/psyced/slides.js"; 
type="text/javascript"></script>
+</head>
+<body>
+
+<div class="layout">
+<div id="controls"><!-- DO NOT EDIT --></div>
+<div id="currentSlide"><!-- DO NOT EDIT --></div>
+<div id="header"></div>
+<div id="footer">
+&nbsp; Scalability &amp; Paranoia in a Decentralized Social Network
+</div>
+
+</div>
+
+
+<div class="presentation">
+
+<div class="slide">
+<h2>Scalability &amp; Paranoia in a Decentralized Social Network</h2>
+<ul>
+<li>Carlo v. Loesch (symlynX)<br/>
+<li>Gabor Toth (PSYC)<br/>
+<li>Mathias Baumann (PSYC)<br/>
+</ul>
+</div>
+
+
+<div class="slide">
+<h1>Pitfall: Start With Something</h1>
+<h2>Cross That Bridge As We Get There?</h2>
+<ul class="incremental">
+<li>Let's just get started with something!</li>
+<li>Pitfall! Historic Examples:</li>
+<li>HTTP! HTTP/NG?, SPDY!?</li>
+<li>IRC! ...? XMPP!?</li>
+<li>XMPP! ...? JSON!?</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>One Too Many</h1>
+<h2>Multicasting for Scalability</h2>
+<ul class="incremental">
+<li>social interactions are one-to-many or many-to-many</li>
+<li>HTTP is one-to-one</li>
+<li>round robin distribution is slow (SMTP)</li>
+<li>IP Multicast doesn't do the job (router table overflow)</li>
+<li>IRC and NNTP do/did multicast, but had other problems</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>One Too Many</h1>
+<h2>Multicasting with XMPP?</h2>
+<ul class="incremental">
+<li>70% of S2S XMPP messages is presence updates (5 years ago)</li>
+<li>XMPP has limited support for one-to-many communications</li>
+<li>XMPP can be improved, but: trust problem with multicast</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>One Too Many</h1>
+<h2>Multicasting with HTTP?</h2>
+<ul class="incremental">
+<li>fundamentally feasible</li>
+<li>unnatural: HTTP is not bidirectional</li>
+<li>requires trust in a federated architecture</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Don't Trust Virtual Machines</h1>
+<h2>Commodity Servers are VMs</h2>
+<ul class="incremental">
+<li>vulnerable cryptography</li>
+<li>controlling system accessible by observers</li>
+<li>memory can be monitored</li>
+<li>automated monitoring of the FSW</li>
+<li>anti-terror legislation possible</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Privacy vs. Paranoia</h1>
+<h2>How Much Privacy Is Enough?</h2>
+<ul class="incremental">
+<li>just to the intended recipients (e2e encryption)</li>
+<li>packet size padding (unobservability)</li>
+<li>forward secrecy</li>
+<li>private subscription lists (not on a server)</li>
+<li>robust and resilient against attacks</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Our Conclusion</h1>
+<h2>For the web to become seriously social, it needs a native, open and free
+backbone technology that enables communication beyond the one-to-one 
scenario.</h2>
+</div>
+
+<div class="slide">
+<h1>Possible Solution Part 1</h1>
+<h2>New Architecture?</h2>
+<ul class="incremental">
+<li>"Enhanced" P2P with servers as agnostic routers</li>
+<li>Options: GNUnet, Maidsafe, A3, Tonika</li>
+<li>Less possibly: I2P, Diaspora</li>
+<li>Features: Unobservability, End-To-End ...</li>
+<li>What's missing?</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Possible Solution Part 2</h1>
+<h2>Things to add on top</h2>
+<ul class="incremental">
+<li>multicast routing option</li>
+<li>social trust metrics</li>
+<li>... applied for routing</li>
+<li>flexible payload syntax</li>
+<li>standard formats may be portable</li>
+<li>web interface still likely</li>
+</ul>
+</div>
+
+<!-- div class="slide">
+<h3>Thank you.<br/>Questions? Other points of view?</h3>
+</div -->
+
+</html>
diff --git a/secushare-old-html/2012-02-Cbase.slides.html 
b/secushare-old-html/2012-02-Cbase.slides.html
new file mode 100644
index 0000000..063ea81
--- /dev/null
+++ b/secushare-old-html/2012-02-Cbase.slides.html
@@ -0,0 +1,369 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
+       "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd";>
+
+<!--
+
+TODO: political slide about Facebook owning and selling your
+      pictures and stuffs you upload!!?
+
+TODO: add a slide about private usefulness as noted by codethief
+       (syncing, managing your stuff)
+
+-->
+
+<html xmlns="http://www.w3.org/1999/xhtml";>
+<head>
+<title>Re-Invent the Internet with Secure Share</title>
+<meta name="presdate" content="20120201" />
+<!-- metadata -->
+<meta name="generator" content="S5" />
+<meta name="version" content="S5 1.1" />
+<meta name="author" content="Carlo v. Loesch" />
+<meta name="company" content="symlynX.com" />
+<!-- configuration parameters -->
+<meta name="defaultView" content="slideshow" />
+<meta name="controlVis" content="hidden" />
+<!-- style sheet links -->
+<link rel="stylesheet" href="UI/slides.css" type="text/css" media="projection" 
id="slideProj" />
+<link rel="stylesheet" href="UI/outline.css" type="text/css" media="screen" 
id="outlineStyle" />
+<link rel="stylesheet" href="UI/print.css" type="text/css" media="print" 
id="slidePrint" />
+<link rel="stylesheet" href="UI/opera.css" type="text/css" media="projection" 
id="operaFix" />
+<!-- S5 JS -->
+<script src="UI/slides.js" type="text/javascript"></script>
+</head>
+<body>
+
+<div class="layout">
+<div id="controls"><!-- DO NOT EDIT --></div>
+<div id="currentSlide"><!-- DO NOT EDIT --></div>
+<div id="header"></div>
+<div id="footer">
+&nbsp; secushare: A Framework for ReInventing the Internet
+</div>
+</div>
+
+<div id="between">&nbsp;</div>
+
+<!-- div id="logo">
+<img src="img/oXoXo-077.png" />
+</div -->
+
+<div class="presentation">
+
+<div class="slide">
+<img style="padding: 80px" src="img/secushare-0444.png" />
+</div>
+
+<div class="slide">
+<img class="framed" src="img/phase0.jpeg" />
+</div>
+<div class="slide">
+<img class="framed" src="img/phase1.jpeg" />
+</div>
+<div class="slide">
+<img class="framed" src="img/phase2.jpeg" />
+</div>
+<div class="slide">
+<img class="framed" src="img/phase3.jpeg" />
+</div>
+
+<div class="slide">
+<h1>ReInventing the Internet?</h1>
+<h2>Overview of the Talk</h2>
+<ul>
+<li>Attack Vectors against Servers &amp; VMs</li>
+<li>How Much Privacy Is Enough?</li>
+<li>Social Onion Routing</li>
+<li>More Desired Features</li>
+<li>Architecture, Protocols</li>
+<li>How to Beat Faceboogle</li>
+<li>The 'Secure Share' App</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>About carlo von lynX</h1>
+<h2>Why am I talking here?</h2>
+<ul class="incremental">
+<li>20 years of messaging &amp; chat protocol design</li>
+<li>/me etc.</li>
+<li>PSYC: federated &amp; multicasting</li>
+<li>then Jabber came</li>
+<li>PSYC good for business, open source delayed</li>
+<li>back then, servers were reliable</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Don't Trust Servers</h1>
+<h2>Hardware Servers are vulnerable</h2>
+<ul class="incremental">
+<li>client/server architecture: data resides on servers</li>
+<li>federation: data visible on even more servers</li>
+<li>memory access via bus sniffing</li>
+<li>no shutdown necessary</li>
+<li>automated memory image analysis proven</li>
+<li>eat-inside or take-away</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Don't Trust Virtual Machines</h1>
+<h2>Commodity Servers are VMs</h2>
+<ul class="incremental">
+<li>vulnerable cryptography</li>
+<li>memory can be monitored</li>
+<li>controlling system accessible by observers</li>
+<li>automated monitoring of federated social networks</li>
+<li>anti-terror legislation possible</li>
+<li>even if <em>your</em> server is at home</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Privacy vs. Paranoia</h1>
+<h2>How Much Privacy Is Enough? 1/2</h2>
+<ul class="incremental">
+<li>just to the intended recipients (e2e encryption)</li>
+<li>packet size padding (unobservability)</li>
+<li>flexible number of anonymization hops</li>
+<li>optional intentional delay</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Privacy vs. Paranoia</h1>
+<h2>How Much Privacy Is Enough? 2/2</h2>
+<ul class="incremental">
+<li>forward secrecy</li>
+<li>deniability (a log is no proof of nothing)</li>
+<li>private subscription lists (not on a server)</li>
+<li>robust and resilient against attacks</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>It's A Question Of Trust</h1>
+<h2>Social Onion Routing</h2>
+<ul class="incremental">
+<li>trust relationship between nodes</li>
+<li>multihop provides anonymization</li>
+<li>motivation to provide "servers" as fast routers</li>
+<li>my server is me, so you can trust my server</li>
+<li>"P2P" a lot faster over servers</li>
+<li>servers agnostically maintain messages (and data)</li>
+<!-- li>irony: role switch between servers and routers</li -->
+</ul>
+</div>
+
+<div class="slide">
+<h1>Portability &amp; Acceptance</h1>
+<h2>Lightweight Daemon</h2>
+<ul class="incremental">
+<li>personal devices and home routers</li>
+<li>lightweight for embedded and mobile</li>
+<li>lightweight for background daemon use</li>
+<li>compiled language</li>
+<li>more likely to get included in OS distros</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Architecture</h1>
+<h2>Technology</h2>
+<ul class="incremental">
+<li>"Enhanced" P2P with servers as agnostic routers</li>
+<li>GNUnet as a framework: privacy, VPN, meshnet</li>
+<li>TUM, learned from I2P, Freenet...</li>
+<li>social graph discovery instead of DHT</li>
+<li>no file sharing, no big traffic</li>
+<li>PSYC on top</li>
+<!-- <li>Multicast distribution for scalability (later)</li> -->
+</ul>
+</div>
+
+<div class="slide">
+<h1>PSYC vs XML and JSON</h1>
+
+<ul class="incremental">
+<li>extensible: semantically rich</li>
+<li>binary/encrypted data capable</li>
+<li>efficient as a binary format</li>
+<li>table shows parsing speed in milliseconds:</li>
+</ul>
+<p/>
+
+<table class="smaller" border="2" cellspacing="0" cellpadding="6" 
rules="groups" frame="hsides">
+<caption></caption>
+<colgroup><col class="left" /></colgroup>
+<colgroup><col class="right" /><col class="right" /></colgroup><colgroup><col 
class="right" /><col class="right" /></colgroup><colgroup><col class="right" 
/><col class="right" /><col class="right" /><col class="right" /></colgroup>
+<thead>
+<tr><th scope="col" class="left"></th><th scope="col" 
class="right">libpsyc<br/>regular</th><th scope="col" 
class="center">libpsyc<br/>compact</th><th scope="col" 
class="right">json-c</th><th scope="col" class="right">json-glib</th><th 
scope="col" class="right">libxml sax</th><th scope="col" 
class="right">libxml</th><th scope="col" class="right">rapidxml</th></tr>
+</thead>
+<tbody>
+<tr><td class="left">presence</td><td class="right">236</td><td 
class="right">122</td><td class="right">2463</td><td 
class="right">10016</td><td class="right">4997</td><td 
class="right">7557</td><td class="right">1719</td></tr>
+<tr><td class="left">chat msg</td><td class="right">295</td><td 
class="right">258</td><td class="right">2147</td><td class="right">9526</td><td 
class="right">5911</td><td class="right">8999</td><td 
class="right">1850</td></tr>
+<tr><td class="left">activity</td><td class="right">353</td><td 
class="right">279</td><td class="right">4666</td><td 
class="right">16327</td><td class="right">13357</td><td 
class="right">28858</td><td class="right">4356</td></tr>
+</tbody>
+</table>
+
+</div>
+
+<div class="slide">
+<h1>One Too Many</h1>
+<h2>Multicasting for Scalability</h2>
+<ul class="incremental">
+<li>social = one-to-many | many-to-many</li>
+<li>round robin distribution = slow (SMTP)</li>
+<li>HTTP is one-to-one, query/response</li>
+<li>IP Multicast fails (router table overflow)</li>
+<li>IRC and NNTP do/did multicast, but have other problems</li>
+<li>XMPP has a trust issue (says the XSF)</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Flexibility</h1>
+<h2>Framework Architecture</h2>
+<ul class="incremental">
+<li>a truly private communications backend</li>
+<li>social applications to be built on top</li>
+<li>emulations of the 'open standards' possible</li>
+<li>OStatus, WebID, RDF, even the Twitter API</li>
+<li>optional modules for XMPP, IRC available</li>
+<li>Activity Streams</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Dissemination</h1>
+<h2>Hard to beat Faceboogle</h2>
+<ul class="incremental">
+<li>since we need to go onto every computer anyway..</li>
+<li>offer something Faceboogle can't provide?</li>
+<li>exchanging files between friends sucks</li>
+<li>USB sticks, e-mail, file hosters, skype, MSN, DropBox (brrr!)</li>
+<li>WTF is 'Secure Share' ?</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Desktop Integration</h1>
+<h2>'Secure Share' Function</h2>
+<ul class="incremental">
+<li>right mouse button click (context menu)</li>
+<li>share a file to a channel of subscribers</li>
+<li>appears in their file system soon</li>
+<li>realtime or delayed notification</li>
+<li>no permission dialogs</li>
+<li>shipped by default in your free OS?</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Secure Share Feature Set</h1>
+<h2>Features of Prototype Edition</h2>
+<ul>
+<li>Messaging, Subscriptions, Status Update</li>
+<li>File Exchange, VPN, Software Distribution</li>
+</ul>
+<h2>Later Features</h2>
+<ul>
+<li>Group Communications, Social Network Features</li>
+<li>Media Support: Photo Albums, Videos, Music</li>
+<li>Extension API for Custom Social Apps</li>
+<li>Realtime Streaming</li>
+</ul>
+</div>
+
+<div class="slide">
+<img class="framed" src="img/phase0.jpeg" />
+</div>
+<div class="slide">
+<img class="framed" src="img/phase1.jpeg" />
+</div>
+<div class="slide">
+<img class="framed" src="img/phase2.jpeg" />
+</div>
+<div class="slide">
+<img class="framed" src="img/phase3.jpeg" />
+</div>
+
+<!--
+
+-->
+
+<div class="slide">
+<h1>Secure Share</h1>
+<h2>Who's involved?</h2>
+<ul>
+<li>Carlo v. Loesch (secushare.org)</li>
+<li>Gabor Toth (secushare.org)</li>
+<li>Mathias Baumann (PSYC)</li>
+<li>Daniel Reusche (Social Swarm)</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>If you like what we do</h1>
+<h2>We need support</h2>
+<img align="right" src="img/oXoXo-380.png" />
+<ul>
+<li>Manpower</li>
+<li>Alliances</li>
+<li>Finances</li>
+<li>Publicity</li>
+</ul>
+<br/>
+Check by: secushare.org<br/>
+Thank you.<br/>
+</div>
+
+<div class="slide">
+<h1>A bad idea whose time has come?</h1>
+<h2>End-to-end Encryption in the Browser!!1!11</h2>
+<br/>
+<ul class="incremental">
+<li>User interface comes from the server.
+<li>Web browser does what the server says.
+<li>Server corrupted? It can steal your data.
+<li>Only static install helps. Still:
+<li>Bad cryptography, bad script signing.
+<li>So you might aswell go for the real thing...
+</ul>
+</div>
+
+<div class="slide">
+<h1>One Too Many (XMPP)</h1>
+<h2>Multicasting with XMPP?</h2>
+<ul class="incremental">
+<li>70% of S2S XMPP messages is presence updates (5 years ago)</li>
+<li>XMPP has limited support for one-to-many communications</li>
+<li>XMPP can be improved, but: trust problem with multicast</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>One Too Many (HTTP)</h1>
+<h2>Multicasting with HTTP?</h2>
+<ul class="incremental">
+<li>fundamentally feasible</li>
+<li>unnatural: HTTP is not bidirectional</li>
+<li>requires trust in a federated architecture</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Cross That Bridge As We Get There?</h1>
+<h2>Let's just get started with something!</h2>
+<ul class="incremental">
+<li>The Mediocre is the Enemy of the Good</li>
+<li>Historic Examples:</li>
+<li>HTTP.. HTTP/NG?, SPDY!?</li>
+<li>SMTP.. What? Faceboogle!?</li>
+<li>XML.. What? JSON!?</li>
+<!-- li>SQL..</li -->
+</ul>
+</div>
+
+</html>
diff --git a/secushare-old-html/2012-08-MOCA.slides.html 
b/secushare-old-html/2012-08-MOCA.slides.html
new file mode 100644
index 0000000..14b6813
--- /dev/null
+++ b/secushare-old-html/2012-08-MOCA.slides.html
@@ -0,0 +1,375 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
+       "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd";>
+
+<!--
+
+TODO: political slide about Facebook owning and selling your
+      pictures and stuffs you upload!!?
+
+TODO: add a slide about private usefulness as noted by codethief
+       (syncing, managing your stuff)
+
+-->
+
+<html xmlns="http://www.w3.org/1999/xhtml";>
+<head>
+<title>Re-Invent the Internet with Secure Share</title>
+<meta name="presdate" content="20120201" />
+<!-- metadata -->
+<meta name="generator" content="S5" />
+<meta name="version" content="S5 1.1" />
+<meta name="author" content="Carlo v. Loesch" />
+<meta name="company" content="symlynX.com" />
+<!-- configuration parameters -->
+<meta name="defaultView" content="slideshow" />
+<meta name="controlVis" content="hidden" />
+<!-- style sheet links -->
+<link rel="stylesheet" href="UI/slides.css" type="text/css" media="projection" 
id="slideProj" />
+<link rel="stylesheet" href="UI/outline.css" type="text/css" media="screen" 
id="outlineStyle" />
+<link rel="stylesheet" href="UI/print.css" type="text/css" media="print" 
id="slidePrint" />
+<link rel="stylesheet" href="UI/opera.css" type="text/css" media="projection" 
id="operaFix" />
+<!-- S5 JS -->
+<script src="UI/slides.js" type="text/javascript"></script>
+</head>
+<body>
+
+<div class="layout">
+<div id="controls"><!-- DO NOT EDIT --></div>
+<div id="currentSlide"><!-- DO NOT EDIT --></div>
+<div id="header"></div>
+<div id="footer">
+&nbsp; secushare: A Framework for ReInventing the Internet
+</div>
+</div>
+
+<div id="between">&nbsp;</div>
+
+<!-- div id="logo">
+<img src="img/oXoXo-077.png" />
+</div -->
+
+<div class="presentation">
+
+<div class="slide">
+<img style="padding: 80px" src="img/secushare-0444.png" />
+</div>
+
+<div class="slide">
+<img class="framed" src="img/phase0.jpeg" />
+</div>
+<div class="slide">
+<img class="framed" src="img/phase1.jpeg" />
+</div>
+<div class="slide">
+<img class="framed" src="img/phase2.jpeg" />
+</div>
+<div class="slide">
+<img class="framed" src="img/phase3.jpeg" />
+</div>
+
+<div class="slide">
+<h1>ReInventing the Internet?</h1>
+<h2>Overview of the Talk</h2>
+<ul>
+<li>Attack Vectors against Servers &amp; VMs</li>
+<li>How Much Privacy Is Enough?</li>
+<li>Social Onion Routing</li>
+<li>More Desired Features</li>
+<li>Architecture, Protocols</li>
+<li>How to Beat Faceboogle</li>
+<li>The 'Secure Share' App</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>About carlo von lynX</h1>
+<h2>Why am I talking here?</h2>
+<ul class="incremental">
+<li>20 years of messaging &amp; chat protocol design</li>
+<li>/me etc.</li>
+<li>PSYC: federated &amp; multicasting</li>
+<li>then Jabber came</li>
+<li>PSYC good for business, open source delayed</li>
+<li>back then, servers were reliable</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Don't Trust Servers</h1>
+<h2>Hardware Servers are vulnerable</h2>
+<ul class="incremental">
+<li>client/server architecture: data resides on servers</li>
+<li>federation: data visible on even more servers</li>
+<li>memory access via bus sniffing</li>
+<li>no shutdown necessary</li>
+<li>automated memory image analysis proven</li>
+<li>eat-inside or take-away</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Don't Trust Virtual Machines</h1>
+<h2>Commodity Servers are VMs</h2>
+<ul class="incremental">
+<li>vulnerable cryptography</li>
+<li>memory can be monitored</li>
+<li>controlling system accessible by observers</li>
+<li>automated monitoring of federated social networks</li>
+<li>anti-terror legislation possible</li>
+<li>even if <em>your</em> server is at home</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Privacy vs. Paranoia</h1>
+<h2>How Much Privacy Is Enough? 1/2</h2>
+<ul class="incremental">
+<li>just to the intended recipients (e2e encryption)</li>
+<li>packet size padding (unobservability)</li>
+<li>flexible number of anonymization hops</li>
+<li>optional intentional delay</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Privacy vs. Paranoia</h1>
+<h2>How Much Privacy Is Enough? 2/2</h2>
+<ul class="incremental">
+<li>forward secrecy</li>
+<li>deniability (a log is no proof of nothing)</li>
+<li>private subscription lists (not on a server)</li>
+<li>robust and resilient against attacks</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>It's A Question Of Trust</h1>
+<h2>Social Onion Routing</h2>
+<ul class="incremental">
+<li>trust relationship between nodes</li>
+<li>multihop provides anonymization</li>
+<li>motivation to provide "servers" as fast routers</li>
+<li>my server is me, so you can trust my server</li>
+<li>"P2P" a lot faster over servers</li>
+<li>servers agnostically maintain messages (and data)</li>
+<!-- li>irony: role switch between servers and routers</li -->
+</ul>
+</div>
+
+<div class="slide">
+<h1>Portability &amp; Acceptance</h1>
+<h2>Lightweight Daemon</h2>
+<ul class="incremental">
+<li>personal devices and home routers</li>
+<li>lightweight for embedded and mobile</li>
+<li>lightweight for background daemon use</li>
+<li>compiled language</li>
+<li>more likely to get included in OS distros</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Architecture</h1>
+<h2>Technology</h2>
+<ul class="incremental">
+<li>"Enhanced" P2P with servers as agnostic routers</li>
+<li>GNUnet as a framework: privacy, VPN, meshnet</li>
+<li>TUM, learned from I2P, Freenet...</li>
+<li>social graph discovery instead of DHT</li>
+<li>no file sharing, no big traffic</li>
+<li>PSYC on top</li>
+<!-- <li>Multicast distribution for scalability (later)</li> -->
+</ul>
+</div>
+
+<div class="slide">
+<h1>PSYC vs XML and JSON</h1>
+
+<ul class="incremental">
+<li>extensible: semantically rich</li>
+<li>binary/encrypted data capable</li>
+<li>efficient as a binary format</li>
+<li>table shows parsing speed in milliseconds:</li>
+</ul>
+<p/>
+
+<table class="smaller" border="2" cellspacing="0" cellpadding="6" 
rules="groups" frame="hsides">
+<caption></caption>
+<colgroup><col class="left" /></colgroup>
+<colgroup><col class="right" /><col class="right" /></colgroup><colgroup><col 
class="right" /><col class="right" /></colgroup><colgroup><col class="right" 
/><col class="right" /><col class="right" /><col class="right" /></colgroup>
+<thead>
+<tr><th scope="col" class="left"></th><th scope="col" 
class="right">libpsyc<br/>regular</th><th scope="col" 
class="center">libpsyc<br/>compact</th><th scope="col" 
class="right">json-c</th><th scope="col" class="right">json-glib</th><th 
scope="col" class="right">libxml sax</th><th scope="col" 
class="right">libxml</th><th scope="col" class="right">rapidxml</th></tr>
+</thead>
+<tbody>
+<tr><td class="left">presence</td><td class="right">236</td><td 
class="right">122</td><td class="right">2463</td><td 
class="right">10016</td><td class="right">4997</td><td 
class="right">7557</td><td class="right">1719</td></tr>
+<tr><td class="left">chat msg</td><td class="right">295</td><td 
class="right">258</td><td class="right">2147</td><td class="right">9526</td><td 
class="right">5911</td><td class="right">8999</td><td 
class="right">1850</td></tr>
+<tr><td class="left">activity</td><td class="right">353</td><td 
class="right">279</td><td class="right">4666</td><td 
class="right">16327</td><td class="right">13357</td><td 
class="right">28858</td><td class="right">4356</td></tr>
+</tbody>
+</table>
+
+</div>
+
+<div class="slide">
+<h1>One Too Many</h1>
+<h2>Multicasting for Scalability</h2>
+<ul class="incremental">
+<li>social = one-to-many | many-to-many</li>
+<li>round robin distribution = slow (SMTP)</li>
+<li>HTTP is one-to-one, query/response</li>
+<li>IP Multicast fails (router table overflow)</li>
+<li>IRC and NNTP do/did multicast, but have other problems</li>
+<li>XMPP has a trust issue (says the XSF)</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Flexibility</h1>
+<h2>Framework Architecture</h2>
+<ul class="incremental">
+<li>a truly private communications backend</li>
+<li>social applications to be built on top</li>
+<li>emulations of the 'open standards' possible</li>
+<li>OStatus, WebID, RDF, even the Twitter API</li>
+<li>optional modules for XMPP, IRC available</li>
+<li>Activity Streams</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Dissemination</h1>
+<h2>Hard to beat Faceboogle</h2>
+<ul class="incremental">
+<li>since we need to go onto every computer anyway..</li>
+<li>offer something Faceboogle can't provide?</li>
+<li>exchanging files between friends sucks</li>
+<li>USB sticks, e-mail, file hosters, skype, MSN, DropBox (brrr!)</li>
+<li>WTF is 'Secure Share' ?</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Desktop Integration</h1>
+<h2>'Secure Share' Function</h2>
+<ul class="incremental">
+<li>right mouse button click (context menu)</li>
+<li>share a file to a channel of subscribers</li>
+<li>appears in their file system soon</li>
+<li>realtime or delayed notification</li>
+<li>no permission dialogs</li>
+<li>shipped by default in your free OS?</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Secure Share Feature Set</h1>
+<h2>Features of Prototype Edition</h2>
+<ul>
+<li>Messaging, Subscriptions, Status Update</li>
+<li>File Exchange, VPN, Software Distribution</li>
+</ul>
+<h2>Later Features</h2>
+<ul>
+<li>Group Communications, Social Network Features</li>
+<li>Media Support: Photo Albums, Videos, Music</li>
+<li>Extension API for Custom Social Apps</li>
+<li>Realtime Streaming</li>
+</ul>
+</div>
+
+<div class="slide">
+<img class="framed" src="img/phase0.jpeg" />
+</div>
+<div class="slide">
+<img class="framed" src="img/phase1.jpeg" />
+</div>
+<div class="slide">
+<img class="framed" src="img/phase2.jpeg" />
+</div>
+<div class="slide">
+<img class="framed" src="img/phase3.jpeg" />
+</div>
+
+<!--
+
+-->
+
+<div class="slide">
+<h1>Secure Share - the Team</h1>
+<h2>Who's involved?</h2>
+<ul>
+<li>Gabor Toth (secushare.org)</li>
+<li>Carlo von lynX (PSYC, secushare)</li>
+<!-- li>Mathias Baumann (PSYC)</li -->
+<li>Daniel Reusche (secushare, Unlike Us)</li>
+<li>duy (secushare)</li>
+<li>hellekin (lorea, FSF, GNU social)</li>
+</ul>
+<br/>
+with support from Wau Holland Foundation (CCC),
+TU M&uuml;nchen (GNUnet), Institute of Network Cultures
+(Unlike Us) and Mr Stallman (FSF*)
+</div>
+
+<div class="slide">
+<h1>If you like what we do</h1>
+<h2>We need support</h2>
+<img align="right" src="img/oXoXo-380.png" />
+<ul>
+<li>Manpower</li>
+<li>Alliances</li>
+<li>Finances</li>
+<li>Publicity</li>
+</ul>
+<br/>
+Check by: secushare.org<br/>
+Thank you.<br/>
+</div>
+
+<div class="slide">
+<h1>A bad idea whose time has come?</h1>
+<h2>End-to-end Encryption in the Browser!!1!11</h2>
+<br/>
+<ul class="incremental">
+<li>User interface comes from the server.
+<li>Web browser does what the server says.
+<li>Server corrupted? It can steal your data.
+<li>Only static install helps. Still:
+<li>Bad cryptography, bad script signing.
+<li>So you might aswell go for the real thing...
+</ul>
+</div>
+
+<div class="slide">
+<h1>One Too Many (XMPP)</h1>
+<h2>Multicasting with XMPP?</h2>
+<ul class="incremental">
+<li>70% of S2S XMPP messages is presence updates (5 years ago)</li>
+<li>XMPP has limited support for one-to-many communications</li>
+<li>XMPP can be improved, but: trust problem with multicast</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>One Too Many (HTTP)</h1>
+<h2>Multicasting with HTTP?</h2>
+<ul class="incremental">
+<li>fundamentally feasible</li>
+<li>unnatural: HTTP is not bidirectional</li>
+<li>requires trust in a federated architecture</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Cross That Bridge As We Get There?</h1>
+<h2>Let's just get started with something!</h2>
+<ul class="incremental">
+<li>The Mediocre is the Enemy of the Good</li>
+<li>Historic Examples:</li>
+<li>HTTP.. HTTP/NG?, SPDY!?</li>
+<li>SMTP.. What? Faceboogle!?</li>
+<li>XML.. What? JSON!?</li>
+<!-- li>SQL..</li -->
+</ul>
+</div>
+
+</html>
diff --git a/secushare-old-html/2012-11-digiyards.slides.pht 
b/secushare-old-html/2012-11-digiyards.slides.pht
new file mode 100644
index 0000000..97fd221
--- /dev/null
+++ b/secushare-old-html/2012-11-digiyards.slides.pht
@@ -0,0 +1,450 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
+       "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd";>
+
+#if 0
+
+TODO: don't show broken fonts
+
+TODO: political slide about Facebook owning and selling your
+      pictures and stuffs you upload!!?
+
+private usefulness added to 'later features'
+
+#endif
+
+<html xmlns="http://www.w3.org/1999/xhtml";>
+<head>
+<title>Re-Invent the Internet with Secure Share</title>
+<meta name="presdate" content="20120201" />
+<!-- metadata -->
+<meta name="generator" content="S5" />
+<meta name="version" content="S5 1.1" />
+<meta name="author" content="Carlo v. Loesch" />
+<meta name="company" content="symlynX.com" />
+<!-- configuration parameters -->
+<meta name="defaultView" content="slideshow" />
+<meta name="controlVis" content="hidden" />
+<!-- style sheet links -->
+<link rel="stylesheet" href="UI/slides.css" type="text/css" media="projection" 
id="slideProj" />
+<link rel="stylesheet" href="UI/outline.css" type="text/css" media="screen" 
id="outlineStyle" />
+<link rel="stylesheet" href="UI/print.css" type="text/css" media="print" 
id="slidePrint" />
+<link rel="stylesheet" href="UI/opera.css" type="text/css" media="projection" 
id="operaFix" />
+<!-- S5 JS -->
+<script src="UI/slides.js" type="text/javascript"></script>
+</head>
+<body>
+
+<div class="layout">
+<div id="controls"><!-- DO NOT EDIT --></div>
+<div id="currentSlide"><!-- DO NOT EDIT --></div>
+<div id="header"></div>
+<div id="footer">
+&nbsp; secushare: A Framework for ReInventing the Internet
+</div>
+</div>
+
+<div id="between">&nbsp;</div>
+
+<!-- div id="logo"><img src="img/oXoXo-077.png" /></div -->
+
+<div class="presentation">
+
+<div class="slide">
+<img style="padding: 80px" src="img/secushare-0444.png" />
+</div>
+
+<div class="slide">
+<h1>ReInventing the Internet?</h1>
+<h2>Overview of the Talk</h2>
+<ul>
+# <li>Attack Vectors against Servers &amp; VMs</li>
+<li>Internet, you #fail!</li>
+<li>How Much Privacy Is Enough?</li>
+<li>Social Onion Routing</li>
+# <li>More Desired Features</li>
+<li>Architecture, Protocols</li>
+<li>How to Beat Faceboogle</li>
+<li>The 'Secure Share' App</li>
+</ul>
+</div>
+
+<div class="slide">
+<img class="framed" src="img/phase0.jpeg" />
+</div>
+
+<div class="slide">
+<h1>A New Net</h1>
+<h2>Hello Internet, You Fail!</h2>
+<ul class="incremental">
+<li>messaging? exchanging files?</li>
+<li>secrecy of correspondence (Briefgeheimnis)</li>
+<li>copyright &gt; basic civil rights?</li>
+<li>priorities?</li>
+<li>technologies?</li>
+<li>just let computers talk to each other??!?</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>A New Net</h1>
+<h2>NAT my ass!</h2>
+<ul class="incremental">
+<li>internet protocol address scarcity</li>
+<li>dynamic IP address = anonymity?</li>
+<li>service provider = position of power?</li>
+<li>upgrade to IPv6</li>
+<li>a way to find out the current address</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>A New Net</h1>
+<h2>ADSL my ass!</h2>
+<ul class="incremental">
+<li>Asymmetric Digital Subscriber Line</li>
+<li>1:3 (lite), 1:24</li>
+<li>technical reason: "crosstalk"</li>
+<li>marketing reason: consumer vs business</li>
+<li>no home servers.. ToS</li>
+<li>regulatory intervention?</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>A New Net</h1>
+<h2>peer-to-peer (P2P)</h2>
+<ul class="incremental">
+<li>P2P deals with it</li>
+<li>but without help from servers!</li>
+<li>censorship resistant!</li>
+<li>protect privacy</li>
+<li>end-to-end encryption</li>
+<li>free software</li>
+</ul>
+</div>
+
+#if 0
+<div class="slide">
+<img class="framed" src="img/phase1.jpeg" />
+</div>
+<div class="slide">
+<img class="framed" src="img/phase2.jpeg" />
+</div>
+<div class="slide">
+<img class="framed" src="img/phase3.jpeg" />
+</div>
+#endif
+
+<div class="slide">
+<h1>Privacy vs. Paranoia</h1>
+<h2>How Much Privacy Is Enough? 1/2</h2>
+<ul class="uncremental">
+<li>just to the intended recipients (e2e encryption)</li>
+<li>packet size padding (unobservability)</li>
+<li>flexible number of anonymization hops</li>
+<li>optional intentional delay</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Privacy vs. Paranoia</h1>
+<h2>How Much Privacy Is Enough? 2/2</h2>
+<ul class="uncremental">
+<li>forward secrecy</li>
+<li>deniability (a log is no proof of nothing)</li>
+<li>private subscription lists (not on a server)</li>
+<li>robust and resilient against attacks</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>One Too Many</h1>
+<h2>Multicasting for Scalability</h2>
+<ul class="uncremental">
+<li>social = one-to-many | many-to-many</li>
+<li>70% of S2S XMPP messages is presence updates (5 years ago)</li>
+<li>round robin distribution = slow (SMTP, XMPP, OStatus)</li>
+<li>multicast = distribution trees</li>
+<!-- li>HTTP is one-to-one, query/response, not bidirectional</li>
+<li>IP Multicast fails (router table overflow)</li>
+<li>IRC and NNTP do/did multicast, but have other problems</li>
+<li>XMPP has a trust issue (says the XSF)</li -->
+<li>Bittorrent: from files to life streams?</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>It's A Question Of Trust</h1>
+<h2>Social Onion Routing</h2>
+<ul class="uncremental">
+<li>trust relationship between nodes</li>
+<li>multihop provides anonymization</li>
+<li>motivation to provide "servers" as fast routers</li>
+<li>my server is me, so you can trust my server</li>
+<li>"P2P" a lot faster over servers</li>
+<li>servers agnostically maintain messages (and data)</li>
+<!-- li>irony: role switch between servers and routers</li -->
+<li>embed multicast trees into the onion routing</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Portability &amp; Acceptance</h1>
+<h2>Lightweight Daemon</h2>
+<ul class="uncremental">
+<li>personal devices and home routers</li>
+<li>lightweight for embedded and mobile</li>
+<li>lightweight for background daemon use</li>
+<li>compiled language</li>
+<li>more likely to get included in OS distros</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Architecture</h1>
+<h2>Technology</h2>
+<ul class="uncremental">
+<li>"Enhanced" P2P with servers as agnostic routers</li>
+<li>GNUnet as a framework: privacy, VPN, meshnet</li>
+<li>TUM, learned from I2P, Freenet...</li>
+# <li>social graph discovery instead of DHT</li>
+<li>no file sharing, no big traffic</li>
+<li>PSYC on top</li>
+<!-- <li>Multicast distribution for scalability (later)</li> -->
+</ul>
+</div>
+
+<div class="slide">
+<h1>PSYC vs XML and JSON</h1>
+
+<ul class="uncremental">
+<li>extensible: semantically rich</li>
+<li>binary/encrypted data capable</li>
+<li>efficient as a binary format</li>
+<li>table shows parsing speed in milliseconds:</li>
+</ul>
+<p/>
+
+<table class="smaller" border="2" cellspacing="0" cellpadding="6" 
rules="groups" frame="hsides">
+<caption></caption>
+<colgroup><col class="left" /></colgroup>
+<colgroup><col class="right" /><col class="right" /></colgroup><colgroup><col 
class="right" /><col class="right" /></colgroup><colgroup><col class="right" 
/><col class="right" /><col class="right" /><col class="right" /></colgroup>
+<thead>
+<tr><th scope="col" class="left"></th><th scope="col" 
class="right">libpsyc<br/>regular</th><th scope="col" 
class="center">libpsyc<br/>compact</th><th scope="col" 
class="right">json-c</th><th scope="col" class="right">json-glib</th><th 
scope="col" class="right">libxml sax</th><th scope="col" 
class="right">libxml</th><th scope="col" class="right">rapidxml</th></tr>
+</thead>
+<tbody>
+<tr><td class="left">presence</td><td class="right">236</td><td 
class="right">122</td><td class="right">2463</td><td 
class="right">10016</td><td class="right">4997</td><td 
class="right">7557</td><td class="right">1719</td></tr>
+<tr><td class="left">chat msg</td><td class="right">295</td><td 
class="right">258</td><td class="right">2147</td><td class="right">9526</td><td 
class="right">5911</td><td class="right">8999</td><td 
class="right">1850</td></tr>
+<tr><td class="left">activity</td><td class="right">353</td><td 
class="right">279</td><td class="right">4666</td><td 
class="right">16327</td><td class="right">13357</td><td 
class="right">28858</td><td class="right">4356</td></tr>
+</tbody>
+</table>
+
+</div>
+
+## skipped: a truly private communications backend
+
+<div class="slide">
+<h1>Dissemination</h1>
+<h2>Hard to beat Faceboogle</h2>
+<ul class="incremental">
+<li>since we need to go onto every computer anyway..</li>
+<li>offer something Faceboogle can't provide?</li>
+<li>exchanging files between friends sucks</li>
+<li>USB sticks, e-mail, file hosters, skype, MSN, Dropbox (brrr!)</li>
+<li>So why is it called 'Secure Share' ?</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Desktop Integration</h1>
+<h2>'Secure Share' Function</h2>
+<ul class="incremental">
+<li>right mouse button click (context menu)</li>
+<li>share a file to a channel of subscribers</li>
+<li>appears in their file system soon</li>
+<li>realtime or delayed notification</li>
+<li>no permission dialogs</li>
+<li>shipped with your free operating system?</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Secure Share Feature Set</h1>
+<h2>1.0 Features</h2>
+<ul class="incremental">
+<li>messaging</li>
+<li>subscription channels</li>
+<li>status updates</li>
+<li>file exchange</li>
+<li>VPN (virtual private networking)</li>
+<li>software distribution</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Secure Share Feature Set</h1>
+<h2>Later Features</h2>
+<ul>
+<li>Personal Use: Syncing Private Stuff</li>
+<li>Group Communications, Social Network Features</li>
+<li>Media Support: Photo Albums, Videos, Music</li>
+<li>Extension API for Custom Social Apps</li>
+<li>Realtime Streaming</li>
+</ul>
+</div>
+
+<div class="slide">
+<img class="framed" src="img/phase0.jpeg" />
+</div>
+<div class="slide">
+<img class="framed" src="img/phase1.jpeg" />
+</div>
+<div class="slide">
+<img class="framed" src="img/phase2.jpeg" />
+</div>
+<div class="slide">
+<img class="framed" src="img/phase3.jpeg" />
+</div>
+
+<div class="slide">
+<h1>Secure Share - the Team</h1>
+<h2>Who's involved?</h2>
+<ul>
+<li>Gabor Toth (secushare.org)</li>
+<li>Carlo von lynX (PSYC, secushare)</li>
+# <!-- li>Mathias Baumann (PSYC)</li -->
+<li>Daniel Reusche (secushare, Unlike Us)</li>
+<li>hellekin (lorea, FSF, GNU social)</li>
+</ul>
+<br/>
+with support from Wau Holland Foundation (CCC),
+TU M&uuml;nchen (GNUnet), Institute of Network Cultures
+(Unlike Us) and Mr Stallman (Free Software Foundations)
+</div>
+
+<div class="slide">
+<h1>If you like what we do</h1>
+<h2>We need support</h2>
+<img align="right" src="img/oXoXo-380.png" />
+<ul>
+<li>Manpower</li>
+<li>Alliances</li>
+<li>Finances</li>
+<li>Publicity</li>
+</ul>
+<br/>
+Check by: secushare.org<br/>
+Thank you.<br/>
+</div>
+
+<div class="slide">
+<img class="gfx" src="img/gfx-unicast.png" width="600" height="500"/>
+</div>
+<div class="slide">
+<img class="gfx" src="img/gfx-cloud.png" width="600" height="500"/>
+</div>
+<div class="slide">
+<img class="gfx" src="img/gfx-multicast.png" width="600" height="500"/>
+</div>
+
+<div class="slide">
+<h1>Don't Trust Servers</h1>
+<h2>Hardware Servers are vulnerable</h2>
+<ul class="uncremental">
+<li>client/server architecture: data resides on servers</li>
+<li>federation: data visible on even more servers</li>
+<li>memory access via bus sniffing</li>
+<li>no shutdown necessary</li>
+<li>automated memory image analysis proven</li>
+<li>eat-inside or take-away</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Don't Trust Virtual Machines</h1>
+<!--h2>Commodity Servers are VMs</h2-->
+<ul class="uncremental">
+<li>my own server for 8 euros a month</li>
+<li>vulnerable cryptography</li>
+<li>memory can be monitored</li>
+<li>controlling system accessible by observers</li>
+<li>automated monitoring of federated social networks</li>
+<li>anti-terror legislation possible</li>
+<li>even if <em>your</em> box is at home</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>A bad idea whose time has come?</h1>
+<h2>End-to-end Encryption in the Browser!!1!11</h2>
+<br/>
+<ul class="uncremental">
+<li>User interface comes from the server.
+<li>Web browser does what the server says.
+<li>Server corrupted? It can steal your data.
+<li>Only static install helps. Still:
+<li>Bad cryptography, bad script signing.
+<li>So you might aswell go for the real thing...
+</ul>
+</div>
+
+<div class="slide">
+<h1>One Too Many (XMPP)</h1>
+<h2>Multicasting with XMPP?</h2>
+<ul class="uncremental">
+<li>70% of S2S XMPP messages is presence updates (5 years ago)</li>
+<li>XMPP has limited support for one-to-many communications</li>
+<li>XMPP can be improved, but: trust problem with multicast</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>One Too Many (HTTP)</h1>
+<h2>Multicasting with HTTP?</h2>
+<ul class="uncremental">
+<li>fundamentally feasible</li>
+<li>unnatural: HTTP is not bidirectional</li>
+<li>requires trust in a federated architecture</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Cross That Bridge As We Get There?</h1>
+<h2>Let's just get started with something!</h2>
+<ul class="uncremental">
+<li>The Mediocre is the Enemy of the Good</li>
+<li>Historic Examples:</li>
+<li>HTTP.. HTTP/NG?, SPDY!?</li>
+<li>SMTP.. What? Faceboogle!?</li>
+<li>XML.. What? JSON!?</li>
+<!-- li>SQL..</li -->
+</ul>
+</div>
+
+<div class="slide">
+<h1>Flexibility</h1>
+<h2>Framework Architecture</h2>
+<ul class="uncremental">
+<li>a truly private communications backend</li>
+<li>social applications to be built on top</li>
+<li>emulations of the 'open standards' possible</li>
+<li>OStatus, WebID, RDF, even the Twitter API</li>
+<li>optional modules for XMPP, IRC available</li>
+<li>Activity Streams</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>About carlo von lynX</h1>
+<h2>Why am I talking here?</h2>
+<ul class="uncremental">
+<li>20 years of messaging &amp; chat protocol design</li>
+<li>/me etc.</li>
+<li>PSYC: federated &amp; multicasting</li>
+<li>then Jabber came</li>
+<li>PSYC good for business, open source delayed</li>
+<li>back then, servers were reliable</li>
+</ul>
+</div>
+
+</html>
diff --git a/secushare-old-html/2012-Easterhegg.slides.html 
b/secushare-old-html/2012-Easterhegg.slides.html
new file mode 100644
index 0000000..b901e29
--- /dev/null
+++ b/secushare-old-html/2012-Easterhegg.slides.html
@@ -0,0 +1,169 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
+       "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd";>
+
+<html xmlns="http://www.w3.org/1999/xhtml";>
+<head>
+<title>Re-Invent the Internet with Secure Share</title>
+<meta name="presdate" content="20120201" />
+<!-- metadata -->
+<meta name="generator" content="S5" />
+<meta name="version" content="S5 1.1" />
+<meta name="author" content="Carlo v. Loesch" />
+<meta name="company" content="symlynX.com" />
+<!-- configuration parameters -->
+<meta name="defaultView" content="slideshow" />
+<meta name="controlVis" content="hidden" />
+<!-- style sheet links -->
+<link rel="stylesheet" href="UI/slides.css" type="text/css" media="projection" 
id="slideProj" />
+<link rel="stylesheet" href="UI/outline.css" type="text/css" media="screen" 
id="outlineStyle" />
+<link rel="stylesheet" href="UI/print.css" type="text/css" media="print" 
id="slidePrint" />
+<link rel="stylesheet" href="UI/opera.css" type="text/css" media="projection" 
id="operaFix" />
+<!-- S5 JS -->
+<script src="UI/slides.js" type="text/javascript"></script>
+</head>
+<body>
+
+<div class="layout">
+<div id="controls"><!-- DO NOT EDIT --></div>
+<div id="currentSlide"><!-- DO NOT EDIT --></div>
+<div id="header"></div>
+<div id="footer">
+&nbsp; secushare: A Framework for ReInventing the Internet
+</div>
+</div>
+
+<div id="between">&nbsp;</div>
+
+<div class="presentation">
+
+<div class="slide">
+<img style="padding: 80px" src="img/secushare-0444.png" />
+</div>
+
+<div class="slide">
+<img class="gfx" src="img/gfx-unicast.png" width="600" height="500"/>
+</div>
+<div class="slide">
+<img class="gfx" src="img/gfx-cloud.png" width="600" height="500"/>
+</div>
+<div class="slide">
+<img class="gfx" src="img/gfx-multicast.png" width="600" height="500"/>
+</div>
+
+<div class="slide">
+<h1>One Too Many</h1>
+<h2>Multicasting for Scalability</h2>
+<ul class="uncremental">
+<li>social = one-to-many | many-to-many</li>
+<li>70% of S2S XMPP messages is presence updates (5 years ago)</li>
+<li>round robin distribution = slow (SMTP, XMPP, OStatus)</li>
+<li>multicast = distribution trees</li>
+<!-- li>HTTP is one-to-one, query/response, not bidirectional</li>
+<li>XMPP has a trust issue (says the XSF)</li -->
+<li>Bittorrent: from files to life streams?</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Don't Trust Servers</h1>
+<h2>Servers are vulnerable</h2>
+<ul class="uncremental">
+<li>client/server architecture: data resides on servers</li>
+<li>federation: data visible on even more servers</li>
+<li>memory access via bus sniffing</li>
+<li>no shutdown necessary</li>
+<li>automated memory image analysis proven</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Don't Trust Virtual Machines</h1>
+<!--h2>Commodity Servers are VMs</h2-->
+<ul class="uncremental">
+<li>my own server for 8 euros a month</li>
+<li>vulnerable cryptography</li>
+<li>memory can be monitored</li>
+<li>controlling system accessible by observers</li>
+<li>automated monitoring of federated social networks</li>
+<li>anti-terror legislation possible</li>
+<li>even if <em>your</em> box is at home</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Technologies</h1>
+<ul class="uncremental">
+<li>GNUnet as a framework: routing and crypto</li>
+<li>TUM, learned from I2P, Freenet...</li>
+<li>"Enhanced" P2P with servers as agnostic routers</li>
+<li>PSYC on top for trust relations and</li> 
+<li>friend discovery over social graph instead of DHT</li>
+<li>no file sharing, no big traffic</li>
+</ul>
+
+<div class="slide">
+<h1>Privacy vs. Paranoia</h1>
+<ul class="uncremental">
+<li>just to the intended recipients (e2e encryption)</li>
+<li>packet size padding (unobservability)</li>
+<li>flexible number of anonymization hops</li>
+<li>optional intentional delay</li>
+<li>forward secrecy</li>
+<li>deniability (a log is no proof of nothing)</li>
+<li>private subscription lists (not on a server)</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>It's A Question Of Trust</h1>
+<h2>Social Onion Routing</h2>
+<ul class="uncremental">
+<li>trust relationship between nodes</li>
+<li>multihop provides anonymization</li>
+<li>motivation to provide "servers" as fast routers</li>
+<li>my server is me, so you can trust my server</li>
+<li>"P2P" a lot faster over servers</li>
+<li>servers agnostically maintain messages (and data)</li>
+<li>embed multicast trees into the onion routing</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Dissemination</h1>
+<h2>Hard to beat Faceboogle</h2>
+<ul class="uncremental">
+<li>since we need to go onto every computer anyway..</li>
+<li>offer something Faceboogle can't provide?</li>
+<li>exchanging files between friends sucks</li>
+<li>USB sticks, e-mail, file hosters, skype, MSN, DropBox (brrr!)</li>
+<li>WTF is 'Secure Share' ?</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>A bad idea whose time has come?</h1>
+<h2>End-to-end Encryption in the Browser!!1!11</h2>
+<ul class="uncremental">
+<li>User interface comes from the server.
+<li>Web browser does what the server says.
+<li>Server corrupted? It can steal your data.
+<li>Only static install helps. Still:
+<li>Bad cryptography, bad script signing.
+<li>So you might aswell go for the real thing...
+</ul>
+</div>
+
+<div class="slide">
+<h1>Secure Share</h1>
+<h2>Who's involved?</h2>
+<ul>
+<li>Carlo v. Lynx</li>
+<li>Gabor Toth</li>
+<li>Mathias Baumann</li>
+<li>Daniel Reusche</li>
+<li>secushare.org</li>
+</ul>
+</div>
+
+
+</html>
diff --git a/secushare-old-html/2012-UnlikeUs.slides.html 
b/secushare-old-html/2012-UnlikeUs.slides.html
new file mode 100644
index 0000000..de7b6d5
--- /dev/null
+++ b/secushare-old-html/2012-UnlikeUs.slides.html
@@ -0,0 +1,147 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
+       "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd";>
+
+<!-- don't delete this file.. it is not generated by anything else! -->
+
+<html xmlns="http://www.w3.org/1999/xhtml";>
+<head>
+<title>Re-Invent the Internet with Secure Share</title>
+<meta name="presdate" content="20120201" />
+<!-- metadata -->
+<meta name="generator" content="S5" />
+<meta name="version" content="S5 1.1" />
+<meta name="author" content="Carlo v. Loesch" />
+<meta name="company" content="symlynX.com" />
+<!-- configuration parameters -->
+<meta name="defaultView" content="slideshow" />
+<meta name="controlVis" content="hidden" />
+<!-- style sheet links -->
+<link rel="stylesheet" href="UI/slides.css" type="text/css" media="projection" 
id="slideProj" />
+<link rel="stylesheet" href="UI/outline.css" type="text/css" media="screen" 
id="outlineStyle" />
+<link rel="stylesheet" href="UI/print.css" type="text/css" media="print" 
id="slidePrint" />
+<link rel="stylesheet" href="UI/opera.css" type="text/css" media="projection" 
id="operaFix" />
+<!-- S5 JS -->
+<script src="UI/slides.js" type="text/javascript"></script>
+</head>
+<body>
+
+<div class="layout">
+<div id="controls"><!-- DO NOT EDIT --></div>
+<div id="currentSlide"><!-- DO NOT EDIT --></div>
+<div id="header"></div>
+<div id="footer">
+&nbsp; secushare: A Framework for ReInventing the Internet
+</div>
+</div>
+
+<div id="between">&nbsp;</div>
+
+<div class="presentation">
+
+<div class="slide">
+<img style="padding: 80px" src="img/secushare-0444.png" />
+</div>
+
+<div class="slide">
+<img class="gfx" src="img/gfx-unicast.png" width="600" height="500"/>
+</div>
+<div class="slide">
+<img class="gfx" src="img/gfx-cloud.png" width="600" height="500"/>
+</div>
+<div class="slide">
+<img class="gfx" src="img/gfx-multicast.png" width="600" height="500"/>
+</div>
+
+<div class="slide">
+<h1>One Too Many</h1>
+<h2>Multicasting for Scalability</h2>
+<ul class="uncremental">
+<li>social = one-to-many | many-to-many</li>
+<li>70% of S2S XMPP messages is presence updates (5 years ago)</li>
+<li>round robin distribution = slow (SMTP, XMPP, OStatus)</li>
+<li>multicast = distribution trees</li>
+<!-- li>HTTP is one-to-one, query/response, not bidirectional</li>
+<li>XMPP has a trust issue (says the XSF)</li -->
+<li>Bittorrent: from files to life streams?</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Don't Trust Servers</h1>
+<h2>Servers are vulnerable</h2>
+<ul class="uncremental">
+<li>client/server architecture: data resides on servers</li>
+<li>federation: data visible on even more servers</li>
+<li>memory access via bus sniffing</li>
+<li>no shutdown necessary</li>
+<li>automated memory image analysis proven</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Don't Trust Virtual Machines</h1>
+<!--h2>Commodity Servers are VMs</h2-->
+<ul class="uncremental">
+<li>my own server for 8 euros a month</li>
+<li>vulnerable cryptography</li>
+<li>memory can be monitored</li>
+<li>controlling system accessible by observers</li>
+<li>automated monitoring of federated social networks</li>
+<li>anti-terror legislation possible</li>
+<li>even if <em>your</em> box is at home</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Privacy vs. Paranoia</h1>
+<ul class="uncremental">
+<li>just to the intended recipients (e2e encryption)</li>
+<li>packet size padding (unobservability)</li>
+<li>flexible number of anonymization hops</li>
+<li>optional intentional delay</li>
+<li>forward secrecy</li>
+<li>deniability (a log is no proof of nothing)</li>
+<li>private subscription lists (not on a server)</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>It's A Question Of Trust</h1>
+<h2>Social Onion Routing</h2>
+<ul class="uncremental">
+<li>trust relationship between nodes</li>
+<li>multihop provides anonymization</li>
+<li>motivation to provide "servers" as fast routers</li>
+<li>my server is me, so you can trust my server</li>
+<li>"P2P" a lot faster over servers</li>
+<li>servers agnostically maintain messages (and data)</li>
+<li>embed multicast trees into the onion routing</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>A bad idea whose time has come?</h1>
+<h2>End-to-end Encryption in the Browser!!1!11</h2>
+<ul class="uncremental">
+<li>User interface comes from the server.
+<li>Web browser does what the server says.
+<li>Server corrupted? It can steal your data.
+<li>Only static install helps. Still:
+<li>Bad cryptography, bad script signing.
+<li>So you might aswell go for the real thing...
+</ul>
+</div>
+
+<div class="slide">
+<h1>Cross That Bridge As We Get There?</h1>
+<h2>Let's just get started with the low hanging fruit!</h2>
+<ul class="uncremental">
+<li>The Mediocre is the Enemy of the Good</li>
+<li>Historic Examples:</li>
+<li>HTTP.. AJAX, XMLSocket, HTTP/NG?, SPDY!?</li>
+<li>SMTP.. What? Faceboogle!?</li>
+<li>XML.. What? JSON!?</li>
+</ul>
+</div>
+
+</html>
diff --git a/secushare-old-html/UI/.thumbnails/greensquares.jpg.png 
b/secushare-old-html/UI/.thumbnails/greensquares.jpg.png
new file mode 100644
index 0000000..815fc04
Binary files /dev/null and 
b/secushare-old-html/UI/.thumbnails/greensquares.jpg.png differ
diff --git a/secushare-old-html/UI/.thumbnails/squares.jpg.png 
b/secushare-old-html/UI/.thumbnails/squares.jpg.png
new file mode 100644
index 0000000..78b4383
Binary files /dev/null and b/secushare-old-html/UI/.thumbnails/squares.jpg.png 
differ
diff --git a/secushare-old-html/UI/blank.gif b/secushare-old-html/UI/blank.gif
new file mode 100644
index 0000000..75b945d
Binary files /dev/null and b/secushare-old-html/UI/blank.gif differ
diff --git a/secushare-old-html/UI/dark/pretty.css 
b/secushare-old-html/UI/dark/pretty.css
new file mode 100644
index 0000000..34b4192
--- /dev/null
+++ b/secushare-old-html/UI/dark/pretty.css
@@ -0,0 +1,117 @@
+/* psyced! */
+
+body {
+ background: #000 url(stars_bg.jpg) 0% 0 no-repeat; color: #bbb;
+ font-size: 2em; font-family: Ubuntu, DejaVu Sans, Verdana, Helvetica;
+ /* font-family: Sawasdee; font-weight: bold; */
+}
+:link, :visited {text-decoration: none; color: #f80;}
+#controls :active {color: #88A !important;}
+#controls :focus {outline: 1px dotted #227;}
+h1, h2, h3, h4 { font-size: 100%; margin: 0; padding: 0; font-weight: inherit;}
+ul, pre {margin: 0; line-height: 1em;}
+html, body {margin: 0; padding: 0;}
+
+blockquote, q {font-style: italic;}
+blockquote {padding: 0 2em 0.5em; margin: 0 1.5em 0.5em; text-align: center; 
font-size: 1em;}
+blockquote p {margin: 0;}
+blockquote i {font-style: normal;}
+blockquote b {display: block; margin-top: 0.5em; font-weight: normal; 
font-size: smaller; font-style: normal;}
+blockquote b i {font-style: italic;}
+
+kbd {font-weight: bold; font-size: 1em;}
+sup {font-size: smaller; line-height: 1px;}
+
+.slide code {padding: 2px 0.25em; font-weight: bold; color: #533;}
+.slide code.bad, code del {color: red;}
+.slide code.old {color: silver;}
+.slide pre {padding: .5em; margin: 1.3em;
+       color: #3f3; background: #000; font-size: 70%;}
+.slide pre code {display: block;}
+.slide ul {margin-left: 5%; margin-right: 7%; list-style: disc;}
+.slide li {margin-top: 0.75em; margin-right: 0;}
+.slide ul ul {line-height: 1;}
+.slide ul ul li {margin: .2em; font-size: 85%; list-style: square;}
+.slide img.leader {display: block; margin: 0 auto;}
+#micro { font-size: 44%; }
+
+div#header, div#footer {
+    background: #000 /* url(bobot.png) repeat-x */; color: #bbb;
+}
+div#header {
+    background: #000 /* url(botop.png) 100% repeat-x */;
+    line-height: 1px;
+}
+div#footer {font-size: 0.5em; font-weight: bold;
+       padding: 0 10px; text-transform: uppercase}
+#footer h1, #footer h2 {display: block; padding: 0 1em;}
+#footer h2 {font-style: italic;}
+
+div.long {font-size: 0.75em;}
+h1 abbr {font-variant: small-caps;}
+
+.slide h1 {position: absolute; top: 0; left: 0; z-index: 1;
+  margin: 0; padding: 10px 0 0 10px; white-space: nowrap;
+  font-family: Impact, Ubuntu, DejaVu Sans, Verdana, Helvetica, sans-serif;
+  font-weight: normal; text-transform: uppercase; color: #eee; }
+.slide h2 { color: #3f3; }
+.slide h3 { color: #fff; font-size: 130%;}
+.slide h4 { color: #3f3; font-size: 80%; }
+small { color: #f34; }
+
+#slide0 {padding-top: 3.5em; font-size: 90%;}
+#slide0 h1 {position: static; margin: 1em 0 0; padding: 0;
+   font: bold 1.5em serif; white-space: normal;
+   text-transform: none; color: #999; background: transparent;}
+#slide0 h2 {font: bold italic 1em; margin: 0.25em;}
+#slide0 h3 {margin-top: 1.5em; font-size: 1.2em;}
+#slide0 h4 {margin-top: 0; font-size: 1em;}
+
+div#controls {position: absolute; left: 50%; bottom: 0;
+  width: 50%;
+  text-align: right; font: bold 0.9em;}
+html>body div#controls {position: fixed; padding: 0 0 1em 0;
+  top: auto;}
+div#controls form {position: absolute; bottom: 0; right: 0; width: 100%;
+  margin: 0; padding: 0;}
+#controls #navLinks a {padding: 0; margin: 0 0.5em; 
+  border: none; color: #3f3; cursor: pointer;}
+#controls #navList {height: 1em;}
+#controls #navList #jumplist {position: absolute; bottom: 0; right: 0; 
background: #000; color: #3f3;}
+
+#currentSlide { text-align: center; font-size: 0.5em;
+       background: #333; color: #fff;}
+
+ul.urls {list-style: none; display: inline; margin: 0;}
+.urls li {display: inline; margin: 0;}
+.note {display: none;}
+.external {border-bottom: 1px dotted gray;}
+html>body .external {border-bottom: none;}
+.external:after {content: " \274F"; font-size: smaller; color: #77B;}
+
+.incremental, .incremental *, .incremental *:after {color: #222; visibility: 
visible;}
+img.incremental {visibility: hidden;}
+.slide .current {color: #fff;}
+
+
+/* diagnostics
+li:after {content: " [" attr(class) "]"; color: #F88;}
+
+.slide { opacity: 0.8; }
+ */
+
+.smaller {font-size: 70%; line-height: .9em; color: #f34; }
+
+#logo { position: absolute; right: 10px; bottom: 40px; z-index: 7; }
+
+
+#between { background-color: black; position: absolute; opacity: 0.4;
+       width: 100%; height: 100%; z-index: 2; }
+
+.framed { opacity: 0.6; border: 3px solid black; }
+.indented { margin-left: 100px; border: 3px solid black; }
+.gfx { opacity: 0.8; border: 3px solid black; padding: 20px;
+       background-color: #9cf; margin-left: 40px; }
+
+.left { text-align: left; }
+.right { text-align: right; }
diff --git a/secushare-old-html/UI/darken.png b/secushare-old-html/UI/darken.png
new file mode 100644
index 0000000..7a5fb18
Binary files /dev/null and b/secushare-old-html/UI/darken.png differ
diff --git a/secushare-old-html/UI/framing.css 
b/secushare-old-html/UI/framing.css
new file mode 100644
index 0000000..917976f
--- /dev/null
+++ b/secushare-old-html/UI/framing.css
@@ -0,0 +1,23 @@
+/* The following styles size, place, and layer the slide components.
+   Edit these if you want to change the overall slide layout.
+   The commented lines can be uncommented (and modified, if necessary) 
+    to help you with the rearrangement process. */
+
+/* target = 1024x768 */
+
+div#header, div#footer, .slide {width: 100%; top: 0; left: 0;}
+div#header {top: 0; height: 50px; z-index: 1;}
+div#footer {top: auto; bottom: 0; height: 50; z-index: 5;}
+.slide {top: 0; width: 80%; padding: 3.5em 4% 4%; z-index: 2;  list-style: 
none;}
+div#controls {left: 50%; bottom: 0; width: 50%; z-index: 100;}
+div#controls form {position: absolute; bottom: 0; right: 0; width: 100%;
+  margin: 0;}
+#currentSlide {position: absolute; width: 12%; right: 0; bottom: 0; z-index: 
10;}
+html>body #currentSlide {position: fixed;}
+
+/*
+div#header {background: #FCC;}
+div#footer {background: #CCF;}
+div#controls {background: #BBD;}
+div#currentSlide {background: #FFC;}
+*/
diff --git a/secushare-old-html/UI/greensquares.jpg 
b/secushare-old-html/UI/greensquares.jpg
new file mode 100644
index 0000000..b6ef139
Binary files /dev/null and b/secushare-old-html/UI/greensquares.jpg differ
diff --git a/secushare-old-html/UI/iepngfix.htc 
b/secushare-old-html/UI/iepngfix.htc
new file mode 100644
index 0000000..0d17262
--- /dev/null
+++ b/secushare-old-html/UI/iepngfix.htc
@@ -0,0 +1,42 @@
+<public:component>
+<public:attach event="onpropertychange" onevent="doFix()" />
+
+<script>
+
+// IE5.5+ PNG Alpha Fix v1.0 by Angus Turnbull http://www.twinhelix.com
+// Free usage permitted as long as this notice remains intact.
+
+// This must be a path to a blank image. That's all the configuration you need 
here.
+var blankImg = 'blank.gif';
+
+var f = 'DXImageTransform.Microsoft.AlphaImageLoader';
+
+function filt(s, m) {
+ if (filters[f]) {
+  filters[f].enabled = s ? true : false;
+  if (s) with (filters[f]) { src = s; sizingMethod = m }
+ } else if (s) style.filter = 'progid:'+f+'(src="'+s+'",sizingMethod="'+m+'")';
+}
+
+function doFix() {
+ if ((parseFloat(navigator.userAgent.match(/MSIE (\S+)/)[1]) < 5.5) ||
+  (event && !/(background|src)/.test(event.propertyName))) return;
+
+ if (tagName == 'IMG') {
+  if ((/\.png$/i).test(src)) {
+   filt(src, 'image');  // was 'scale'
+   src = blankImg;
+  } else if (src.indexOf(blankImg) < 0) filt();
+ } else if (style.backgroundImage) {
+  if (style.backgroundImage.match(/^url[("']+(.*\.png)[)"']+$/i)) {
+   var s = RegExp.$1;
+   style.backgroundImage = '';
+   filt(s, 'crop');
+  } else filt();
+ }
+}
+
+doFix();
+
+</script>
+</public:component>
diff --git a/secushare-old-html/UI/lite/pretty.css 
b/secushare-old-html/UI/lite/pretty.css
new file mode 100644
index 0000000..580bdcf
--- /dev/null
+++ b/secushare-old-html/UI/lite/pretty.css
@@ -0,0 +1,114 @@
+/* psyced! */
+
+body { background: #789; /* url(stars_bg.jpg) 0% 0 no-repeat; */ color: #000;
+ font-size: 2em; font-family: Ubuntu, DejaVu Sans, Verdana, Helvetica; 
font-weight: bold; }
+:link, :visited {text-decoration: none; color: #f80;}
+#controls :active {color: #88A !important;}
+#controls :focus {outline: 1px dotted #227;}
+h1, h2, h3, h4 { font-size: 100%; margin: 0; padding: 0; font-weight: inherit;}
+ul, pre {margin: 0; line-height: 1em;}
+html, body {margin: 0; padding: 0;}
+
+blockquote, q {font-style: italic;}
+blockquote {padding: 0 2em 0.5em; margin: 0 1.5em 0.5em; text-align: center; 
font-size: 1em;}
+blockquote p {margin: 0;}
+blockquote i {font-style: normal;}
+blockquote b {display: block; margin-top: 0.5em; font-weight: normal; 
font-size: smaller; font-style: normal;}
+blockquote b i {font-style: italic;}
+
+kbd {font-weight: bold; font-size: 1em;}
+sup {font-size: smaller; line-height: 1px;}
+
+.slide code {padding: 2px 0.25em; font-weight: bold; color: #533;}
+.slide code.bad, code del {color: red;}
+.slide code.old {color: silver;}
+.slide pre {padding: .5em; margin: 1.3em;
+       color: #3f3; background: #000; font-size: 70%;}
+.slide pre code {display: block;}
+.slide ul {margin-left: 5%; margin-right: 7%; list-style: disc;}
+.slide li {margin-top: 0.75em; margin-right: 0;}
+.slide ul ul {line-height: 1;}
+.slide ul ul li {margin: .2em; font-size: 85%; list-style: square;}
+.slide img.leader {display: block; margin: 0 auto;}
+#micro { font-size: 44%; }
+
+div#header, div#footer {
+    background: #000 /* url(bobot.png) repeat-x */; color: #bbb;
+}
+div#header {
+    background: #000 /* url(botop.png) 100% repeat-x */;
+    line-height: 1px;
+}
+div#footer {font-size: 0.5em; font-weight: bold;
+       padding: 0 10px; text-transform: uppercase}
+#footer h1, #footer h2 {display: block; padding: 0 1em;}
+#footer h2 {font-style: italic;}
+
+div.long {font-size: 0.75em;}
+h1 abbr {font-variant: small-caps;}
+
+.slide h1 {position: absolute; top: 0; left: 0; z-index: 1;
+  margin: 0; padding: 10px 0 0 10px; white-space: nowrap;
+  font-family: Impact, Ubuntu, DejaVu Sans, Verdana, Helvetica, sans-serif;
+  font-weight: normal; text-transform: uppercase; color: #eee; }
+.slide h2 { color: #3f3; }
+.slide h3 { color: #fff; font-size: 130%;}
+.slide h4 { color: #3f3; font-size: 80%; }
+small { color: #f34; }
+
+#slide0 {padding-top: 3.5em; font-size: 90%;}
+#slide0 h1 {position: static; margin: 1em 0 0; padding: 0;
+   font: bold 1.5em serif; white-space: normal;
+   text-transform: none; color: #999; background: transparent;}
+#slide0 h2 {font: bold italic 1em; margin: 0.25em;}
+#slide0 h3 {margin-top: 1.5em; font-size: 1.2em;}
+#slide0 h4 {margin-top: 0; font-size: 1em;}
+
+div#controls {position: absolute; left: 50%; bottom: 0;
+  width: 50%;
+  text-align: right; font: bold 0.9em;}
+html>body div#controls {position: fixed; padding: 0 0 1em 0;
+  top: auto;}
+div#controls form {position: absolute; bottom: 0; right: 0; width: 100%;
+  margin: 0; padding: 0;}
+#controls #navLinks a {padding: 0; margin: 0 0.5em; 
+  border: none; color: #3f3; cursor: pointer;}
+#controls #navList {height: 1em;}
+#controls #navList #jumplist {position: absolute; bottom: 0; right: 0; 
background: #000; color: #3f3;}
+
+#currentSlide { text-align: center; font-size: 0.5em;
+       background: #333; color: #fff;}
+
+ul.urls {list-style: none; display: inline; margin: 0;}
+.urls li {display: inline; margin: 0;}
+.note {display: none;}
+.external {border-bottom: 1px dotted gray;}
+html>body .external {border-bottom: none;}
+.external:after {content: " \274F"; font-size: smaller; color: #77B;}
+
+.incremental, .incremental *, .incremental *:after {color: #222; visibility: 
visible;}
+img.incremental {visibility: hidden;}
+.slide .current {color: #fff;}
+
+
+/* diagnostics
+li:after {content: " [" attr(class) "]"; color: #F88;}
+
+.slide { opacity: 0.8; }
+ */
+
+.smaller {font-size: 70%; line-height: .9em; color: #ff0; }
+
+#logo { position: absolute; right: 10px; bottom: 40px; z-index: 7; }
+
+
+#between { background-color: black; position: absolute; opacity: 0.4;
+       width: 100%; height: 100%; z-index: 2; }
+
+.framed { border: 3px solid black; }
+.indented { margin-left: 100px; border: 3px solid black; }
+.gfx { opacity: 0.8; border: 3px solid black; padding: 20px;
+       background-color: #9cf; margin-left: 40px; }
+
+.left { text-align: left; }
+.right { text-align: right; }
diff --git a/secushare-old-html/UI/opera.css b/secushare-old-html/UI/opera.css
new file mode 100644
index 0000000..9e9d2a3
--- /dev/null
+++ b/secushare-old-html/UI/opera.css
@@ -0,0 +1,7 @@
+/* DO NOT CHANGE THESE unless you really want to break Opera Show */
+.slide {
+       visibility: visible !important;
+       position: static !important;
+       page-break-before: always;
+}
+#slide0 {page-break-before: avoid;}
diff --git a/secushare-old-html/UI/outline.css 
b/secushare-old-html/UI/outline.css
new file mode 100644
index 0000000..62db519
--- /dev/null
+++ b/secushare-old-html/UI/outline.css
@@ -0,0 +1,15 @@
+/* don't change this unless you want the layout stuff to show up in the 
outline view! */
+
+.layout div, #footer *, #controlForm * {display: none;}
+#footer, #controls, #controlForm, #navLinks, #toggle {
+  display: block; visibility: visible; margin: 0; padding: 0;}
+#toggle {float: right; padding: 0.5em;}
+html>body #toggle {position: fixed; top: 0; right: 0;}
+
+/* making the outline look pretty-ish */
+
+#slide0 h1, #slide0 h2, #slide0 h3, #slide0 h4 {border: none; margin: 0;}
+#slide0 h1 {padding-top: 1.5em;}
+.slide h1 {margin: 1.5em 0 0; padding-top: 0.25em;
+  border-top: 1px solid #888; border-bottom: 1px solid #AAA;}
+#toggle {border: 1px solid; border-width: 0 0 1px 1px; background: #FFF;}
diff --git a/secushare-old-html/UI/pretty.css b/secushare-old-html/UI/pretty.css
new file mode 100644
index 0000000..34b4192
--- /dev/null
+++ b/secushare-old-html/UI/pretty.css
@@ -0,0 +1,117 @@
+/* psyced! */
+
+body {
+ background: #000 url(stars_bg.jpg) 0% 0 no-repeat; color: #bbb;
+ font-size: 2em; font-family: Ubuntu, DejaVu Sans, Verdana, Helvetica;
+ /* font-family: Sawasdee; font-weight: bold; */
+}
+:link, :visited {text-decoration: none; color: #f80;}
+#controls :active {color: #88A !important;}
+#controls :focus {outline: 1px dotted #227;}
+h1, h2, h3, h4 { font-size: 100%; margin: 0; padding: 0; font-weight: inherit;}
+ul, pre {margin: 0; line-height: 1em;}
+html, body {margin: 0; padding: 0;}
+
+blockquote, q {font-style: italic;}
+blockquote {padding: 0 2em 0.5em; margin: 0 1.5em 0.5em; text-align: center; 
font-size: 1em;}
+blockquote p {margin: 0;}
+blockquote i {font-style: normal;}
+blockquote b {display: block; margin-top: 0.5em; font-weight: normal; 
font-size: smaller; font-style: normal;}
+blockquote b i {font-style: italic;}
+
+kbd {font-weight: bold; font-size: 1em;}
+sup {font-size: smaller; line-height: 1px;}
+
+.slide code {padding: 2px 0.25em; font-weight: bold; color: #533;}
+.slide code.bad, code del {color: red;}
+.slide code.old {color: silver;}
+.slide pre {padding: .5em; margin: 1.3em;
+       color: #3f3; background: #000; font-size: 70%;}
+.slide pre code {display: block;}
+.slide ul {margin-left: 5%; margin-right: 7%; list-style: disc;}
+.slide li {margin-top: 0.75em; margin-right: 0;}
+.slide ul ul {line-height: 1;}
+.slide ul ul li {margin: .2em; font-size: 85%; list-style: square;}
+.slide img.leader {display: block; margin: 0 auto;}
+#micro { font-size: 44%; }
+
+div#header, div#footer {
+    background: #000 /* url(bobot.png) repeat-x */; color: #bbb;
+}
+div#header {
+    background: #000 /* url(botop.png) 100% repeat-x */;
+    line-height: 1px;
+}
+div#footer {font-size: 0.5em; font-weight: bold;
+       padding: 0 10px; text-transform: uppercase}
+#footer h1, #footer h2 {display: block; padding: 0 1em;}
+#footer h2 {font-style: italic;}
+
+div.long {font-size: 0.75em;}
+h1 abbr {font-variant: small-caps;}
+
+.slide h1 {position: absolute; top: 0; left: 0; z-index: 1;
+  margin: 0; padding: 10px 0 0 10px; white-space: nowrap;
+  font-family: Impact, Ubuntu, DejaVu Sans, Verdana, Helvetica, sans-serif;
+  font-weight: normal; text-transform: uppercase; color: #eee; }
+.slide h2 { color: #3f3; }
+.slide h3 { color: #fff; font-size: 130%;}
+.slide h4 { color: #3f3; font-size: 80%; }
+small { color: #f34; }
+
+#slide0 {padding-top: 3.5em; font-size: 90%;}
+#slide0 h1 {position: static; margin: 1em 0 0; padding: 0;
+   font: bold 1.5em serif; white-space: normal;
+   text-transform: none; color: #999; background: transparent;}
+#slide0 h2 {font: bold italic 1em; margin: 0.25em;}
+#slide0 h3 {margin-top: 1.5em; font-size: 1.2em;}
+#slide0 h4 {margin-top: 0; font-size: 1em;}
+
+div#controls {position: absolute; left: 50%; bottom: 0;
+  width: 50%;
+  text-align: right; font: bold 0.9em;}
+html>body div#controls {position: fixed; padding: 0 0 1em 0;
+  top: auto;}
+div#controls form {position: absolute; bottom: 0; right: 0; width: 100%;
+  margin: 0; padding: 0;}
+#controls #navLinks a {padding: 0; margin: 0 0.5em; 
+  border: none; color: #3f3; cursor: pointer;}
+#controls #navList {height: 1em;}
+#controls #navList #jumplist {position: absolute; bottom: 0; right: 0; 
background: #000; color: #3f3;}
+
+#currentSlide { text-align: center; font-size: 0.5em;
+       background: #333; color: #fff;}
+
+ul.urls {list-style: none; display: inline; margin: 0;}
+.urls li {display: inline; margin: 0;}
+.note {display: none;}
+.external {border-bottom: 1px dotted gray;}
+html>body .external {border-bottom: none;}
+.external:after {content: " \274F"; font-size: smaller; color: #77B;}
+
+.incremental, .incremental *, .incremental *:after {color: #222; visibility: 
visible;}
+img.incremental {visibility: hidden;}
+.slide .current {color: #fff;}
+
+
+/* diagnostics
+li:after {content: " [" attr(class) "]"; color: #F88;}
+
+.slide { opacity: 0.8; }
+ */
+
+.smaller {font-size: 70%; line-height: .9em; color: #f34; }
+
+#logo { position: absolute; right: 10px; bottom: 40px; z-index: 7; }
+
+
+#between { background-color: black; position: absolute; opacity: 0.4;
+       width: 100%; height: 100%; z-index: 2; }
+
+.framed { opacity: 0.6; border: 3px solid black; }
+.indented { margin-left: 100px; border: 3px solid black; }
+.gfx { opacity: 0.8; border: 3px solid black; padding: 20px;
+       background-color: #9cf; margin-left: 40px; }
+
+.left { text-align: left; }
+.right { text-align: right; }
diff --git a/secushare-old-html/UI/print.css b/secushare-old-html/UI/print.css
new file mode 100644
index 0000000..e7a71d1
--- /dev/null
+++ b/secushare-old-html/UI/print.css
@@ -0,0 +1 @@
+/* The following rule is necessary to have all slides appear in print! DO NOT 
REMOVE IT! */
.slide, ul {page-break-inside: avoid; visibility: visible !important;}
h1 {page-break-after: avoid;}

body {font-size: 12pt; background: white;}
* {color: black;}

#slide0 h1 {font-size: 200%; border: none; margin: 0.5em 0 0.25em;}
#slide0 h3 {margin: 0; padding: 0;}
#slide0 h4 {margin: 0 0 0.5em; padding: 0;}
#slide0 {margin-bottom: 3em;}

h1 {border-top: 2pt solid gray; border-bottom: 1px dotted silver;}
.extra {background: transparent !important;}
div.extra, pre.extra, .example {font-size: 10pt; color: #333;}
ul.extra a {font-weight: bold;}
p.example {display: none;}

#header {display: none;}
#footer h1 {margin: 0; border-bottom: 1px solid; color: gray; font-style: 
italic;}
#footer h2, #controls {display: none;}

/* The following rule keeps the layout stuff out of print.  Remove at your own 
risk! */
.layout, .layout * {display: none !important;}
\ No newline at end of file
diff --git a/secushare-old-html/UI/s5-core.css 
b/secushare-old-html/UI/s5-core.css
new file mode 100644
index 0000000..86444e0
--- /dev/null
+++ b/secushare-old-html/UI/s5-core.css
@@ -0,0 +1,9 @@
+/* Do not edit or override these styles! The system will likely break if you 
do. */
+
+div#header, div#footer, div#controls, .slide {position: absolute;}
+html>body div#header, html>body div#footer, 
+  html>body div#controls, html>body .slide {position: fixed;}
+.handout {display: none;}
+.layout {display: block;}
+.slide, .hideme, .incremental {visibility: hidden;}
+#slide0 {visibility: visible;}
diff --git a/secushare-old-html/UI/slides.css b/secushare-old-html/UI/slides.css
new file mode 100644
index 0000000..1027f03
--- /dev/null
+++ b/secushare-old-html/UI/slides.css
@@ -0,0 +1,3 @@
address@hidden url(s5-core.css); /* required to make the slide show run at all 
*/
address@hidden url(framing.css); /* sets basic placement and size of slide 
components */
address@hidden url(pretty.css);  /* stuff that makes the slides look better 
than blah */
diff --git a/secushare-old-html/UI/slides.js b/secushare-old-html/UI/slides.js
new file mode 100644
index 0000000..07f40ff
--- /dev/null
+++ b/secushare-old-html/UI/slides.js
@@ -0,0 +1,552 @@
+// S5 v1.1 slides.js -- released into the Public Domain
+//
+// Please see http://www.meyerweb.com/eric/tools/s5/credits.html for 
information 
+// about all the wonderful and talented contributors to this code!
+
+var undef;
+var slideCSS = '';
+var snum = 0;
+var smax = 1;
+var incpos = 0;
+var number = undef;
+var s5mode = true;
+var defaultView = 'slideshow';
+var controlVis = 'visible';
+
+var isIE = navigator.appName == 'Microsoft Internet Explorer' ? 1 : 0;
+var isOp = navigator.userAgent.indexOf('Opera') > -1 ? 1 : 0;
+var isGe = navigator.userAgent.indexOf('Gecko') > -1 && 
navigator.userAgent.indexOf('Safari') < 1 ? 1 : 0;
+
+function hasClass(object, className) {
+       if (!object.className) return false;
+       return (object.className.search('(^|\\s)' + className + '(\\s|$)') != 
-1);
+}
+
+function hasValue(object, value) {
+       if (!object) return false;
+       return (object.search('(^|\\s)' + value + '(\\s|$)') != -1);
+}
+
+function removeClass(object,className) {
+       if (!object) return;
+       object.className = object.className.replace(new 
RegExp('(^|\\s)'+className+'(\\s|$)'), RegExp.$1+RegExp.$2);
+}
+
+function addClass(object,className) {
+       if (!object || hasClass(object, className)) return;
+       if (object.className) {
+               object.className += ' '+className;
+       } else {
+               object.className = className;
+       }
+}
+
+function GetElementsWithClassName(elementName,className) {
+       var allElements = document.getElementsByTagName(elementName);
+       var elemColl = new Array();
+       for (var i = 0; i< allElements.length; i++) {
+               if (hasClass(allElements[i], className)) {
+                       elemColl[elemColl.length] = allElements[i];
+               }
+       }
+       return elemColl;
+}
+
+function isParentOrSelf(element, id) {
+       if (element == null || element.nodeName=='BODY') return false;
+       else if (element.id == id) return true;
+       else return isParentOrSelf(element.parentNode, id);
+}
+
+function nodeValue(node) {
+       var result = "";
+       if (node.nodeType == 1) {
+               var children = node.childNodes;
+               for (var i = 0; i < children.length; ++i) {
+                       result += nodeValue(children[i]);
+               }               
+       }
+       else if (node.nodeType == 3) {
+               result = node.nodeValue;
+       }
+       return(result);
+}
+
+function slideLabel() {
+       var slideColl = GetElementsWithClassName('*','slide');
+       var list = document.getElementById('jumplist');
+       smax = slideColl.length;
+       for (var n = 0; n < smax; n++) {
+               var obj = slideColl[n];
+
+               var did = 'slide' + n.toString();
+               obj.setAttribute('id',did);
+               if (isOp) continue;
+
+               var otext = '';
+               var menu = obj.firstChild;
+               if (!menu) continue; // to cope with empty slides
+               while (menu && menu.nodeType == 3) {
+                       menu = menu.nextSibling;
+               }
+               if (!menu) continue; // to cope with slides with only text nodes
+
+               var menunodes = menu.childNodes;
+               for (var o = 0; o < menunodes.length; o++) {
+                       otext += nodeValue(menunodes[o]);
+               }
+               list.options[list.length] = new Option(n + ' : '  + otext, n);
+       }
+}
+
+function currentSlide() {
+       var cs;
+       if (document.getElementById) {
+               cs = document.getElementById('currentSlide');
+       } else {
+               cs = document.currentSlide;
+       }
+       cs.innerHTML = '<span id="csHere">' + snum + '<\/span> ' + 
+               '<span id="csSep">\/<\/span> ' + 
+               '<span id="csTotal">' + (smax-1) + '<\/span>';
+       if (snum == 0) {
+               cs.style.visibility = 'hidden';
+       } else {
+               cs.style.visibility = 'visible';
+       }
+}
+
+function go(step) {
+       if (document.getElementById('slideProj').disabled || step == 0) return;
+       var jl = document.getElementById('jumplist');
+       var cid = 'slide' + snum;
+       var ce = document.getElementById(cid);
+       if (incrementals[snum].length > 0) {
+               for (var i = 0; i < incrementals[snum].length; i++) {
+                       removeClass(incrementals[snum][i], 'current');
+                       removeClass(incrementals[snum][i], 'incremental');
+               }
+       }
+       if (step != 'j') {
+               snum += step;
+               lmax = smax - 1;
+               if (snum > lmax) snum = lmax;
+               if (snum < 0) snum = 0;
+       } else
+               snum = parseInt(jl.value);
+       var nid = 'slide' + snum;
+       var ne = document.getElementById(nid);
+       if (!ne) {
+               ne = document.getElementById('slide0');
+               snum = 0;
+       }
+       if (step < 0) {incpos = incrementals[snum].length} else {incpos = 0;}
+       if (incrementals[snum].length > 0 && incpos == 0) {
+               for (var i = 0; i < incrementals[snum].length; i++) {
+                       if (hasClass(incrementals[snum][i], 'current'))
+                               incpos = i + 1;
+                       else
+                               addClass(incrementals[snum][i], 'incremental');
+               }
+       }
+       if (incrementals[snum].length > 0 && incpos > 0)
+               addClass(incrementals[snum][incpos - 1], 'current');
+       ce.style.visibility = 'hidden';
+       ne.style.visibility = 'visible';
+       jl.selectedIndex = snum;
+       currentSlide();
+       number = 0;
+}
+
+function goTo(target) {
+       if (target >= smax || target == snum) return;
+       go(target - snum);
+}
+
+function subgo(step) {
+       if (step > 0) {
+               removeClass(incrementals[snum][incpos - 1],'current');
+               removeClass(incrementals[snum][incpos], 'incremental');
+               addClass(incrementals[snum][incpos],'current');
+               incpos++;
+       } else {
+               incpos--;
+               removeClass(incrementals[snum][incpos],'current');
+               addClass(incrementals[snum][incpos], 'incremental');
+               addClass(incrementals[snum][incpos - 1],'current');
+       }
+}
+
+function toggle() {
+       var slideColl = GetElementsWithClassName('*','slide');
+       var slides = document.getElementById('slideProj');
+       var outline = document.getElementById('outlineStyle');
+       if (!slides.disabled) {
+               slides.disabled = true;
+               outline.disabled = false;
+               s5mode = false;
+               fontSize('1em');
+               for (var n = 0; n < smax; n++) {
+                       var slide = slideColl[n];
+                       slide.style.visibility = 'visible';
+               }
+       } else {
+               slides.disabled = false;
+               outline.disabled = true;
+               s5mode = true;
+               fontScale();
+               for (var n = 0; n < smax; n++) {
+                       var slide = slideColl[n];
+                       slide.style.visibility = 'hidden';
+               }
+               slideColl[snum].style.visibility = 'visible';
+       }
+}
+
+function showHide(action) {
+       var obj = GetElementsWithClassName('*','hideme')[0];
+       switch (action) {
+       case 's': obj.style.visibility = 'visible'; break;
+       case 'h': obj.style.visibility = 'hidden'; break;
+       case 'k':
+               if (obj.style.visibility != 'visible') {
+                       obj.style.visibility = 'visible';
+               } else {
+                       obj.style.visibility = 'hidden';
+               }
+       break;
+       }
+}
+
+// 'keys' code adapted from MozPoint (http://mozpoint.mozdev.org/)
+function keys(key) {
+       if (!key) {
+               key = event;
+               key.which = key.keyCode;
+       }
+       if (key.which == 84) {
+               toggle();
+               return;
+       }
+       if (s5mode) {
+               switch (key.which) {
+                       case 10: // return
+                       case 13: // enter
+                               if (window.event && 
isParentOrSelf(window.event.srcElement, 'controls')) return;
+                               if (key.target && isParentOrSelf(key.target, 
'controls')) return;
+                               if(number != undef) {
+                                       goTo(number);
+                                       break;
+                               }
+                       case 32: // spacebar
+                       case 34: // page down
+                       case 39: // rightkey
+                       case 40: // downkey
+                               if(number != undef) {
+                                       go(number);
+                               } else if (!incrementals[snum] || incpos >= 
incrementals[snum].length) {
+                                       go(1);
+                               } else {
+                                       subgo(1);
+                               }
+                               break;
+                       case 33: // page up
+                       case 37: // leftkey
+                       case 38: // upkey
+                               if(number != undef) {
+                                       go(-1 * number);
+                               } else if (!incrementals[snum] || incpos <= 0) {
+                                       go(-1);
+                               } else {
+                                       subgo(-1);
+                               }
+                               break;
+                       case 36: // home
+                               goTo(0);
+                               break;
+                       case 35: // end
+                               goTo(smax-1);
+                               break;
+                       case 67: // c
+                               showHide('k');
+                               break;
+               }
+               if (key.which < 48 || key.which > 57) {
+                       number = undef;
+               } else {
+                       if (window.event && 
isParentOrSelf(window.event.srcElement, 'controls')) return;
+                       if (key.target && isParentOrSelf(key.target, 
'controls')) return;
+                       number = (((number != undef) ? number : 0) * 10) + 
(key.which - 48);
+               }
+       }
+       return false;
+}
+
+function clicker(e) {
+       number = undef;
+       var target;
+       if (window.event) {
+               target = window.event.srcElement;
+               e = window.event;
+       } else target = e.target;
+       if (target.getAttribute('href') != null || hasValue(target.rel, 
'external') || isParentOrSelf(target, 'controls') || 
isParentOrSelf(target,'embed') || isParentOrSelf(target,'object')) return true;
+       if (!e.which || e.which == 1) {
+               if (!incrementals[snum] || incpos >= incrementals[snum].length) 
{
+                       go(1);
+               } else {
+                       subgo(1);
+               }
+       }
+}
+
+function findSlide(hash) {
+       var target = null;
+       var slides = GetElementsWithClassName('*','slide');
+       for (var i = 0; i < slides.length; i++) {
+               var targetSlide = slides[i];
+               if ( (targetSlide.name && targetSlide.name == hash)
+                || (targetSlide.id && targetSlide.id == hash) ) {
+                       target = targetSlide;
+                       break;
+               }
+       }
+       while(target != null && target.nodeName != 'BODY') {
+               if (hasClass(target, 'slide')) {
+                       return parseInt(target.id.slice(5));
+               }
+               target = target.parentNode;
+       }
+       return null;
+}
+
+function slideJump() {
+       if (window.location.hash == null) return;
+       var sregex = /^#slide(\d+)$/;
+       var matches = sregex.exec(window.location.hash);
+       var dest = null;
+       if (matches != null) {
+               dest = parseInt(matches[1]);
+       } else {
+               dest = findSlide(window.location.hash.slice(1));
+       }
+       if (dest != null)
+               go(dest - snum);
+}
+
+function fixLinks() {
+       var thisUri = window.location.href;
+       thisUri = thisUri.slice(0, thisUri.length - 
window.location.hash.length);
+       var aelements = document.getElementsByTagName('A');
+       for (var i = 0; i < aelements.length; i++) {
+               var a = aelements[i].href;
+               var slideID = a.match('\#slide[0-9]{1,2}');
+               if ((slideID) && (slideID[0].slice(0,1) == '#')) {
+                       var dest = findSlide(slideID[0].slice(1));
+                       if (dest != null) {
+                               if (aelements[i].addEventListener) {
+                                       aelements[i].addEventListener("click", 
new Function("e",
+                                               "if 
(document.getElementById('slideProj').disabled) return;" +
+                                               "go("+dest+" - snum); " +
+                                               "if (e.preventDefault) 
e.preventDefault();"), true);
+                               } else if (aelements[i].attachEvent) {
+                                       aelements[i].attachEvent("onclick", new 
Function("",
+                                               "if 
(document.getElementById('slideProj').disabled) return;" +
+                                               "go("+dest+" - snum); " +
+                                               "event.returnValue = false;"));
+                               }
+                       }
+               }
+       }
+}
+
+function externalLinks() {
+       if (!document.getElementsByTagName) return;
+       var anchors = document.getElementsByTagName('a');
+       for (var i=0; i<anchors.length; i++) {
+               var anchor = anchors[i];
+               if (anchor.getAttribute('href') && hasValue(anchor.rel, 
'external')) {
+                       anchor.target = '_blank';
+                       addClass(anchor,'external');
+               }
+       }
+}
+
+function createControls() {
+       var controlsDiv = document.getElementById("controls");
+       if (!controlsDiv) return;
+       var hider = ' onmouseover="showHide(\'s\');" 
onmouseout="showHide(\'h\');"';
+       var hideDiv, hideList = '';
+       if (controlVis == 'hidden') {
+               hideDiv = hider;
+       } else {
+               hideList = hider;
+       }
+       controlsDiv.innerHTML = '<form action="#" id="controlForm"' + hideDiv + 
'>' +
+       '<div id="navLinks">' +
+       '<a accesskey="t" id="toggle" href="javascript:toggle();">&#216;<\/a>' +
+       '<a accesskey="z" id="prev" href="javascript:go(-1);">&laquo;<\/a>' +
+       '<a accesskey="x" id="next" href="javascript:go(1);">&raquo;<\/a>' +
+       '<div id="navList"' + hideList + '><select id="jumplist" 
onchange="go(\'j\');"><\/select><\/div>' +
+       '<\/div><\/form>';
+       if (controlVis == 'hidden') {
+               var hidden = document.getElementById('navLinks');
+       } else {
+               var hidden = document.getElementById('jumplist');
+       }
+       addClass(hidden,'hideme');
+}
+
+function fontScale() {  // causes layout problems in FireFox that get fixed if 
browser's Reload is used; same may be true of other Gecko-based browsers
+       if (!s5mode) return false;
+       var vScale = 22;  // both yield 32 (after rounding) at 1024x768
+       var hScale = 32;  // perhaps should auto-calculate based on theme's 
declared value?
+       if (window.innerHeight) {
+               var vSize = window.innerHeight;
+               var hSize = window.innerWidth;
+       } else if (document.documentElement.clientHeight) {
+               var vSize = document.documentElement.clientHeight;
+               var hSize = document.documentElement.clientWidth;
+       } else if (document.body.clientHeight) {
+               var vSize = document.body.clientHeight;
+               var hSize = document.body.clientWidth;
+       } else {
+               var vSize = 700;  // assuming 1024x768, minus chrome and such
+               var hSize = 1024; // these do not account for kiosk mode or 
Opera Show
+       }
+       var newSize = 
Math.min(Math.round(vSize/vScale),Math.round(hSize/hScale));
+       fontSize(newSize + 'px');
+       if (isGe) {  // hack to counter incremental reflow bugs
+               var obj = document.getElementsByTagName('body')[0];
+               obj.style.display = 'none';
+               obj.style.display = 'block';
+       }
+}
+
+function fontSize(value) {
+       if (!(s5ss = document.getElementById('s5ss'))) {
+               if (!isIE) {
+                       
document.getElementsByTagName('head')[0].appendChild(s5ss = 
document.createElement('style'));
+                       s5ss.setAttribute('media','screen, projection');
+                       s5ss.setAttribute('id','s5ss');
+               } else {
+                       document.createStyleSheet();
+                       document.s5ss = 
document.styleSheets[document.styleSheets.length - 1];
+               }
+       }
+       if (!isIE) {
+               while (s5ss.lastChild) s5ss.removeChild(s5ss.lastChild);
+               s5ss.appendChild(document.createTextNode('body {font-size: ' + 
value + ' !important;}'));
+       } else {
+               document.s5ss.addRule('body','font-size: ' + value + ' 
!important;');
+       }
+}
+
+function notOperaFix() {
+       slideCSS = document.getElementById('slideProj').href;
+       var slides = document.getElementById('slideProj');
+       var outline = document.getElementById('outlineStyle');
+       slides.setAttribute('media','screen');
+       outline.disabled = true;
+       if (isGe) {
+               slides.setAttribute('href','null');   // Gecko fix
+               slides.setAttribute('href',slideCSS); // Gecko fix
+       }
+       if (isIE && document.styleSheets && document.styleSheets[0]) {
+               document.styleSheets[0].addRule('img', 'behavior: 
url(ui/default/iepngfix.htc)');
+               document.styleSheets[0].addRule('div', 'behavior: 
url(ui/default/iepngfix.htc)');
+               document.styleSheets[0].addRule('.slide', 'behavior: 
url(ui/default/iepngfix.htc)');
+       }
+}
+
+function getIncrementals(obj) {
+       var incrementals = new Array();
+       if (!obj) 
+               return incrementals;
+       var children = obj.childNodes;
+       for (var i = 0; i < children.length; i++) {
+               var child = children[i];
+               if (hasClass(child, 'incremental')) {
+                       if (child.nodeName == 'OL' || child.nodeName == 'UL') {
+                               removeClass(child, 'incremental');
+                               for (var j = 0; j < child.childNodes.length; 
j++) {
+                                       if (child.childNodes[j].nodeType == 1) {
+                                               addClass(child.childNodes[j], 
'incremental');
+                                       }
+                               }
+                       } else {
+                               incrementals[incrementals.length] = child;
+                               removeClass(child,'incremental');
+                       }
+               }
+               if (hasClass(child, 'show-first')) {
+                       if (child.nodeName == 'OL' || child.nodeName == 'UL') {
+                               removeClass(child, 'show-first');
+                               if (child.childNodes[isGe].nodeType == 1) {
+                                       removeClass(child.childNodes[isGe], 
'incremental');
+                               }
+                       } else {
+                               incrementals[incrementals.length] = child;
+                       }
+               }
+               incrementals = incrementals.concat(getIncrementals(child));
+       }
+       return incrementals;
+}
+
+function createIncrementals() {
+       var incrementals = new Array();
+       for (var i = 0; i < smax; i++) {
+               incrementals[i] = 
getIncrementals(document.getElementById('slide'+i));
+       }
+       return incrementals;
+}
+
+function defaultCheck() {
+       var allMetas = document.getElementsByTagName('meta');
+       for (var i = 0; i< allMetas.length; i++) {
+               if (allMetas[i].name == 'defaultView') {
+                       defaultView = allMetas[i].content;
+               }
+               if (allMetas[i].name == 'controlVis') {
+                       controlVis = allMetas[i].content;
+               }
+       }
+}
+
+// Key trap fix, new function body for trap()
+function trap(e) {
+       if (!e) {
+               e = event;
+               e.which = e.keyCode;
+       }
+       try {
+               modifierKey = e.ctrlKey || e.altKey || e.metaKey;
+       }
+       catch(e) {
+               modifierKey = false;
+       }
+       return modifierKey || e.which == 0;
+}
+
+function startup() {
+       defaultCheck();
+       if (!isOp) createControls();
+       slideLabel();
+       fixLinks();
+       externalLinks();
+       fontScale();
+       if (!isOp) {
+               notOperaFix();
+               incrementals = createIncrementals();
+               slideJump();
+               if (defaultView == 'outline') {
+                       toggle();
+               }
+               document.onkeyup = keys;
+               document.onkeypress = trap;
+               document.onclick = clicker;
+       }
+}
+
+window.onload = startup;
+window.onresize = function(){setTimeout('fontScale()', 50);}
\ No newline at end of file
diff --git a/secushare-old-html/UI/squares.jpg 
b/secushare-old-html/UI/squares.jpg
new file mode 100644
index 0000000..cef1508
Binary files /dev/null and b/secushare-old-html/UI/squares.jpg differ
diff --git a/secushare-old-html/UI/stars_bg.jpg 
b/secushare-old-html/UI/stars_bg.jpg
new file mode 100644
index 0000000..189c332
Binary files /dev/null and b/secushare-old-html/UI/stars_bg.jpg differ
diff --git a/secushare-old-html/img/cloud.png b/secushare-old-html/img/cloud.png
new file mode 100644
index 0000000..8aa81a6
Binary files /dev/null and b/secushare-old-html/img/cloud.png differ
diff --git a/secushare-old-html/img/gfx-cloud.png 
b/secushare-old-html/img/gfx-cloud.png
new file mode 100644
index 0000000..914bf8f
Binary files /dev/null and b/secushare-old-html/img/gfx-cloud.png differ
diff --git a/secushare-old-html/img/gfx-multicast.png 
b/secushare-old-html/img/gfx-multicast.png
new file mode 100644
index 0000000..a63b76d
Binary files /dev/null and b/secushare-old-html/img/gfx-multicast.png differ
diff --git a/secushare-old-html/img/gfx-unicast.png 
b/secushare-old-html/img/gfx-unicast.png
new file mode 100644
index 0000000..d7c1763
Binary files /dev/null and b/secushare-old-html/img/gfx-unicast.png differ
diff --git a/secushare-old-html/img/gfx.odg b/secushare-old-html/img/gfx.odg
new file mode 100644
index 0000000..bfad080
Binary files /dev/null and b/secushare-old-html/img/gfx.odg differ
diff --git a/secushare-old-html/img/gfx.png b/secushare-old-html/img/gfx.png
new file mode 100644
index 0000000..30cfff4
Binary files /dev/null and b/secushare-old-html/img/gfx.png differ
diff --git a/secushare-old-html/img/gfx.svg b/secushare-old-html/img/gfx.svg
new file mode 100644
index 0000000..f95cc76
--- /dev/null
+++ b/secushare-old-html/img/gfx.svg
@@ -0,0 +1,910 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/";
+   xmlns:cc="http://creativecommons.org/ns#";
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#";
+   xmlns:svg="http://www.w3.org/2000/svg";
+   xmlns="http://www.w3.org/2000/svg";
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd";
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape";
+   version="1.2"
+   viewBox="0 0 21000 29700"
+   preserveAspectRatio="xMidYMid"
+   fill-rule="evenodd"
+   clip-path="url(#presentation_clip_path)"
+   stroke-width="28.222"
+   stroke-linejoin="round"
+   xml:space="preserve"
+   id="svg2"
+   inkscape:version="0.48.3.1 r9886"
+   width="100%"
+   height="100%"
+   sodipodi:docname="gfx.svg"
+   inkscape:export-filename="/home/dan/wiki/Papers/img/gfx.png"
+   inkscape:export-xdpi="15"
+   inkscape:export-ydpi="15"><metadata
+   id="metadata836"><rdf:RDF><cc:Work
+       rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+         rdf:resource="http://purl.org/dc/dcmitype/StillImage"; 
/><dc:title></dc:title></cc:Work></rdf:RDF></metadata><sodipodi:namedview
+   pagecolor="#ffffff"
+   bordercolor="#666666"
+   borderopacity="1"
+   objecttolerance="10"
+   gridtolerance="10"
+   guidetolerance="10"
+   inkscape:pageopacity="0"
+   inkscape:pageshadow="2"
+   inkscape:window-width="1598"
+   inkscape:window-height="879"
+   id="namedview834"
+   showgrid="false"
+   inkscape:zoom="0.16"
+   inkscape:cx="4415.5351"
+   inkscape:cy="6482.1508"
+   inkscape:window-x="0"
+   inkscape:window-y="19"
+   inkscape:window-maximized="0"
+   inkscape:current-layer="id1" />
+ <defs
+   id="defs4">
+  <clipPath
+   id="presentation_clip_path"
+   clipPathUnits="userSpaceOnUse">
+   <rect
+   x="0"
+   y="0"
+   width="21000"
+   height="29700"
+   id="rect7" />
+  </clipPath>
+ 
+    
+    
+    
+   
+   
+  
+    
+    
+    
+   
+   
+  
+    
+    
+    
+   
+   
+  
+    
+    
+    
+   
+   
+  
+    
+    
+    
+   
+   
+  
+   
+  
+   
+  
+    
+    
+    
+   
+   
+  
+    
+    
+    
+   </defs>
+ <defs
+   id="defs9">
+  <font
+   id="EmbeddedFont_1"
+   horiz-adv-x="2048">
+   <font-face
+   font-family="Sawasdee embedded"
+   units-per-em="2048"
+   font-weight="normal"
+   font-style="normal"
+   ascent="2196"
+   descent="847"
+   id="font-face12" />
+   <missing-glyph
+   horiz-adv-x="2048"
+   d="M 0,0 L 2047,0 2047,2047 0,2047 0,0 Z"
+   id="missing-glyph14" />
+   <glyph
+   unicode="y"
+   horiz-adv-x="875"
+   d="M 36,1014 L 128,1014 477,119 818,1014 914,1014 331,-521 235,-521 432,-2 
36,1014 Z"
+   id="glyph16" />
+   <glyph
+   unicode="w"
+   horiz-adv-x="1536"
+   d="M 36,1014 L 134,1014 466,221 806,1032 1147,221 1471,1014 1567,1014 
1147,-17 803,793 463,-17 36,1014 Z"
+   id="glyph18" />
+   <glyph
+   unicode="v"
+   horiz-adv-x="875"
+   d="M 36,1014 L 132,1014 474,203 814,1014 914,1014 477,-30 36,1014 Z"
+   id="glyph20" />
+   <glyph
+   unicode="t"
+   horiz-adv-x="477"
+   d="M 258,0 L 168,0 168,925 79,925 79,1014 168,1014 168,1254 258,1254 
258,1014 538,1014 508,925 258,925 258,0 Z"
+   id="glyph22" />
+   <glyph
+   unicode="s"
+   horiz-adv-x="663"
+   d="M 709,835 L 626,806 C 612,851 588,885 555,909 522,932 486,944 448,944 
404,944 367,930 336,902 305,874 289,836 289,788 289,763 296,740 310,719 324,698 
342,681 365,668 388,655 414,641 443,627 472,613 501,600 531,588 561,576 591,561 
620,543 649,525 674,506 697,485 720,464 738,438 752,405 766,372 773,336 773,295 
773,202 740,127 674,70 608,12 531,-17 444,-17 406,-17 370,-11 335,2 300,14 
268,32 239,56 210,80 185,112 164,152 143,192 130,238 124,289 L 213,302 C 
222,226 249,169 293,130 336, [...]
+   id="glyph24" />
+   <glyph
+   unicode="r"
+   horiz-adv-x="504"
+   d="M 143,1014 L 239,1014 C 252,970 258,925 258,880 L 258,754 C 273,805 
309,859 365,914 421,969 477,1008 534,1030 L 634,959 C 575,959 517,938 459,897 
400,856 352,801 315,733 277,664 258,594 258,521 L 258,0 168,0 168,880 C 168,937 
160,982 143,1014 Z"
+   id="glyph26" />
+   <glyph
+   unicode="p"
+   horiz-adv-x="980"
+   d="M 143,1014 L 239,1014 C 252,970 258,925 258,880 L 258,754 C 283,824 
333,888 408,945 483,1002 558,1030 634,1030 719,1030 796,1006 867,959 938,911 
993,847 1034,767 1074,687 1094,601 1094,508 1094,415 1074,328 1034,248 993,167 
938,103 867,56 796,9 719,-15 634,-15 557,-15 481,13 407,68 332,123 283,187 
258,260 L 258,-448 168,-448 168,880 C 168,937 160,982 143,1014 Z M 369,814 C 
295,730 258,628 258,508 258,388 295,286 369,201 443,116 531,74 634,74 735,74 
823,117 898,202 973,287 1010,389  [...]
+   id="glyph28" />
+   <glyph
+   unicode="o"
+   horiz-adv-x="1033"
+   d="M 643,1030 C 713,1030 780,1016 844,989 908,962 963,925 1010,878 1057,831 
1094,776 1121,711 1148,646 1162,579 1162,508 1162,437 1148,369 1121,304 
1094,239 1057,184 1010,138 963,91 908,54 844,27 780,-1 713,-15 643,-15 500,-15 
377,36 276,138 175,240 124,363 124,508 124,603 147,690 194,771 240,851 303,914 
383,961 462,1007 549,1030 643,1030 Z M 213,508 C 213,389 255,287 340,202 
424,117 526,74 645,74 764,74 866,117 951,202 1035,287 1077,389 1077,508 
1077,627 1035,728 951,813 866,898 764, [...]
+   id="glyph30" />
+   <glyph
+   unicode="n"
+   horiz-adv-x="795"
+   d="M 143,1014 L 239,1014 C 252,970 258,925 258,880 L 258,728 C 295,811 
346,883 411,942 476,1001 539,1030 600,1030 668,1030 726,1011 773,973 820,935 
854,886 875,827 896,768 906,701 906,626 L 906,0 818,0 818,626 C 818,663 815,698 
808,732 801,766 789,799 774,832 759,865 736,891 706,911 675,930 639,940 598,940 
559,940 518,925 476,894 433,863 397,826 366,782 335,737 309,690 289,640 268,590 
258,546 258,508 L 258,0 168,0 168,880 C 168,937 160,982 143,1014 Z"
+   id="glyph32" />
+   <glyph
+   unicode="m"
+   horiz-adv-x="1298"
+   d="M 143,1014 L 239,1014 C 252,970 258,925 258,880 L 258,734 C 290,813 
336,882 396,941 456,1000 513,1030 566,1030 645,1030 709,1003 757,948 805,893 
835,821 848,734 881,815 926,885 983,942 1039,999 1094,1027 1149,1027 1212,1027 
1265,1008 1309,969 1352,930 1384,881 1403,822 1422,763 1431,697 1431,624 L 
1431,0 1341,0 1341,624 C 1341,660 1338,695 1332,729 1326,763 1316,796 1303,829 
1289,862 1269,888 1242,908 1215,928 1184,938 1147,938 1102,938 1056,913 
1007,863 958,812 919,753 888,685 857 [...]
+   id="glyph34" />
+   <glyph
+   unicode="h"
+   horiz-adv-x="768"
+   d="M 168,0 L 168,1493 258,1493 258,726 C 293,807 343,878 409,939 475,1000 
539,1030 600,1030 668,1030 726,1011 773,973 820,935 854,886 875,827 896,768 
906,701 906,626 L 906,0 818,0 818,626 C 818,663 815,698 808,732 801,766 789,799 
774,832 759,865 736,891 706,911 675,930 639,940 598,940 559,940 518,925 476,894 
433,863 397,826 366,782 335,737 309,690 289,640 268,590 258,546 258,508 L 258,0 
168,0 Z"
+   id="glyph36" />
+   <glyph
+   unicode="e"
+   horiz-adv-x="927"
+   d="M 222,593 L 959,593 C 940,694 896,777 827,842 758,907 678,940 589,940 
500,940 422,907 353,842 284,777 240,694 222,593 Z M 1057,508 L 208,508 C 
208,389 245,287 320,204 395,121 483,79 585,79 652,79 718,97 783,133 848,169 
897,217 931,278 L 1010,233 C 969,160 909,101 830,55 751,8 669,-15 585,-15 
500,-15 423,9 352,56 281,103 225,167 185,248 144,328 124,415 124,508 124,601 
145,687 186,767 227,847 283,911 355,959 426,1006 504,1030 589,1030 669,1030 
744,1009 813,966 882,923 937,865 980,792 [...]
+   id="glyph38" />
+   <glyph
+   unicode="a"
+   horiz-adv-x="821"
+   d="M 920,0 L 824,0 C 812,38 806,83 806,134 L 806,213 C 758,146 701,91 
634,48 567,5 496,-17 421,-17 367,-17 319,-8 277,9 234,26 201,48 176,76 151,105 
133,135 120,166 107,198 101,231 101,263 101,298 106,329 117,358 127,387 140,411 
157,432 173,452 195,471 222,487 249,503 275,517 300,527 325,538 356,547 393,554 
430,562 463,568 490,571 517,575 551,577 592,577 633,577 665,577 689,577 712,577 
742,577 779,577 L 806,577 C 803,688 770,777 709,843 647,909 576,942 495,942 
448,942 402,930 357,905  [...]
+   id="glyph40" />
+   <glyph
+   unicode="W"
+   horiz-adv-x="1906"
+   d="M 25,1493 L 114,1493 553,258 983,1511 1412,258 1847,1493 1943,1493 
1412,-17 985,1229 557,-17 25,1493 Z"
+   id="glyph42" />
+   <glyph
+   unicode="P"
+   horiz-adv-x="927"
+   d="M 168,0 L 168,1495 698,1495 C 805,1495 896,1456 971,1379 1046,1302 
1083,1209 1083,1100 1083,990 1046,896 972,818 897,740 807,701 701,701 L 258,701 
258,0 168,0 Z M 258,795 L 701,795 C 780,795 849,825 906,884 963,943 991,1015 
991,1100 991,1185 962,1257 905,1317 848,1376 779,1406 698,1406 L 258,1406 
258,795 Z"
+   id="glyph44" />
+   <glyph
+   unicode="D"
+   horiz-adv-x="1086"
+   d="M 258,90 L 468,90 C 590,90 702,119 805,176 907,233 988,312 1048,413 
1107,514 1137,624 1137,745 1137,867 1107,979 1048,1080 988,1181 907,1260 
805,1317 702,1374 590,1403 468,1403 L 258,1403 258,90 Z M 168,0 L 168,1493 
468,1493 C 571,1493 669,1474 762,1435 855,1396 936,1344 1004,1278 1072,1211 
1126,1132 1166,1039 1206,946 1226,848 1226,745 1226,608 1192,482 1124,368 
1056,253 964,163 848,98 732,33 605,0 468,0 L 168,0 Z"
+   id="glyph46" />
+   <glyph
+   unicode="C"
+   horiz-adv-x="1377"
+   d="M 1417,346 L 1489,297 C 1420,202 1332,127 1225,72 1118,17 1003,-11 
880,-11 777,-11 679,9 586,49 493,89 412,143 345,211 278,279 224,360 184,454 
144,548 124,647 124,750 124,853 144,952 184,1046 224,1140 278,1221 345,1289 
412,1357 493,1411 586,1451 679,1491 777,1511 880,1511 1003,1511 1117,1483 
1224,1428 1331,1372 1419,1296 1489,1200 L 1417,1147 C 1355,1230 1277,1296 
1184,1345 1090,1393 989,1417 880,1417 759,1417 647,1387 545,1327 442,1267 
361,1186 302,1083 243,980 213,867 213,745 213 [...]
+   id="glyph48" />
+   <glyph
+   unicode=" "
+   horiz-adv-x="714"
+   id="glyph50" />
+  </font>
+ </defs>
+ <g
+   id="id2"
+   class="Master_Slide"
+   clip-path="url(#presentation_clip_path)">
+  <g
+   id="bg-id2"
+   visibility="visible"
+   class="Background">
+   <rect
+   fill="none"
+   stroke="none"
+   x="0"
+   y="0"
+   width="21000"
+   height="29700"
+   id="rect54" />
+  </g>
+  <g
+   id="bo-id2"
+   visibility="visible"
+   class="BackgroundObjects" />
+ </g>
+ <g
+   id="id1"
+   class="Slide"
+   visibility="visible"
+   clip-path="url(#presentation_clip_path)">
+  
+  
+  <g
+   class="com.sun.star.drawing.LineShape"
+   id="g78"
+   transform="translate(283.47087,-175.88835)">
+   <g
+   id="g80">
+    <path
+   d="m 5006,3149 358,-274"
+   id="path82"
+   inkscape:connector-curvature="0"
+   style="fill:none;stroke:#000000" />
+    <path
+   d="m 4911,3033 -1,-50 -306,475 538,-173 -46,-13 -46,-22 -43,-31 -37,-39 
-30,-46 -19,-50 -10,-51 z"
+   id="path84"
+   inkscape:connector-curvature="0"
+   style="fill:#000000;stroke:none" />
+    <path
+   d="m 5459,2991 1,50 306,-475 -538,173 46,13 46,22 43,31 37,39 30,46 19,50 
10,51 z"
+   id="path86"
+   inkscape:connector-curvature="0"
+   style="fill:#000000;stroke:none" />
+   </g>
+  </g>
+  <g
+   class="com.sun.star.drawing.LineShape"
+   id="g88"
+   transform="translate(274.00388,79.549513)">
+   <g
+   id="g90">
+    <path
+   d="m 4974,4621 1019,546"
+   id="path92"
+   inkscape:connector-curvature="0"
+   style="fill:none;stroke:#000000" />
+    <path
+   d="m 5041,4486 45,-21 -559,-83 379,419 -7,-47 2,-51 10,-52 20,-50 30,-46 
38,-38 42,-31 z"
+   id="path94"
+   inkscape:connector-curvature="0"
+   style="fill:#000000;stroke:none" />
+    <path
+   d="m 5926,5302 -45,21 559,83 -379,-419 7,47 -2,51 -10,52 -20,50 -30,46 
-38,38 -42,31 z"
+   id="path96"
+   inkscape:connector-curvature="0"
+   style="fill:#000000;stroke:none" />
+   </g>
+  </g>
+  <g
+   class="com.sun.star.drawing.LineShape"
+   id="g98"
+   transform="translate(-92.67767,-177.40485)">
+   <g
+   id="g100">
+    <path
+   d="m 2137,2846 503,332"
+   id="path102"
+   inkscape:connector-curvature="0"
+   style="fill:none;stroke:#000000" />
+    <path
+   d="m 2216,2717 47,-16 -549,-135 339,452 -3,-47 6,-51 15,-50 25,-49 34,-43 
41,-34 45,-27 z"
+   id="path104"
+   inkscape:connector-curvature="0"
+   style="fill:#000000;stroke:none" />
+    <path
+   d="m 2561,3307 -47,16 549,135 -339,-452 3,47 -6,51 -15,50 -25,49 -34,43 
-41,34 -45,27 z"
+   id="path106"
+   inkscape:connector-curvature="0"
+   style="fill:#000000;stroke:none" />
+   </g>
+  </g>
+  <g
+   class="com.sun.star.drawing.LineShape"
+   id="g108"
+   transform="translate(141.42134,-4808.3261)">
+   <g
+   id="g110">
+    <path
+   d="m 2977,15801 2376,385"
+   id="path112"
+   inkscape:connector-curvature="0"
+   style="fill:none;stroke:#000000" />
+    <path
+   d="m 2997,15652 36,-35 -556,103 495,273 -22,-42 -15,-49 -8,-52 3,-54 13,-53 
24,-49 30,-42 z"
+   id="path114"
+   inkscape:connector-curvature="0"
+   style="fill:#000000;stroke:none" />
+    <path
+   d="m 5333,16335 -36,35 556,-103 -495,-273 22,42 15,49 8,52 -3,54 -13,53 
-24,49 -30,42 z"
+   id="path116"
+   inkscape:connector-curvature="0"
+   style="fill:#000000;stroke:none" />
+   </g>
+  </g>
+  <g
+   class="com.sun.star.drawing.LineShape"
+   id="g118"
+   transform="translate(141.42134,-4808.3261)">
+   <g
+   id="g120">
+    <path
+   d="m 1873,16590 -249,2185"
+   id="path122"
+   inkscape:connector-curvature="0"
+   style="fill:none;stroke:#000000" />
+    <path
+   d="m 2024,16602 36,34 -130,-550 -249,507 42,-24 48,-17 51,-10 55,0 53,11 
49,21 45,28 z"
+   id="path124"
+   inkscape:connector-curvature="0"
+   style="fill:#000000;stroke:none" />
+    <path
+   d="m 1473,18763 -36,-34 130,550 249,-507 -42,24 -48,17 -51,10 -55,0 -53,-11 
-49,-21 -45,-28 z"
+   id="path126"
+   inkscape:connector-curvature="0"
+   style="fill:#000000;stroke:none" />
+   </g>
+  </g>
+  <g
+   class="com.sun.star.drawing.LineShape"
+   id="g128"
+   transform="translate(141.42134,-4808.3261)">
+   <g
+   id="g130">
+    <path
+   d="m 2437,19816 3548,-71"
+   id="path132"
+   inkscape:connector-curvature="0"
+   style="fill:none;stroke:#000000" />
+    <path
+   d="m 2429,19665 29,-40 -528,202 536,179 -29,-38 -24,-45 -17,-50 -7,-54 
4,-54 14,-52 22,-48 z"
+   id="path134"
+   inkscape:connector-curvature="0"
+   style="fill:#000000;stroke:none" />
+    <path
+   d="m 5993,19896 -29,40 528,-202 -536,-179 29,38 24,45 17,50 7,54 -4,54 
-14,52 -22,48 z"
+   id="path136"
+   inkscape:connector-curvature="0"
+   style="fill:#000000;stroke:none" />
+   </g>
+  </g>
+  <g
+   class="com.sun.star.drawing.LineShape"
+   id="g138"
+   transform="translate(141.42134,-4808.3261)">
+   <g
+   id="g140">
+    <path
+   d="m 6566,17225 217,1462"
+   id="path142"
+   inkscape:connector-curvature="0"
+   style="fill:none;stroke:#000000" />
+    <path
+   d="m 6715,17199 43,24 -266,-499 -110,554 33,-34 42,-29 47,-23 53,-13 54,-4 
54,8 50,16 z"
+   id="path144"
+   inkscape:connector-curvature="0"
+   style="fill:#000000;stroke:none" />
+    <path
+   d="m 6634,18713 -43,-24 266,499 110,-554 -33,34 -42,29 -47,23 -53,13 -54,4 
-54,-8 -50,-16 z"
+   id="path146"
+   inkscape:connector-curvature="0"
+   style="fill:#000000;stroke:none" />
+   </g>
+  </g>
+  <g
+   class="com.sun.star.drawing.LineShape"
+   id="g148"
+   transform="translate(141.42134,-4808.3261)">
+   <g
+   id="g150">
+    <path
+   d="m 2689,16312 3500,2829"
+   id="path152"
+   inkscape:connector-curvature="0"
+   style="fill:none;stroke:#000000" />
+    <path
+   d="m 2780,16192 49,-12 -534,-187 294,483 2,-48 11,-50 19,-49 30,-45 37,-40 
45,-30 47,-22 z"
+   id="path154"
+   inkscape:connector-curvature="0"
+   style="fill:#000000;stroke:none" />
+    <path
+   d="m 6098,19261 -49,12 534,187 -294,-483 -2,48 -11,50 -19,49 -30,45 -37,40 
-45,30 -47,22 z"
+   id="path156"
+   inkscape:connector-curvature="0"
+   style="fill:#000000;stroke:none" />
+   </g>
+  </g>
+  <g
+   class="com.sun.star.drawing.LineShape"
+   id="g158"
+   
transform="matrix(0.99936666,-0.03558474,0.03558474,0.99936666,-498.25376,-4655.1623)">
+   <g
+   id="g160">
+    <path
+   d="M 2356,19095 5610,16999"
+   id="path162"
+   inkscape:connector-curvature="0"
+   style="fill:none;stroke:#000000" />
+    <path
+   d="m 2271,18971 3,-49 -344,448 551,-128 -45,-17 -44,-26 -40,-34 -35,-42 
-25,-48 -15,-52 -6,-52 z"
+   id="path164"
+   inkscape:connector-curvature="0"
+   style="fill:#000000;stroke:none" />
+    <path
+   d="m 5695,17123 -3,49 344,-448 -551,128 45,17 44,26 40,34 35,42 25,48 15,52 
6,52 z"
+   id="path166"
+   inkscape:connector-curvature="0"
+   style="fill:#000000;stroke:none" />
+   </g>
+  </g>
+  
+  
+  
+  
+  <g
+   class="com.sun.star.drawing.CustomShape"
+   id="g294"
+   transform="matrix(2.2392824,0,0,2.1897111,-4646.4546,-4903.9283)">
+   <g
+   id="g296">
+    <path
+   d="m 3823,3687 c 194,0 343,148 343,342 0,194 -149,343 -343,343 -194,0 
-342,-149 -342,-343 0,-194 148,-342 342,-342 z m -342,0 0,0 z m 686,687 0,0 z"
+   id="path298"
+   inkscape:connector-curvature="0"
+   style="fill:#000000;stroke:none" />
+    <path
+   d="m 3823,3687 c 194,0 343,148 343,342 0,194 -149,343 -343,343 -194,0 
-342,-149 -342,-343 0,-194 148,-342 342,-342"
+   id="path300"
+   inkscape:connector-curvature="0"
+   style="fill:none;stroke:#000000" />
+    <path
+   style="fill:none;stroke:none"
+   d="m 3482,3687 686,0 0,687 -686,0 z"
+   id="rect302"
+   inkscape:connector-curvature="0" />
+   </g>
+  </g>
+  <g
+   class="com.sun.star.drawing.LineShape"
+   id="g304"
+   transform="translate(-114.90485,88.388348)">
+   <g
+   id="g306">
+    <path
+   d="m 2397,4990 311,-221"
+   id="path308"
+   inkscape:connector-curvature="0"
+   style="fill:none;stroke:#000000" />
+    <path
+   d="m 2306,4870 1,-49 -322,464 544,-154 -46,-15 -45,-24 -42,-32 -36,-40 
-28,-47 -17,-51 -9,-52 z"
+   id="path310"
+   inkscape:connector-curvature="0"
+   style="fill:#000000;stroke:none" />
+    <path
+   d="m 2799,4889 -1,49 322,-464 -544,154 46,15 45,24 42,32 36,40 28,47 17,51 
9,52 z"
+   id="path312"
+   inkscape:connector-curvature="0"
+   style="fill:#000000;stroke:none" />
+   </g>
+  </g>
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  <g
+   class="com.sun.star.drawing.LineShape"
+   id="g494"
+   transform="translate(-10634.114,4796.562)">
+   <g
+   id="g496">
+    <path
+   d="m 15589,22270 2376,385"
+   id="path498"
+   inkscape:connector-curvature="0"
+   style="fill:none;stroke:#000000" />
+    <path
+   d="m 15609,22121 36,-35 -556,103 495,273 -22,-42 -15,-49 -8,-52 3,-54 
13,-53 24,-49 30,-42 z"
+   id="path500"
+   inkscape:connector-curvature="0"
+   style="fill:#000000;stroke:none" />
+    <path
+   d="m 17945,22804 -36,35 556,-103 -495,-273 22,42 15,49 8,52 -3,54 -13,53 
-24,49 -30,42 z"
+   id="path502"
+   inkscape:connector-curvature="0"
+   style="fill:#000000;stroke:none" />
+   </g>
+  </g>
+  
+  <g
+   class="com.sun.star.drawing.LineShape"
+   id="g514"
+   transform="translate(-10352.55,4341.6985)">
+   <g
+   id="g516">
+    <path
+   d="m 12174,24362 3548,-71"
+   id="path518"
+   inkscape:connector-curvature="0"
+   style="fill:none;stroke:#000000" />
+    <path
+   d="m 12166,24211 29,-40 -528,202 536,179 -29,-38 -24,-45 -17,-50 -7,-54 
4,-54 14,-52 22,-48 z"
+   id="path520"
+   inkscape:connector-curvature="0"
+   style="fill:#000000;stroke:none" />
+    <path
+   d="m 15730,24442 -29,40 528,-202 -536,-179 29,38 24,45 17,50 7,54 -4,54 
-14,52 -22,48 z"
+   id="path522"
+   inkscape:connector-curvature="0"
+   style="fill:#000000;stroke:none" />
+   </g>
+  </g>
+  
+  <g
+   class="com.sun.star.drawing.LineShape"
+   id="g534"
+   
transform="matrix(0.89781219,0.44037856,-0.44037856,0.89781219,494.9455,544.55462)">
+   <g
+   id="g536">
+    <path
+   d="m 15247,21205 482,-701"
+   id="path538"
+   inkscape:connector-curvature="0"
+   style="fill:none;stroke:#000000" />
+    <path
+   d="m 15120,21124 -16,-48 -144,547 458,-331 -47,2 -51,-7 -50,-15 -48,-26 
-42,-35 -34,-42 -26,-45 z"
+   id="path540"
+   inkscape:connector-curvature="0"
+   style="fill:#000000;stroke:none" />
+    <path
+   d="m 15856,20585 16,48 144,-547 -458,331 47,-2 51,7 50,15 48,26 42,35 34,42 
26,45 z"
+   id="path542"
+   inkscape:connector-curvature="0"
+   style="fill:#000000;stroke:none" />
+   </g>
+  </g>
+  
+  <path
+   d="m 2809.8643,25046.642 c 30,0 53,22 53,52 0,30 -23,53 -53,53 -30,0 
-52,-23 -52,-53 0,-30 22,-52 52,-52"
+   id="path560"
+   inkscape:connector-curvature="0"
+   
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:28.22200012;stroke-miterlimit:4;stroke-dasharray:none"
+   inkscape:transform-center-x="-127.625"
+   inkscape:transform-center-y="-0.5" />
+  <path
+   d="m 3828.6738,22396.083 c 23.0103,19.249 26.5357,50.88 7.2869,73.891 
-19.2489,23.01 -51.6478,25.893 -74.6581,6.645 -23.0104,-19.249 -25.1274,-51.006 
-5.8785,-74.017 19.249,-23.01 50.2393,-25.768 73.2497,-6.519"
+   id="path570"
+   inkscape:connector-curvature="0"
+   style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:28.22200012" 
/><path
+   style="fill:none;stroke:none"
+   d="m 4299.5064,22989.725 71.7748,78.002 -78.0026,71.775 -71.7747,-78.003 z"
+   id="rect572"
+   inkscape:connector-curvature="0" />
+  <path
+   d="m 6040.8856,28577.062 c 30,0 53,22 53,52 0,30 -23,53 -53,53 -30,0 
-52,-23 -52,-53 0,-30 22,-52 52,-52 z m -52,0 0,0 z m 106,106 0,0 z"
+   id="path578"
+   
style="fill:#000000;fill-opacity:0.89800002;stroke:#ffffff;stroke-opacity:0.89800002"
+   inkscape:connector-curvature="0" /><path
+   d="m 6040.8856,28577.062 c 30,0 53,22 53,52 0,30 -23,53 -53,53 -30,0 
-52,-23 -52,-53 0,-30 22,-52 52,-52"
+   id="path580"
+   style="fill:#000000;stroke:#000000"
+   inkscape:connector-curvature="0" />
+  
+  <g
+   class="com.sun.star.drawing.CustomShape"
+   id="g594"
+   transform="translate(-10559.114,4684.062)">
+   <g
+   id="g596">
+    <path
+   d="m 14415,21796 c 170,0 301,131 301,301 0,170 -131,301 -301,301 -170,0 
-301,-131 -301,-301 0,-170 131,-301 301,-301 z m -301,0 0,0 z m 603,603 0,0 z"
+   id="path598"
+   inkscape:connector-curvature="0"
+   style="fill:#000000;stroke:none" />
+    <path
+   d="m 14415,21796 c 170,0 301,131 301,301 0,170 -131,301 -301,301 -170,0 
-301,-131 -301,-301 0,-170 131,-301 301,-301"
+   id="path600"
+   inkscape:connector-curvature="0"
+   style="fill:none;stroke:#000000" />
+    <path
+   style="fill:none;stroke:none"
+   d="m 14114,21796 603,0 0,603 -603,0 z"
+   id="rect602"
+   inkscape:connector-curvature="0" />
+   </g>
+  </g>
+  
+  
+  
+  <g
+   class="com.sun.star.drawing.LineShape"
+   id="g634"
+   
transform="matrix(0.91574356,0.40176329,-0.40176329,0.91574356,-640.71883,906.69003)">
+   <g
+   id="g636">
+    <path
+   d="m 14437,20866 78,-1354"
+   id="path638"
+   inkscape:connector-curvature="0"
+   style="fill:none;stroke:#000000" />
+    <path
+   d="m 14286,20862 -38,-32 160,542 220,-520 -40,26 -47,20 -51,13 -54,2 -54,-7 
-50,-19 -46,-25 z"
+   id="path640"
+   inkscape:connector-curvature="0"
+   style="fill:#000000;stroke:none" />
+    <path
+   d="m 14666,19516 38,32 -160,-542 -220,520 40,-26 47,-20 51,-13 54,-2 54,7 
50,19 46,25 z"
+   id="path642"
+   inkscape:connector-curvature="0"
+   style="fill:#000000;stroke:none" />
+   </g>
+  </g>
+  <path
+   d="m 5147.2606,23860.062 c 30,0 53,22 53,52 0,30 -23,53 -53,53 -30,0 
-52,-23 -52,-53 0,-30 22,-52 52,-52"
+   id="path650"
+   inkscape:connector-curvature="0"
+   style="fill:#000000;fill-opacity:1;stroke:#000000" /><path
+   style="fill:none;stroke:none"
+   d="m 5096.2606,23861.062 106,0 0,106 -106,0 z"
+   id="rect652"
+   inkscape:connector-curvature="0" />
+  <path
+   d="m 8066.8856,27503.062 c 30,0 53,22 53,52 0,30 -23,53 -53,53 -30,0 
-52,-23 -52,-53 0,-30 22,-52 52,-52"
+   id="path660"
+   inkscape:connector-curvature="0"
+   style="fill:#000000;fill-opacity:1;stroke:#000000" /><path
+   style="fill:none;stroke:none"
+   d="m 8190.8856,27504.062 106,0 0,106 -106,0 z"
+   id="rect662"
+   inkscape:connector-curvature="0" />
+  
+  
+  
+  <g
+   id="g3168"
+   
transform="matrix(0.82206161,0.56939854,-0.56939854,0.82206161,15254.873,2237.0373)"><g
+     transform="translate(-10359.114,4384.062)"
+     id="g604"
+     class="com.sun.star.drawing.CustomShape">
+   <g
+   id="g606">
+    <path
+   style="fill:#000000;stroke:none"
+   inkscape:connector-curvature="0"
+   id="path608"
+   d="m 16354,19273 c 170,0 301,131 301,301 0,170 -131,301 -301,301 -170,0 
-301,-131 -301,-301 0,-170 131,-301 301,-301 z m -301,0 0,0 z m 603,603 0,0 z" 
/>
+    <path
+   style="fill:none;stroke:#000000"
+   inkscape:connector-curvature="0"
+   id="path610"
+   d="m 16354,19273 c 170,0 301,131 301,301 0,170 -131,301 -301,301 -170,0 
-301,-131 -301,-301 0,-170 131,-301 301,-301" />
+    <path
+   inkscape:connector-curvature="0"
+   id="rect612"
+   d="m 16053,19273 603,0 0,603 -603,0 z"
+   style="fill:none;stroke:none" />
+   </g>
+  </g><g
+     transform="translate(-10359.114,4384.062)"
+     id="g614"
+     class="com.sun.star.drawing.LineShape">
+   <g
+   id="g616">
+    <path
+   style="fill:none;stroke:#000000"
+   inkscape:connector-curvature="0"
+   id="path618"
+   d="m 16437,18366 78,-1354" />
+    <path
+   style="fill:#000000;stroke:none"
+   inkscape:connector-curvature="0"
+   id="path620"
+   d="m 16286,18362 -38,-32 160,542 220,-520 -40,26 -47,20 -51,13 -54,2 -54,-7 
-50,-19 -46,-25 z" />
+    <path
+   style="fill:#000000;stroke:none"
+   inkscape:connector-curvature="0"
+   id="path622"
+   d="m 16666,17016 38,32 -160,-542 -220,520 40,-26 47,-20 51,-13 54,-2 54,7 
50,19 46,25 z" />
+   </g>
+  </g><g
+     transform="translate(-10359.114,4384.062)"
+     id="g626">
+    
+    <path
+   d="m 16549.125,16118.75 c 30,0 53,22 53,52 0,30 -23,53 -53,53 -30,0 -52,-23 
-52,-53 0,-30 22,-52 52,-52"
+   id="path630"
+   inkscape:connector-curvature="0"
+   style="fill:#000000;fill-opacity:1;stroke:#000000" />
+    <path
+   style="fill:none;stroke:none"
+   d="m 16485.625,16060.375 106,0 0,106 -106,0 z"
+   id="rect632"
+   inkscape:connector-curvature="0" />
+   </g><g
+     transform="translate(-10359.114,4384.062)"
+     id="g664"
+     class="com.sun.star.drawing.LineShape">
+   <g
+   id="g666">
+    <path
+   style="fill:none;stroke:#000000"
+   inkscape:connector-curvature="0"
+   id="path668"
+   d="m 17013,18643 496,-1045" />
+    <path
+   style="fill:#000000;stroke:none"
+   inkscape:connector-curvature="0"
+   id="path670"
+   d="m 16874,18583 -23,-44 -56,562 401,-399 -47,9 -52,1 -51,-7 -52,-18 
-47,-27 -40,-36 -33,-41 z" />
+    <path
+   style="fill:#000000;stroke:none"
+   inkscape:connector-curvature="0"
+   id="path672"
+   d="m 17648,17658 23,44 56,-562 -401,399 47,-9 52,-1 51,7 52,18 47,27 40,36 
33,41 z" />
+   </g>
+  </g><path
+     style="fill:#000000;fill-opacity:1;stroke:#000000"
+     inkscape:connector-curvature="0"
+     id="path680"
+     d="m 7522.2606,21175.687 c 30,0 53,22 53,52 0,30 -23,53 -53,53 -30,0 
-52,-23 -52,-53 0,-30 22,-52 52,-52" /><path
+     inkscape:connector-curvature="0"
+     id="rect682"
+     d="m 7411.8856,21061.062 106,0 0,106 -106,0 z"
+     style="fill:none;stroke:none" /><g
+     transform="translate(-10359.114,4384.062)"
+     id="g684"
+     class="com.sun.star.drawing.LineShape">
+   <g
+   id="g686">
+    <path
+   style="fill:none;stroke:#000000"
+   inkscape:connector-curvature="0"
+   id="path688"
+   d="m 17493,19014 626,-537" />
+    <path
+   style="fill:#000000;stroke:none"
+   inkscape:connector-curvature="0"
+   id="path690"
+   d="m 17391,18903 -3,-50 -279,492 528,-203 -47,-10 -47,-20 -45,-28 -39,-37 
-32,-44 -22,-49 -14,-51 z" />
+    <path
+   style="fill:#000000;stroke:none"
+   inkscape:connector-curvature="0"
+   id="path692"
+   d="m 18221,18588 3,50 279,-492 -528,203 47,10 47,20 45,28 39,37 32,44 22,49 
14,51 z" />
+   </g>
+  </g><path
+     style="fill:#000000;fill-opacity:1;stroke:#000000"
+     inkscape:connector-curvature="0"
+     id="path700"
+     d="m 8463.8856,22261.062 c 30,0 53,22 53,52 0,30 -23,53 -53,53 -30,0 
-52,-23 -52,-53 0,-30 22,-52 52,-52" /><path
+     inkscape:connector-curvature="0"
+     id="rect702"
+     d="m 8412.8856,22262.062 106,0 0,106 -106,0 z"
+     style="fill:none;stroke:none" /></g>
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+  
+ <path
+   d="m 6544.7753,11486.084 c 30,0 53,22 53,52 0,30 -23,53 -53,53 -30,0 
-52,-23 -52,-53 0,-30 22,-52 52,-52"
+   id="path570-4"
+   inkscape:connector-curvature="0"
+   style="fill:#000000;fill-opacity:1;stroke:#000000" /><path
+   style="fill:none;stroke:none"
+   d="m 6392.8873,11575.381 106,0 0,106 -106,0 z"
+   id="rect572-0"
+   inkscape:connector-curvature="0" /><path
+   d="m 7052.8903,14905.654 c 30,0 53,22 53,52 0,30 -23,53 -53,53 -30,0 
-52,-23 -52,-53 0,-30 22,-52 52,-52"
+   id="path570-49"
+   inkscape:connector-curvature="0"
+   style="fill:#000000;fill-opacity:1;stroke:#000000" /><path
+   d="m 1689.0118,14947.538 c 30,0 53,22 53,52 0,30 -23,53 -53,53 -30,0 
-52,-23 -52,-53 0,-30 22,-52 52,-52"
+   id="path570-49-3"
+   inkscape:connector-curvature="0"
+   style="fill:#000000;fill-opacity:1;stroke:#000000" /><path
+   d="m 2061.1582,10827.411 c 30,0 53,22 53,52 0,30 -23,53 -53,53 -30,0 
-52,-23 -52,-53 0,-30 22,-52 52,-52"
+   id="path570-49-6"
+   inkscape:connector-curvature="0"
+   style="fill:#000000;fill-opacity:1;stroke:#000000" /><path
+   d="m 6270.2107,2191.6942 c 30,0 53,22 53,52 0,30 -23,53 -53,53 -30,0 
-52,-23 -52,-53 0,-30 22,-52 52,-52"
+   id="path570-49-8"
+   inkscape:connector-curvature="0"
+   style="fill:#000000;fill-opacity:1;stroke:#000000" /><path
+   d="m 6915.033,5538.6612 c 30,0 53,22 53,52 0,30 -23,53 -53,53 -30,0 -52,-23 
-52,-53 0,-30 22,-52 52,-52"
+   id="path570-49-33"
+   inkscape:connector-curvature="0"
+   style="fill:#000000;fill-opacity:1;stroke:#000000" /><path
+   d="m 1379.6777,2195.0952 c 30,0 53,22 53,52 0,30 -23,53 -53,53 -30,0 
-52,-23 -52,-53 0,-30 22,-52 52,-52"
+   id="path570-49-9"
+   inkscape:connector-curvature="0"
+   style="fill:#000000;fill-opacity:1;stroke:#000000" /><path
+   d="m 1647.0951,5435.8882 c 30,0 53,22 53,52 0,30 -23,53 -53,53 -30,0 
-52,-23 -52,-53 0,-30 22,-52 52,-52"
+   id="path570-49-82"
+   inkscape:connector-curvature="0"
+   style="fill:#000000;fill-opacity:1;stroke:#000000" /><path
+   d="m 1002.7798,28654.636 c 30,0 53,22 53,52 0,30 -23,53 -53,53 -29.99995,0 
-51.99995,-23 -51.99995,-53 0,-30 22,-52 51.99995,-52"
+   id="path560-3"
+   inkscape:connector-curvature="0"
+   
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:28.22200012;stroke-miterlimit:4;stroke-dasharray:none"
+   inkscape:transform-center-x="-127.625"
+   inkscape:transform-center-y="-0.5" /><g
+   class="com.sun.star.drawing.LineShape"
+   id="g544-4"
+   
transform="matrix(0.9999931,0.00371577,-0.00371577,0.9999931,-10281.165,4533.9206)"><g
+     id="g546-3"><path
+       d="m 12092,23639 1347,-877"
+       id="path548-1"
+       inkscape:connector-curvature="0"
+       style="fill:none;stroke:#000000" /><path
+       d="m 12006,23516 3,-50 -342,450 550,-131 -45,-16 -44,-26 -40,-34 
-35,-42 -26,-48 -15,-51 -6,-52 z"
+       id="path550-0"
+       inkscape:connector-curvature="0"
+       style="fill:#000000;stroke:none" /><path
+       d="m 13525,22885 -3,50 342,-450 -550,131 45,16 44,26 40,34 35,42 26,48 
15,51 6,52 z"
+       id="path552-1"
+       inkscape:connector-curvature="0"
+       style="fill:#000000;stroke:none" /></g></g><g
+   class="com.sun.star.drawing.LineShape"
+   id="g494-5"
+   
transform="matrix(0.31545167,-0.94894164,0.94894164,0.31545167,-24709.757,35697.819)"><g
+     id="g496-5"><path
+       d="m 15589,22270 2376,385"
+       id="path498-2"
+       inkscape:connector-curvature="0"
+       style="fill:none;stroke:#000000" /><path
+       d="m 15609,22121 36,-35 -556,103 495,273 -22,-42 -15,-49 -8,-52 3,-54 
13,-53 24,-49 30,-42 z"
+       id="path500-8"
+       inkscape:connector-curvature="0"
+       style="fill:#000000;stroke:none" /><path
+       d="m 17945,22804 -36,35 556,-103 -495,-273 22,42 15,49 8,52 -3,54 
-13,53 -24,49 -30,42 z"
+       id="path502-1"
+       inkscape:connector-curvature="0"
+       style="fill:#000000;stroke:none" /></g></g><g
+   class="com.sun.star.drawing.LineShape"
+   id="g634-9"
+   
transform="matrix(0.95363238,0.30097391,-0.30097391,0.95363238,-4410.732,157.65584)"><g
+     id="g636-8"><path
+       d="m 14437,20866 78,-1354"
+       id="path638-4"
+       inkscape:connector-curvature="0"
+       style="fill:none;stroke:#000000" /><path
+       d="m 14286,20862 -38,-32 160,542 220,-520 -40,26 -47,20 -51,13 -54,2 
-54,-7 -50,-19 -46,-25 z"
+       id="path640-3"
+       inkscape:connector-curvature="0"
+       style="fill:#000000;stroke:none" /><path
+       d="m 14666,19516 38,32 -160,-542 -220,520 40,-26 47,-20 51,-13 54,-2 
54,7 50,19 46,25 z"
+       id="path642-8"
+       inkscape:connector-curvature="0"
+       style="fill:#000000;stroke:none" /></g></g></g>
+</svg>
\ No newline at end of file
diff --git a/secushare-old-html/img/multicast.png 
b/secushare-old-html/img/multicast.png
new file mode 100644
index 0000000..8dc3982
Binary files /dev/null and b/secushare-old-html/img/multicast.png differ
diff --git a/secushare-old-html/img/phase0.jpeg 
b/secushare-old-html/img/phase0.jpeg
new file mode 100755
index 0000000..620e1e6
Binary files /dev/null and b/secushare-old-html/img/phase0.jpeg differ
diff --git a/secushare-old-html/img/phase1.jpeg 
b/secushare-old-html/img/phase1.jpeg
new file mode 100755
index 0000000..044591e
Binary files /dev/null and b/secushare-old-html/img/phase1.jpeg differ
diff --git a/secushare-old-html/img/phase2.jpeg 
b/secushare-old-html/img/phase2.jpeg
new file mode 100755
index 0000000..e143b2e
Binary files /dev/null and b/secushare-old-html/img/phase2.jpeg differ
diff --git a/secushare-old-html/img/phase3.jpeg 
b/secushare-old-html/img/phase3.jpeg
new file mode 100755
index 0000000..4240590
Binary files /dev/null and b/secushare-old-html/img/phase3.jpeg differ
diff --git a/secushare-old-html/img/secushare-0444.png 
b/secushare-old-html/img/secushare-0444.png
new file mode 100644
index 0000000..51f55b3
Binary files /dev/null and b/secushare-old-html/img/secushare-0444.png differ
diff --git a/secushare-old-html/img/unicast.png 
b/secushare-old-html/img/unicast.png
new file mode 100644
index 0000000..96c6534
Binary files /dev/null and b/secushare-old-html/img/unicast.png differ
diff --git a/secushare-old-latex/.init.el b/secushare-old-latex/.init.el
new file mode 100644
index 0000000..178ed00
--- /dev/null
+++ b/secushare-old-latex/.init.el
@@ -0,0 +1,61 @@
+(setq load-path (cons "~/.emacs.d/lisp" load-path))
+
+(setq org-export-latex-verbatim-wrap (quote (
+      "\\begin{src}
+" . "\\end{src}
+"
+))
+      org-export-allow-BIND t
+      org-export-headline-levels 6
+      org-export-latex-classes (quote (
+          ("book-nopart" "\\documentclass[12pt,a4paper]{book}"
+           ("\\chapter{%s}" . "\\chapter*{%s}")
+           ("\\section{%s}" . "\\section*{%s}")
+           ("\\subsection{%s}" . "\\subsection*{%s}")
+           ("\\subsubsection{%s}" . "\\subsubsection*{%s}")
+           ("\\paragraph{%s}" . "\\paragraph*{%s}")
+           ("\\subparagraph{%s}" . "\\subparagraph*{%s}"))
+          ("book-nopart-oneside" "\\documentclass[12pt,a4paper,oneside]{book}"
+           ("\\chapter{%s}" . "\\chapter*{%s}")
+           ("\\section{%s}" . "\\section*{%s}")
+           ("\\subsection{%s}" . "\\subsection*{%s}")
+           ("\\subsubsection{%s}" . "\\subsubsection*{%s}")
+           ("\\paragraph{%s}" . "\\paragraph*{%s}")
+           ("\\subparagraph{%s}" . "\\subparagraph*{%s}"))
+          ("report-nopart" "\\documentclass[12pt,a4paper]{report}"
+           ("\\chapter{%s}" . "\\chapter*{%s}")
+           ("\\section{%s}" . "\\section*{%s}")
+           ("\\subsection{%s}" . "\\subsection*{%s}")
+           ("\\subsubsection{%s}" . "\\subsubsection*{%s}")
+           ("\\paragraph{%s}" . "\\paragraph*{%s}")
+           ("\\subparagraph{%s}" . "\\subparagraph*{%s}"))
+          ("article" "\\documentclass[12pt]{article}"
+           ("\\section{%s}" . "\\section*{%s}")
+           ("\\subsection{%s}" . "\\subsection*{%s}")
+           ("\\subsubsection{%s}" . "\\subsubsection*{%s}")
+           ("\\paragraph{%s}" . "\\paragraph*{%s}")
+           ("\\subparagraph{%s}" . "\\subparagraph*{%s}"))
+          ("report" "\\documentclass[12pt]{report}"
+           ("\\part{%s}" . "\\part*{%s}")
+           ("\\chapter{%s}" . "\\chapter*{%s}")
+           ("\\section{%s}" . "\\section*{%s}")
+           ("\\subsection{%s}" . "\\subsection*{%s}")
+           ("\\subsubsection{%s}" . "\\subsubsection*{%s}"))
+          ("book" "\\documentclass[12pt,a4paper,oneside]{book}"
+           ("\\part{%s}" . "\\part*{%s}")
+           ("\\chapter{%s}" . "\\chapter*{%s}")
+           ("\\section{%s}" . "\\section*{%s}")
+           ("\\subsection{%s}" . "\\subsection*{%s}")
+           ("\\subsubsection{%s}" . "\\subsubsection*{%s}"))
+          ("beamer" "\\documentclass{beamer}" org-beamer-sectioning)
+          ))
+
+      org-latex-to-pdf-process (quote (
+          "pdflatex -interaction nonstopmode -output-directory %o %f"
+          "bibtex `basename %b`"
+          "pdflatex -interaction nonstopmode -output-directory %o %f"
+          "pdflatex -interaction nonstopmode -output-directory %o %f"
+      ))
+)
+
+(require 'psyc nil 'noerror)
diff --git a/secushare-old-latex/.setup b/secushare-old-latex/.setup
new file mode 100644
index 0000000..01e509f
--- /dev/null
+++ b/secushare-old-latex/.setup
@@ -0,0 +1,73 @@
+#+OPTIONS: toc:nil num:t timestamp:nil author:t H:6 ^:{}
+#+BIND: org-export-latex-title-command ""
+
+#+LaTeX_CLASS: book-nopart
+#+LaTeX_HEADER: \usepackage{datetime}
+#+LaTeX_HEADER: \usepackage{titlesec}
+#+LaTeX_HEADER: \usepackage{parskip}
+#+LaTeX_HEADER: \usepackage{fancyvrb}
+#+LaTeX_HEADER: \usepackage[bookmarks]{hyperref}
+
+#+LaTeX_HEADER: \usepackage{fancyhdr}
+#+LaTeX_HEADER: \pagestyle{fancy}
+#+LaTeX_HEADER: \fancyhf{}
+
+#+LaTeX_HEADER: \fancyhead[RO, LE] {\thepage}
+#+LaTeX_HEADER: \fancyhead[RE]{\textit{\nouppercase{\leftmark}}}
+#+LaTeX_HEADER: \fancyhead[LO]{\textit{\nouppercase{\rightmark}}}
+
+#+LaTeX_HEADER: \renewcommand{\chaptermark}[1]{\markboth{\thechapter.\ #1}{}}
+#+LaTeX_HEADER: \renewcommand{\sectionmark}[1]{\markright{\thesection.\ #1}{}}
+
+#+LaTeX_HEADER: \fancypagestyle{plain}{%
+#+LaTeX_HEADER: \fancyhf{} % clear all header and footer fields
+#+LaTeX_HEADER: \fancyfoot[C]{\bfseries \thepage} % except the center
+#+LaTeX_HEADER: \renewcommand{\headrulewidth}{0pt}
+#+LaTeX_HEADER: \renewcommand{\footrulewidth}{0pt}}
+
+#+LaTeX_HEADER: \usepackage{color}
+#+LaTeX_HEADER: \definecolor{blue}{rgb}{0,0,0.5}
+#+LaTeX_HEADER: \definecolor{src}{rgb}{0.95,0.95,0.95}
+#+LaTeX_HEADER: 
\hypersetup{colorlinks,linkcolor=blue,urlcolor=blue,citecolor=blue,filecolor=blue}
+
+##+LaTeX_HEADER: \usepackage{listings}
+##+LaTeX_HEADER: \lstnewenvironment{src}[1][]%
+##+LaTeX_HEADER:   {\minipage{\linewidth}
+##+LaTeX_HEADER:    \lstset{basicstyle=\ttfamily\footnotesize,
+##+LaTeX_HEADER:            backgroundcolor=\color{src}}}
+##+LaTeX_HEADER:   {\endminipage}
+
+#+LaTeX_HEADER: \usepackage{listings}
+#+LaTeX_HEADER: \lstnewenvironment{src}[1][]%
+#+LaTeX_HEADER:    {\lstset{basicstyle=\ttfamily\footnotesize}}{}
+
+#+LaTeX_HEADER: \usepackage{biblatex}
+#+LaTeX_HEADER: \bibliography{ref}{}
+
+#+LaTeX_HEADER: \makeatletter
+
+#+LaTeX_HEADER: address@hidden
+#+LaTeX_HEADER:   address@hidden
+#+LaTeX_HEADER:   {\parindent \z@ \raggedright \normalfont
+#+LaTeX_HEADER:     address@hidden
+#+LaTeX_HEADER:     \ifnum address@hidden >address@hidden
+#+LaTeX_HEADER:       address@hidden
+#+LaTeX_HEADER:         \Huge\bfseries \thechapter.\ 
+##+LaTeX_HEADER:         \huge\bfseries address@hidden \thechapter
+##+LaTeX_HEADER:         \par\nobreak
+##+LaTeX_HEADER:         \vskip 20\p@
+#+LaTeX_HEADER:       \fi
+#+LaTeX_HEADER:     \fi
+#+LaTeX_HEADER:     \Huge \bfseries #1\par\nobreak
+#+LaTeX_HEADER:     \vskip 40\p@
+#+LaTeX_HEADER:   }}
+
+#+LaTeX_HEADER: \renewcommand\section{%
+#+LaTeX_HEADER:   address@hidden
+#+LaTeX_HEADER:     address@hidden 1 \else 10 address@hidden
+#+LaTeX_HEADER:     {-3.5ex address@hidden -1ex address@hidden -.2ex}%
+#+LaTeX_HEADER:     {2.3ex address@hidden
+#+LaTeX_HEADER:     {\normalfont\Large\bfseries}
+#+LaTeX_HEADER: }
+
+#+LaTeX_HEADER: \makeatother
diff --git a/secushare-old-latex/.setup-back b/secushare-old-latex/.setup-back
new file mode 100644
index 0000000..0bad779
--- /dev/null
+++ b/secushare-old-latex/.setup-back
@@ -0,0 +1,9 @@
+#+BEGIN_LaTeX
+\makeatletter
address@hidden
+\vspace*{50 pt}%
+{\setlength{\parindent}{0pt} \raggedright \normalfont
+\bfseries\Huge#1
+\par\nobreak\vspace{40 pt}}}
+\makeatother
+#+END_LaTeX
diff --git a/secushare-old-latex/30c3-slides.README 
b/secushare-old-latex/30c3-slides.README
new file mode 100644
index 0000000..9cb6b55
--- /dev/null
+++ b/secushare-old-latex/30c3-slides.README
@@ -0,0 +1,7 @@
+For 30c3 slides see separate tg-rp repository.
+
+Needs: apt-get install graphviz
+
+sdedit is a binary jar blob that creates graphics,
+but it isn't necessary for the slides.
+
diff --git a/secushare-old-latex/Makefile b/secushare-old-latex/Makefile
new file mode 100644
index 0000000..d84236e
--- /dev/null
+++ b/secushare-old-latex/Makefile
@@ -0,0 +1,27 @@
+org = secushare
+
+ORG_PATH = /usr/share/emacs/site-lisp/org-mode
+INIT = (add-to-list 'load-path \"${ORG_PATH}\") (load-file \".init.el\")
+
+all: pdf
+
+pdf: FORCE
+       for f in ${org}; do \
+         e="$$e (find-file \"$$f\") (org-mode) (org-export-as-pdf 
org-export-headline-levels)"; \
+       done; \
+       emacs -Q --batch --eval "(progn ${INIT} $$e)"
+
+
+html: FORCE
+       for f in ${org}; do \
+         e="$$e (find-file \"$$f\") (org-mode) (org-export-as-html-batch)"; \
+       done; \
+       emacs -Q --batch --eval "(progn ${INIT} $$e)"
+
+latex: FORCE
+       for f in ${org}; do \
+         e="$$e (find-file \"$$f\") (org-mode) (org-export-as-latex-batch)"; \
+       done; \
+       emacs -Q --batch --eval "(progn ${INIT} $$e)"
+
+FORCE:
diff --git a/secushare-old-latex/abbrevs b/secushare-old-latex/abbrevs
new file mode 100644
index 0000000..d74b485
--- /dev/null
+++ b/secushare-old-latex/abbrevs
@@ -0,0 +1,23 @@
+
+* Abbreviations
+
+| ABNF   | Augmented Backus-Naur Form                 |
+| DHT    | Distributed Hash Table                     |
+| DNS    | Domain Name System                         |
+| DV     | Distance Vector (routing protocol)         |
+| F2F    | Friend-to-Friend (network architecture)    |
+| GUI    | Graphical User Interface                   |
+| HTTP   | Hypertext Transfer Protocol                |
+| OTR    | Off-the-Record Messaging                   |
+| P2P    | Peer-to-Peer (network architecture)        |
+| PGP    | Pretty Good Privacy                        |
+| PSYC   | Protocol for SYnchronous Conferencing      |
+| QML    | Qt Modeling Language                       |
+| SHA    | Secure Hash Algorithm                      |
+| SMTP   | Simple Mail Transfer Protocol              |
+| TCP    | Transmission Control Protocol              |
+| UDP    | User Datagram Protocol                     |
+| UI     | User Interface                             |
+| URI    | Uniform Resource Identifier                |
+| XML    | Extensible Markup Language                 |
+| XMPP   | Extensible Messaging and Presence Protocol |
diff --git a/secushare-old-latex/abstract b/secushare-old-latex/abstract
new file mode 100644
index 0000000..9eef5a9
--- /dev/null
+++ b/secushare-old-latex/abstract
@@ -0,0 +1,20 @@
+* Abstract
+
+The motivation of the work presented here is the need for social interactions
+over the internet in a scalable and privacy protecting manner. We have examined
+existing systems from this aspect and have come to the conclusion that they do
+not provide enough privacy or do not scale well enough for our requirements. We
+suggest a peer-to-peer (P2P) architecture for this use and present a social
+network based on the GNUnet P2P framework -- which provides the lower layers of
+the network -- extended with messaging and social semantics by the PSYC
+protocol.
+
+Components of the system we have implemented are a service for the GNUnet
+framework providing social semantics and messaging functionality, a client API
+enabling application developers to write applications for the network with less
+effort, and client applications providing messaging, contact lists and 
profiles.
+
+The implementation is in a prototype stage, basic functionality, such as person
+identities, friendship establishment and messaging in channels already work,
+but further work is needed to enhance the functionality of the system and
+improve the usability of the user interface.
diff --git a/secushare-old-latex/arch b/secushare-old-latex/arch
new file mode 100644
index 0000000..2a8fe4b
--- /dev/null
+++ b/secushare-old-latex/arch
@@ -0,0 +1,203 @@
+* Architecture
+
+Secure Share intends to implement a scalable P2P social network enabling
+real-time one-to-one, one-to-many and many-to-many message distribution for
+applications using the network while fulfilling the privacy requirements
+described in the previous chapter.
+
+It provides private and group messaging, status updates and profiles in the
+first prototype version, while keeping the protocol extensible allowing various
+social applications to be built on top later.
+
+By combining PSYC with a P2P network architecture we get an efficient and
+extensible protocol provided by PSYC and security and privacy properties
+provided by the underlying P2P network.
+
+** P2P network architecture
+
+Many P2P networks use an architecture where nodes connect to arbitrary peers, 
no
+trust relation exists between them. A problem with this approach is that some
+nodes could use more resources of the network than they contribute to it
+(freeloaders), which can be alleviated by applying an economic model in the
+network. For instance GNUnet uses an excess-based economy: a node when idle 
does
+favors for free, but when busy it only works for nodes it likes and charges 
them
+for favors they request, which they can pay back by doing a favor in return.
+
+Another problem that could arise in this architecture are malicious nodes who
+can perform various active attacks, including blocking access to parts of the
+network, or returning false information to certain requests. These can be
+avoided to some extent by randomized routing and by making it harder to create
+new identities in the network.
+
+A different approach we use is a friend-to-friend (F2F) architecture where 
nodes
+only connect to friendly peers whom they trust. This has the advantage that it
+avoids many attacks involving malicious nodes in the network. An attacker has 
to
+infiltrate a user's social circle to perform a successful attack, which is much
+harder. By adding a trust level metric to social connections we can further
+differentiate between more and less trusted nodes in the network.
+
+Also, a F2F architecture gives better incentives to participants in the 
network:
+users help their friends by forwarding packets for them instead of random
+strangers. Nodes with high bandwidth and no connection restrictions --
+e.g. server machines in data centers -- can improve throughput and connectivity
+in the network by serving their owner's social circle.
+
+Other systems based on a F2F architecture include Freenet \cite{dark-freenet},
+Drac \cite{drac}, Tonika, and GNUnet has a F2F mode as well.
+
+** Structure of the network
+
+Another aspect of P2P networks is whether they're structured or not. In
+structured networks the structure of the network is predefined, the node ID
+determines the position of the node in the network, this information is enough
+to be able to route packets to their destination. Often a distributed hash 
table
+(DHT) is used in structured P2P networks which provides hash table 
functionality
+distributed over many nodes in the network.
+
+A different approach is an unstructured network like the Internet, where
+arbitrary nodes can connect, no structure is imposed upon the nodes. In this
+case a routing table is needed to be able to route a packet to its destination.
+
+A social network could be built purely using a DHT, LifeSocial 
\cite{lifesocial}
+is an example of such a network. In this case every shared status message, 
image
+or document would become an entry in the DHT, and a profile consists of a
+collection of links to other DHT entries. To ensure only the intended 
recipients
+have access to private data, DHT entries are encrypted with a symmetric key,
+which is attached to the entry encrypted with every user's public key who 
should
+have access to the entry. This means that there's no forward secrecy in this
+network, if a user's private key is compromised all these entries can still be
+decrypted with that key. Even if noticed in time, re-encrypting all entries
+affected by a compromised key is quite a costly operation when the number of
+entries become larger after using the system over the years.
+
+For our case either an unstructured network is suitable, or a structured 
network
+where the structure is only used for routing, and not for storing user data in 
a
+DHT. In our architecture data is pushed once to recipients who store it locally
+as long as they need it, which means all profile data, messages and received
+files are all available locally -- even offline -- and can be viewed and
+searched using local tools on the personal device.
+
+** Software components
+
+In a P2P network every user runs the P2P software on their devices, so it's
+important that it is multi-platform, lightweight, and written in a compiled
+language, so we can easily run it on all popular desktop platforms and small
+devices as well, including plug computers, home routers, and even smartphones.
+
+In our case the P2P software runs as a daemon -- a background process -- on the
+local machine or on another device on the network. Client applications connect
+to this daemon and integrate into the desktop or mobile GUI environment running
+on the system.
+
+Server machines, home routers and plug computers act as intermediary nodes in 
the
+system, helping their owners' social network by forwarding packets for them.
+
+Mobile phones require a different approach. Continuous network usage would 
drain
+the battery quite fast, so we'll have to minimize it by disabling packet
+forwarding for mobile nodes and connecting only to a trusted node with good
+connectivity -- e.g. a server machine or a plug computer at home -- which would
+forward the necessary packets for the mobile node.
+
+** Peer-to-peer framework
+
+We have examined various P2P systems looking for an implementation that can
+serve as a basis for our social messaging platform. The criteria for a suitable
+P2P framework was:
+
+- Free/libre/open-source software.
+- Multi-platform, lightweight and written in a compiled language.
+- Implements and provides an API for essential P2P features such as
+  bootstrapping, addressing, routing, encryption and NAT traversal.
+
+We have found GNUnet to be the most promising implementation out there
+satisfying these requirements. It is a modular P2P framework written in C,
+providing an API for essential P2P functionalities. It supports advanced NAT
+(Network Address Translation) traversal, which enables contacting nodes without
+a public IP address typically found in home or corporate networks. Furthermore
+it has several transport mechanisms with automatic transport selection,
+including TCP, UDP, HTTP(S), SMTP and ad-hoc WiFi mesh networks. It also
+provides various routing schemes and a distributed hash table.
+
+It has three operation modes: in P2P mode it makes connections with any peer in
+the network, in friend-to-friend (F2F) mode only trusted nodes are connected,
+and in mixed mode a minimum number of trusted nodes are required to be 
connected
+at all times.
+
+GNUnet currently has two options for routing packets in the network: the
+distance vector and the mesh service.
+
+The distance vector (DV) service uses a fish-eye bounded distance vector
+protocol \cite{gnunet-decrouting}, which builds a routing table by gossiping
+about neighboring peers within a limited number of hops distance. It is a
+link-state routing protocol with improved efficiency: nodes only know about the
+state of a local neighborhood, and link state of nodes close to each other are
+updated more often than of nodes multiple hops away. The DV service also
+provides onion routing of packets through multiple hops, which improves network
+connectivity by connecting two peers behind NAT through an intermediary hop, 
and
+makes it harder for an observer to determine who is talking to whom.
+
+The mesh service creates tunnels through several hops and supports multicast as
+well. Initial routes to recipients are discovered using the DHT. It is still
+being heavily worked on by the GNUnet team, for instance encryption is missing
+and has to be implemented for the multicast groups in order to make it useful
+for our purpose.
+
+These routing methods only support delivery of packets to connected nodes, in
+order to provide offline messaging, we'll need a store-and-forward mechanism in
+the network. This can be implemented by storing encrypted packets on more 
stable
+nodes in the network, until the recipient comes back online.
+
+#+BEGIN_COMMENT
+GNUnet's DHT component can be used for facilitating the bootstrapping process 
by
+storing user public key to current node ID mappings in the DHT. This allows
+peers offline for a longer period to look up the current node of a contact
+in order to re-establish connection to the network, or it can be used to 
publish
+addresses of nodes hosting public groups or providing a public news feed.
+#+END_COMMENT
+
+GNUnet also has an anonymous file sharing component which uses a DHT together
+with the GNUnet Anonymity Protocol (GAP). For our use case -- transferring 
files
+between friends -- this is not needed, instead we transfer files just like 
other
+messages, using PSYC's multicast distribution channels. As the PSYC packet
+syntax supports binary data without any encoding, this causes no additional
+overhead. In order to transfer files, we would have to split them up into
+smaller fragments, as the maximum packet size supported by GNUnet is 64KB.
+
+#+CAPTION: Components and message flow in GNUnet
+#+LABEL: fig:arch
+#+ATTR_LaTeX: width=8.2cm placement=[h!]
+[[./gnunet.png]]
+
+** Messaging daemon
+
+GNUnet's modular architecture allows us to extend it with a service that
+implements a messaging protocol, manages the connections between people, and
+provides a local client interface. This service -- called psycd -- uses the 
PSYC
+protocol for communication with both other peers and local clients.
+
+Psycd sends messages through GNUnet core, which encrypts the message and passes
+it to the modular transport system, sending packets through one of its 
transport
+plugins.
+
+In our prototype we use direct connections to peers. Users manually add their
+friends by exchanging hello messages, which contain their public key and 
current
+addresses. For the prototype version the focus was on the implementation of the
+messaging daemon, and we intend to work on the underlying routing mechanism in
+future versions.
+
+See figure \ref{fig:arch} for an illustration of the components used in the
+system. Dotted parts are not existing yet, only planned. The arrows depict the
+flow of messages between components.
+
+** Functionality
+
+One of the core concepts of PSYC is programmable channels with their own
+subscription lists. Using this combined with custom user interfaces makes it
+possible to implement the usual functionality found in centralized and 
federated
+social networks, like private and group messages, status updates, photo and 
link
+sharing, as well as features not found in those networks, like sharing of files
+and custom content, or real-time notifications for custom events.
+
+As Secure Share runs on the users' own device and stores all incoming messages
+and data locally, this enables offline usage and local search in the data
+received from subscribed friends or groups.
diff --git a/secushare-old-latex/arch.dia b/secushare-old-latex/arch.dia
new file mode 100644
index 0000000..a68937b
Binary files /dev/null and b/secushare-old-latex/arch.dia differ
diff --git a/secushare-old-latex/arch.png b/secushare-old-latex/arch.png
new file mode 100644
index 0000000..07afd34
Binary files /dev/null and b/secushare-old-latex/arch.png differ
diff --git a/secushare-old-latex/clients b/secushare-old-latex/clients
new file mode 100644
index 0000000..13da29d
--- /dev/null
+++ b/secushare-old-latex/clients
@@ -0,0 +1,116 @@
+
+* Clients
+
+Clients implement a user interface for interacting with the PSYC network. They
+connect to the PSYC daemon and link with a person entity. After successful
+linking they receive all the packets destined for that person and can send
+packets originating from the person. In the current implementation of psycd no
+authentication is required for linking, so it's only suitable for localhost 
use,
+later we'll provide password authentication as well.
+
+We have developed a client library -- called libpsycclient -- providing a 
simple
+API for clients. It implements the core logic used by clients to interact with
+the PSYC network. It allows clients to establish a connection to psycd, so they
+can send and receive packets for their person entity. Clients can define
+callback functions for handling incoming packets and various events,
+e.g. handling linking and unlinking or adding and removing aliases. The library
+also provides various commands used in clients, such as entering and leaving
+contexts, sending messages, setting aliases, or querying and manipulating the
+context state.
+
+By using the client library, implementing new clients is much simpler. With the
+library providing all the underlying logic, client developers can focus on the
+GUI, implementing message display and UI elements performing various commands
+provided by the library.
+
+** Desktop clients
+
+#+CAPTION: irssyc, a text-based client
+#+LABEL: fig:irssyc
+#+ATTR_LaTeX: width=14cm placement=[t!]
+[[./shot-irssyc-gray.png]]
+
+#+CAPTION: secushare, a GUI client
+#+LABEL: fig:secushare
+#+ATTR_LaTeX: width=14cm placement=[ht]
+[[./shot-secushare.png]]
+
+We have implemented two clients so far: a text-based client and one with a
+graphical user interface (GUI).
+
+The text-based client, irssyc (figure \ref{fig:irssyc}), is implemented in C as
+a module for Irssi, a popular chat client. It is more suited for advanced users
+and for development and testing purposes. It shows each subscribed channel in
+one of its windows and provides access to commands implemented by the client
+library.
+
+The GUI client, secushare (figure \ref{fig:secushare}), is implemented using Qt
+in C++. It uses Qt's relatively new declarative user interface (UI) description
+language, QML. The C++ part of the application implements data models used by
+QML components to display data -- such as the contact list or messages in a
+channel -- and provides access to the commands implemented by the client 
library
+from QML.
+
+The reasons for choosing Qt were its extensive platform support and its
+declarative UI description language, QML, which makes it easier to accomplish a
+complex but still consistent user interface with good usability.
+
+Qt supports most desktop operating systems -- including Windows, Linux and Mac
+OS X -- and a couple of mobile platforms as well: Maemo, MeeGo, Windows Mobile
+and Symbian. Recently it has been ported to Android as well, and there's an iOS
+port being developed, too.
+
+** Web interface
+
+We have plans for developing a web interface as well, which allows remote 
access
+of a node installed on a plug computer or server machine. This is useful in 
case
+the user does not have a device available that runs a full node with the whole
+software stack. The web interface will be a PSYC client written in JavaScript,
+communicating with psycd via WebSocket. This way we only need minimal
+enhancements on the server side, as the client is pretty much like a desktop
+client in this case, only the connection to psycd is implemented
+differently. Now that JavaScript typed arrays are available in most modern
+browsers, parsing of binary packets are possible now purely in JavaScript.
+
+** Mobile clients
+
+As all components of GNUnet are written in C, it is possible to port it to
+smartphone platforms. Problem with this approach, however, is that continuous
+network traffic drains the battery really soon, so we'll have to take measures
+to reduce network traffic. If the mobile node connects only to one trusted node
+-- e.g. hosted on a server or plug computer in the user's home -- which 
forwards
+the necessary packets for the mobile node, this significantly reduces network
+traffic, as the mobile node does not have to take part in any routing scheme,
+which usually means continuous traffic, even if it's low volume.
+
+Another approach is to only implement a client application for mobile devices
+which connects to a remote psycd on a trusted node over a TLS connection. This,
+however, requires users to set up a server or a plug computer at home and
+configure their firewall or NAT box to allow connections to the PSYC
+daemon. Advantage of the full node approach is that GNUnet already takes care 
of
+NAT traversal, it does not need to deal with (dynamic) DNS and TLS 
certificates.
+
+** Extensibility
+
+Extensibility via custom applications is an important aspect of the system. We
+have two different approaches to achieve this.
+
+*** Channel API
+
+Channels can have an interface type defined in an =_interface= state
+variable. The default view is a chat interface, and we're planning to provide a
+few other built-in types in the secushare GUI client, e.g. a microblogging
+interface with status updates.
+
+We intend to enable developers to write custom applications on top of channels,
+which will run in a sandboxed QML or HTML view inside the client, using a
+JavaScript API for sending and receiving packets for the channel. This approach
+does not expose any private user data to the applications, as they only have
+access to the channel they're running in, and nothing else.
+
+*** Client API
+
+For more complex tasks custom client applications have to be built using the
+libpsycclient C library. This approach allows full access to user data and
+messages for the application, thus users should be careful what client
+applications they install on their machine.
diff --git a/secushare-old-latex/conclusion b/secushare-old-latex/conclusion
new file mode 100644
index 0000000..f102b32
--- /dev/null
+++ b/secushare-old-latex/conclusion
@@ -0,0 +1,37 @@
+* Conclusion and Future Work
+
+The implementation of Secure Share contributes to the efforts of creating a
+privacy protecting peer-to-peer social network. The client API provided as a
+library allows for creating various client applications right away, while the
+lower layers of the system are worked out.
+
+By implementing psycd as a service for the GNUnet framework, it allows us to
+benefit from GNUnet's modular architecture, which can be extended with new or
+improved routing schemes in future versions. The DV and mesh service are areas
+which need improvement. We need to have proper multicast message distribution 
in
+the network, and the mesh service is a promising candidate for that. It
+implements multicast groups, but group encryption still has to be implemented
+for this service. Thus improvements on the routing level are necessary to make
+the system really scalable and privacy protecting.
+
+As the implementation is still in a prototype stage, further work is needed to
+enhance the functionality of the system. Areas that need more work are:
+
+- improve the functionality and usability of the user interface, e.g. add
+  dialogs for friendship establishment, and add different interfaces for 
different
+  types of channels, e.g. status updates.
+- implement dedicated groups independent of person entities
+- user identities should be decoupled from node identities by assigning 
separate
+  keys to users, so they have a master key and subkeys for their devices
+- file transfer over PSYC, this requires splitting large packets into smaller
+  fragments and reassembling them when receiving
+- add UNIX socket support to psycd, as currently only TCP sockets are supported
+  for clients
+- TLS sockets could be added later as well to enable secure connection to a
+  remote node in case a local installation is not available
+- make the system work on mobile devices -- this could be done either via
+  setting up a GNUnet node on the device or via establishing a TLS connection 
to
+  a remote node; this also requires developing a user interface specifically
+  designed for mobile devices
+- implement a web interface
+- implement testing using the GNUnet testing library
diff --git a/secushare-old-latex/context.dia b/secushare-old-latex/context.dia
new file mode 100644
index 0000000..f70fa0c
Binary files /dev/null and b/secushare-old-latex/context.dia differ
diff --git a/secushare-old-latex/context.png b/secushare-old-latex/context.png
new file mode 100644
index 0000000..6efd6b8
Binary files /dev/null and b/secushare-old-latex/context.png differ
diff --git a/secushare-old-latex/gnunet-h.png b/secushare-old-latex/gnunet-h.png
new file mode 100644
index 0000000..ac97aaa
Binary files /dev/null and b/secushare-old-latex/gnunet-h.png differ
diff --git a/secushare-old-latex/gnunet.dia b/secushare-old-latex/gnunet.dia
new file mode 100644
index 0000000..e498ff6
Binary files /dev/null and b/secushare-old-latex/gnunet.dia differ
diff --git a/secushare-old-latex/gnunet.png b/secushare-old-latex/gnunet.png
new file mode 100644
index 0000000..57fce5e
Binary files /dev/null and b/secushare-old-latex/gnunet.png differ
diff --git a/secushare-old-latex/impl b/secushare-old-latex/impl
new file mode 100644
index 0000000..3dbb2b9
--- /dev/null
+++ b/secushare-old-latex/impl
@@ -0,0 +1,392 @@
+* Implementation
+
+This chapter describes core concepts in PSYC, how they are applied in a
+peer-to-peer context and what changes we had to make to the federated PSYC
+\cite{psyc-paper} protocol to make it work in a peer-to-peer network.
+
+Federated PSYC is the existing implementation of the PSYC protocol designed for
+a federated architecture. It is implemented as a stand-alone daemon process
+written in the LPC language.
+
+P2P PSYC is the new implementation we have developed and the one we use in
+Secure Share. The messaging daemon -- called psycd -- is implemented in C as a
+service in the GNUnet framework. It uses GNUnet libraries for communication 
with
+the rest of GNUnet, and libpsyc for the parsing and rendering of PSYC packets.
+It stores data in an SQLite database.
+
+** Syntax
+
+PSYC is a text-based protocol with length prefixes for binary data, which makes
+it possible to transmit any kind of content in PSYC packets efficiently while
+keeping the protocol extensible. Its syntax is described in 
[[#syntax][Appendix 1]].
+
+An example packet looks like this:
+
+#+BEGIN_SRC psyc
+:_context      psyc://J61VSCQA:g/#test
+:_source_relay psyc://I0GCD93U:g/
+70
+=_simple_var   value
+:_binary_var 5 value
+_method_name
+Packet
+body
+here.
+|
+#+END_SRC
+
+A packet contains a routing header, followed by the length of the rest of the 
packet,
+context state modifiers, the method name and the packet body.
+
+** Identifiers
+
+In federated PSYC a server is identified by its DNS domain name. A server hosts
+person and group entities, each of which can manage several channels. Uniforms
+serve as identifiers for entities or channels, described with a URI (Uniform
+Resource Identifier) syntax:
+
+: psyc://host[:port[transport]][/[entity-type]entity[#channel]]
+: psyc://example.net/~alice#friends
+
+In peer-to-peer PSYC DNS is not employed, a public key is used instead to
+identify node, person or group. GNUnet uses a SHA-512 hash of the public key as
+node identifiers, we use a similar method for identifying entities. The
+ASCII-encoded version of this hash becomes the host part of the uniform, with 
no
+port number and 'g' as transport identifier:
+
+: psyc://pubkey-hash:g[/[entity-type]entity[#channel]]
+: psyc://I0GC...L29G:g/#friends
+
+As these identifiers are very long and not user-friendly, they can be aliased 
to
+shorter nicknames. The aliases are only used in client applications, they do 
not
+appear on the protocol level.
+
+In the prototype version GNUnet's host keys are used for identifying person
+entities as well, this simplification allows only one person per node. A more
+elaborate identification scheme is to be implemented later.
+
+Each user will have a master key which serves as the identifier of the person,
+its purpose is to sign subkeys used by various devices of the person. If a
+subkey gets compromised, the master key can be used to prune messages sent with
+the compromised key.
+
+These subkeys are assigned to person entities. A GNUnet node can host one or
+more entities. When using the distance vector transport, node and entity IDs 
are
+added to the DV routing table, and nodes gossip about available peers and
+entities in a local neighborhood up to a limited number of hops away, in the
+social circle of users. When using the mesh service, user ID to current node ID
+mappings are stored in the DHT.
+
+** Circuits
+
+A circuit is a virtual connection between two PSYC nodes, packets are sent and
+received over circuits. When sending packets the circuit type is determined by
+the transport specified in the target uniform.
+
+In federated PSYC we had TCP, UDP and TLS transports. In P2P PSYC psycd
+implements two circuit types so far: TCP circuits for local clients and GNUnet
+circuits for remote peers. Unix sockets, TLS and possibly UDP circuits are
+planned for later.
+
+** Contacting peers
+
+In federated PSYC it was enough to know the uniform of a person or group to
+establish contact. The uniform contains the host name, port number and 
transport
+method, which is all the information needed to establish connection to the
+remote entity.
+
+When using PSYC over P2P, two nodes have to know each other's public key and
+know how to reach the node associated with the public key. GNUnet introduces
+nodes to each other using hello messages which contain a public key and various
+transport methods and addresses which can be used to establish contact with the
+node. In case of the DV transport a hello message contains the identifier of
+another node through which it can be reached. The DV routing protocol gossips
+about connected nodes and entities in the network so they become reachable by
+their social network.
+
+When two users want to talk to each other, they should have received a hello
+message from the other party beforehand. When using the DV transport they might
+already know about each other if they are connected through common friends and
+received a gossip message about the other node. If they are on the same network
+they would discover each other through IPv4 broadcast or IPv6 multicast, or 
when
+using the WLAN transport a WiFi mesh network is created from the present
+nodes. Otherwise a hello message can be exchanged manually between users, using
+e.g. email or a USB stick. When sending a hello message over an insecure 
channel
+it should be encrypted using a shared secret in order to maintain
+confidentiality and integrity of the information contained within. Usually it's
+enough to exchange hello messages manually once when establishing connection 
for
+the first time, after that more stable, longer running nodes would be available
+to bootstrap a reconnecting node.
+
+When connection is established between two users, they set appropriate trust
+levels for each other -- which can be used in routing decisions in the network 
--
+and they subscribe one or more channels of the other party.
+
+** Entities
+
+Entities are addressable objects in the PSYC network. Entity types include 
place
+entities which are used for group communication or news feeds, and person
+entities which can make friendships between each other and subscribe to other
+entities. Each entity manages one or more channels with different subscription
+lists.
+
+Psycd implements person entities enabling clients to link to their entity, send
+and receive messages and manage membership of various channels. It also has a
+simple implementation of place entities providing dedicated group messaging.
+
+** Multicast contexts
+
+PSYC uses multicast contexts for efficient distribution of messages. A context
+is managed by the context master at the top of the distribution tree. Context
+members send packets to the context master which distributes them to context
+slaves on the next level in the multicast tree, which distribute them further
+down the tree. Figure 4.1 shows such a tree.
+
+#+CAPTION: Multicast context distribution tree
+[[./context.png]]
+
+Entities manage multiple channels, each of which is a separate multicast 
context
+having different membership and multicast distribution tree. Social
+interactions, such as status updates, group and private messaging can be 
modeled
+using these channels. An entity manages membership of its channels, in case of 
a
+person entity this could be used to create different circles of friends using a
+channel for each of them, or provide different channels for various topics to
+which interested friends -- or if desired anyone who can contact the person --
+can subscribe to. Ad-hoc group and private chats with friends can be modeled as
+well with channels of a person entity.
+
+Federated PSYC only implemented manually configured multicast distribution 
trees
+so far, this should be made fully automatic in the peer-to-peer version. When
+multicast routing is added, every node becomes a multicast routing hop serving
+several multicast contexts. A node can join a multicast context at any other
+node already a member of that particular context. By adding encryption to
+multicast contexts any node can help in the multicast routing process without
+being able to decrypt message contents. This way receiving packets for a
+multicast context does not necessarily mean that the given node can decrypt the
+packets sent to it. In its simplest implementation multicast encryption 
involves
+a symmetric key distributed by the context master to all the members which has
+to be changed periodically, and when a member joins or leaves.
+
+In \cite{hordes} Hordes, an anonymity protocol based on IP multicast is
+suggested. While we're not using IP multicast, part of their analysis could be
+applied to application-level multicast implemented in a P2P network.
+
+The prototype does not implement actual multicast yet, multicast contexts are
+modeled but messages to contexts are distributed to each member by unicast.
+
+** Distributed state
+
+PSYC has the concept of distributed state, a set of key-value pairs -- state
+variables -- are assigned to each multicast context and distributed to every
+member. It is used to model profile data, context membership, or any other data
+related to a context. Advantage of this approach is that it avoids unnecessary
+request-response operations as members have an up-to-date version of the state
+data most of the time, and allows local browsing of profiles of contacts, even
+offline. We have implemented distributed state for P2P PSYC in psycd -- a 
feature
+federated PSYC has long planned for but still lacked.
+
+Context state is kept in sync using state modifiers provided by the PSYC 
syntax.
+A state modifier adds, removes or modifies a state variable. State changes are
+distributed to context members only once, which means it is very bandwidth
+efficient. Using state modifiers require reliable, in-order delivery of
+packets. Packet loss can be detected with the help of a =_counter= variable in
+the routing header of packets. As the name suggests, it is a counter 
incremented
+by one for every packet sent to the context. When there's a missed packet, a
+node can re-request it from its parent node in the multicast distribution
+tree. After a node has joined a context, a full state synchronization is
+necessary to bring the node up-to-date.
+
+Syntax of a state modifier in Augmented Backus-Naur Form (ABNF):
+
+#+BEGIN_SRC abnf
+entity-modifier = operator variable entity-arg
+entity-arg     = simple-arg / binary-arg / LF
+
+operator       = "=" / ":" / "+" / "-" / "?" / "!" / "@"
+variable       = 1*kwchar
+simple-arg     = HTAB text-data LF
+binary-arg     = SP length HTAB binary-data LF
+length         = 1*DIGIT
+binary-data    = *OCTET
+#+END_SRC
+
+Operators:
+- =:= (set) -- set variable just for the current packet, state is not modified
+- ~=~ (assign) -- assign value to state variable
+- =+= (augment) -- concatenate string or add list/dictionary element, depending
+  on type
+- =-= (diminish) -- remove list or dictionary element
+- address@hidden (update) -- update an item in a list or dictionary
+- =?= alone on a line: request state synchronization, all state variables are
+  returned in the response
+- ~=~ alone on a line: reset state, i.e. remove all previously stored state
+  variables
+- the rest of the operators are reserved for future use
+
+*** Syntax changes
+
+The state implementation involved some syntax changes: we have added a
+dictionary type in order to be able to store key-value pairs in a state
+variable, and modified the list syntax to make it consistent with the new
+dictionary syntax, allowing us to specify types for list elements as well. We
+have also added a new update modifier, which allows for updating individual 
list
+and dictionary elements.
+
+These syntax changes were necessary to represent more complex data structures,
+such as context members or alias mappings.
+
+*** List syntax
+
+A list is a list of ordered elements. Its syntax in ABNF is specified as the
+following:
+
+#+BEGIN_SRC abnf
+list      = [ default-type ] *list-elem
+list-sep   = "|"
+list-elem  = list-sep [ "=" type ] [ SP list-value ]
+list-elem  =/ list-sep "=" type ":" ] [ length ] [ SP *OCTET ]
+list-value = %x00-7B / %x7D-FF ; any byte except "|"
+#+END_SRC
+
+Examples:
+#+BEGIN_SRC psyc
+=_list_one     _type| elem1| elem2| elem3
+=_list_two     |=_type1 elem1|=_type2 elem2|=_type3 elem3
+#+END_SRC
+
+**** Inserting list elements
+
+For inserting values before a specified index the =+= operator is used. Index 
of
+the first element is 1, index of the last is -1. 0 means the end of the list,
+which is the default if the index is omitted.
+
+Syntax of the value part:
+#+BEGIN_SRC abnf
+list-insert    = [ list-index SP ] list
+list-index     = "#" 1*DIGIT
+#+END_SRC
+
+#+LaTeX: \pagebreak
+
+Example:
+#+BEGIN_SRC psyc
++_list_fruits  | banana| mango
++_list_fruits  #0 | banana| mango
+#+END_SRC
+
+**** Removing list elements
+
+For removing elements the =-= operator is used. Parameters are the start index
+which defaults to -1, and the amount of elements to be removed which defaults 
to 1.
+
+Syntax of the value part:
+#+BEGIN_SRC abnf
+list-remove    = ( list-index SP uint | list-index | uint )
+#+END_SRC
+
+Example:
+#+BEGIN_SRC psyc
+-_list_fruits  #1
+-_list_fruits  #1 1
+#+END_SRC
+
+*** Dictionary syntax
+
+A dictionary is a set of key-value pairs. Its syntax specified in ABNF is:
+
+#+BEGIN_SRC abnf
+dict           = [ type ] *dict-item
+dict-item      = dict-item-key dict-item-value
+dict-item-key  = "{" ( dict-key / length SP *OCTET) "}"
+dict-item-value        = type [ SP dict-value ]
+dict-item-value =/ [ length ] [ ":" type ] [ SP *OCTET ]
+dict-key       = %x00-7C / %x7E-FF     ; any byte except "{"
+dict-value     = %x00-7A / %x7C-FF     ; any byte except "}"
+#+END_SRC
+
+=type= is the default type for elements which do not have a type specified.
+
+Examples:
+#+BEGIN_SRC psyc
+=_dict_one     _type{4 key1}6 value1{key2} value2{key3}6 value3
+=_dict_two     {4 key1}=_type1:6 val1{key2}=_type2 val2{key3}6 val3
+
+=_dict_avatars _picture{alice}3 \o/{bob}7 \oXoXo/
+#+END_SRC
+
+The =struct= type can be used to define dictionary values with less
+repetition. The structure is first defined once, then used for one or all
+elements. It works like a C struct, a list of types are defined in a specific
+order, after that we don't have to specify the types again when specifying the 
values.
+
+#+BEGIN_SRC psyc
+=_struct_member        |=_nick|=_picture
+=_dict_members _struct_member{13 psyc://alice/}12 | alice| \o/
+=_dict_members {psyc://alice/}=_struct_member | alice| \o/
+#+END_SRC
+
+**** Adding dictionary entries
+
+The =+= operator is used for adding entries to an existing dictionary. The 
syntax
+is equivalent to the initial assignment of entries. If a key already exists in
+the dictionary, its value is overwritten.
+
+**** Removing entries from a dictionary
+
+The =-= operator is used for removing entries, syntax is the same as assignment
+but only the keys are listed.
+
+Example, removing 2 entries:
+#+BEGIN_SRC psyc
+-_dict_members {psyc://alice/}{psyc://bob/}
+#+END_SRC
+
+*** Update syntax
+
+For updating specific entries in a list or dictionary the address@hidden 
operator is used. It
+has the following syntax:
+
+#+BEGIN_SRC abnf
+update         = 1*index SP op [ type ] [ ":" length] [SP value]
+index          = ( dict-item-key / index-list / index-struct )
+index-list     = "#" 1*DIGIT
+index-struct   = "." type
+#+END_SRC
+
+Examples:
+#+BEGIN_SRC psyc
address@hidden  #-1 =_picture:7 \oXoXo/
address@hidden  #-1 =:7 \oXoXo/
address@hidden  #1 = pear
address@hidden  #2 =_int 1000
+
address@hidden  {alice} =_picture:7 \oXoXo/
address@hidden  {alice} =:7 \oXoXo/
address@hidden  {psyc://alice/}._nick = Alice
address@hidden  {psyc://bob/}._nick + Bob
address@hidden  {psyc://foo/}._int_score + 2
+#+END_SRC
+
+** Storage
+
+Incoming and outgoing packets, state variables and channel configuration are
+stored in an SQLite database. This allows for persistent storage of context
+state as well, which is restored after a restart of the node. Packets are 
stored
+for two purposes: it provides a message history for contexts and it can be used
+later to resend lost packets to nodes requesting it.
+
+SQLite is used mainly because of its efficient memory handling and wide 
platform
+support.
+
+The database consists of two tables with the following schema:
+- *contexts* (*uni* blob primary key, *state* blob, *config* blob,
+  *created* timestamp default current_timestamp)
+- *packets* (*context* blob, *source* blob, *target* blob, *counter* unsigned 
int,
+  *fragment* unsigned int, *packet* blob,
+  *created* timestamp default current_timestamp,\\
+  *primary key* (context, source, target, counter, fragment))
+
+We store information about subscribed and hosted contexts in these tables.
+The contexts table is used for storing configuration and state of contexts,
+whereas the packets table is for storing packet history. All this information
+is stored in PSYC packet format in the database.
diff --git a/secushare-old-latex/intro b/secushare-old-latex/intro
new file mode 100644
index 0000000..06a0e72
--- /dev/null
+++ b/secushare-old-latex/intro
@@ -0,0 +1,25 @@
+* Introduction
+
+The Internet is getting more and more centralized with users' personal data
+hosted on servers of large service providers, which involves serious privacy
+concerns. As in most cases these systems do not provide end-to-end
+confidentiality, server operators have full access to user data and users are
+often unaware of how much data is stored about them or with whom their data is
+shared with. Such systems include email and instant messaging services like
+GMail and GTalk, social network services like Facebook, Google+ and Twitter, or
+file storage and sharing services like Dropbox.
+
+It is possible to implement social sharing and messaging in a privacy 
protecting
+way. Chapter 2 describes previous attempts at this by federated social 
networks,
+problems with that approach and our requirements for secure communication.
+
+We suggest a peer-to-peer architecture as a better basis for a social network
+system in Chapter 3. We show how social interactions would work in such
+a network while maintaining privacy of users.
+
+In Chapter 4 we introduce core concepts of PSYC and show how we integrated it
+with P2P technology provided by the GNUnet framework, and tell more about
+implementation details of the prototype of Secure Share.
+
+Chapter 5 describes the clients we have implemented and shows extension
+possibilities of Secure Share.
diff --git a/secushare-old-latex/ref.bib b/secushare-old-latex/ref.bib
new file mode 100644
index 0000000..6173078
--- /dev/null
+++ b/secushare-old-latex/ref.bib
@@ -0,0 +1,116 @@
address@hidden {gnunet-decrouting,
+       author = {Nathan S. Evans},
+       title = {Methods for Secure Decentralized Routing in Open Networks},
+       volume = {Dr. rer. nat.},
+       year = {2011},
+       month = {08/2011},
+       pages = {234},
+       school = {Technische Universit{\"a}t M{\"u}nchen},
+       address = {Garching bei M{\"u}nchen},
+       abstract = {  The contribution of this thesis is the study and 
improvement of secure, decentralized, robust routing algorithms for open 
networks including ad-hoc networks and peer-to-peer (P2P) overlay networks. The 
main goals for our secure routing algorithm are openness, efficiency, 
scalability and resilience to various types of attacks. Common P2P routing 
algorithms trade-off decentralization for security; for instance by choosing 
whether or not to require a centralized authority to  [...]
+
+  The first step we took towards designing our routing algorithm was an 
analysis of the routing algorithm in Freenet.  This algorithm is relevant 
because it achieves efficient (order O(log n)) routing in realistic network 
topologies in a fully decentralized open network.  However, we demonstrate why 
their algorithm is not secure, as malicious participants are able to severely 
disrupt the operation of the network.  The main difficulty with the Freenet 
routing algorithm is that for perform [...]
+
+ A related problem for efficient routing in sparsely connected networks is the 
difficulty in sufficiently populating routing tables.  One way to improve 
connectivity in P2P overlay networks is by utilizing modern NAT traversal 
techniques.  We employ a number of standard NAT traversal techniques in our 
approach, and also developed
+and experimented with a novel method for NAT traversal based on ICMP and UDP 
hole punching.  Unlike other NAT traversal techniques ours does not require a 
trusted third party.
+
+Another technique we use in our implementation to help address the 
connectivity problem in sparse networks is the use of distance vector routing 
in a small local neighborhood. The distance vector variant used in our system 
employs onion routing to secure the resulting indirect connections. Materially 
to this design, we discovered a  serious vulnerability in the Tor protocol 
which allowed us to use a DoS attack to reduce the anonymity of the users of 
this extant anonymizing P2P network.   [...]
+which helped when designing the distance vector routing protocol for our 
system.
+
+  Finally, we present the design of our new secure randomized routing 
algorithm that does not suffer from the various problems we discovered in 
previous designs. Goals for the algorithm include providing efficiency and 
robustness in the presence of malicious participants for an open, fully 
decentralized network without trusted authorities. We provide a mathematical 
analysis of the algorithm itself and have created and deployed an 
implementation of this algorithm in GNUnet. In this thesis [...]
+emulation framework capable of running a large number of nodes using our full 
code base as well as some of the challenges encountered in creating and using 
such a testing framework.  We present extensive experimental results showing 
that our routing algorithm outperforms the dominant DHT design in target 
topologies, and performs comparably in other scenarios.
+},
+       keywords = {DHT, Freenet, GNUnet, NAT, R5N, Tor},
+       isbn = {3-937201-26-2},
+       issn = {1868-2642},
+       attachments = 
{https://gnunet.org/sites/default/files/NET-2011-08-1.pdf},
+       url = {https://gnunet.org/nate2011thesis},
+}
+
address@hidden {gnunet-gap,
+       author = {Krista Bennett and Christian Grothoff},
+       title = {gap - Practical Anonymous Networking},
+       booktitle = {Designing Privacy Enhancing Technologies},
+       year = {2003},
+       pages = {141{\textendash}160},
+       publisher = {Springer-Verlag},
+       organization = {Springer-Verlag},
+       abstract = {This paper describes how anonymity is achieved in GNUnet, a 
framework for anonymous distributed and secure networking.
+
+The main focus of this work is gap, a simple protocol for anonymous transfer 
of data which can achieve better anonymity guarantees than many traditional 
indirection schemes and is additionally more efficient.  gap is based on a new 
perspective on how to achieve anonymity.  Based on this new perspective it is 
possible to relax the requirements stated in traditional indirection
+schemes, allowing individual nodes to balance anonymity with efficiency 
according to their specific needs.},
+       keywords = {anonymity, GNUnet, installation},
+       attachments = {https://gnunet.org/sites/default/files/aff.pdf},
+       url = {https://gnunet.org/gap},
+}
+
address@hidden {dark-freenet,
+       author = {Clarke, Ian and Sandberg, Oskar and Toseland, Matthew and 
Verendel, Vilhelm},
+       title = {Private Communication Through a Network of Trusted 
Connections: The Dark Freenet},
+       url = {https://freenetproject.org/papers/freenet-0.7.5-paper.pdf},
+}
+
address@hidden {hordes,
+       author = {Brian Neil Levine and Clay Shields},
+       title = {Hordes {\textendash}- A Multicast Based Protocol for 
Anonymity},
+       journal = {Journal of Computer Security},
+       volume = {10},
+       number = {3},
+       year = {2002},
+       pages = {213{\textendash}240},
+       abstract = {With widespread acceptance of the Internet as a public 
medium for communication and information retrieval, there has been rising 
concern that the personal privacy of users can be eroded by cooperating network 
entities. A technical solution to maintaining privacy is to provide anonymity. 
We present a protocol for initiator anonymity called Hordes, which uses 
forwarding mechanisms similar to those used in previous protocols for sending 
data, but is the first protocol to make u [...]
+       keywords = {anonymity, Hordes, multicast, routing},
+       issn = {0926-227X},
+       url = {http://portal.acm.org/citation.cfm?id=603406},
+       attachments = {https://gnunet.org/sites/default/files/Levine-2002.pdf},
+}
+
address@hidden {drac,
+       author = {George Danezis and Claudia Diaz and Carmela Troncoso and Ben 
Laurie and Google Inc},
+       title = {Drac: An architecture for anonymous low-volume communications},
+       booktitle = {Privacy Enhancing Technologies, volume 6205 of Lecture 
Notes in Computer Science},
+       year = {2010},
+       pages = {202--219},
+       publisher = {Springer}
+}
+
address@hidden {lifesocial,
+       title = {LifeSocial.KOM: A secure and P2P-based solution for online 
social networks},
+       author = {Graffi, K. and Gross, C. and Stingl, D. and Hartung, D. and 
Kovacevic, A. and Steinmetz, R.},
+       booktitle = {Consumer Communications and Networking Conference (CCNC), 
2011 IEEE},
+       pages = {554--558},
+       year = {2011},
+       organization = {IEEE},
+       attachments = 
{http://www.cs.uni-paderborn.de/fileadmin/Informatik/FG-TI/Graffi/Publications/Kalman.Graffi_2011_IEEE.CCNC.11_LifeSocial.KOM.A.Secure.and.P2P.based.Solution.for.OSNs.pdf}
+}
+
address@hidden {psyc-paper,
+       author = {Carlo v. Loesch},
+       title = {Protocol for Synchronous Conferencing},
+       year = {2007},
+       url = {http://www.psyc.eu/whitepaper/white.en.html},
+}
+
address@hidden {psyc-bench,
+       title = {Libpsyc Performance Benchmarks},
+       url = {http://lib.psyc.eu/bench}
+}
+
address@hidden {js-crypto,
+       author = {Nate Lawson},
+       title = {Final post on Javascript crypto},
+       year = {2010},
+       url = 
{http://rdist.root.org/2010/11/29/final-post-on-javascript-crypto/},
+}
+
address@hidden {fsw-paranoia,
+       author = {Carlo v. Loesch and Gabor Toth and Mathias Baumann},
+       title = {Scalability \& Paranoia in a Decentralized Social Network},
+       booktitle = {Federated Social Web conference},
+       year = {2011},
+       month = {06/2011},
+       address = {Berlin, Germany},
+       abstract = {There{\textquoteright}s a lot of buzz out there about 
"replacing" Facebook with a privacy-enhanced, decentralized, ideally open 
source something. In this talk we{\textquoteright}ll focus on how much privacy 
we should plan for (specifically about how we cannot entrust our privacy to 
modern virtual machine technology) and the often underestimated problem of 
getting such a monster network to function properly. These issues can be 
considered together or separately: Even if you{\ [...]
+       keywords = {GNUnet, privacy, social networks},
+       url = {http://secushare.org/2011-FSW-Scalability-Paranoia},
+}
diff --git a/secushare-old-latex/req b/secushare-old-latex/req
new file mode 100644
index 0000000..b0d4f75
--- /dev/null
+++ b/secushare-old-latex/req
@@ -0,0 +1,129 @@
+* Requirements and Related Work
+
+This chapter describes our requirements for a system that we can use to build a
+secure social network and introduces currently available alternatives to
+centralized social networks. This chapter is partly based on 
\cite{fsw-paranoia}.
+
+** Privacy
+
+Our goal is to provide a system for social interaction in a privacy-protecting
+and scalable manner. A truly private communication system we're aiming for
+should have the following properties:
+
+- End-to-end encryption: only the intended recipients can read the messages, no
+  server or network operators along the way between the communicating
+  parties. To ensure this, it is not enough to use link-level encryption 
between
+  a client and a server, end-to-end encryption is needed, which means that 
every
+  participant in the system has to manage their own cryptographic keys on their
+  own systems.
+- Perfect forward secrecy: messages transmitted over the network can't be
+  decrypted later if a user's private key is compromised. To achieve this,
+  temporary session keys need to be used when encrypting messages.
+- When logging a message to disk it should not contain a cryptographic 
signature
+  of the sender, so if someone gains access to the log, it does not provide a
+  proof that someone actually transmitted the messages.
+- An observer cannot determine for sure when two parties are communicating and
+  how much data they exchange with each other. This requires a trade-off: while
+  sending packets through other participants in the network would ensure this,
+  this also increases message delay.
+- Padding of packets is necessary to prevent attacks based on statistical
+  analysis of packet lengths. This is absolutely necessary when sending 
messages
+  through multiple hops, otherwise it would be enough to monitor packet lengths
+  to determine where a packet is forwarded to.
+- Delayed forwarding is also necessary to prevent correlation of received and
+  transmitted packets when forwarding. Sending multiple packets at once at
+  certain intervals would help to prevent this.
+- Private contact list: only visible to whom it needs be -- typically other
+  friends -- not available publicly or managed on servers where server 
operators
+  have access to it.
+- Every component of the system should be open source, so one can ensure it
+  really works as advertised. A closed component would be a security risk, as 
it
+  could leak information or otherwise weaken the security of the system, which
+  is harder to detect when no source code is available. This can be enforced
+  with a copyleft license, such as the Affero General Public License (AGPL).
+
+Currently available alternatives to centralized social network services are in
+most cases federated networks, which use a standardized protocol between 
servers
+enabling many service providers to take part in the network and communicate 
with
+each other. Examples for such systems include web-based platforms like Diaspora
+or Friendica, and others using a messaging protocol extended with social 
network
+functionalities -- friendship establishment, status messages to friends -- like
+OneSocialWeb, which is based on XMPP (Extensible Messaging and Presence
+Protocol) or PSYC (Protocol for SYnchronous Conferencing).
+
+These federated systems intend to offer more privacy than centralized systems,
+but they still not fulfill most of the requirements above, in most cases they
+only provide link-level encryption. They still store personal data on servers
+unencrypted, just like centralized systems. Users can have a server themselves,
+but that requires server administration skills which average users do not have,
+so we'll end up with a few larger servers and several smaller ones, just like 
in
+the case of email. Privacy is an even more serious issue in this case as it's 
no
+longer enough to trust one company, there are several server operators in this
+architecture sharing personal data with each other -- users' messages and
+profile data are transmitted to and stored unencrypted on servers of their
+friends as well. Even if some users run their own server, they would still
+communicate with people without their own server, exposing personal data to 
even
+more server operators this way.
+
+It is possible to enhance privacy of these federated protocols by adding
+end-to-end encryption on top of them, this is what PGP (Pretty Good Privacy)
+does for e-mail and OTR (Off-The-Record Messaging) does for instant messaging
+protocols. While this prevents servers from reading the content of messages,
+they still know everything else about a message, e.g. its sender, recipient, 
and
+size. There's an additional overhead of base64 encoding, which is needed 
because
+the underlying messaging protocols often do not support binary data
+transfer. Furthermore PGP and OTR can only be used for one-to-one messaging,
+one-to-many and many-to-many messaging are not supported by them.
+
+** Scalability
+
+Efficient message distribution is crucial in social networks, as one of their
+most prevalent features is sending one-to-many status updates, but many-to-many
+group messaging is frequently used as well. To deliver these messages most
+efficiently, multicast message distribution would be necessary. IP multicast
+does not scale to a large number of channels, as multicast routing tables would
+fill up very fast -- at least one channel would be needed for a user's status
+updates, and similarly, at least one for each group -- thus this has to be
+implemented on the application layer to make it work.
+
+XMPP has a simple distribution strategy, it sends one message per recipient
+server, which is only efficient if there are many large sites. XMPP's
+scalability is also limited by the way it handles presence updates, the 
majority
+of inter-server traffic in the XMPP network consists of this type of messages.
+
+XMPP's use of an XML stream as network protocol without any framing makes it
+less efficient, as it complicates parsing and makes it impossible to transport
+binary data without Base64 or similar encoding. Also, protocol extensions
+described in XML add a large amount of unnecessary verbosity to the protocol.
+
+PSYC is another federated messaging protocol with a compact but extensible
+syntax, which enables fast parsing and small bandwidth usage. It is a 
text-based
+protocol with length prefixes for binary data. Benchmarks we made show that it
+outperforms XMPP and JSON when it comes to parsing speed \cite{psyc-bench}.
+
+PSYC sends out one message per recipient server when distributing messages, but
+it also has manual multicast tree configuration.
+
+** Peer-to-peer networks
+
+Peer-to-peer (P2P) networks come closer to fulfilling these privacy
+requirements, as in many cases they're designed with security and privacy in
+mind from the ground up.
+
+Projects such as Tor and I2P aim to create an anonymous overlay network, while
+Freenet and GNUnet focus on anonymous information storage and retrieval. GNUnet
+also provides an extensive framework for writing P2P applications, including
+packet-based communication over different transport mechanisms.
+
+In a P2P network every user of the network runs the P2P software on their own
+computers (a computer in the P2P network is referred to as a node). This allows
+for creating a network architecture where servers are not needed to store and
+manage user data, every user can do so on their own node, giving them more
+control over their data. High-capacity servers we had in federated networks
+would be still useful in a P2P network, they can forward (and store when 
needed)
+encrypted data without being able to decrypt them, this way improving
+throughput, connectivity and stability of the network.
+
+Combining peer-to-peer network technology with social network semantics allows
+for creating a scalable, privacy-protecting social network based on connections
+of trusted peers. The next section describes the architecture of such a 
network.
diff --git a/secushare-old-latex/secushare b/secushare-old-latex/secushare
new file mode 100644
index 0000000..0366bd9
--- /dev/null
+++ b/secushare-old-latex/secushare
@@ -0,0 +1,56 @@
+#+TITLE: Secure Share
+#+AUTHOR: Gabor Toth
+#+SETUPFILE: .setup
+
+#+BEGIN_LaTeX
+\frontmatter
+
+\begin{titlepage}
+  \centering
+  \vspace*{10\baselineskip}
+  \huge
+  {{{title}}} 
+  \large
+  \\[2\baselineskip]
+  A framework for secure social interaction
+  \\[4\baselineskip]
+  \Large
+  {{{author}}} \\[2\baselineskip]
+  \normalsize
+  \vfill
+  \normalsize
+  May 2012
+%  \monthname\ \the\year
+\end{titlepage}
+#+END_LaTeX
+
+*                                                                  :NOEXPORT:
+
+#+BEGIN_ABSTRACT
+#+INCLUDE abstract
+#+END_ABSTRACT
+
+#+BEGIN_LaTeX
+\renewcommand{\contentsname}{\vspace*{-1em} Contents}
+\tableofcontents
+\listoffigures
+#+END_LaTeX
+
+#+LaTeX: \mainmatter
+
+#+INCLUDE intro
+#+INCLUDE req
+#+INCLUDE arch
+#+INCLUDE impl
+#+INCLUDE clients
+#+INCLUDE conclusion
+
+#+INCLUDE: .setup-back
+#+BEGIN_LaTeX
+\backmatter
+\addcontentsline{toc}{chapter}{Bibliography}
+\printbibliography
+#+END_LaTeX
+
+#+INCLUDE: abbrevs
+#+INCLUDE: syntax
diff --git a/secushare-old-latex/secushare.pdf 
b/secushare-old-latex/secushare.pdf
new file mode 100644
index 0000000..9486833
Binary files /dev/null and b/secushare-old-latex/secushare.pdf differ
diff --git a/secushare-old-latex/shot-irssyc.png 
b/secushare-old-latex/shot-irssyc.png
new file mode 100644
index 0000000..eedd898
Binary files /dev/null and b/secushare-old-latex/shot-irssyc.png differ
diff --git a/secushare-old-latex/shot-secushare.png 
b/secushare-old-latex/shot-secushare.png
new file mode 100644
index 0000000..0c3687e
Binary files /dev/null and b/secushare-old-latex/shot-secushare.png differ
diff --git a/secushare-old-latex/slides.pdf b/secushare-old-latex/slides.pdf
new file mode 100644
index 0000000..7f602db
Binary files /dev/null and b/secushare-old-latex/slides.pdf differ
diff --git a/secushare-old-latex/syntax b/secushare-old-latex/syntax
new file mode 100644
index 0000000..16c417c
--- /dev/null
+++ b/secushare-old-latex/syntax
@@ -0,0 +1,46 @@
+# <<syntax>>
+* Appendix 1 - PSYC Syntax
+
+Syntaxes in this section are described in Augmented Backus-Naur Form (ABNF).
+
+*PACKET SYNTAX*
+
+#+BEGIN_SRC abnf
+packet = routing-header [ content-length content ] "|" LF
+; the length of content is either implicit
+; (scan until LF "|" LF)
+; or explicitly reported in content-length.
+
+routing-header = *routing-modifier
+entity-header  = *sync-operation *entity-modifier
+content                = entity-header [ body LF ]
+content-length = [ length ] LF
+
+routing-modifier= operator variable ( simple-arg / LF )
+sync-operation  = ( "=" LF / "?" LF )
+entity-modifier = operator variable entity-arg
+entity-arg     = simple-arg / binary-arg / LF
+
+body           = method [ LF data ]
+
+operator       = "=" / ":" / "+" / "-" / "?" / "!" / "@"
+simple-arg     = HTAB text-data LF
+binary-arg     = SP length HTAB binary-data LF
+
+length         = 1*DIGIT
+binary-data    = *OCTET
+               ; a length byte long byte sequence
+
+method         = 1*kwchar
+variable       = 1*kwchar
+text-data      = *nonlchar
+
+data           = *OCTET
+               ; amount of bytes as given by length or until
+               ; an (LF "|" LF) sequence has been encountered
+
+nonlchar       = %x00-09 / %x0B-FF
+               ; any byte except \n
+kwchar         = %x30-39 / %x41-5A / %x61-7A / "_"
+               ; alphanumeric or _
+#+END_SRC
diff --git a/secushare-old-orgmode/2012-29C3.slides.org 
b/secushare-old-orgmode/2012-29C3.slides.org
new file mode 100644
index 0000000..3dded9b
--- /dev/null
+++ b/secushare-old-orgmode/2012-29C3.slides.org
@@ -0,0 +1,168 @@
+#+TITLE:     Introduction to SecuShare
+#+AUTHOR:    Daniel Reusche and Gabor Toth
+#+LANGUAGE:  en
+#+OPTIONS:   H:3 num:t toc:t \n:nil @:t ::t |:t ^:t -:t f:t *:t <:t
+#+OPTIONS:   TeX:t LaTeX:t skip:nil d:nil todo:t pri:nil tags:not-in-toc
+#+INFOJS_OPT: view:nil toc:nil ltoc:t mouse:underline buttons:0 
path:http://orgmode.org/org-info.js
+#+EXPORT_SELECT_TAGS: export
+#+EXPORT_EXCLUDE_TAGS: noexport
+
+#+startup: oddeven
+
+#+startup: beamer
+#+LaTeX_CLASS: beamer
+#+LaTeX_CLASS_OPTIONS: [bigger]
+#+latex_header: \mode<beamer>{\usetheme{Pittsburgh}}
+#+latex_header: \setbeamertemplate{navigation symbols}{}
+#+BEAMER_FRAME_LEVEL: 2
+
+* Introduction
+** Introduction
+   [[file:./img/unicast.png]]
+*** unicast                                                       :NOEXPORT:
+- natural communication  
+  - this is where we want to go
+
+** Introduction
+   [[file:./img/cloud.png]]
+*** server                                                        :NOEXPORT:
+- this is where we are now
+  - servers
+  - clouds
+  - clusters
+- all more or less centrally owned
+
+
+* Goals
+** Goals
+#+Begin_Center
+#+LaTeX: \textbf{\Huge{Transfer Anything}}
+#+End_Center
+*** Transfer                                                      :NOEXPORT:
+- Arbitrary stuff
+  - messages
+  - subscription lists, etc.
+  - files
+- future:
+  - push to talk
+  - television
+   
+** Goals
+#+Begin_Center
+#+LaTeX: \textbf{\Huge{Resilience}}
+#+End_Center
+*** Resilience                                                            
:NOEXPORT:
+- Do not get rid of servers but:
+  - Make nodes/content/servers easily exchangeable.
+- It is no problem if a server goes down, because traffic is rerouted.
+- If we put up another server, traffic gets quickly routed over it again.
+
+** Goals 
+#+Begin_Center
+#+LaTeX: \textbf{\Huge{Privacy}}
+#+End_Center
+*** Privacy                                                       :NOEXPORT:
+- Only intended recipients get the content. 
+- public stuff unencrypted
+- Make sure of this by end-to-end encryption
+- Groups and one-on-one chat
+  - goal mpotr
+    - encrypted
+    - authenticated
+    - repudiable
+- maybe even anonymity later:
+  - play with packet padding and timing
+  - onion routing possible
+    
+** Goals
+#+Begin_Center
+#+LaTeX: \textbf{\Huge{Scalability}}
+#+End_Center
+*** Scalability                                                   :NOEXPORT:
+- not only adsl nodes
+  - servers for routing, buffering
+    - bandwith, cpu, memory
+    - everything is encrypted, so no problem
+- Round Robin slow
+  - Carlos Mailverteiler
+  - vor 5 jahren 70% XMPP traffic presence messages
+  - http://about.psyc.eu/XMPP#Scalability
+- multicast distribution trees scale well
+  - psyc: several hundred instances of up to 10k users each
+
+** Goals
+   [[file:./img/multicast.png]]
+*** notes                                                         :NOEXPORT:
+- this is what we want to do 
+- make the first scale on large networks
+
+** Goals
+#+Begin_Center
+#+LaTeX: \textbf{\Huge{API}}
+#+End_Center
+*** API                                                           :NOEXPORT:
+- Ease of use for developers = more applications
+- we need gread (Easily adaptable) interfaces
+  - our grandmothers have to be able to use it
+- The developers will never be able to keep up with all the needs of the users
+* How Not To Do It
+** How Not To Do It
+#+Begin_Center
+#+LaTeX: \textbf{\Huge{Trust in Servers}}
+#+End_Center
+*** notes                                                         :NOEXPORT:
+- Can be seized 
+- server unfriendly legislation can be passed, eg liability
+- In current architectures, lots of data resides there
+- federation:
+  - data is visible, accessible on even more servers
+  - you have to trust even more admins
+- Central points of failure
+  - even with crypto, the data is not lost but the communication channels are
+- Servers are vulnerable to:
+  - Memory analysis
+- VPSs are vulnerable to :
+  - Being fed bad random data -> weak crypto
+
+** How Not To Do It
+#+Begin_Center
+#+LaTeX: \textbf{\Huge{Encryption in the Browser}}
+#+End_Center
+*** notes                                                         :NOEXPORT:
+- trust in integrity of whatever code you get from the server required
+- server compromised, all users compromised 
+- ssl ca system broken
+
+* Technologies
+** Technologies
+#+Begin_Center
+#+LaTeX: \textbf{\Huge{GNUnet}}
+#+End_Center
+*** GNUnet                                                        :NOEXPORT:
+- Use it for routing and encryption.
+- anonymous filehosting
+- TUM, in the heritage of freenet
+
+** Technologies
+#+Begin_Center
+#+LaTeX: \textbf{\Huge{PSYC}}
+#+End_Center
+*** PSYC                                                          :NOEXPORT:
+- Use it for multicast binary transport and trust graph.
+- Scales well, several hundred instances with 10k users each 
+
+* About Us
+** Contributors
+- Carlo von lynX
+- Gabor Toth
+- Matthias Baumann
+- Daniel Reusche
+** URL
+#+Begin_Center                        
+#+LaTeX: \textbf{\Huge{secushare.org}}
+#+End_Center
+
+
+   
+
+
diff --git a/secushare-old-orgmode/2012-SIGINT.slides.org 
b/secushare-old-orgmode/2012-SIGINT.slides.org
new file mode 100644
index 0000000..1625442
--- /dev/null
+++ b/secushare-old-orgmode/2012-SIGINT.slides.org
@@ -0,0 +1,168 @@
+#+TITLE:     Introduction to SecuShare
+#+AUTHOR:    Daniel Reusche
+#+LANGUAGE:  en
+#+OPTIONS:   H:3 num:t toc:t \n:nil @:t ::t |:t ^:t -:t f:t *:t <:t
+#+OPTIONS:   TeX:t LaTeX:t skip:nil d:nil todo:t pri:nil tags:not-in-toc
+#+INFOJS_OPT: view:nil toc:nil ltoc:t mouse:underline buttons:0 
path:http://orgmode.org/org-info.js
+#+EXPORT_SELECT_TAGS: export
+#+EXPORT_EXCLUDE_TAGS: noexport
+
+#+startup: oddeven
+
+#+startup: beamer
+#+LaTeX_CLASS: beamer
+#+LaTeX_CLASS_OPTIONS: [bigger]
+#+latex_header: \mode<beamer>{\usetheme{Pittsburgh}}
+#+latex_header: \setbeamertemplate{navigation symbols}{}
+#+BEAMER_FRAME_LEVEL: 2
+
+* Introduction
+** Introduction
+   [[file:./img/unicast.png]]
+*** unicast                                                       :NOEXPORT:
+- natural communication  
+  - this is where we want to go
+
+** Introduction
+   [[file:./img/cloud.png]]
+*** server                                                        :NOEXPORT:
+- this is where we are now
+  - servers
+  - clouds
+  - clusters
+- all more or less centrally owned
+
+
+* Goals
+** Goals
+#+Begin_Center
+#+LaTeX: \textbf{\Huge{Transfer Anything}}
+#+End_Center
+*** Transfer                                                      :NOEXPORT:
+- Arbitrary stuff
+  - messages
+  - subscription lists, etc.
+  - files
+- future:
+  - push to talk
+  - television
+   
+** Goals
+#+Begin_Center
+#+LaTeX: \textbf{\Huge{Resilience}}
+#+End_Center
+*** Resilience                                                            
:NOEXPORT:
+- Do not get rid of servers but:
+  - Make nodes/content/servers easily exchangeable.
+- It is no problem if a server goes down, because traffic is rerouted.
+- If we put up another server, traffic gets quickly routed over it again.
+
+** Goals 
+#+Begin_Center
+#+LaTeX: \textbf{\Huge{Privacy}}
+#+End_Center
+*** Privacy                                                       :NOEXPORT:
+- Only intended recipients get the content. 
+- public stuff unencrypted
+- Make sure of this by end-to-end encryption
+- Groups and one-on-one chat
+  - goal mpotr
+    - encrypted
+    - authenticated
+    - repudiable
+- maybe even anonymity later:
+  - play with packet padding and timing
+  - onion routing possible
+    
+** Goals
+#+Begin_Center
+#+LaTeX: \textbf{\Huge{Scalability}}
+#+End_Center
+*** Scalability                                                   :NOEXPORT:
+- not only adsl nodes
+  - servers for routing, buffering
+    - bandwith, cpu, memory
+    - everything is encrypted, so no problem
+- Round Robin slow
+  - Carlos Mailverteiler
+  - vor 5 jahren 70% XMPP traffic presence messages
+  - http://about.psyc.eu/XMPP#Scalability
+- multicast distribution trees scale well
+  - psyc: several hundred instances of up to 10k users each
+
+** Goals
+   [[file:./img/multicast.png]]
+*** notes                                                         :NOEXPORT:
+- this is what we want to do 
+- make the first scale on large networks
+
+** Goals
+#+Begin_Center
+#+LaTeX: \textbf{\Huge{API}}
+#+End_Center
+*** API                                                           :NOEXPORT:
+- Ease of use for developers = more applications
+- we need gread (Easily adaptable) interfaces
+  - our grandmothers have to be able to use it
+- The developers will never be able to keep up with all the needs of the users
+* How Not To Do It
+** How Not To Do It
+#+Begin_Center
+#+LaTeX: \textbf{\Huge{Trust in Servers}}
+#+End_Center
+*** notes                                                         :NOEXPORT:
+- Can be seized 
+- server unfriendly legislation can be passed, eg liability
+- In current architectures, lots of data resides there
+- federation:
+  - data is visible, accessible on even more servers
+  - you have to trust even more admins
+- Central points of failure
+  - even with crypto, the data is not lost but the communication channels are
+- Servers are vulnerable to:
+  - Memory analysis
+- VPSs are vulnerable to :
+  - Being fed bad random data -> weak crypto
+
+** How Not To Do It
+#+Begin_Center
+#+LaTeX: \textbf{\Huge{Encryption in the Browser}}
+#+End_Center
+*** notes                                                         :NOEXPORT:
+- trust in integrity of whatever code you get from the server required
+- server compromised, all users compromised 
+- ssl ca system broken
+
+* Technologies
+** Technologies
+#+Begin_Center
+#+LaTeX: \textbf{\Huge{GNUnet}}
+#+End_Center
+*** GNUnet                                                        :NOEXPORT:
+- Use it for routing and encryption.
+- anonymous filehosting
+- TUM, in the heritage of freenet
+
+** Technologies
+#+Begin_Center
+#+LaTeX: \textbf{\Huge{PSYC}}
+#+End_Center
+*** PSYC                                                          :NOEXPORT:
+- Use it for multicast binary transport and trust graph.
+- Scales well, several hundred instances with 10k users each 
+
+* About Us
+** Contributors
+- Carlo von lynX
+- Gabor Toth
+- Matthias Baumann
+- Daniel Reusche
+** URL
+#+Begin_Center                        
+#+LaTeX: \textbf{\Huge{secushare.org}}
+#+End_Center
+
+
+   
+
+
diff --git a/secushare-old-orgmode/2012-SIGINT.slides.pdf 
b/secushare-old-orgmode/2012-SIGINT.slides.pdf
new file mode 100644
index 0000000..29a3d85
Binary files /dev/null and b/secushare-old-orgmode/2012-SIGINT.slides.pdf differ
diff --git a/secushare-old-orgmode/2012-eth0.slides.org 
b/secushare-old-orgmode/2012-eth0.slides.org
new file mode 100644
index 0000000..3dded9b
--- /dev/null
+++ b/secushare-old-orgmode/2012-eth0.slides.org
@@ -0,0 +1,168 @@
+#+TITLE:     Introduction to SecuShare
+#+AUTHOR:    Daniel Reusche and Gabor Toth
+#+LANGUAGE:  en
+#+OPTIONS:   H:3 num:t toc:t \n:nil @:t ::t |:t ^:t -:t f:t *:t <:t
+#+OPTIONS:   TeX:t LaTeX:t skip:nil d:nil todo:t pri:nil tags:not-in-toc
+#+INFOJS_OPT: view:nil toc:nil ltoc:t mouse:underline buttons:0 
path:http://orgmode.org/org-info.js
+#+EXPORT_SELECT_TAGS: export
+#+EXPORT_EXCLUDE_TAGS: noexport
+
+#+startup: oddeven
+
+#+startup: beamer
+#+LaTeX_CLASS: beamer
+#+LaTeX_CLASS_OPTIONS: [bigger]
+#+latex_header: \mode<beamer>{\usetheme{Pittsburgh}}
+#+latex_header: \setbeamertemplate{navigation symbols}{}
+#+BEAMER_FRAME_LEVEL: 2
+
+* Introduction
+** Introduction
+   [[file:./img/unicast.png]]
+*** unicast                                                       :NOEXPORT:
+- natural communication  
+  - this is where we want to go
+
+** Introduction
+   [[file:./img/cloud.png]]
+*** server                                                        :NOEXPORT:
+- this is where we are now
+  - servers
+  - clouds
+  - clusters
+- all more or less centrally owned
+
+
+* Goals
+** Goals
+#+Begin_Center
+#+LaTeX: \textbf{\Huge{Transfer Anything}}
+#+End_Center
+*** Transfer                                                      :NOEXPORT:
+- Arbitrary stuff
+  - messages
+  - subscription lists, etc.
+  - files
+- future:
+  - push to talk
+  - television
+   
+** Goals
+#+Begin_Center
+#+LaTeX: \textbf{\Huge{Resilience}}
+#+End_Center
+*** Resilience                                                            
:NOEXPORT:
+- Do not get rid of servers but:
+  - Make nodes/content/servers easily exchangeable.
+- It is no problem if a server goes down, because traffic is rerouted.
+- If we put up another server, traffic gets quickly routed over it again.
+
+** Goals 
+#+Begin_Center
+#+LaTeX: \textbf{\Huge{Privacy}}
+#+End_Center
+*** Privacy                                                       :NOEXPORT:
+- Only intended recipients get the content. 
+- public stuff unencrypted
+- Make sure of this by end-to-end encryption
+- Groups and one-on-one chat
+  - goal mpotr
+    - encrypted
+    - authenticated
+    - repudiable
+- maybe even anonymity later:
+  - play with packet padding and timing
+  - onion routing possible
+    
+** Goals
+#+Begin_Center
+#+LaTeX: \textbf{\Huge{Scalability}}
+#+End_Center
+*** Scalability                                                   :NOEXPORT:
+- not only adsl nodes
+  - servers for routing, buffering
+    - bandwith, cpu, memory
+    - everything is encrypted, so no problem
+- Round Robin slow
+  - Carlos Mailverteiler
+  - vor 5 jahren 70% XMPP traffic presence messages
+  - http://about.psyc.eu/XMPP#Scalability
+- multicast distribution trees scale well
+  - psyc: several hundred instances of up to 10k users each
+
+** Goals
+   [[file:./img/multicast.png]]
+*** notes                                                         :NOEXPORT:
+- this is what we want to do 
+- make the first scale on large networks
+
+** Goals
+#+Begin_Center
+#+LaTeX: \textbf{\Huge{API}}
+#+End_Center
+*** API                                                           :NOEXPORT:
+- Ease of use for developers = more applications
+- we need gread (Easily adaptable) interfaces
+  - our grandmothers have to be able to use it
+- The developers will never be able to keep up with all the needs of the users
+* How Not To Do It
+** How Not To Do It
+#+Begin_Center
+#+LaTeX: \textbf{\Huge{Trust in Servers}}
+#+End_Center
+*** notes                                                         :NOEXPORT:
+- Can be seized 
+- server unfriendly legislation can be passed, eg liability
+- In current architectures, lots of data resides there
+- federation:
+  - data is visible, accessible on even more servers
+  - you have to trust even more admins
+- Central points of failure
+  - even with crypto, the data is not lost but the communication channels are
+- Servers are vulnerable to:
+  - Memory analysis
+- VPSs are vulnerable to :
+  - Being fed bad random data -> weak crypto
+
+** How Not To Do It
+#+Begin_Center
+#+LaTeX: \textbf{\Huge{Encryption in the Browser}}
+#+End_Center
+*** notes                                                         :NOEXPORT:
+- trust in integrity of whatever code you get from the server required
+- server compromised, all users compromised 
+- ssl ca system broken
+
+* Technologies
+** Technologies
+#+Begin_Center
+#+LaTeX: \textbf{\Huge{GNUnet}}
+#+End_Center
+*** GNUnet                                                        :NOEXPORT:
+- Use it for routing and encryption.
+- anonymous filehosting
+- TUM, in the heritage of freenet
+
+** Technologies
+#+Begin_Center
+#+LaTeX: \textbf{\Huge{PSYC}}
+#+End_Center
+*** PSYC                                                          :NOEXPORT:
+- Use it for multicast binary transport and trust graph.
+- Scales well, several hundred instances with 10k users each 
+
+* About Us
+** Contributors
+- Carlo von lynX
+- Gabor Toth
+- Matthias Baumann
+- Daniel Reusche
+** URL
+#+Begin_Center                        
+#+LaTeX: \textbf{\Huge{secushare.org}}
+#+End_Center
+
+
+   
+
+
diff --git a/secushare-old-orgmode/slides.org b/secushare-old-orgmode/slides.org
new file mode 100644
index 0000000..e81bf2e
--- /dev/null
+++ b/secushare-old-orgmode/slides.org
@@ -0,0 +1,318 @@
+#+TITLE:     Secure Share
+#+AUTHOR:    Daniel Reusche and Gabor Toth
+#+LANGUAGE:  en
+#+OPTIONS:   H:3 num:t toc:nil \n:nil @:t ::t |:t ^:t -:t f:t *:t <:t
+#+OPTIONS:   TeX:t LaTeX:t skip:nil d:nil todo:t pri:nil tags:not-in-toc
+#+INFOJS_OPT: view:nil toc:nil ltoc:t mouse:underline buttons:0 
path:http://orgmode.org/org-info.js
+
+#+startup: oddeven
+
+#+startup: beamer
+#+LaTeX_CLASS: beamer
+#+LaTeX_CLASS_OPTIONS: [bigger]
+##+LaTeX_HEADER: \usetheme{Darmstadt}
+#+LaTeX_HEADER: \usetheme{Frankfurt}
+##+LaTeX_HEADER: \usetheme{Boadilla}
+##+LaTeX_HEADER: \usetheme{Pittsburgh}
+##+LaTeX_HEADER: \setbeamertemplate{navigation symbols}{}
+#+BEAMER_FRAME_LEVEL: 3
+
+* Introduction
+
+** Secure Share
+
+*** Secure Share
+A framework for secure and privacy-protecting social interaction based on
+peer-to-peer technology
+
+#** Federation - Unicast                                            :noexport:
+##+ATTR_LaTeX: width=8cm
+#[[./img/unicast.png]]
+
+*** Goals
+**** arbitrary messanging 
+***** from one-to-one to many-to-many
+***** status updates and messages
+**** file transfer
+***** sharing of pictures, music etc.
+***** collaborative document editing
+** Privacy
+
+*** Privacy
+#+BEGIN_CENTER
+#+LaTeX: \textbf{\Huge{Privacy}}
+#+END_CENTER
+
+*** Ideal Case
+[[../img/unicast.png]]
+*** Centralized services
+#+BEGIN_CENTER
+#+ATTR_LaTeX: width=8cm
+[[../img/cloud.png]]
+#+END_CENTER
+
+*** Privacy requirements
+**** end-to-end encryption
+**** forward secrecy
+**** padding of packets
+**** delayed forwarding
+**** private contact list
+**** free and open source software
+*** Approach: federated systems
+
+\textbf{\Large{And why not to use them}}
+**** personal data on servers
+**** personal data shared with even more server operators
+**** only link-level encryption
+**** PGP, OTR not enough
+
+** Scalability
+
+*** Scalability
+#+BEGIN_CENTER
+#+LaTeX: \textbf{\Huge{Scalability}}
+#+END_CENTER
+
+*** Social interaction
+**** one-to-many status updates
+**** many-to-many group communication
+
+*** Multicast
+
+#+BEGIN_CENTER
+#+ATTR_LaTeX: width=7cm
+[[../img/multicast.png]]
+#+END_CENTER
+
+* Architecture
+
+** Architecture
+
+*** Architecture
+
+#+BEGIN_CENTER
+#+LaTeX: \textbf{\Huge{Architecture}}
+#+END_CENTER
+
+** Peer-to-Peer
+
+*** Friend-to-friend architecture
+**** connect to trusted nodes
+**** prevents active attacks
+
+*** Personal devices
+**** Software runs on personal devices
+**** Data is stored on personal devices
+
+*** Personal devices
+**** laptop, PC
+**** plug computers, home routers, servers
+**** smartphones
+
+*** Peer-to-peer framework requirements
+**** free/libre/open-source software
+**** multi-platform, lightweight, written in a compiled language
+**** provides API for essential P2P features
+***** bootstrapping, addressing, routing, encryption, NAT traversal
+
+*** GNUnet
+**** written in C
+**** multi-platform
+**** modular framework
+**** advanced NAT traversal
+
+*** GNUnet
+**** multiple transport methods
+***** TCP, UDP
+***** HTTP, HTTPS
+***** SMTP
+***** ad-hoc WiFi
+
+*** GNUnet
+**** distributed hash table (DHT)
+**** file sharing
+***** based on DHT and GAP
+**** various routing schemes
+***** fish-eye bounded distance vector protocol
+****** gossiping in a limited neighborhood
+****** improves connectivity
+****** onion routing
+***** mesh service
+****** supports multicast
+****** uses DHT for routing
+
+*** psycd
+
+**** messaging protocol
+**** manages connections, friendship between users
+**** client interface
+
+*** GNUnet - components and message flow
+
+#+BEGIN_CENTER
+#+ATTR_LaTeX: width=9.5cm
+[[./gnunet-h.png]]
+#+END_CENTER
+
+** Implementation
+
+*** Implementation
+
+#+BEGIN_CENTER
+#+LaTeX: \textbf{\Huge{Implementation}}
+#+END_CENTER
+
+*** Components
+
+**** libpsyc
+
+**** psycd
+
+**** GNUnet libraries
+
+*** Identifiers
+
+**** Federated PSYC
+
+***** based on DNS
+
+: psyc://example.net/~alice#friends
+
+**** P2P PSYC
+
+***** based on public key
+
+: psyc://I0GC...L29G:g/#friends
+
+*** Contacting peers
+
+**** initial contact: hello message
+
+***** public key
+
+***** current addresses
+
+**** next time contact to same address
+
+**** or find new address through other peers
+
+*** Circuits
+
+**** GNUnet
+
+**** TCP
+
+**** UNIX domain sockets
+
+**** TLS
+
+*** Entities
+
+**** person
+***** clients link to person entity
+***** can subscribe other entities
+
+**** place
+***** group communication
+***** news feeds
+
+*** Multicast contexts
+
+[[./context.png]]
+
+*** Distributed state
+
+**** profile data, context membership
+
+**** push changes once
+
+**** synchronize after subscription
+
+**** recover lost packets
+
+**** syntax changes to support more complex data structures
+
+*** Storage
+
+**** incoming and outgoing packets
+
+**** state variables
+
+**** SQLite database
+
+***** multiplatform
+
+***** lightweight
+
+***** small memory footprint
+
+* Clients
+
+** Clients
+
+*** Clients
+
+#+BEGIN_CENTER
+#+LaTeX: \textbf{\Huge{Clients}}
+#+END_CENTER
+
+*** Desktop clients
+
+**** secushare
+***** based on Qt/QML
+***** multiplatform
+***** touch UI
+
+**** irssyc
+***** based on irssi
+***** intended for debugging and for advanced users
+
+*** Web interface
+
+**** JavaScript
+
+**** WebSocket
+
+*** Mobile clients
+
+**** port GNUnet to mobile devices
+
+**** or client only approach
+
+*** Extensibility
+
+**** channel API
+***** using a sandboxed QML or HTML view
+***** JavaScript API
+***** enables easy app development
+***** access only channel data
+
+**** client API
+***** using libpsycclient
+***** allows for developing full-fledged clients
+
+* Future work
+
+** Future work
+
+*** Future work
+
+#+BEGIN_CENTER
+#+LaTeX: \textbf{\Huge{Future work}}
+#+END_CENTER
+
+*** Future work
+
+**** routing layer - multicast
+
+**** separate user and node identities
+
+**** user interface 
+
+***** improvements on desktop
+
+***** implement web UI
+
+***** implement mobile UI
+
+**** file transfers

-- 
To stop receiving notification emails like this one, please contact
address@hidden



reply via email to

[Prev in Thread] Current Thread [Next in Thread]