--- /dev/null
+<map version="1.0.0">
+<!-- To view this file, download free mind mapping software FreeMind from http://freemind.sourceforge.net -->
+<node CREATED="1346098613886" ID="ID_792047578" MODIFIED="1346104814085" STYLE="fork">
+<richcontent TYPE="NODE"><html>
+ <head>
+
+ </head>
+ <body>
+ <p style="text-align: center">
+ <b>DSHT - A distributed social hash table</b>
+ </p>
+ <p style="text-align: center">
+ <font size="5">Revision: <b>1</b></font>
+ </p>
+ </body>
+</html>
+</richcontent>
+<font NAME="Dialog" SIZE="20"/>
+<node CREATED="1346099021128" ID="ID_227190792" MODIFIED="1346103084742" POSITION="right" STYLE="fork" TEXT="Basic functionality">
+<font BOLD="true" NAME="Dialog" SIZE="16"/>
+<node CREATED="1346099028021" ID="ID_1215512559" MODIFIED="1346103084742" STYLE="fork" TEXT="Finding nodes in the network">
+<node CREATED="1346099190103" ID="ID_1064160605" MODIFIED="1346103084742" STYLE="fork" TEXT="A node must know which other nodes it can contact">
+<node CREATED="1346099296328" ID="ID_412824123" MODIFIED="1346103084742" STYLE="fork" TEXT="For sharing objects of specific types"/>
+<node CREATED="1346099321048" ID="ID_931174944" MODIFIED="1346103084743" STYLE="fork" TEXT="For downloading objects from other nodes"/>
+</node>
+<node CREATED="1346099415659" ID="ID_1967541063" MODIFIED="1346103084743" STYLE="fork" TEXT="Gain general knowledge about the network">
+<node CREATED="1346099432433" ID="ID_1990164838" MODIFIED="1346103084743" STYLE="fork" TEXT="Improving routing information"/>
+<node CREATED="1346099439467" ID="ID_1321463167" MODIFIED="1346103084743" STYLE="fork" TEXT="Faster lookup of desired nodes"/>
+</node>
+</node>
+<node CREATED="1346099042290" ID="ID_1819822671" MODIFIED="1346103084743" STYLE="fork" TEXT="Announcing to the node network">
+<font NAME="Dialog" SIZE="12"/>
+<node CREATED="1346099463189" ID="ID_906398649" MODIFIED="1346103084743" STYLE="fork" TEXT="Becoming visible to the network">
+<node CREATED="1346099471550" ID="ID_193664360" MODIFIED="1346103084743" STYLE="fork" TEXT="That means to other nodes"/>
+<node CREATED="1346099478844" ID="ID_582345905" MODIFIED="1346103084743" STYLE="fork" TEXT="Else everyone cannot know about that new node"/>
+</node>
+</node>
+<node CREATED="1346099107593" ID="ID_1734219346" MODIFIED="1346103556450" STYLE="fork" TEXT="Inserting objects into the network">
+<node CREATED="1346099694574" ID="ID_720083438" MODIFIED="1346103432738" STYLE="fork" TEXT="To make the objects become known to other nodes"/>
+</node>
+</node>
+<node CREATED="1346099748929" ID="ID_1319216602" MODIFIED="1346103084743" POSITION="left" STYLE="fork" TEXT="Distribution of routing information">
+<font BOLD="true" NAME="Dialog" SIZE="16"/>
+<node CREATED="1346100298124" ID="ID_973992697" MODIFIED="1346103084743" STYLE="fork" TEXT="Short: RI">
+<font BOLD="true" NAME="Dialog" SIZE="12"/>
+<icon BUILTIN="info"/>
+</node>
+<node CREATED="1346100660126" ID="ID_1028970963" MODIFIED="1346103084743" STYLE="fork" TEXT="General">
+<font BOLD="true" NAME="Dialog" SIZE="12"/>
+<icon BUILTIN="help"/>
+<node CREATED="1346102375113" ID="ID_568972754" MODIFIED="1346103084743" STYLE="fork" TEXT="The IP/port number of a node"/>
+</node>
+<node CREATED="1346100348545" ID="ID_678425055" MODIFIED="1346103084743" STYLE="fork" TEXT="Received RI may not be trusted">
+<node CREATED="1346100389862" ID="ID_1653709547" MODIFIED="1346103084743" STYLE="fork" TEXT="This must be verified"/>
+<node CREATED="1346100774052" ID="ID_687834104" MODIFIED="1346103084744" STYLE="fork" TEXT="May contain malicious/badly formed data"/>
+<node CREATED="1346100861187" ID="ID_1027008773" MODIFIED="1346103084744" STYLE="fork" TEXT="May be sent along other messages"/>
+<node CREATED="1346100909437" ID="ID_124131404" MODIFIED="1346103084744" STYLE="fork" TEXT="Is received from a node in x' level"/>
+</node>
+<node CREATED="1346100372824" ID="ID_95709529" MODIFIED="1346103084744" STYLE="fork" TEXT="Own gained RI can be trusted">
+<node CREATED="1346100398448" ID="ID_837453523" MODIFIED="1346103084744" STYLE="fork" TEXT="Is already partly verified">
+<node CREATED="1346101849885" ID="ID_1377879492" MODIFIED="1346103084744" STYLE="fork" TEXT="Verifiable parts">
+<node CREATED="1346101970791" ID="ID_676115182" MODIFIED="1346103084744" STYLE="fork" TEXT="Valid IP/port combination format"/>
+<node CREATED="1346101980990" ID="ID_220514177" MODIFIED="1346103084744" STYLE="fork" TEXT="Is reachable at announced IP and port"/>
+<node CREATED="1346102013619" ID="ID_1307469748" MODIFIED="1346103084744" STYLE="fork" TEXT="Maybe later signed traffic?">
+<icon BUILTIN="help"/>
+<icon BUILTIN="idea"/>
+</node>
+</node>
+<node CREATED="1346101733435" ID="ID_1138963265" MODIFIED="1346103084744" STYLE="fork" TEXT="Unverifiable parts">
+<node CREATED="1346101859857" ID="ID_1548363637" MODIFIED="1346105643493" STYLE="fork" TEXT="Runs legit/original software">
+<icon BUILTIN="button_ok"/>
+</node>
+<node CREATED="1346101883037" ID="ID_1376109029" MODIFIED="1346105646933" STYLE="fork" TEXT="Hasn't malicious implementations">
+<icon BUILTIN="button_cancel"/>
+<node CREATED="1346101914704" ID="ID_833819969" MODIFIED="1346103992970" STYLE="fork" TEXT="Traffic analysis"/>
+<node CREATED="1346101924980" ID="ID_739888184" MODIFIED="1346103084744" STYLE="fork" TEXT="Protocol exploitation"/>
+<node CREATED="1346101946657" ID="ID_399571481" MODIFIED="1346103084744" STYLE="fork" TEXT="Deep packet inspection"/>
+</node>
+</node>
+</node>
+<node CREATED="1346101572340" ID="ID_1858484509" MODIFIED="1346103084744" STYLE="fork" TEXT="Known nodes are reachable"/>
+<node CREATED="1346101581529" ID="ID_1107430804" MODIFIED="1346103084745" STYLE="fork" TEXT="... and seems to be legit">
+<node CREATED="1346101603771" ID="ID_1478611500" MODIFIED="1346103084745" STYLE="fork" TEXT="Possibly spam/fake node"/>
+<node CREATED="1346101615125" ID="ID_1471059123" MODIFIED="1346103084745" STYLE="fork" TEXT="It still may be bad">
+<node CREATED="1346101626965" ID="ID_1604559475" MODIFIED="1346103084745" STYLE="fork" TEXT="That means following the protocol but doing malicious things in background"/>
+<node CREATED="1346101653898" ID="ID_963674018" MODIFIED="1346103084745" STYLE="fork" TEXT="This is never known to all other nodes"/>
+<node CREATED="1346101678996" ID="ID_291619375" MODIFIED="1346103084745" STYLE="fork" TEXT="Only social trust may help solve this problem"/>
+</node>
+</node>
+</node>
+</node>
+<node CREATED="1346099775610" ID="ID_1399773870" MODIFIED="1346103084745" POSITION="left" STYLE="fork" TEXT="Distribution of storage information">
+<font BOLD="true" NAME="Dialog" SIZE="16"/>
+<node CREATED="1346100316200" ID="ID_713706886" MODIFIED="1346103084745" STYLE="fork" TEXT="Short: SI">
+<font BOLD="true" NAME="Dialog" SIZE="12"/>
+<icon BUILTIN="info"/>
+</node>
+<node CREATED="1346100674291" ID="ID_1266389108" MODIFIED="1346103084745" STYLE="fork" TEXT="General">
+<font BOLD="true" NAME="Dialog" SIZE="12"/>
+<node CREATED="1346102524232" ID="ID_696498680" MODIFIED="1346103084745" STYLE="fork" TEXT="Session id of storing node(s)"/>
+<node CREATED="1346102613740" ID="ID_15245790" MODIFIED="1346103084745" STYLE="fork" TEXT="Hash chunk of stored object"/>
+<node CREATED="1346102650501" ID="ID_16855536" MODIFIED="1346103084745" STYLE="fork" TEXT="Other hashes of stored object">
+<node CREATED="1346102680428" ID="ID_354908104" MODIFIED="1346103084745" STYLE="fork" TEXT="Maybe TigerTreeHash?">
+<icon BUILTIN="help"/>
+</node>
+<node CREATED="1346105680966" ID="ID_650457507" MODIFIED="1346105694719" TEXT="Allows other way of checking data integrity"/>
+</node>
+</node>
+</node>
+<node CREATED="1346099820019" ID="ID_155990784" MODIFIED="1346103084745" POSITION="left" STYLE="fork" TEXT="Fault tolerant">
+<font BOLD="true" NAME="Dialog" SIZE="16"/>
+<node CREATED="1346099836507" ID="ID_796192772" MODIFIED="1346103084745" STYLE="fork" TEXT="Archived by redundancy">
+<node CREATED="1346099851359" ID="ID_616727287" MODIFIED="1346103084745" STYLE="fork" TEXT="Redundant copies of routing and storage informations">
+<node CREATED="1346100026195" ID="ID_1567519522" MODIFIED="1346105595714" STYLE="fork" TEXT="Routing information is very important">
+<node CREATED="1346100071712" ID="ID_1079398228" MODIFIED="1346103084746" STYLE="fork" TEXT="Better routing information means finding alternative routes"/>
+</node>
+<node CREATED="1346100037266" ID="ID_1162644751" MODIFIED="1346103084746" STYLE="fork" TEXT="Storage information is lesser important">
+<node CREATED="1346100120954" ID="ID_345266821" MODIFIED="1346103084746" STYLE="fork" TEXT="It is not that unimportant"/>
+<node CREATED="1346100135934" ID="ID_1413641887" MODIFIED="1346105843274" STYLE="fork" TEXT="Can be restored by reinserting the same object">
+<node CREATED="1346100151330" ID="ID_1631864931" MODIFIED="1346105859264" STYLE="fork" TEXT="Hashes are important to be unique">
+<icon BUILTIN="messagebox_warning"/>
+</node>
+<node CREATED="1346100176442" ID="ID_590807868" MODIFIED="1346103084746" STYLE="fork" TEXT="... and collision-free (in theory)"/>
+</node>
+</node>
+</node>
+<node CREATED="1346099868164" ID="ID_922060512" MODIFIED="1346103084746" STYLE="fork" TEXT="These informations must be verifiable"/>
+</node>
+<node CREATED="1346099894568" ID="ID_1902871566" MODIFIED="1346103084746" STYLE="fork" TEXT="If a node goes offline, no information must be lost">
+<node CREATED="1346099945796" ID="ID_533922142" MODIFIED="1346103084746" STYLE="fork" TEXT="This would be fatal, because objects cannot be found"/>
+<node CREATED="1346099981324" ID="ID_1230467136" MODIFIED="1346103084746" STYLE="fork" TEXT="Would cause "black outs" in the network"/>
+</node>
+</node>
+<node CREATED="1346104531733" ID="ID_768306510" MODIFIED="1346104544659" POSITION="right" TEXT="Social trust">
+<font BOLD="true" NAME="Dialog" SIZE="16"/>
+<node CREATED="1346104549588" ID="ID_1382079221" MODIFIED="1346105508073" TEXT="Behind nodes are real persons">
+<node CREATED="1346105486352" ID="ID_1815491331" MODIFIED="1346105516318" TEXT="He/she download the code and run it"/>
+</node>
+<node CREATED="1346104563679" ID="ID_1801687220" MODIFIED="1346104581656" TEXT="People may give trust to other people">
+<node CREATED="1346104883231" ID="ID_435846132" MODIFIED="1346104896660" TEXT="They know each other in real life">
+<node CREATED="1346104966303" ID="ID_1652697708" MODIFIED="1346104971236" TEXT="Long-term friends"/>
+<node CREATED="1346104971771" ID="ID_349672853" MODIFIED="1346104991747" TEXT="Family relatives"/>
+</node>
+<node CREATED="1346104900145" ID="ID_1866338412" MODIFIED="1346104933993" TEXT="They trust that that the other one has a good behaviour">
+<node CREATED="1346104939602" ID="ID_239287022" MODIFIED="1346105069352" TEXT="He/she won't run malicious code"/>
+</node>
+</node>
+<node CREATED="1346105337705" ID="ID_994373891" MODIFIED="1346105441805" TEXT="Trust can be inherited">
+<node CREATED="1346104588461" ID="ID_211054341" MODIFIED="1346104602437" TEXT="Inherited trust cannot ultimately be trusted">
+<node CREATED="1346104609786" ID="ID_544069972" MODIFIED="1346104875537">
+<richcontent TYPE="NODE"><html>
+ <head>
+
+ </head>
+ <body>
+ <p style="text-align: center">
+ Say: if person A trusts person B, and person C trust person A, then person C cannot automatically trust person B.
+ </p>
+ </body>
+</html></richcontent>
+<icon BUILTIN="messagebox_warning"/>
+<icon BUILTIN="idea"/>
+</node>
+<node CREATED="1346105141011" ID="ID_567826817" MODIFIED="1346105158067" TEXT="Same for both negative and positive trust"/>
+</node>
+<node CREATED="1346105175088" ID="ID_287244608" MODIFIED="1346105376103" TEXT="Needs to be trusted separately"/>
+</node>
+</node>
+</node>
+</map>