Browse Source

peer: add tor shadow test

Justin Tracey 2 months ago
parent
commit
4f993b3613
93 changed files with 673 additions and 0 deletions
  1. 2 0
      shadow/peer-tor/conf/authgen.pw
  2. 3 0
      shadow/peer-tor/conf/authgen.torrc
  3. 1 0
      shadow/peer-tor/conf/shadowresolv.conf
  4. 27 0
      shadow/peer-tor/conf/tgen.client.graphml.xml
  5. 8 0
      shadow/peer-tor/conf/tgen.server.graphml.xml
  6. 29 0
      shadow/peer-tor/conf/tgen.torclient.graphml.xml
  7. 9 0
      shadow/peer-tor/conf/tor.authority.torrc
  8. 4 0
      shadow/peer-tor/conf/tor.client.torrc
  9. 26 0
      shadow/peer-tor/conf/tor.common.torrc
  10. 1 0
      shadow/peer-tor/conf/tor.exit.torrc
  11. 1 0
      shadow/peer-tor/conf/tor.non-exit.torrc
  12. 3 0
      shadow/peer-tor/conf/tor.relay.torrc
  13. 61 0
      shadow/peer-tor/run.sh
  14. 1 0
      shadow/peer-tor/shadow.data.template/hosts/4uthority/fingerprint
  15. 39 0
      shadow/peer-tor/shadow.data.template/hosts/4uthority/keys/authority_certificate
  16. 41 0
      shadow/peer-tor/shadow.data.template/hosts/4uthority/keys/authority_identity_key
  17. 15 0
      shadow/peer-tor/shadow.data.template/hosts/4uthority/keys/authority_signing_key
  18. 15 0
      shadow/peer-tor/shadow.data.template/hosts/4uthority/keys/secret_id_key
  19. 15 0
      shadow/peer-tor/shadow.data.template/hosts/4uthority/keys/secret_onion_key
  20. 0 0
      shadow/peer-tor/shadow.data.template/hosts/4uthority/torrc
  21. 3 0
      shadow/peer-tor/shadow.data.template/hosts/4uthority/torrc-defaults
  22. 1 0
      shadow/peer-tor/shadow.data.template/hosts/exit1/fingerprint
  23. 15 0
      shadow/peer-tor/shadow.data.template/hosts/exit1/keys/secret_id_key
  24. 15 0
      shadow/peer-tor/shadow.data.template/hosts/exit1/keys/secret_onion_key
  25. BIN
      shadow/peer-tor/shadow.data.template/hosts/exit1/keys/secret_onion_key_ntor
  26. 0 0
      shadow/peer-tor/shadow.data.template/hosts/exit1/torrc
  27. 3 0
      shadow/peer-tor/shadow.data.template/hosts/exit1/torrc-defaults
  28. 1 0
      shadow/peer-tor/shadow.data.template/hosts/exit2/fingerprint
  29. 15 0
      shadow/peer-tor/shadow.data.template/hosts/exit2/keys/secret_id_key
  30. 15 0
      shadow/peer-tor/shadow.data.template/hosts/exit2/keys/secret_onion_key
  31. BIN
      shadow/peer-tor/shadow.data.template/hosts/exit2/keys/secret_onion_key_ntor
  32. 0 0
      shadow/peer-tor/shadow.data.template/hosts/exit2/torrc
  33. 3 0
      shadow/peer-tor/shadow.data.template/hosts/exit2/torrc-defaults
  34. 4 0
      shadow/peer-tor/shadow.data.template/hosts/hostsfile
  35. 1 0
      shadow/peer-tor/shadow.data.template/hosts/peer1/alice.tor/hostname
  36. BIN
      shadow/peer-tor/shadow.data.template/hosts/peer1/alice.tor/hs_ed25519_public_key
  37. BIN
      shadow/peer-tor/shadow.data.template/hosts/peer1/alice.tor/hs_ed25519_secret_key
  38. 18 0
      shadow/peer-tor/shadow.data.template/hosts/peer1/alice.yaml
  39. 3 0
      shadow/peer-tor/shadow.data.template/hosts/peer1/torrc
  40. 2 0
      shadow/peer-tor/shadow.data.template/hosts/peer1/torrc-defaults
  41. 1 0
      shadow/peer-tor/shadow.data.template/hosts/peer2/bob.tor/hostname
  42. BIN
      shadow/peer-tor/shadow.data.template/hosts/peer2/bob.tor/hs_ed25519_public_key
  43. BIN
      shadow/peer-tor/shadow.data.template/hosts/peer2/bob.tor/hs_ed25519_secret_key
  44. 18 0
      shadow/peer-tor/shadow.data.template/hosts/peer2/bob.yaml
  45. 1 0
      shadow/peer-tor/shadow.data.template/hosts/peer2/carol.tor/hostname
  46. BIN
      shadow/peer-tor/shadow.data.template/hosts/peer2/carol.tor/hs_ed25519_public_key
  47. BIN
      shadow/peer-tor/shadow.data.template/hosts/peer2/carol.tor/hs_ed25519_secret_key
  48. 16 0
      shadow/peer-tor/shadow.data.template/hosts/peer2/carol.yaml
  49. 4 0
      shadow/peer-tor/shadow.data.template/hosts/peer2/torrc
  50. 2 0
      shadow/peer-tor/shadow.data.template/hosts/peer2/torrc-defaults
  51. 1 0
      shadow/peer-tor/shadow.data.template/hosts/peer3/dave.tor/hostname
  52. BIN
      shadow/peer-tor/shadow.data.template/hosts/peer3/dave.tor/hs_ed25519_public_key
  53. BIN
      shadow/peer-tor/shadow.data.template/hosts/peer3/dave.tor/hs_ed25519_secret_key
  54. 16 0
      shadow/peer-tor/shadow.data.template/hosts/peer3/dave.yaml
  55. 2 0
      shadow/peer-tor/shadow.data.template/hosts/peer3/torrc
  56. 2 0
      shadow/peer-tor/shadow.data.template/hosts/peer3/torrc-defaults
  57. 1 0
      shadow/peer-tor/shadow.data.template/hosts/relay1/fingerprint
  58. 15 0
      shadow/peer-tor/shadow.data.template/hosts/relay1/keys/secret_id_key
  59. 15 0
      shadow/peer-tor/shadow.data.template/hosts/relay1/keys/secret_onion_key
  60. BIN
      shadow/peer-tor/shadow.data.template/hosts/relay1/keys/secret_onion_key_ntor
  61. 0 0
      shadow/peer-tor/shadow.data.template/hosts/relay1/torrc
  62. 3 0
      shadow/peer-tor/shadow.data.template/hosts/relay1/torrc-defaults
  63. 1 0
      shadow/peer-tor/shadow.data.template/hosts/relay2/fingerprint
  64. 15 0
      shadow/peer-tor/shadow.data.template/hosts/relay2/keys/secret_id_key
  65. 15 0
      shadow/peer-tor/shadow.data.template/hosts/relay2/keys/secret_onion_key
  66. BIN
      shadow/peer-tor/shadow.data.template/hosts/relay2/keys/secret_onion_key_ntor
  67. 0 0
      shadow/peer-tor/shadow.data.template/hosts/relay2/torrc
  68. 3 0
      shadow/peer-tor/shadow.data.template/hosts/relay2/torrc-defaults
  69. 1 0
      shadow/peer-tor/shadow.data.template/hosts/relay3/fingerprint
  70. BIN
      shadow/peer-tor/shadow.data.template/hosts/relay3/keys/ed25519_master_id_public_key
  71. BIN
      shadow/peer-tor/shadow.data.template/hosts/relay3/keys/ed25519_master_id_secret_key
  72. BIN
      shadow/peer-tor/shadow.data.template/hosts/relay3/keys/ed25519_signing_cert
  73. BIN
      shadow/peer-tor/shadow.data.template/hosts/relay3/keys/ed25519_signing_secret_key
  74. BIN
      shadow/peer-tor/shadow.data.template/hosts/relay3/keys/secret_id_key
  75. BIN
      shadow/peer-tor/shadow.data.template/hosts/relay3/keys/secret_onion_key
  76. BIN
      shadow/peer-tor/shadow.data.template/hosts/relay3/keys/secret_onion_key_ntor
  77. 0 0
      shadow/peer-tor/shadow.data.template/hosts/relay3/torrc
  78. 3 0
      shadow/peer-tor/shadow.data.template/hosts/relay3/torrc-defaults
  79. 1 0
      shadow/peer-tor/shadow.data.template/hosts/relay4/fingerprint
  80. BIN
      shadow/peer-tor/shadow.data.template/hosts/relay4/keys/ed25519_master_id_public_key
  81. BIN
      shadow/peer-tor/shadow.data.template/hosts/relay4/keys/ed25519_master_id_secret_key
  82. BIN
      shadow/peer-tor/shadow.data.template/hosts/relay4/keys/ed25519_signing_cert
  83. BIN
      shadow/peer-tor/shadow.data.template/hosts/relay4/keys/ed25519_signing_secret_key
  84. BIN
      shadow/peer-tor/shadow.data.template/hosts/relay4/keys/secret_id_key
  85. BIN
      shadow/peer-tor/shadow.data.template/hosts/relay4/keys/secret_onion_key
  86. BIN
      shadow/peer-tor/shadow.data.template/hosts/relay4/keys/secret_onion_key_ntor
  87. 0 0
      shadow/peer-tor/shadow.data.template/hosts/relay4/torrc
  88. 3 0
      shadow/peer-tor/shadow.data.template/hosts/relay4/torrc-defaults
  89. 21 0
      shadow/peer-tor/shadow.data.template/hosts/server/server.crt
  90. 28 0
      shadow/peer-tor/shadow.data.template/hosts/server/server.key
  91. 1 0
      shadow/peer-tor/shadow.data.template/hosts/web/server.crt
  92. 1 0
      shadow/peer-tor/shadow.data.template/hosts/web/server.key
  93. 83 0
      shadow/peer-tor/shadow.yaml

+ 2 - 0
shadow/peer-tor/conf/authgen.pw

@@ -0,0 +1,2 @@
+shadowprivatenetwork
+

+ 3 - 0
shadow/peer-tor/conf/authgen.torrc

@@ -0,0 +1,3 @@
+DirServer test 127.0.0.1:5000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000
+ORPort 5000
+

+ 1 - 0
shadow/peer-tor/conf/shadowresolv.conf

@@ -0,0 +1 @@
+nameserver 127.0.0.1

+ 27 - 0
shadow/peer-tor/conf/tgen.client.graphml.xml

@@ -0,0 +1,27 @@
+<graphml xmlns="http://graphml.graphdrawing.org/xmlns" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://graphml.graphdrawing.org/xmlns http://graphml.graphdrawing.org/xmlns/1.0/graphml.xsd">
+  <key attr.name="peers" attr.type="string" for="node" id="d5" />
+  <key attr.name="sendsize" attr.type="string" for="node" id="d3" />
+  <key attr.name="recvsize" attr.type="string" for="node" id="d2" />
+  <key attr.name="count" attr.type="string" for="node" id="d1" />
+  <key attr.name="time" attr.type="string" for="node" id="d0" />
+  <graph edgedefault="directed">
+    <node id="start">
+      <data key="d5">fileserver:80</data>
+    </node>
+    <node id="stream">
+      <data key="d2">1 MiB</data>
+      <data key="d3">1 KiB</data>
+    </node>
+    <node id="pause">
+      <data key="d0">1,2,3,4,5,6,7,8,9,10</data>
+    </node>
+    <node id="end">
+      <data key="d1">10</data>
+      <data key="d0">3600</data>
+    </node>
+    <edge source="start" target="stream" />
+    <edge source="stream" target="end" />
+    <edge source="end" target="pause" />
+    <edge source="pause" target="start" />
+  </graph>
+</graphml>

+ 8 - 0
shadow/peer-tor/conf/tgen.server.graphml.xml

@@ -0,0 +1,8 @@
+<graphml xmlns="http://graphml.graphdrawing.org/xmlns" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://graphml.graphdrawing.org/xmlns http://graphml.graphdrawing.org/xmlns/1.0/graphml.xsd">
+  <key attr.name="serverport" attr.type="string" for="node" id="d0" />
+  <graph edgedefault="directed">
+    <node id="start">
+      <data key="d0">80</data>
+    </node>
+  </graph>
+</graphml>

+ 29 - 0
shadow/peer-tor/conf/tgen.torclient.graphml.xml

@@ -0,0 +1,29 @@
+<graphml xmlns="http://graphml.graphdrawing.org/xmlns" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://graphml.graphdrawing.org/xmlns http://graphml.graphdrawing.org/xmlns/1.0/graphml.xsd">
+  <key attr.name="socksproxy" attr.type="string" for="node" id="d7" />
+  <key attr.name="peers" attr.type="string" for="node" id="d5" />
+  <key attr.name="sendsize" attr.type="string" for="node" id="d3" />
+  <key attr.name="recvsize" attr.type="string" for="node" id="d2" />
+  <key attr.name="count" attr.type="string" for="node" id="d1" />
+  <key attr.name="time" attr.type="string" for="node" id="d0" />
+  <graph edgedefault="directed">
+    <node id="start">
+      <data key="d5">fileserver:80</data>
+      <data key="d7">localhost:9000</data>
+    </node>
+    <node id="stream">
+      <data key="d2">1 MiB</data>
+      <data key="d3">1 KiB</data>
+    </node>
+    <node id="pause">
+      <data key="d0">1,2,3,4,5,6,7,8,9,10</data>
+    </node>
+    <node id="end">
+      <data key="d1">10</data>
+      <data key="d0">3600</data>
+    </node>
+    <edge source="start" target="stream" />
+    <edge source="stream" target="end" />
+    <edge source="end" target="pause" />
+    <edge source="pause" target="start" />
+  </graph>
+</graphml>

+ 9 - 0
shadow/peer-tor/conf/tor.authority.torrc

@@ -0,0 +1,9 @@
+AuthoritativeDirectory 1
+V3AuthoritativeDirectory 1
+V3BandwidthsFile ../torflowauthority/v3bw
+ExitPolicy "reject *:*"
+TestingDirAuthVoteGuard 3FB0BD7827C760FE7F9DD810FCB10322D63AB4CF,FF197204099FA0E507FA46D41FED97D3337B4BAA,3BAEAC8E24C87B4E536484837B67966487A93214,7073525D6A7B97E4708CE8B712BAF21049A72168
+TestingDirAuthVoteExit 4EBB385C80A2CA5D671E16F1C722FBFB5F176891,0A9B1B207FD13A6F117F95CAFA358EEE2234F19A
+TestingDirAuthVoteGuardIsStrict 1
+TestingDirAuthVoteExitIsStrict 1
+ConsensusParams cc_alg=2

+ 4 - 0
shadow/peer-tor/conf/tor.client.torrc

@@ -0,0 +1,4 @@
+ORPort 0
+DirPort 0
+ClientOnly 1
+SocksPort 127.0.0.1:9000

+ 26 - 0
shadow/peer-tor/conf/tor.common.torrc

@@ -0,0 +1,26 @@
+DataDirectory .
+BandwidthRate 1024000
+BandwidthBurst 1024000
+DirServer 4uthority bridge v3ident=BA3FDA7CE3B41FBF9BB3615BE6ACD28D883E694B orport=9111 100.0.0.1:9112 A52C A5B5 6C64 D864 F6AE 43E5 6F29 ACBD 5706 DDA1
+TestingTorNetwork 1
+ServerDNSResolvConfFile ../../../conf/shadowresolv.conf
+ServerDNSTestAddresses 4uthority
+ServerDNSAllowBrokenConfig 1
+ServerDNSDetectHijacking 0
+AssumeReachable 1
+AuthDirTestReachability 0
+NumCPUs 1
+Log info stdout
+LogTimeGranularity 1
+HeartbeatPeriod 1
+SafeLogging 0
+ContactInfo https://github.com/shadow/shadow-plugin-tor/issues
+DisableDebuggerAttachment 0
+PathBiasUseThreshold 10000
+PathBiasCircThreshold 10000
+DoSCircuitCreationEnabled 0
+DoSConnectionEnabled 0
+DoSRefuseSingleHopClientRendezvous 0
+CircuitPriorityHalflife 30
+ControlPort 9051
+LearnCircuitBuildTimeout 0

+ 1 - 0
shadow/peer-tor/conf/tor.exit.torrc

@@ -0,0 +1 @@
+ExitPolicy "accept *:*"

+ 1 - 0
shadow/peer-tor/conf/tor.non-exit.torrc

@@ -0,0 +1 @@
+ExitPolicy "reject *:*"

+ 3 - 0
shadow/peer-tor/conf/tor.relay.torrc

@@ -0,0 +1,3 @@
+ORPort 9111 IPv4Only
+DirPort 9112
+SocksPort 0

+ 61 - 0
shadow/peer-tor/run.sh

@@ -0,0 +1,61 @@
+#!/bin/bash
+
+rm -rf shadow.data/
+shadow --pcap-enabled true --template-directory shadow.data.template shadow.yaml > shadow.log
+ret=$?
+
+declare -A groups
+groups[group1]="Alice Bob Carol"
+groups[group2]="Alice Bob Dave"
+
+check_one_log() {
+    counts="$(grep -Ec "$1" shadow.data/hosts/peer*/*.stdout | cut -d: -f2 | sort -n)"
+    if [[ $(echo "$counts" | tail -1) -lt $2 ]] ; then
+        echo "Not enough matches of pattern: $1"
+        ret=1
+    fi
+    if [[ $(echo "$counts" | tail -2 | head -1) -gt 0 ]] ; then
+        echo "Found matches of pattern in multiple logs: $1"
+        ret=1
+    fi
+}
+
+check_all_logs() {
+    counts="$(grep -Ec "$1" shadow.data/hosts/peer*/*.stdout | cut -d: -f2 | sort -n)"
+    if [[ $(echo "$counts" | tail -1) -lt $2 ]] ; then
+        echo "Not enough matches of pattern: $1"
+        ret=1
+    fi
+}
+
+invert_check_all_logs() {
+    if grep -Eq "$1" shadow.data/hosts/peer*/mgen*.stdout ; then
+        echo "Found errors via pattern: $1"
+        ret=1
+    fi
+}
+
+for group in ${!groups[@]} ; do
+    for name in ${groups[$group]} ; do
+        echo "$group,$name"
+        # user sent at least 10 messages to the group
+        check_one_log "$name,$group,send," 10
+        # user got at least 10 receipts from the group
+        check_one_log "$name,$group,receive,.*,receipt" 10
+        # users got at least 10 receipts from this user in this group
+        check_all_logs "$group,receive,.*,$name,receipt" 10
+        # user got at least 10 normal messages from the group
+        check_one_log "$name,$group,receive,.*,[0-9]+" 10
+        # users got at least 10 normal messages from this user in this group
+        check_all_logs "$group,receive,.*,$name,[0-9]+" 10
+        # users didn't get any errors
+        invert_check_all_logs "[Ee]rr"
+    done
+done
+
+if [ $ret == 0 ] ; then
+    echo "All tests passed."
+else
+    echo "At least one test failed."
+    exit $ret
+fi

+ 1 - 0
shadow/peer-tor/shadow.data.template/hosts/4uthority/fingerprint

@@ -0,0 +1 @@
+Unnamed A52CA5B56C64D864F6AE43E56F29ACBD5706DDA1

+ 39 - 0
shadow/peer-tor/shadow.data.template/hosts/4uthority/keys/authority_certificate

@@ -0,0 +1,39 @@
+dir-key-certificate-version 3
+fingerprint BA3FDA7CE3B41FBF9BB3615BE6ACD28D883E694B
+dir-key-published 2013-06-05 15:49:15
+dir-key-expires 2015-06-05 15:49:15
+dir-identity-key
+-----BEGIN RSA PUBLIC KEY-----
+MIIBigKCAYEAyZxUeqUjj6BZU2VbFGQHBa61QIAk0vlX1gimAulxiuUHvkwcpleG
+zh3wwK1f0BsxYJiDBBY6NEh74x4/gSMASMUWFAV/BBS04u3Ssa3LwKOMgbp4bmRZ
+6Aa7IhybeoIyLT5Ke1tvvQRWZxT8irawLtpIAeUZK7hatouYi7dcxG80yCoGw5yo
+XaVlhvQp43GZTpdyQ7Q3wvqME1TGuXQNMRzLwgiMMLIiJEw5QPUDyPc3+m2XaQOc
+GeZuuydRpnDMmIIF3KQa+q0QCItDeNQRyF10RtwrGDDXqlwnai09aAH2NJ3pSVPC
+imhHzKBGVEID1ejvfyYzmDqNZ1iIBuaZLWqThfQ8SOP7z9o79xI+VZmU4Njp6aMZ
+re55tSVs3UfpZUUzigQhTzsu02eAdDH4XXYXqZkNtGotPGkNToLgVov954dCXOqf
+ewkbdzPVre3OFqD6T3sRErUusW4M3RbO7R9c9JtIq/XV8+IPAtUy2vIwiujLqsrl
+4l8C/KbjWDftAgMBAAE=
+-----END RSA PUBLIC KEY-----
+dir-signing-key
+-----BEGIN RSA PUBLIC KEY-----
+MIGJAoGBAOMVf/X0AEJ1P8PNMYEwODVcyurWJy0Jg7HKK4/lk+sGi8byNsC47ifV
+mxk9UBqtxRXJpNHX0PXXjxi+3/YaRZOZ0tz7sYk4GSdLIRJX6/vqd9h5e521jncc
+H/78fH2BptX4SMpsxIg29drF45fW6wBux8Vs7WnSBogfUw6o83dJAgMBAAE=
+-----END RSA PUBLIC KEY-----
+dir-key-crosscert
+-----BEGIN ID SIGNATURE-----
+QlNzjkc5mYLspTEpr3X3Na1xbJqmsjKDQ2eWNW5JaSu1RMnYQjnfR5X1EpS20H57
+O/3IO/9LvS33VBbzDnyQutwHuLRugQTDYhffx1brPvWY+JU8XkM5ORKuIsBXUAbQ
+UfILeQSmtKv0BbBMGsje16+14CNaY/ZbUo7MoEwpiiM=
+-----END ID SIGNATURE-----
+dir-key-certification
+-----BEGIN SIGNATURE-----
+CD6Dt68GtOUHKgEBS8XHT3S/SykcPF/4+byFfx/hwBwLdOR7pFMx9V+wH6Q/8Gzy
+UAdWsy0alhLEtKdICse1xUfT+b6KQh/5pJrFQXTY1/heAltUNZTwRTjWdcAo0xYU
+kxb3f8KZNA7+wFVNTshtXP1XNAjMAMB7zqVWgrB38K6r8xafBMvPe/m+CGx7nBc1
+7G8MpId6WrTbX/boEuBc5HQW9BH5WYL979LjkpgJ04YiWqZ8SLo/oq3sZPNCojQu
+MzW/KtMDs6goNEaqwsm2OiIZdckyHGLvJUb8YOOQ4b7tFWD5oNfbxCTWCzpV9nDO
+mL4FNoCWYWpnVbLptJsdguwTRC8pRWq6Mihe3Anlxl3ONyfE0Rs8Ex9JSsiqd2S7
+oM1nxzzihVTHooSMdxHPSzDCNWYHw/Fd3W3frqUo6kOoW7Oe67xxbrx7AvFpAyAr
+6gzpA7LpPe7Xdo0HSWl04jKTr27aDc4JFepMT1zEYxwH3nPBIRG87etWKI0kB9OG
+-----END SIGNATURE-----

+ 41 - 0
shadow/peer-tor/shadow.data.template/hosts/4uthority/keys/authority_identity_key

@@ -0,0 +1,41 @@
+-----BEGIN ENCRYPTED PRIVATE KEY-----
+MIIHKjAcBgoqhkiG9w0BDAEDMA4ECMjgVMRpCZk3AgIIAASCBwhXtv22Bm7qUhlp
++fQhoG29zzSMkLmuRGVRKCCtFbcmdpX/Boeu6iBv0d/kA/Siqh5V50pX/KIArccA
+zCLu4CuJMN24PHCvVqzORj77BVtMInNzoOsuicwBAH/o0T+h8RrkWIB0GRLtfFN0
+1eW5csoT3ZG+mbno7ba6sO/Z+dW3IQ7uUMj2eEADgYt5LMWAjxMYk8cO8OLbu5ot
+tInya6x3nqIQcynNHk8xCBnBXWKLLGcwqDQ07uWbX4BQEGY17WNifhBQqC0om/fT
+ebHT1aAC1NeXMAa24xt+zajU82zgmhDyTlI9btSs+zu/vEYDp2kj/aHcn8pdHSMl
+XC9g7ndkSdwenTxdi22eAxLq3ulxsxpIDB41/y1Hivwo23HZ5lP/4/0QNIONoWgZ
+3J7XCuThPRWCT5b+y11pTWRorZkShtp032S10OETNLJK55vpcS/dWmw63/Rr1tsA
+a/gmnvKnlU1DTa/wgeQdP5HiVUe+kME33AaLkGP05QZzcOM7GZ/Po+zuF+0prt7S
+bUrQH1bxmXNYnzDY2qas1dFCw9wsRYYmW/nzfdz6OopAoHxFtlD8NNiS/wnxl0zD
+FMyAOYFp4uphjsvxUcQNWQORTchFjLLYS4zL2z7WTBpjWPAJ32exkE+vCBNmD+iS
+yrKqCa/6F7ymVdqixc1wlsSa4dYg18flMP4MGMM9ZLSLm9HJ+ak7OfrWYq9wYFvN
+C57pz2ZOji+byeYE4HfovPXr+V1CjeA96M2RgUwL0ZfTI9mtRPatwa8TK80dUaOH
+QULWg8cv3Ny9BgqMSYNgXYQRonNcRCwE1E7t/IlIxBxGG1Xio8GBpx7FPU2gdCj5
+BIgmaPqdx6hyZjtUia6X0Y5lytMAIh7h3M9unPSMnS8iMcjMs1/EGBBG/UEn20Lu
+/Lcu8iXrPXe7Fm02zsbVXR2ZpdBfJwGtgUH9eq0kj9qi0h6KNt7ED8EFeGNyPuKr
+GFZ9Au6CzKmZX52E6qsiY89Y2hrHrSdPUAYdfBKJcn6Hp/zLyHl2bZ6fuSvBt/PE
+6zf26NfJ83kBmqQ0Ec42peBcoAoNp0Gkm6eRQMjMezs4Gf5bItI/3UAM5C+pQcg1
+Zjcle7URNXpeALr10PGecWId9Eg9FrJ2qqU+NvfAhyQntAzZk3UonzL9RNIAlFjM
+odn6/l5MfDtO615Km8uulpn/kukPeeL3BDL/VP8e1x0vw8ec85WtwMyCu62zX+Li
+14N0JGFXKbELiXe0kKQE6SX2+DLup/aDizhr8oK4WOG7n0NHeusmFAy8YKioqCIE
+WL1sPFmpjD3yoixkOZ1U7GpzhK5/Fh5ht2Gy38ieoV6L2MyiD1ejZOwFtFlXat2w
+ISqnq5T2bpPRMnEZjCIzaOZ0hIhFfY8+wl12oE22smhUz6NCMVRHToSWt70WweOj
+lko1pEu1w1KZtvqTH6tcI0x5s8wcsFBLj185CGC1A8tT5cRYkpdB/JJNcTtc+KvL
+VP6jNu3zEbMU4kJyew4pM9yLRestrOoGw0CsB1vokUFD3r2MguoQcdQWdIEul+nT
+uTrVHs0Aq9bD0OhSNpTuotx+EkZFsVZ3CPy+5FmtvctXAlml8qV8mr+9l53GSJjh
+YGcmQgNl7Jt6RzFnmfIZemVOcXrnQnF1dAIDCdrtUyRbX5vlHTEVRFoeFrcD3SU2
+D3EFJP4KuC66zNz7cPmymCDCDRI/N5X4/WVhalkY18NINRDLmjkSXnY7eyoZ520S
+snMngPihLL/Bc+hfg/jI1iGHx6Am1J54qq2uka4/NU1eQPjYtzNJ9AZaex6Deg5h
+lb/uXud9HOsYzQxG+wIIX/BeJ5rRv1EfG93eS8ghWI3yQCZs5W6XrXPV7mzygnaN
+75j9tDTX4k5CEgiDP9UMgkUvtDPUU96+tYHwhECf2g+h0LKQXn7aXtOa3XJ8Rq5X
++bllcb/MXxgUrTi2eVuN4cN4PrfPpsnkusH7Hgq7Fy8OBbU7UBbOGuhzy8pm1RPn
+VNyxFkBw2c8HVx0N7iEBehTEN5WMfXHOn5nDIxAJXBLN/ZC3Pa+FhR/VgmdCKojn
+BGBa3FxTqt8rqO4/Uk/JSfExYfX/NCfgGIOdCc+4FNlXtrwyiafJ2xLKgJa4XGAy
+6MC+g+i6fMGIi5zLMdwCHYnyg9WHB/xpCgrA0LjDJs414mXLIT0CfkFzugjzolOZ
+HN3Ko5wxeEto9ExbBe8JIBZ6HTP94XmqVHECHpVb1xvG8EY0kZwHBVfawB9VhQJv
+Qm/ZRwJqcLCIX8Bk5UXUiQs0wpgM+T1Uw84G/YKhwHzJguuMe05OTs4753rRZwwP
+GofZdjbZgppTQwZ/Gc2ofesY9SnvlWVupcyC45dUSkpMn3kWrzFyka3HRx27yM1o
+Pw0F6/J70jbesvDKrbk=
+-----END ENCRYPTED PRIVATE KEY-----

+ 15 - 0
shadow/peer-tor/shadow.data.template/hosts/4uthority/keys/authority_signing_key

@@ -0,0 +1,15 @@
+-----BEGIN RSA PRIVATE KEY-----
+MIICXQIBAAKBgQDjFX/19ABCdT/DzTGBMDg1XMrq1ictCYOxyiuP5ZPrBovG8jbA
+uO4n1ZsZPVAarcUVyaTR19D1148Yvt/2GkWTmdLc+7GJOBknSyESV+v76nfYeXud
+tY53HB/+/Hx9gabV+EjKbMSINvXaxeOX1usAbsfFbO1p0gaIH1MOqPN3SQIDAQAB
+AoGABapMpfMvankIXTcqTAHK9THach9jnNEG8xGLIqzkktF3/T+ftBEpB99hXjDU
+ZcX+C7wbG40ZznhRPpnMdpRTNf5xmtNSjV438lYY3EvgptKILvTPY25q5HTgBd/f
+GL42u0kjbb2ZyA40TJ92yKV41xhzlo0ZaGyblVFWKY0MwoECQQDyWSzRULM/wczk
+6qDTPRpV6NvvlLheBUPIomuU65Wb9k60BoU73j+WJko7o5k6XdBTNqaMS3mMow14
+rxeoJZgRAkEA7+Az2z+wvbuhejkzPhNzAnklZ98HgXKET9Bxcb94DdrhyYyBd78J
+h9weHu63BEjVF4uj28kAFSmO3JVrxlpjuQJBALVXMukBOM95ZabZRjQqYZ1tG71/
+DCIWUG0908BgM9e7C5M72dA9clkZF6zestZwwmSx3RfXlgE9NORcKBiC4PECQQDq
+qAoyjhCo2tcxiKlPLZmRrs9f2HcwM8WpioCfxK196ER+dRvl95UsObGhkuaoo1MK
+EImAJRYWnavqr6VZyezJAkBLuwcF06Ln3h2wFh/qJoie1FxXZrXwbb1iw+IuCp3v
+J/WUGTMMG+WHBg4PcdT0s22Y5FD0zSyUhBD84APNE7kM
+-----END RSA PRIVATE KEY-----

+ 15 - 0
shadow/peer-tor/shadow.data.template/hosts/4uthority/keys/secret_id_key

@@ -0,0 +1,15 @@
+-----BEGIN RSA PRIVATE KEY-----
+MIICXAIBAAKBgQDDI/5gDYsibzoj1VLpcdkTYsimCSLJQ00sPPZSJ0ynGdY339u0
+xnpMivoV86tMWe1wOQQI/ZANL7ZI6+DSpYIu8w0UwjsEQSMp6I3TomlVooaPsuJc
+XNmnW++qS0MaTNfj4zY4KKihGA1oN6nX+xdHt8qCMK/btgxFQtBZMkLVCwIDAQAB
+AoGAOw0RVQ/EIs910JIlXO9OuUcTYOsy06TCHbj08TdjQs3WvWHIopPNPoxv0WTD
+WX99EpCuX+obRWJCzx5SEmxzUCp6NR9ZDmheoyaUO8W+sslA3s92nyVoGaVpL4Hk
+uaC1mQYY2wYK6LQY1Zaw2FkhrnCInBOKTKwt5xVNDygVZYECQQDloomCDiuUpetL
+BJRoPD4CriEa5iiCfT0Z/TKKtnCX5Vsj+AkTJuVNojzFjRphWxpomy43QVsKeoa2
+EdYM+TLpAkEA2YuYPgey9neE+ffrWTpNvLaPOM5EOHKGyqL921goWIh0xMuK5yqX
+joDv+Ebi2sRxpM5M5gnQaYxVEoZ72b2H0wJAIVGNDB7MOfw9AJyAgANFqBPl38ZH
+WG+dfvja7X99JLz1lWl2v52kJbiFgtBvZHLYiRcDBKdp80JF64L5ANbjiQJACU3q
+JgUIR3hXLKXI4BkZSA/60jAoRM3JLBOKjf4YQ6kabWxTNY3hy4uCN/k4LKkoPyc/
+rLsQueLxpIgx9d8gVwJBAKAspF2VD4BVwpv7YU0OLH/7qfeOlhYOh8RgqijHUGy4
+y+9RcdReFVaKCM6JoOjlB8mnzryT/fTcN3unZVX1YDs=
+-----END RSA PRIVATE KEY-----

+ 15 - 0
shadow/peer-tor/shadow.data.template/hosts/4uthority/keys/secret_onion_key

@@ -0,0 +1,15 @@
+-----BEGIN RSA PRIVATE KEY-----
+MIICXQIBAAKBgQCyl4GOPEFulXGewYnulRwv5tn5kEE9SOZWEs8XYVMsiIiTfVSJ
+9GQQ7U9eXqLIAyY9V5Dg6y8d7crP3Yx+veKvKDxeEgbrYcpI3ZqizM9NADeby/4d
+/23+YXjRnQfKpzf63W/EixEYCz1+3qGa7bzRJp3Ud6A0ly6k8thZESDGhwIDAQAB
+AoGBALE0a7S6TSJw3qBr4XT+N03AfiCG5nTs1MArQZktVN4nS30tKqkH+hJhphM5
+S8OyfEr5jCPguIu12zuN1U4dE8KXC6CyI6aWexeAuoa2M6bcM0uesZFG1NGmIYq6
+0S9cFymCyK/WRACH6XJbF87vs2E/6kyKlOOJCikSvNPja72hAkEA6Lw+Uria8beJ
+qQPwGDer0eNzjGL7oxN89vYqfFiDs8jTct2SaQgyyEiRBm9yiaLwZ1nQduKI+CvU
+diQFRHDShQJBAMRxt2qBsarhxAZU4KcKX9DEVwp4ga0YojioiXFrkmvruQGHjmYs
+RKhYJHQFNSnwJPtfvpIUphohbyKfrC/VEJsCQAxUbLjVLuA/aPubScz+pguokSaO
+1+X70lMDF50e01ti+FDNjEQkOwyBS62bmeXQzAutpm2l8ruzFr5rihvmHkECQQCR
+60psIeSAY21BqsCpM8qSf5WMIJFqq5ascXyOtHIyGgn1ueSrvoxNZBPH3qpr+Ybu
+9mLPjekIFffAh0zWxvSrAkAuXLfTjTRzWfC3ia8o2BZ0VUfh1YETpWej2K4w01y2
+JvmzhoNX5lFuSL+I0L78zhXGH3ZyZKPlPXgvsQAyi1du
+-----END RSA PRIVATE KEY-----

+ 0 - 0
shadow/peer-tor/shadow.data.template/hosts/4uthority/torrc


+ 3 - 0
shadow/peer-tor/shadow.data.template/hosts/4uthority/torrc-defaults

@@ -0,0 +1,3 @@
+%include ../../../conf/tor.common.torrc
+%include ../../../conf/tor.relay.torrc
+%include ../../../conf/tor.authority.torrc

+ 1 - 0
shadow/peer-tor/shadow.data.template/hosts/exit1/fingerprint

@@ -0,0 +1 @@
+exit1 0A9B1B207FD13A6F117F95CAFA358EEE2234F19A

+ 15 - 0
shadow/peer-tor/shadow.data.template/hosts/exit1/keys/secret_id_key

@@ -0,0 +1,15 @@
+-----BEGIN RSA PRIVATE KEY-----
+MIICXAIBAAKBgQDWHmC3V/AwxzeeaYLCOTZGdyLdef316yMyO0fP2s49wsoq82FN
+xRR54/VPcH6zQlRgG9q/cBzFEHvt7tnnN5ZyIpmvY33L1tVyh60f8ZZU9JJ/Dfm5
+FPSAbBg5F8/tlm8422G+THQ8DGRiwNn/aO8ITR98lLJOI/e4LckRMqhDMQIDAQAB
+AoGBAJxsmO+YmOqpv6JFJrfJoDMeeiQfKT9tRss9r5rUGPPZyGRUZXOxVOIvfVlJ
+r+Y5wPZtowNUXlBBWKhcZGicnZTySDc0ZxA5Pac9yZWMbhmGoytezHWEvPt9kW2W
+/G/bnOzSzzPh06WWc9dhhAj7ZKVf6vGs0642EbFXHRyq3Gy5AkEA6rwbGmtK72JS
+0sYWmxI2DcxeviRSW4JFGydQDIpezD8FSO9+BZloM330HWsqV0QivS2VWgn2GVe+
+8WoUMl8v+wJBAOmEJjtUSeoqpinTGJOcpxKt3KFzL/Gxc9dFshYNDAZxpT0GEYSM
+1Gnbt8Qw+fdBeQGLQVN1xyFp+8bSZb9bdcMCQCZ3tSlbM+iPAGuyMrou/dS9DTmz
+0htU+eY9Rw0HEAoAuej99nUMctsdZQf9K+8pJ1hBRByBTWdRzeTaMX0fxEkCQAq5
+mQ/shSCOKOeO3HgbH8lJ1vJLWg5duhZPCyjcHItHOPGej7toxHDAOKZ4IWLrzOT3
+Ql7U7/pm5btx+l5ZkwUCQATHvGizIpxDUtSUukiGmqfQPQGnGllQvhykUs4mK+ZH
+kM1BlX5gnq4uSDW786SVQJd1anfioicVgNxtpJYrMfo=
+-----END RSA PRIVATE KEY-----

+ 15 - 0
shadow/peer-tor/shadow.data.template/hosts/exit1/keys/secret_onion_key

@@ -0,0 +1,15 @@
+-----BEGIN RSA PRIVATE KEY-----
+MIICWwIBAAKBgQCjARKjsThqAqCkpalru8i43zLkx8vBAD2QGruQRTlVOCE3F2hL
+Qqt/tWlsHT4Pjq2qqudgwDt2DoF1geYpPSiMiJkPjeWW/le1lSCSKWnE+WiC1MNl
+P5f38uLrbklZheiFPvdim+8jcgAj5Q6rEUglGRIZDB+VhyizOp+/LofCNQIDAQAB
+AoGAJ/O4XNSwDhOsyg4sk1JIZT+Xmsl5oEltzWcv97Fv1vpV8cnT7zZdEIUnXK9i
+Ka//0ufmpCkZqdruUh3PiuYJjNw+7BZblRhC6966TpMXb33nfFcPUAKCWT7wBsPl
+hJAMSmLZhJ40m/oQLxDTO7f/I5DOzNBhuBWfK1TkoLor78ECQQDMo514GLd1b361
+u3ZvIkNFwjRNDZOkwA4zwEA1bSn0Q4CMX3wzk94wKuQMeilfAjecYtZJTzehcm/F
+DWahTbtlAkEAy+pZF1HQgipV/NwvxTZNElE2wk0T/IBLQxdsABI4wXVsPVxJiq6G
+GFiFvyO1xpBEF0UkA+CRShzSCGsI5odGkQJAEEcPdocYyLmWraP8trhV+42IFXz3
++ongV1N6iAVn6esYpZHO0ld3vAMdYrSw58LIY6MlAm3PsgLlSxpWyIvjVQJAPhuV
+oRWpNUwhvo9t+VotpUuZKxsA4GJPChNDMM5b/Qh/vDy0pYm8jAPCUNJWljDwnEnR
+y2CFwBYBHtFC97vyEQJAFEalj9r6b658uiUPFIxd7Mwt/E5X2Ky9mEotUdRu1ngK
+2CmDcqghqYwh5ez71kcybCZik6LEnf+N9m9ckBvy8g==
+-----END RSA PRIVATE KEY-----

BIN
shadow/peer-tor/shadow.data.template/hosts/exit1/keys/secret_onion_key_ntor


+ 0 - 0
shadow/peer-tor/shadow.data.template/hosts/exit1/torrc


+ 3 - 0
shadow/peer-tor/shadow.data.template/hosts/exit1/torrc-defaults

@@ -0,0 +1,3 @@
+%include ../../../conf/tor.common.torrc
+%include ../../../conf/tor.relay.torrc
+%include ../../../conf/tor.exit.torrc

+ 1 - 0
shadow/peer-tor/shadow.data.template/hosts/exit2/fingerprint

@@ -0,0 +1 @@
+exit2 4EBB385C80A2CA5D671E16F1C722FBFB5F176891

+ 15 - 0
shadow/peer-tor/shadow.data.template/hosts/exit2/keys/secret_id_key

@@ -0,0 +1,15 @@
+-----BEGIN RSA PRIVATE KEY-----
+MIICXQIBAAKBgQDQ6kPlqMrz6GB+dWdLVLdC0++jZgAuG5leLEcJ6a3Nfsd3XauZ
+N2ZVeJ5yqwRFK99C8dekA6pvTh3c4iznxI0s6fusNF7b8tCEoXRLZlqI2/0N3L9p
+ZrmTq9agDD4hXE+MXDn5uxSib8/UZqUsO6Zts2lsvl8AWQqehD4HnUsJowIDAQAB
+AoGAb44YUWLvdIyKMhyY2qXS8dFfrf3CbNx56cp06HsqPofLFRckkTz+3Pb6jLp7
+HkCOCB5BiqgWczbgRVlUpzHSO8ix4uFy0j6HzMwulJBkUKzqw9mHJs9gTaTT0N9p
+VHjuEMABU8h9ZeK5kqGTGPeqSInTGfBlSQKyQFtxmL54cokCQQD6pN8hKlrjZrLY
+50jhRKAma4XBfSFkAUQ8i+oJMV7ifPd49GiP8rcIP4bhSdLwswYW9sV0kf9UKAcg
+qnXsktUlAkEA1WEeaWdgkByU8SItuXMZOQsv9GC/RqJ5UGVVayre1ARFCHoZmcpJ
+VR5OL3+v+U9T42FEQ6s9olECMe15H/v9JwJBAMoyGQKDTaDnJ15NboCzwNJdqSCH
+Flm7n9WMNXfHCTmDAIzl9jgx4C/aN7AkwvOEKGR8HJxGbwjv5ZgXi1wWs7UCQG3H
+99OXAlFiwyaExS2ikBmPLe73T7HRqcS5PgdTGS3PvIyt9Tnwn2YRn3xEn48PR0O3
+KV3/XkiCkTSKz0SrawUCQQCJUu0ou6I+sRLMp/h0gvWP7tMSOpN2elsrkTYmkkxJ
+hPs9wavqV2x1uMlpKAT35w4CvblYKQUGgRNOPxYH+9gK
+-----END RSA PRIVATE KEY-----

+ 15 - 0
shadow/peer-tor/shadow.data.template/hosts/exit2/keys/secret_onion_key

@@ -0,0 +1,15 @@
+-----BEGIN RSA PRIVATE KEY-----
+MIICXQIBAAKBgQDAeOk5SjkHNONU4YPjgqOPR2wMmCP8Llfsc2zyA2lnRByiSXfz
+ANJajuRFkVU+ngAcU+RK1gtRma6WQcyGBOFa4xw4PdpePT1fJb7GbMQYFg6GQJ4l
+fZs3CkjJxAxJhUhzm06Cp6r9O4BUTC7uoyNukTblVFwvJVB7utckxu+RkwIDAQAB
+AoGBAK0uHeuGdTmexM2i/GDBMxnAUeAjJH3L1SDT2rsHhtd72afMIzlrC9qfp5VQ
+5zqoP8E9WrRbU2Pgu85G9hfAXGMzcLb8s0VozeVv85VaT+h/4hPZ4a5k9H1Iiivx
+OEeeTtOgKVjyAvVhybh756Z9N8i8q+9DVB3XeWoxJU2rWnkBAkEA3pZybYsdUXrC
+vxAdBv+BabK9NWysDEdjZpH7YncN33kSBYdmAhqBNqyC+2EYaBYb7RYtGtPUMUdm
+X11Qz4DXgwJBAN1dMlu+WRNohvJmQojJ0hkxgHleqGeOO+n6Bn3EFMFknFGvG7HF
+zHgjIfh7uRrvAwTeBQR784tcQZfXDOMmMLECQHmPMjjO45kO8PJFS4T53uQpoBlg
+GumtxwRKLz6MBECKLyRj2HrHnM+OEQ5V7W1SvbeSB9oB2316H9du7+YS2B8CQEMO
+sWujXP6JIqAZpDwlzzR8j2u05hUAvFujtwWwOY1gOg5wmlYfElKuaeMJL8jd8K8v
+xptWJS/pUaF6rte8wPECQQCRZcZFoqoqaRu8BG1AQ/Z/T9qBZdc5KDzQnckNPDzK
+UlkBbWX37BwRt75bSwtx6zRVIHfdc8VD4szAsEYA23po
+-----END RSA PRIVATE KEY-----

BIN
shadow/peer-tor/shadow.data.template/hosts/exit2/keys/secret_onion_key_ntor


+ 0 - 0
shadow/peer-tor/shadow.data.template/hosts/exit2/torrc


+ 3 - 0
shadow/peer-tor/shadow.data.template/hosts/exit2/torrc-defaults

@@ -0,0 +1,3 @@
+%include ../../../conf/tor.common.torrc
+%include ../../../conf/tor.relay.torrc
+%include ../../../conf/tor.exit.torrc

+ 4 - 0
shadow/peer-tor/shadow.data.template/hosts/hostsfile

@@ -0,0 +1,4 @@
+jurwkquajb3p4yfrzi64n3uydmfxpzcph5lnjomdk4h62wrtevs77had.onion:6397 Alice
+lossapvtdceznnpxlhzau33q6txw5762nxstsmac32y2eawfzaokcuid.onion:6397 Bob
+mc6ajzn34td5oslhvp2m22o5lnh7dow6dxiykjdcmzkmibzca4e3ekqd.onion:6398 Carol
+szzserm2kz4xz7mmkhxtfvku2kqwmbwcxhknuvy52j6sew2wtzds2lqd.onion:6397 Dave

+ 1 - 0
shadow/peer-tor/shadow.data.template/hosts/peer1/alice.tor/hostname

@@ -0,0 +1 @@
+jurwkquajb3p4yfrzi64n3uydmfxpzcph5lnjomdk4h62wrtevs77had.onion

BIN
shadow/peer-tor/shadow.data.template/hosts/peer1/alice.tor/hs_ed25519_public_key


BIN
shadow/peer-tor/shadow.data.template/hosts/peer1/alice.tor/hs_ed25519_secret_key


+ 18 - 0
shadow/peer-tor/shadow.data.template/hosts/peer1/alice.yaml

@@ -0,0 +1,18 @@
+user: "Alice"
+socks: "127.0.0.1:9000"
+listen: "127.0.0.1:6397"
+bootstrap: 5.0
+retry: 5.0
+distributions:
+  s: 0.5
+  r: 0.1
+  m: { distribution: "Poisson", lambda: 1.0 }
+  i: { distribution: "Normal", mean: 15.0, std_dev: 30.0 }
+  w: { distribution: "Normal", mean: 30.0, std_dev: 30.0 }
+  a_s: { distribution: "Normal", mean: 10.0, std_dev: 5.0 }
+  a_r: { distribution: "Normal", mean: 10.0, std_dev: 5.0 }
+conversations:
+  - group: "group1"
+    recipients: ["Bob", "Carol"]
+  - group: "group2"
+    recipients: ["Bob", "Dave"]

+ 3 - 0
shadow/peer-tor/shadow.data.template/hosts/peer1/torrc

@@ -0,0 +1,3 @@
+HiddenServiceDir alice.tor
+HiddenServicePort 6397 127.0.0.1:6397
+

+ 2 - 0
shadow/peer-tor/shadow.data.template/hosts/peer1/torrc-defaults

@@ -0,0 +1,2 @@
+%include ../../../conf/tor.common.torrc
+%include ../../../conf/tor.client.torrc

+ 1 - 0
shadow/peer-tor/shadow.data.template/hosts/peer2/bob.tor/hostname

@@ -0,0 +1 @@
+lossapvtdceznnpxlhzau33q6txw5762nxstsmac32y2eawfzaokcuid.onion

BIN
shadow/peer-tor/shadow.data.template/hosts/peer2/bob.tor/hs_ed25519_public_key


BIN
shadow/peer-tor/shadow.data.template/hosts/peer2/bob.tor/hs_ed25519_secret_key


+ 18 - 0
shadow/peer-tor/shadow.data.template/hosts/peer2/bob.yaml

@@ -0,0 +1,18 @@
+user: "Bob"
+socks: "127.0.0.1:9000"
+listen: "127.0.0.1:6397"
+bootstrap: 5.0
+retry: 5.0
+distributions: &dists
+  s: 0.5
+  r: 0.1
+  m: { distribution: "Poisson", lambda: 1.0 }
+  i: { distribution: "Normal", mean: 15.0, std_dev: 30.0 }
+  w: { distribution: "Normal", mean: 30.0, std_dev: 30.0 }
+  a_s: { distribution: "Normal", mean: 10.0, std_dev: 5.0 }
+  a_r: { distribution: "Normal", mean: 10.0, std_dev: 5.0 }
+conversations:
+  - group: "group1"
+    recipients: ["Alice", "Carol"]
+  - group: "group2"
+    recipients: ["Alice", "Dave"]

+ 1 - 0
shadow/peer-tor/shadow.data.template/hosts/peer2/carol.tor/hostname

@@ -0,0 +1 @@
+mc6ajzn34td5oslhvp2m22o5lnh7dow6dxiykjdcmzkmibzca4e3ekqd.onion

BIN
shadow/peer-tor/shadow.data.template/hosts/peer2/carol.tor/hs_ed25519_public_key


BIN
shadow/peer-tor/shadow.data.template/hosts/peer2/carol.tor/hs_ed25519_secret_key


+ 16 - 0
shadow/peer-tor/shadow.data.template/hosts/peer2/carol.yaml

@@ -0,0 +1,16 @@
+user: "Carol"
+socks: "127.0.0.1:9000"
+listen: "127.0.0.1:6398"
+bootstrap: 5.0
+retry: 5.0
+distributions:
+  s: 0.5
+  r: 0.1
+  m: { distribution: "Poisson", lambda: 1.0 }
+  i: { distribution: "Normal", mean: 15.0, std_dev: 30.0 }
+  w: { distribution: "Normal", mean: 30.0, std_dev: 30.0 }
+  a_s: { distribution: "Normal", mean: 10.0, std_dev: 5.0 }
+  a_r: { distribution: "Normal", mean: 10.0, std_dev: 5.0 }
+conversations:
+  - group: "group1"
+    recipients: ["Alice", "Bob"]

+ 4 - 0
shadow/peer-tor/shadow.data.template/hosts/peer2/torrc

@@ -0,0 +1,4 @@
+HiddenServiceDir bob.tor
+HiddenServicePort 6397 127.0.0.1:6397
+HiddenServiceDir carol.tor
+HiddenServicePort 6398 127.0.0.1:6398

+ 2 - 0
shadow/peer-tor/shadow.data.template/hosts/peer2/torrc-defaults

@@ -0,0 +1,2 @@
+%include ../../../conf/tor.common.torrc
+%include ../../../conf/tor.client.torrc

+ 1 - 0
shadow/peer-tor/shadow.data.template/hosts/peer3/dave.tor/hostname

@@ -0,0 +1 @@
+szzserm2kz4xz7mmkhxtfvku2kqwmbwcxhknuvy52j6sew2wtzds2lqd.onion

BIN
shadow/peer-tor/shadow.data.template/hosts/peer3/dave.tor/hs_ed25519_public_key


BIN
shadow/peer-tor/shadow.data.template/hosts/peer3/dave.tor/hs_ed25519_secret_key


+ 16 - 0
shadow/peer-tor/shadow.data.template/hosts/peer3/dave.yaml

@@ -0,0 +1,16 @@
+user: "Dave"
+socks: "127.0.0.1:9000"
+listen: "127.0.0.1:6397"
+bootstrap: 5.0
+retry: 5.0
+distributions:
+  s: 0.5
+  r: 0.1
+  m: { distribution: "Poisson", lambda: 1.0 }
+  i: { distribution: "Normal", mean: 15.0, std_dev: 30.0 }
+  w: { distribution: "Normal", mean: 30.0, std_dev: 30.0 }
+  a_s: { distribution: "Normal", mean: 10.0, std_dev: 5.0 }
+  a_r: { distribution: "Normal", mean: 10.0, std_dev: 5.0 }
+conversations:
+  - group: "group2"
+    recipients: ["Alice", "Bob"]

+ 2 - 0
shadow/peer-tor/shadow.data.template/hosts/peer3/torrc

@@ -0,0 +1,2 @@
+HiddenServiceDir dave.tor
+HiddenServicePort 6397 127.0.0.1:6397

+ 2 - 0
shadow/peer-tor/shadow.data.template/hosts/peer3/torrc-defaults

@@ -0,0 +1,2 @@
+%include ../../../conf/tor.common.torrc
+%include ../../../conf/tor.client.torrc

+ 1 - 0
shadow/peer-tor/shadow.data.template/hosts/relay1/fingerprint

@@ -0,0 +1 @@
+relay1 3FB0BD7827C760FE7F9DD810FCB10322D63AB4CF

+ 15 - 0
shadow/peer-tor/shadow.data.template/hosts/relay1/keys/secret_id_key

@@ -0,0 +1,15 @@
+-----BEGIN RSA PRIVATE KEY-----
+MIICXQIBAAKBgQDLQVnBp+spwAZE/YvTDSF567CIsdSZC1VhYQNV5qIs8j42qDYZ
+TdtgGFcKqBNesB/CyDX3vepszZgGKPw0SnxzxrZcJyi093QOpc/aWgacptEpXawK
+wXZp0hw+RObh/7QSJ5X72p6c+7lMFb8HGdbxmZHXtced4V1+RNQsjWzuJwIDAQAB
+AoGBAJg9mr0yyTG8YvXJ87FhZHGt18yLZnI7yvflclolJdQEnhTSabMKXgbcNFYH
+Dnsd8Kw0yjeGSNC2LehvSnjgUdYOhKPrz3QcejnUVWg1bXMx2EsoSqjRFWymEMis
+fPATXM/FvbJcHSDP62ht6UL/Xpxi8SePZtJ/m9L2j0bwKTIBAkEA/kpBHgAygVAv
+wjc2NMP1OpSkjiS5LjofFFFTbeV+pkpOEzJ9htB7Aw/W0BfIMSAe8+xAQd/Q1xIQ
+RK5McVBAfQJBAMyfPimZfY9Dy8nREOW7RCFpl9UWv+hbAqvIVlPOLDFLNbbdBrQu
+8QGcJbQJyTX5GRBhyC4SriIVmKCDAn2nrnMCQQCprjzDWxhYZ3xm2VanYPb7DwK7
+AtA6g3gHo7jLBS88oSp17uQKGIVs5p3Nn4DrHubolwXNrx541MncOn4xwn41AkA/
+MnuPe5F0+vpo1YJDgcf0DdnP/Vu+FsXHanOHJKkvfEwVs0QLyGe1GJXoehFD8zBT
+h++8kxZm/oaKJIxTZMOTAkBnP7ZSRNtgtBLCLwh5JpGh+oiP++Hx3biJ2HRVo5+E
+6oW5BcytArbD9myZxqjwi6OjIMi5YC1QjYRPNQMd/oPu
+-----END RSA PRIVATE KEY-----

+ 15 - 0
shadow/peer-tor/shadow.data.template/hosts/relay1/keys/secret_onion_key

@@ -0,0 +1,15 @@
+-----BEGIN RSA PRIVATE KEY-----
+MIICXAIBAAKBgQC3tDxczkSWWMxfJiJ6HchqZ+ZX/aSJX2jT/sXsLCa2TeTtnSOw
+Ss7XSzfo4fEuW0u7Mw2YGwyoze7x5G9XRuY9a8FbC70vQryhO5U6huI0W/MYI7og
+mp8jeISFVH8xP5Y12rM74OZfyGHKSxvNTEai/CzxY01PYvRuujpXfMRA/QIDAQAB
+AoGAfL3gt0xBeq41qO6mPrH2o3qGCX3sunOVJU89as/YQbbHGyq3T0CdD8i94F98
+fHP2CtnyAzVq9T1RYeQyTtuP/0GccvNJzx/3hr6pXfsemVpLniP3xWU+qw43FHTr
+4qJ9e506xwrdD4FKNJxzaopXErD3fEA5WRWQcoY3FPtRIIECQQDr2t4mzIPhLZzp
+TRKnR7FObxAwNT+EaWo4z1Ekn7MrJ2GA8QiyK8NOKKrCLNQ1agsMZ/Ma5Vyjbvkx
+0iPb1bOtAkEAx2UNYHo+vV2ZL1E04gceC1vUaSjC9ec2CiOpFC2jQCnDhqwY2XPa
+TcfVQRKNdeJxlA+zTkalG0ESgS8hJi7skQJALOF2Op3aTqQ2YrLW5NwgolNCGlpX
+nuPMYckZoMV++6w/wqCbTgRD4wCcFd0f+JYYSiERwsF4kmUQqGlbh36v9QJBAK+L
+deV0env5RX30/pvoLDlP1YfnjQ01S8xNbPQI4esBWdTc+tunNZC42DT8AnLAs8Ho
+uLG3XHDML2Bwf7zAHyECQFsW7NKELTuN1jYOgbBGrScsylb6F7R9PD7Jx5emxJYP
+aH+fQOhqeiUsFpEiJGA+nNaYA8M3OIPUjPOLo07+rEk=
+-----END RSA PRIVATE KEY-----

BIN
shadow/peer-tor/shadow.data.template/hosts/relay1/keys/secret_onion_key_ntor


+ 0 - 0
shadow/peer-tor/shadow.data.template/hosts/relay1/torrc


+ 3 - 0
shadow/peer-tor/shadow.data.template/hosts/relay1/torrc-defaults

@@ -0,0 +1,3 @@
+%include ../../../conf/tor.common.torrc
+%include ../../../conf/tor.relay.torrc
+%include ../../../conf/tor.non-exit.torrc

+ 1 - 0
shadow/peer-tor/shadow.data.template/hosts/relay2/fingerprint

@@ -0,0 +1 @@
+relay2 FF197204099FA0E507FA46D41FED97D3337B4BAA

+ 15 - 0
shadow/peer-tor/shadow.data.template/hosts/relay2/keys/secret_id_key

@@ -0,0 +1,15 @@
+-----BEGIN RSA PRIVATE KEY-----
+MIICWwIBAAKBgQCflLrEIuXI/eMaot4Eut37bMRmQEx9pG8xtgqWDk9ig+Cbf2J+
+s5zmizef4cOJBvJsz+aFzQlGSm4J8REZyHRih7lbwfsx+tyiVpugmmJEsCHUMhSU
+6ce/2k1AAcaLj3g8ldq9SWKCsReSbwYSS7YfwTu6/Q9d+WSSt9pdJyxgnQIDAQAB
+AoGAYemsqnlLCgaVGJvDo51QZFr5Kk/bXt/MhfDPEADZvnVyE5aWRW1JIL9cstGf
+2uyTRCZPp9sFDMbQO3NY7bvrhCz9y9ivbiewMqLKtXEB6j6Y/cGJQAc50uowrlCq
+Bt+7mBHmYqTvF03fhY48aROh4fJlPoPgo4ddP6fbjD2EbVUCQQDMEOYEDV9wLL8l
+0mxsk8B86PMgW6p70SJ9QQQUnDYFeRfIIkL6Fa4BjjCXA+4yRVEVJSMCHMXoVnyp
+5TZt1HRnAkEAyDGWVBrKGWAVFZE8M9IZXku9mTtCF5Jujrb8CyloVzIvQQ0+Pzhh
+XvokNkhQ5+xEfmUwCpbEwkQCc58j7cEAWwJAa1Jb1je+QL2Xzelr0nKmYksVSqhK
+8hFcJSmjXr+E/b3gzwWN2f664+CHF3UeuduQuCEu1zaQsw+BQszkokCA8wJAawIO
+f+Bd/NheDMw4KN76Dmxf6UNCncT48bIf4Xt9uXYqyhPhHPvvGEyPBLD9BitFpWZD
+GrXicJDX2qPLGbAblwJAOU2yVZ9ARLei5B3Pa9NyFl1LClM0wwEYQoyvqYC7me1+
+a74vBSgWk+phMnvWs37rb029vwknAV1IwSfxYjGXXA==
+-----END RSA PRIVATE KEY-----

+ 15 - 0
shadow/peer-tor/shadow.data.template/hosts/relay2/keys/secret_onion_key

@@ -0,0 +1,15 @@
+-----BEGIN RSA PRIVATE KEY-----
+MIICWwIBAAKBgQDYSBZyLdOwSOTf2B6Ad91cptmzmMUIhIjhQJwtDgFOlongssNk
+zIGB1rUw8gLFkX6mxgvFABLW+CQ1UmTjQucwVsVyRDS4QtKDEF0hvY5obCFHugn/
+wlen6/8gWyvhauwUEDRyS1pZEaA6P8KR0/MLN3mitKuP9ggbPaHWZk8MtwIDAQAB
+AoGAPoO/sSsb2AWJ2kW+s0VyP3ieznGm6gpdAjbJraAxsoSCv+cL4VPXTy8/WjFp
+qa+fWxc9iai2yVoaJSt2q9XHusIiHRlzuZUclbbj0HY4MrF88iYmc6nJMSFqn4p6
+LFmsyM7xx7XMmjgQPC0FTFbeMCYW5P6IgdNmQM7wihDEB+kCQQDsxa8GX9dSZw+E
+4xWdPTtLUUgyRDZl8xZonm14mjVPHCi77SlIQMRZwujyHvzbtD7/M2cnWtXufZ4i
+D3JTzaOzAkEA6dhrax6/OS2V57RGgdqXEghl309E8f9OtEMTfzPptWLTbRwSRYuP
+Rsjr4CPr8e1R+toCctkDRx/U5L1rjheA7QJAES63aOsDoUNBaQ9hvit3Zhvb9Wnl
+2LgvZCA7KYlnXPpaKmknmcq5dRoj9Y4yI2+NMs/0KHL7G3eaRjaAwXwm6QJADLhu
+F3SjuEuHhQQkdbnbT+rPB9e7C2L0+A9SBzBevTQ0BhJp2AigcZxKYHXzxsQ/GmMz
+kOXHLN5JaWv4ZtFWfQJAacs81Jw/yniawF7T8DTiNnmlJyc+Xi7Tf2VteKHIKZ7J
+o7vQtj+L56GTpy0UUCQQ+ABFvOyKIjTH8ARyVxsb/w==
+-----END RSA PRIVATE KEY-----

BIN
shadow/peer-tor/shadow.data.template/hosts/relay2/keys/secret_onion_key_ntor


+ 0 - 0
shadow/peer-tor/shadow.data.template/hosts/relay2/torrc


+ 3 - 0
shadow/peer-tor/shadow.data.template/hosts/relay2/torrc-defaults

@@ -0,0 +1,3 @@
+%include ../../../conf/tor.common.torrc
+%include ../../../conf/tor.relay.torrc
+%include ../../../conf/tor.non-exit.torrc

+ 1 - 0
shadow/peer-tor/shadow.data.template/hosts/relay3/fingerprint

@@ -0,0 +1 @@
+relay3 3BAEAC8E24C87B4E536484837B67966487A93214

BIN
shadow/peer-tor/shadow.data.template/hosts/relay3/keys/ed25519_master_id_public_key


BIN
shadow/peer-tor/shadow.data.template/hosts/relay3/keys/ed25519_master_id_secret_key


BIN
shadow/peer-tor/shadow.data.template/hosts/relay3/keys/ed25519_signing_cert


BIN
shadow/peer-tor/shadow.data.template/hosts/relay3/keys/ed25519_signing_secret_key


BIN
shadow/peer-tor/shadow.data.template/hosts/relay3/keys/secret_id_key


BIN
shadow/peer-tor/shadow.data.template/hosts/relay3/keys/secret_onion_key


BIN
shadow/peer-tor/shadow.data.template/hosts/relay3/keys/secret_onion_key_ntor


+ 0 - 0
shadow/peer-tor/shadow.data.template/hosts/relay3/torrc


+ 3 - 0
shadow/peer-tor/shadow.data.template/hosts/relay3/torrc-defaults

@@ -0,0 +1,3 @@
+%include ../../../conf/tor.common.torrc
+%include ../../../conf/tor.relay.torrc
+%include ../../../conf/tor.non-exit.torrc

+ 1 - 0
shadow/peer-tor/shadow.data.template/hosts/relay4/fingerprint

@@ -0,0 +1 @@
+relay4 7073525D6A7B97E4708CE8B712BAF21049A72168

BIN
shadow/peer-tor/shadow.data.template/hosts/relay4/keys/ed25519_master_id_public_key


BIN
shadow/peer-tor/shadow.data.template/hosts/relay4/keys/ed25519_master_id_secret_key


BIN
shadow/peer-tor/shadow.data.template/hosts/relay4/keys/ed25519_signing_cert


BIN
shadow/peer-tor/shadow.data.template/hosts/relay4/keys/ed25519_signing_secret_key


BIN
shadow/peer-tor/shadow.data.template/hosts/relay4/keys/secret_id_key


BIN
shadow/peer-tor/shadow.data.template/hosts/relay4/keys/secret_onion_key


BIN
shadow/peer-tor/shadow.data.template/hosts/relay4/keys/secret_onion_key_ntor


+ 0 - 0
shadow/peer-tor/shadow.data.template/hosts/relay4/torrc


+ 3 - 0
shadow/peer-tor/shadow.data.template/hosts/relay4/torrc-defaults

@@ -0,0 +1,3 @@
+%include ../../../conf/tor.common.torrc
+%include ../../../conf/tor.relay.torrc
+%include ../../../conf/tor.non-exit.torrc

+ 21 - 0
shadow/peer-tor/shadow.data.template/hosts/server/server.crt

@@ -0,0 +1,21 @@
+-----BEGIN CERTIFICATE-----
+MIIDazCCAlOgAwIBAgIUZ++oU4ax9bOfOI5c+TfysW8P0UowDQYJKoZIhvcNAQEL
+BQAwRTELMAkGA1UEBhMCVVMxEzARBgNVBAgMClNvbWUtU3RhdGUxITAfBgNVBAoM
+GEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDAeFw0yMzA3MTUyMjM5NTdaFw0yMzA4
+MTQyMjM5NTdaMEUxCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApTb21lLVN0YXRlMSEw
+HwYDVQQKDBhJbnRlcm5ldCBXaWRnaXRzIFB0eSBMdGQwggEiMA0GCSqGSIb3DQEB
+AQUAA4IBDwAwggEKAoIBAQDGE1VtF1/YTjm/yxeRcWdy/Tt0zybPUJn7VAn78T0u
+Xckr2s8L71yC513dA9pVcTUGcSqaL7JUQe1tpq1vIdK6EHKWGhz8Uzbn+RSd8gfV
+NM5MH28jb9dnKBfY7y0AcNBnWkSrJaHx4OHbgNbMaYqJmVN9YOBSrqYBXL9prtGt
+e1TpPPGAWHu5K8nb6WCd7/8g3ih6LQc2FAjcMdm0AWIAm1gGmxqu1i4swjyB4ECF
+VE7H1QUA4qL1rNLYz9boLqSEXMjIaF9nSMZ1y43yWPk8+6gYvvmvqIFj/t1ArY0C
+l2dePm+2C/lyv/XmyRNNpaZxbR4q1RRT2PdTU2vgV1SxAgMBAAGjUzBRMB0GA1Ud
+DgQWBBQ9ZhuVtY4lwGK+TuROxVVddW19rTAfBgNVHSMEGDAWgBQ9ZhuVtY4lwGK+
+TuROxVVddW19rTAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQA4
++D344kBAGa2lirPjXKMk8AbIcGOI12/g47juTJ2njj0IOEBjJKj6Sd+DonBF0ZFf
+ENiHjXXLAoQuhEbtgfUcqfOFqHUcA4rNIb9FwVVkElSNcl173JuBguv9oxO4cLsE
+a/8xMKH3pEBM/jONXSj899X7Psf9XEnOX6SOwIzvcP+9zlCHZ8I17EK1AXJnLRap
+uJy2WZONkUcEtCi7mij3Y7JCkFHYMKM6R2IEJnktfczyC/EQ4pTFJwsLPyqyb1q8
+R7I8Ea5fN95tzuB8Et6ke9Zz/UwmwPVGwhXg3ieEz5rSAYVVwrDJeYEGzADErGpf
+ZS5uF8f3OfmcADWdPRuD
+-----END CERTIFICATE-----

+ 28 - 0
shadow/peer-tor/shadow.data.template/hosts/server/server.key

@@ -0,0 +1,28 @@
+-----BEGIN PRIVATE KEY-----
+MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDGE1VtF1/YTjm/
+yxeRcWdy/Tt0zybPUJn7VAn78T0uXckr2s8L71yC513dA9pVcTUGcSqaL7JUQe1t
+pq1vIdK6EHKWGhz8Uzbn+RSd8gfVNM5MH28jb9dnKBfY7y0AcNBnWkSrJaHx4OHb
+gNbMaYqJmVN9YOBSrqYBXL9prtGte1TpPPGAWHu5K8nb6WCd7/8g3ih6LQc2FAjc
+Mdm0AWIAm1gGmxqu1i4swjyB4ECFVE7H1QUA4qL1rNLYz9boLqSEXMjIaF9nSMZ1
+y43yWPk8+6gYvvmvqIFj/t1ArY0Cl2dePm+2C/lyv/XmyRNNpaZxbR4q1RRT2PdT
+U2vgV1SxAgMBAAECggEAA7+CqLBuKr2LM/UDvoew85D1Zq/TTg26RjJYSIVPeTDC
+4WKv84u9WkhGw0uC/oYogNVUHywLIbNIKwCiDEXtcwIj6vF2TjOEaNYSpOz7JzaL
+N09KdvcTMkNk1SDsfvNDjEsd3Me25WjyGSlaVy6hlZo6RVd3kzT1FPZEdHtfghr4
+cVv+fm18AxF5LF+wKJ9XnKKt1N8j+yoIJGBjn8CfUC9Za5Vi7tMvtixadg0F1UDC
+lG6vSdeW+uXsxiMBh+c42Qhhk8B321FDVdF3jw7Yn8AHpFLnOcm1UAT5fDMcpQ4a
+TnA9sTepEuXNtKZdY3u2c7FNHXzG79rvYyi34ox5QQKBgQDbkWtVZN0a6bKK+DUT
+0Fcc4RgTQRYBdEZ9aiTPm+scLGSOe5hvuvkabB/1OoVB/vOI6/mmC84B3TTzm2zo
+itMteFXXuCnOpxq+5kpjsMBmKXPorXqXOtpcVXCPziQhG/KYNNJE7qbqpoYApBH6
+WGjCD7SPUewbxI3qhd2Hms/goQKBgQDm8PpH+iXZ0dMl5CvrgpXQ/a6BR3FQk7BS
+uMXYs7yQpfc8ifDVfDz064hEJoKtwOhhfmRybwdnHegb6u/c6goNvY/cKSLAlWyF
+T89TEqB1bv+7bH8T/7iT6jDJ1m3lJQMgBccSqS7cd9+FIG7j78W3ruZL2j+O+AgX
+Lp2yrE8qEQKBgCG+f5hoH/L6542kB8Q7yKePkHulDRS8Ifk0TuP5OnDiAbJEHHFP
+cuk0pNSzYbd6z0LDwWJbfhWbQYAO6vXyH/JlBAxbKVGxLNMZ4WTgzTDmPgIMZ0LG
+sLhwCRSQwcy01tu9gnNFmjGF1iJTFNA8thzc/QrptDewRX89g4ZLrJcBAoGBAI2c
+uSyH1MwDoWF7z/7DfZDA7k/x+ic52QZwrUlbtcZRLxEdWOPgIhThlRaNMtbPEvAt
+q/SL5tMxgJIV923UycNxORT82IWVWw1ISk6bfm9kWEaamjYuOgXhtnceGRdJIehy
+AoeL3ONuUk70+2qkLe6bvjZHJ3BI4dUtTaAxjv2xAoGBALkRxCE9Pw3oaSSGmJtc
+/JnXjE8mwDQxk+wKYFBPy08F8vltTAISZeqKx2X+RZeQ+zMa8+vT7QMMeYFw1NEE
+bzyo8KWv4Vx1vD2WL5dDnY6cAPdcjzTkRletvqBno2E0kyLeexkv1hnPhGarZNsM
+eaGu3kM8xsKbjqJ7D6xFVWz0
+-----END PRIVATE KEY-----

+ 1 - 0
shadow/peer-tor/shadow.data.template/hosts/web/server.crt

@@ -0,0 +1 @@
+../server/server.crt

+ 1 - 0
shadow/peer-tor/shadow.data.template/hosts/web/server.key

@@ -0,0 +1 @@
+../server/server.key

+ 83 - 0
shadow/peer-tor/shadow.yaml

@@ -0,0 +1,83 @@
+general:
+  stop_time: 30m
+  bootstrap_end_time: 120s
+
+network:
+  graph:
+    # use a built-in network graph containing
+    # a single vertex with a bandwidth of 1 Gbit
+    type: 1_gbit_switch
+
+hosts:
+  peer1: &peer_host
+    network_node_id: 0
+    processes:
+    - path: mgen-peer
+      args: "../hostsfile *.yaml"
+      start_time: 310s
+      expected_final_state: running
+      environment: {RUST_LOG: "trace"}
+    - path: tor
+      args: --Address torclient --Nickname torclient
+            --defaults-torrc torrc-defaults -f torrc
+      start_time: 100
+      expected_final_state: running
+  peer2: *peer_host
+  peer3: *peer_host
+  4uthority:
+    network_node_id: 0
+    ip_addr: 100.0.0.1
+    processes:
+    - path: tor
+      args: --Address 4uthority --Nickname 4uthority
+            --defaults-torrc torrc-defaults -f torrc
+      start_time: 1
+      expected_final_state: running
+  exit1:
+    network_node_id: 0
+    processes:
+    - path: tor
+      args: --Address exit1 --Nickname exit1
+            --defaults-torrc torrc-defaults -f torrc
+      start_time: 60
+      expected_final_state: running
+  exit2:
+    network_node_id: 0
+    processes:
+    - path: tor
+      args: --Address exit2 --Nickname exit2
+            --defaults-torrc torrc-defaults -f torrc
+      start_time: 60
+      expected_final_state: running
+  relay1:
+    network_node_id: 0
+    processes:
+    - path: tor
+      args: --Address relay1 --Nickname relay1
+            --defaults-torrc torrc-defaults -f torrc
+      start_time: 60
+      expected_final_state: running
+  relay2:
+    network_node_id: 0
+    processes:
+    - path: tor
+      args: --Address relay2 --Nickname relay2
+            --defaults-torrc torrc-defaults -f torrc
+      start_time: 60
+      expected_final_state: running
+  relay3:
+    network_node_id: 0
+    processes:
+    - path: tor
+      args: --Address relay3 --Nickname relay3
+            --defaults-torrc torrc-defaults -f torrc
+      start_time: 60
+      expected_final_state: running
+  relay4:
+    network_node_id: 0
+    processes:
+    - path: tor
+      args: --Address relay4 --Nickname relay4
+            --defaults-torrc torrc-defaults -f torrc
+      start_time: 60
+      expected_final_state: running