forked from I2P_Developers/i2p.www
Updated translation strings
This commit is contained in:
File diff suppressed because it is too large
Load Diff
@@ -13,7 +13,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: I2P\n"
|
||||
"Report-Msgid-Bugs-To: http://trac.i2p2.de\n"
|
||||
"POT-Creation-Date: 2014-10-22 20:13+0000\n"
|
||||
"POT-Creation-Date: 2014-11-27 12:12+0000\n"
|
||||
"PO-Revision-Date: 2014-10-22 20:36+0000\n"
|
||||
"Last-Translator: Ettore Atalan <atalanttore@googlemail.com>\n"
|
||||
"Language-Team: German "
|
||||
@@ -438,317 +438,52 @@ msgid ""
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:15
|
||||
#: i2p2www/pages/site/get-involved/todo.html:53
|
||||
#: i2p2www/pages/site/get-involved/todo.html:38
|
||||
msgid "Core functionality"
|
||||
msgstr "Kernfunktionalität"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:15
|
||||
#: i2p2www/pages/site/get-involved/todo.html:27
|
||||
#: i2p2www/pages/site/get-involved/todo.html:51
|
||||
#: i2p2www/pages/site/get-involved/todo.html:21
|
||||
#: i2p2www/pages/site/get-involved/todo.html:36
|
||||
msgid "link"
|
||||
msgstr "Link"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:17
|
||||
#: i2p2www/pages/site/get-involved/todo.html:56
|
||||
msgid "NAT/Firewall bridging via 1-hop restricted routes"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:20
|
||||
#: i2p2www/pages/site/get-involved/todo.html:129
|
||||
msgid "High degree transport layer with UDP, NBIO, or NIO"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:23
|
||||
#: i2p2www/pages/site/get-involved/todo.html:217
|
||||
#: i2p2www/pages/site/get-involved/todo.html:41
|
||||
msgid "NetworkDB and profile tuning and ejection policy for large nets"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:27
|
||||
#: i2p2www/pages/site/get-involved/todo.html:241
|
||||
#: i2p2www/pages/site/get-involved/todo.html:21
|
||||
#: i2p2www/pages/site/get-involved/todo.html:65
|
||||
msgid "Security / anonymity"
|
||||
msgstr "Sicherheit / Anonymität"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:29
|
||||
#: i2p2www/pages/site/get-involved/todo.html:244
|
||||
msgid ""
|
||||
"Per-hop tunnel id & new permuted TunnelVerificationStructure "
|
||||
"encryption"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:32
|
||||
#: i2p2www/pages/site/get-involved/todo.html:294
|
||||
msgid "Strict ordering of participants within tunnels"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:35
|
||||
msgid "Randomly permuted tunnel lengths"
|
||||
msgstr "Zufällig vertauschte Tunnellängen"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:38
|
||||
#: i2p2www/pages/site/get-involved/todo.html:356
|
||||
#: i2p2www/pages/site/get-involved/todo.html:23
|
||||
#: i2p2www/pages/site/get-involved/todo.html:68
|
||||
msgid "Full blown n-hop restricted routes with optional trusted links"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:41
|
||||
#: i2p2www/pages/site/get-involved/todo.html:375
|
||||
#: i2p2www/pages/site/get-involved/todo.html:26
|
||||
#: i2p2www/pages/site/get-involved/todo.html:87
|
||||
msgid "Hashcash for routerIdentity, destination, and tunnel request"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:44
|
||||
#: i2p2www/pages/site/get-involved/todo.html:404
|
||||
#: i2p2www/pages/site/get-involved/todo.html:29
|
||||
#: i2p2www/pages/site/get-involved/todo.html:116
|
||||
msgid "Advanced tunnel operation (batching/mixing/throttling/padding)"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:47
|
||||
#: i2p2www/pages/site/get-involved/todo.html:441
|
||||
#: i2p2www/pages/site/get-involved/todo.html:32
|
||||
#: i2p2www/pages/site/get-involved/todo.html:153
|
||||
msgid "Stop & go mix w/ garlics & tunnels"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:51
|
||||
#: i2p2www/pages/site/get-involved/todo.html:455
|
||||
#: i2p2www/pages/site/get-involved/todo.html:36
|
||||
#: i2p2www/pages/site/get-involved/todo.html:167
|
||||
msgid "Performance"
|
||||
msgstr "Leistung"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:61
|
||||
msgid "Implemented in I2P 0.6.0.6"
|
||||
msgstr "Implementiert in I2P 0.6.0.6"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:62
|
||||
msgid ""
|
||||
"The functionality of allowing routers to fully participate within the "
|
||||
"network \n"
|
||||
"while behind firewalls and NATs that they do not control requires some "
|
||||
"basic \n"
|
||||
"restricted route operation (since those peers will not be able to receive"
|
||||
" \n"
|
||||
"inbound connections). To do this successfully, you consider peers one of"
|
||||
" \n"
|
||||
"two ways:"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:72
|
||||
msgid ""
|
||||
"<b>Peers who have reachable interfaces</b> - these peers do not need to \n"
|
||||
"do anything special"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:76
|
||||
msgid ""
|
||||
"<b>Peers who do not have reachable interfaces</b> - these peers must "
|
||||
"build \n"
|
||||
"a tunnel pointing at them where the gateway is one of the peers they have"
|
||||
" \n"
|
||||
"established a connection with who has both a publicly reachable interface"
|
||||
" \n"
|
||||
"and who has agreed to serve as their 'introducer'."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:84
|
||||
msgid ""
|
||||
"To do this, peers who have no IP address simply connect to a few peers, \n"
|
||||
"build a tunnel through them, and publish a reference to those tunnels "
|
||||
"within \n"
|
||||
"their RouterInfo structure in the network database."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:89
|
||||
msgid ""
|
||||
"When someone wants to contact any particular router, they first must get"
|
||||
" \n"
|
||||
"its RouterInfo from the network database, which will tell them whether "
|
||||
"they \n"
|
||||
"can connect directly (e.g. the peer has a publicly reachable interface) \n"
|
||||
"or whether they need to contact them indirectly. Direct connections occur"
|
||||
" \n"
|
||||
"as normal, while indirect connections are done through one of the "
|
||||
"published \n"
|
||||
"tunnels."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:97
|
||||
msgid ""
|
||||
"When a router just wants to get a message or two to a specific hidden "
|
||||
"peer, \n"
|
||||
"they can just use the indirect tunnel for sending the payload. However, \n"
|
||||
"if the router wants to talk to the hidden peer often (for instance, as "
|
||||
"part \n"
|
||||
"of a tunnel), they will send a garlic routed message through the indirect"
|
||||
" \n"
|
||||
"tunnel to that hidden peer which unwraps to contain a message which "
|
||||
"should \n"
|
||||
"be sent to the originating router. That hidden peer then establishes an \n"
|
||||
"outbound connection to the originating router and from then on, those two"
|
||||
" \n"
|
||||
"routers can talk to each other directly over that newly established "
|
||||
"direct \n"
|
||||
"connection."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:108
|
||||
msgid ""
|
||||
"Of course, that only works if the originating peer can receive "
|
||||
"connections \n"
|
||||
"(they aren't also hidden). However, if the originating peer is hidden, "
|
||||
"they \n"
|
||||
"can simply direct the garlic routed message to come back to the "
|
||||
"originating \n"
|
||||
"peer's inbound tunnel."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:114
|
||||
msgid ""
|
||||
"This is not meant to provide a way for a peer's IP address to be "
|
||||
"concealed, \n"
|
||||
"merely as a way to let people behind firewalls and NATs fully operate "
|
||||
"within \n"
|
||||
"the network. Concealing the peer's IP address adds a little more work, as"
|
||||
" \n"
|
||||
"described <a href=\"#fullRestrictedRoutes\">below.</a>"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:120
|
||||
msgid ""
|
||||
"With this technique, any router can participate as any part of a tunnel."
|
||||
" \n"
|
||||
"For efficiency purposes, a hidden peer would be a bad choice for an "
|
||||
"inbound \n"
|
||||
"gateway, and within any given tunnel, two neighboring peers wouldn't want"
|
||||
" \n"
|
||||
"to be hidden. But that is not technically necessary."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:132
|
||||
msgid "Both UDP and NIO have been Implemented in I2P"
|
||||
msgstr "Sowohl UDP und NIO sind in I2P implementiert"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:133
|
||||
msgid ""
|
||||
"Standard TCP communication in Java generally requires blocking socket \n"
|
||||
"calls, and to keep a blocked socket from hanging the entire system, those"
|
||||
" \n"
|
||||
"blocking calls are done on their own threads. Our current TCP transport \n"
|
||||
"is implemented in a naive fashion - for each peer we are talking to, we \n"
|
||||
"have one thread reading and one thread writing. The reader thread simply"
|
||||
" \n"
|
||||
"loops a bunch of read() calls, building I2NP messages and adding them \n"
|
||||
"to our internal inbound message queue, and the writer thread pulls "
|
||||
"messages \n"
|
||||
"off a per-connection outbound message queue and shoves the data through \n"
|
||||
"write() calls."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:144
|
||||
msgid ""
|
||||
"We do this fairly efficiently, from a CPU perspective - at any time, \n"
|
||||
"almost all of these threads are sitting idle, blocked waiting for "
|
||||
"something \n"
|
||||
"to do. However, each thread consumes real resources (on older Linux "
|
||||
"kernels, \n"
|
||||
"for instance, each thread would often be implemented as a fork()'ed "
|
||||
"process). \n"
|
||||
"As the network grows, the number of peers each router will want to talk \n"
|
||||
"with will increase (remember, I2P is fully connected, meaning that any \n"
|
||||
"given peer should know how to get a message to any other peer, and "
|
||||
"restricted \n"
|
||||
"route support will probably not significantly reduce the number of "
|
||||
"connections \n"
|
||||
"necessary). This means that with a 100,000 router network, each router \n"
|
||||
"will have up to 199,998 threads just to deal with the TCP connections!"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:156
|
||||
msgid ""
|
||||
"Obviously, that just won't work. We need to use a transport layer that \n"
|
||||
"can scale. In Java, we have two main camps:"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:161
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Implemented in I2P 0.6 (\"SSU\") as documented <a "
|
||||
"href=\"%(ssu)s\">elsewhere</a>"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:164
|
||||
msgid ""
|
||||
"Sending and receiving UDP datagrams is a connectionless operation - if \n"
|
||||
"we are communicating with 100,000 peers, we simply stick the UDP packets"
|
||||
" \n"
|
||||
"in a queue and have a single thread pulling them off the queue and "
|
||||
"shoving \n"
|
||||
"them out the pipe (and to receive, have a single thread pulling in any \n"
|
||||
"UDP packets received and adding them to an inbound queue)."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:171
|
||||
msgid ""
|
||||
"However, moving to UDP means losing the benefits of TCP's ordering, "
|
||||
"congestion \n"
|
||||
"control, MTU discovery, etc. Implementing that code will take significant"
|
||||
" \n"
|
||||
"work, however I2P doesn't need it to be as strong as TCP. Specifically, \n"
|
||||
"a while ago I was taking some measurements in the simulator and on the \n"
|
||||
"live net, and the vast majority of messages transferred would fit easily"
|
||||
" \n"
|
||||
"within a single unfragmented UDP packet, and the largest of the messages"
|
||||
" \n"
|
||||
"would fit within 20-30 packets. As mule pointed out, TCP adds a "
|
||||
"significant \n"
|
||||
"overhead when dealing with so many small packets, as the ACKs are within"
|
||||
" \n"
|
||||
"an order of magnitude in size. With UDP, we can optimize the transport \n"
|
||||
"for both efficiency and resilience by taking into account I2P's "
|
||||
"particular \n"
|
||||
"needs."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:184
|
||||
msgid "It will be a lot of work though."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:187
|
||||
msgid "NIO or NBIO"
|
||||
msgstr "NIO oder NBIO"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:188
|
||||
msgid "NIO Implemented in I2P 0.6.1.22 (\"NTCP\")"
|
||||
msgstr "NIO implementiert in I2P 0.6.1.22 (\"NTCP\")"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:191
|
||||
msgid ""
|
||||
"In Java 1.4, a set of \"New I/O\" packages was introduced, allowing Java"
|
||||
" \n"
|
||||
"developers to take advantage of the operating system's nonblocking IO \n"
|
||||
"capabilities - allowing you to maintain a large number of concurrent IO \n"
|
||||
"operations without requiring a separate thread for each. There is much \n"
|
||||
"promise with this approach, as we can scalable handle a large number of \n"
|
||||
"concurrent connections and we don't have to write a mini-TCP stack with \n"
|
||||
"UDP. However, the NIO packages have not proven themselves to be battle-"
|
||||
"ready, \n"
|
||||
"as the Freenet developer's found. In addition, requiring NIO support "
|
||||
"would \n"
|
||||
"mean we can't run on any of the open source JVMs like <a "
|
||||
"href=\"http://www.kaffe.org/\">Kaffe</a>, \n"
|
||||
"as <a href=\"http://www.classpath.org/\">GNU/Classpath</a> has only "
|
||||
"limited \n"
|
||||
"support for NIO. <i>(note: this may not be the case anymore, as there \n"
|
||||
"has been some progress on Classpath's NIO, but it is an unknown "
|
||||
"quantity)</i>"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:205
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Another alternative along the same lines is the <a href=\"%(link)s\">Non"
|
||||
" \n"
|
||||
"Blocking I/O</a> package - essentially a cleanroom NIO implementation \n"
|
||||
"(written before NIO was around). It works by using some native OS code \n"
|
||||
"to do the nonblocking IO, passing off events through Java. It seems to \n"
|
||||
"be working with Kaffe, though there doesn't seem to be much development \n"
|
||||
"activity on it lately (likely due to 1.4's NIO deployment)."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:220
|
||||
#: i2p2www/pages/site/get-involved/todo.html:44
|
||||
msgid ""
|
||||
"Within the current network database and profile management "
|
||||
"implementation, \n"
|
||||
@@ -771,152 +506,14 @@ msgid ""
|
||||
"code yet, since we aren't going to need it for a while."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:235
|
||||
#: i2p2www/pages/site/get-involved/todo.html:59
|
||||
msgid ""
|
||||
"That said, as the network grows we are going to want to keep these "
|
||||
"considerations \n"
|
||||
"in mind. We will have some work to do, but we can put it off for later."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:247
|
||||
#: i2p2www/pages/site/get-involved/todo.html:331
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Addressed in I2P 0.5 as documented <a "
|
||||
"href=\"%(tunnelimpl)s\">elsewhere</a>"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:250
|
||||
msgid ""
|
||||
"Right now, if Alice builds a four hop inbound tunnel starting at Elvis, \n"
|
||||
"going to Dave, then to Charlie, then Bob, and finally Alice "
|
||||
"(A<--B<--C<--D<--E), \n"
|
||||
"all five of them will know they are participating in tunnel \"123\", as \n"
|
||||
"the messages are tagged as such. What we want to do is give each hop "
|
||||
"their \n"
|
||||
"own unique tunnel hop ID - Charlie will receive messages on tunnel 234 \n"
|
||||
"and forward them to tunnel 876 on Bob. The intent is to prevent Bob or \n"
|
||||
"Charlie from knowing that they are in Alice's tunnel, as if each hop in \n"
|
||||
"the tunnel had the same tunnel ID, collusion attacks aren't much work."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:260
|
||||
msgid ""
|
||||
"Adding a unique tunnel ID per hop isn't hard, but by itself, "
|
||||
"insufficient. \n"
|
||||
"If Dave and Bob are under the control of the same attacker, they wouldn't"
|
||||
" \n"
|
||||
"be able to tell they are in the same tunnel due to the tunnel ID, but \n"
|
||||
"would be able to tell by the message bodies and verification structures \n"
|
||||
"by simply comparing them. To prevent that, the tunnel must use layered \n"
|
||||
"encryption along the path, both on the payload of the tunneled message \n"
|
||||
"and on the verification structure (used to prevent simple tagging "
|
||||
"attacks). \n"
|
||||
"This requires some simple modifications to the TunnelMessage, as well \n"
|
||||
"as the inclusion of per-hop secret keys delivered during tunnel creation"
|
||||
" \n"
|
||||
"and given to the tunnel's gateway. We must fix a maximum tunnel length \n"
|
||||
"(e.g. 16 hops) and instruct the gateway to encrypt the message to each \n"
|
||||
"of the 16 delivered secret keys, in reverse order, and to encrypt the \n"
|
||||
"signature of the hash of the (encrypted) payload at each step. The "
|
||||
"gateway \n"
|
||||
"then sends that 16-step encrypted message, along with a 16-step and "
|
||||
"16-wide \n"
|
||||
"encrypted mapping to the first hop, which then decrypts the mapping and \n"
|
||||
"the payload with their secret key, looking in the 16-wide mapping for \n"
|
||||
"the entry associated with their own hop (keyed by the per-hop tunnel ID)"
|
||||
" \n"
|
||||
"and verifying the payload by checking it against the associated signed \n"
|
||||
"hash."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:281
|
||||
msgid ""
|
||||
"The tunnel gateway does still have more information than the other peers"
|
||||
" \n"
|
||||
"in the tunnel, and compromising both the gateway and a tunnel participant"
|
||||
" \n"
|
||||
"would allow those peers to collude, exposing the fact that they are both"
|
||||
" \n"
|
||||
"in the same tunnel. In addition, neighboring peers know that they are \n"
|
||||
"in the same tunnel anyway, as they know who they send the message to (and"
|
||||
" \n"
|
||||
"with IP-based transports without restricted routes, they know who they \n"
|
||||
"got it from). However, the above two techniques significantly increase \n"
|
||||
"the cost of gaining meaningful samples when dealing with longer tunnels."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:297
|
||||
msgid "Implemented in release 0.6.2"
|
||||
msgstr "Implementiert in Version 0.6.2"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:300
|
||||
#, python-format
|
||||
msgid ""
|
||||
"As Connelly <a href=\"%(link)s\">proposed</a> to deal with the\n"
|
||||
"<a href=\"%(pdf1)s\">predecessor attack</a> <a href=\"%(pdf2)s\">(2008\n"
|
||||
"update)</a>, keeping the order of peers within our tunnels consistent \n"
|
||||
"(aka whenever Alice creates a tunnel with both Bob and Charlie in it, \n"
|
||||
"Bob's next hop is always Charlie), we address the issue as Bob doesn't \n"
|
||||
"get to substantially sample Alice's peer selection group. We may even \n"
|
||||
"want to explicitly allow Bob to participate in Alice's tunnels in only \n"
|
||||
"one way - receiving a message from Dave and sending it to Charlie - and \n"
|
||||
"if any of those peers are not available to participate in the tunnel (due"
|
||||
" \n"
|
||||
"to overload, network disconnection, etc), avoid asking Bob to participate"
|
||||
" \n"
|
||||
"in any tunnels until they are back online."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:315
|
||||
msgid ""
|
||||
"More analysis is necessary for revising the tunnel creation - at the \n"
|
||||
"moment, we simply select and order randomly within the peer's top tier \n"
|
||||
"of peers (ones with fast + high capacity)."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:320
|
||||
msgid ""
|
||||
"Adding a strict ordering to peers in a tunnel also improves the anonymity"
|
||||
" \n"
|
||||
"of peers with 0-hop tunnels, as otherwise the fact that a peer's gateway"
|
||||
" \n"
|
||||
"is always the same would be particularly damning. However, peers with \n"
|
||||
"0-hop tunnels may want to periodically use a 1-hop tunnel to simulate \n"
|
||||
"the failure of a normally reliable gateway peer (so every MTBF*(tunnel \n"
|
||||
"duration) minutes, use a 1-hop tunnel)."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:337
|
||||
msgid ""
|
||||
"Without tunnel length permutation, if someone were to somehow detect that"
|
||||
" \n"
|
||||
"a destination had a particular number of hops, it might be able to use "
|
||||
"that \n"
|
||||
"information to identify the router the destination is located on, per the"
|
||||
" \n"
|
||||
"predecessor attack. For instance, if everyone has 2-hop tunnels, if Bob \n"
|
||||
"receives a tunnel message from Charlie and forwards it to Alice, Bob "
|
||||
"knows \n"
|
||||
"Alice is the final router in the tunnel. If Bob were to identify what "
|
||||
"destination \n"
|
||||
"that tunnel served (by means of colluding with the gateway and harvesting"
|
||||
" \n"
|
||||
"the network database for all of the LeaseSets), he would know the router"
|
||||
" \n"
|
||||
"on which that destination is located (and without restricted routes, that"
|
||||
" \n"
|
||||
"would mean what IP address the destination is on)."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:349
|
||||
msgid ""
|
||||
"It is to counter user behavior that tunnel lengths should be permuted, \n"
|
||||
"using algorithms based on the length requested (for example, the 1/MTBF \n"
|
||||
"length change for 0-hop tunnels outlined above)."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:359
|
||||
#: i2p2www/pages/site/get-involved/todo.html:71
|
||||
msgid ""
|
||||
"The restricted route functionality described before was simply a "
|
||||
"functional \n"
|
||||
@@ -938,7 +535,7 @@ msgid ""
|
||||
"to forward it as requested."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:378
|
||||
#: i2p2www/pages/site/get-involved/todo.html:90
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Within the network, we will want some way to deter people from consuming"
|
||||
@@ -952,7 +549,7 @@ msgid ""
|
||||
"to make certain requests \"expensive\"."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:386
|
||||
#: i2p2www/pages/site/get-involved/todo.html:98
|
||||
msgid ""
|
||||
"<a href=\"http://www.hashcash.org/\">Hashcash</a> is one technique that \n"
|
||||
"we can use to anonymously increase the \"cost\" of doing certain "
|
||||
@@ -970,7 +567,7 @@ msgid ""
|
||||
"with few resources."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:397
|
||||
#: i2p2www/pages/site/get-involved/todo.html:109
|
||||
msgid ""
|
||||
"There are a few other algorithms that we can explore for making those \n"
|
||||
"requests for resources \"nonfree\", and further research on that front is"
|
||||
@@ -978,7 +575,7 @@ msgid ""
|
||||
"appropriate."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:407
|
||||
#: i2p2www/pages/site/get-involved/todo.html:119
|
||||
#, python-format
|
||||
msgid ""
|
||||
"To powerful passive external observers as well as large colluding "
|
||||
@@ -999,7 +596,7 @@ msgid ""
|
||||
"tunnel mixing strategies."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:420
|
||||
#: i2p2www/pages/site/get-involved/todo.html:132
|
||||
msgid ""
|
||||
"In addition to the anonymity aspects of more varied tunnel operation, \n"
|
||||
"there is a functional dimension as well. Each peer only has a certain \n"
|
||||
@@ -1017,7 +614,7 @@ msgid ""
|
||||
"available."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:433
|
||||
#: i2p2www/pages/site/get-involved/todo.html:145
|
||||
msgid ""
|
||||
"In addition, we may want to implement code to dynamically reroute tunnels"
|
||||
" \n"
|
||||
@@ -1027,7 +624,7 @@ msgid ""
|
||||
"with instructions to redefine the next-hop in the tunnel."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:444
|
||||
#: i2p2www/pages/site/get-involved/todo.html:156
|
||||
msgid ""
|
||||
"Beyond the per-tunnel batching and mixing strategy, there are further \n"
|
||||
"capabilities for protecting against powerful attackers, such as allowing"
|
||||
@@ -1042,7 +639,7 @@ msgid ""
|
||||
"clove exposed includes delay instructions."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:456
|
||||
#: i2p2www/pages/site/get-involved/todo.html:168
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Performance related improvements are listed on the\n"
|
||||
@@ -4175,3 +3772,15 @@ msgid ""
|
||||
"href=\"http://%(zzz)s/forums/14\">translation forum on %(zzz)s</a>."
|
||||
msgstr ""
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
@@ -16,7 +16,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: I2P\n"
|
||||
"Report-Msgid-Bugs-To: http://trac.i2p2.de\n"
|
||||
"POT-Creation-Date: 2014-10-22 20:13+0000\n"
|
||||
"POT-Creation-Date: 2014-11-27 12:12+0000\n"
|
||||
"PO-Revision-Date: 2014-10-24 14:41+0000\n"
|
||||
"Last-Translator: strel\n"
|
||||
"Language-Team: Spanish "
|
||||
@@ -507,433 +507,62 @@ msgstr ""
|
||||
"href=\"%(volunteer)s\">¡Únete!</a>"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:15
|
||||
#: i2p2www/pages/site/get-involved/todo.html:53
|
||||
#: i2p2www/pages/site/get-involved/todo.html:38
|
||||
msgid "Core functionality"
|
||||
msgstr "Funcionamiento del núcleo."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:15
|
||||
#: i2p2www/pages/site/get-involved/todo.html:27
|
||||
#: i2p2www/pages/site/get-involved/todo.html:51
|
||||
#: i2p2www/pages/site/get-involved/todo.html:21
|
||||
#: i2p2www/pages/site/get-involved/todo.html:36
|
||||
msgid "link"
|
||||
msgstr "enlace"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:17
|
||||
#: i2p2www/pages/site/get-involved/todo.html:56
|
||||
msgid "NAT/Firewall bridging via 1-hop restricted routes"
|
||||
msgstr "Puenteando el NAT/cortafuegos a través de ruters restringidos de 1 salto"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:20
|
||||
#: i2p2www/pages/site/get-involved/todo.html:129
|
||||
msgid "High degree transport layer with UDP, NBIO, or NIO"
|
||||
msgstr "Capa de transporte de alto nivel con UDP, NBIO, o NIO"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:23
|
||||
#: i2p2www/pages/site/get-involved/todo.html:217
|
||||
#: i2p2www/pages/site/get-involved/todo.html:41
|
||||
msgid "NetworkDB and profile tuning and ejection policy for large nets"
|
||||
msgstr ""
|
||||
"Base de datos de la red, NetworkDB, y ajustes del perfil y política de "
|
||||
"expulsión para grandes redes. "
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:27
|
||||
#: i2p2www/pages/site/get-involved/todo.html:241
|
||||
#: i2p2www/pages/site/get-involved/todo.html:21
|
||||
#: i2p2www/pages/site/get-involved/todo.html:65
|
||||
msgid "Security / anonymity"
|
||||
msgstr "Seguridad / anonimato"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:29
|
||||
#: i2p2www/pages/site/get-involved/todo.html:244
|
||||
msgid ""
|
||||
"Per-hop tunnel id & new permuted TunnelVerificationStructure "
|
||||
"encryption"
|
||||
msgstr ""
|
||||
"Id por salto de túnel & nuevo cifrado permutado de la estructura de "
|
||||
"verificación del túnel, TunnelVerificationStructure"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:32
|
||||
#: i2p2www/pages/site/get-involved/todo.html:294
|
||||
msgid "Strict ordering of participants within tunnels"
|
||||
msgstr "Orden estricto de los participantes dentro de los túneles"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:35
|
||||
msgid "Randomly permuted tunnel lengths"
|
||||
msgstr "Tamaño de los túneles aleatorio."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:38
|
||||
#: i2p2www/pages/site/get-involved/todo.html:356
|
||||
#: i2p2www/pages/site/get-involved/todo.html:23
|
||||
#: i2p2www/pages/site/get-involved/todo.html:68
|
||||
msgid "Full blown n-hop restricted routes with optional trusted links"
|
||||
msgstr ""
|
||||
"Mejor personalización de los ruters y un mejor control de los ruters "
|
||||
"usados."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:41
|
||||
#: i2p2www/pages/site/get-involved/todo.html:375
|
||||
#: i2p2www/pages/site/get-involved/todo.html:26
|
||||
#: i2p2www/pages/site/get-involved/todo.html:87
|
||||
msgid "Hashcash for routerIdentity, destination, and tunnel request"
|
||||
msgstr ""
|
||||
"Añadir Hashcash a la identidad del ruter, destinación y solicitud de "
|
||||
"respuesta."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:44
|
||||
#: i2p2www/pages/site/get-involved/todo.html:404
|
||||
#: i2p2www/pages/site/get-involved/todo.html:29
|
||||
#: i2p2www/pages/site/get-involved/todo.html:116
|
||||
msgid "Advanced tunnel operation (batching/mixing/throttling/padding)"
|
||||
msgstr ""
|
||||
"Control avanzado del funcionamiento del ruter (procesamiento por "
|
||||
"lotes/mezclado/control de velocidad)"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:47
|
||||
#: i2p2www/pages/site/get-involved/todo.html:441
|
||||
#: i2p2www/pages/site/get-involved/todo.html:32
|
||||
#: i2p2www/pages/site/get-involved/todo.html:153
|
||||
msgid "Stop & go mix w/ garlics & tunnels"
|
||||
msgstr ""
|
||||
"Configuración avanzada del enrutamiento de los túneles y opciones para "
|
||||
"crear túneles de usar y tirar para su uso a corto plazo."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:51
|
||||
#: i2p2www/pages/site/get-involved/todo.html:455
|
||||
#: i2p2www/pages/site/get-involved/todo.html:36
|
||||
#: i2p2www/pages/site/get-involved/todo.html:167
|
||||
msgid "Performance"
|
||||
msgstr "Rendimiento"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:61
|
||||
msgid "Implemented in I2P 0.6.0.6"
|
||||
msgstr "Implementado en I2P 0.6.0.6"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:62
|
||||
msgid ""
|
||||
"The functionality of allowing routers to fully participate within the "
|
||||
"network \n"
|
||||
"while behind firewalls and NATs that they do not control requires some "
|
||||
"basic \n"
|
||||
"restricted route operation (since those peers will not be able to receive"
|
||||
" \n"
|
||||
"inbound connections). To do this successfully, you consider peers one of"
|
||||
" \n"
|
||||
"two ways:"
|
||||
msgstr ""
|
||||
"Esta capacidad permite a los ruters participar totalmente dentro de la "
|
||||
"red incluso detrás de un NAT o cortafuegos de los que no se tienen "
|
||||
"control (ya que estos pares no podrán recibir conexiones entrantes). "
|
||||
"Para hacer esto satisfactoriamente, consideramos a los pares de estas dos"
|
||||
" formas:"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:72
|
||||
msgid ""
|
||||
"<b>Peers who have reachable interfaces</b> - these peers do not need to \n"
|
||||
"do anything special"
|
||||
msgstr ""
|
||||
"<b>Pares que tienen algún dispositivo accesible</b> - estos pares no "
|
||||
"necesitan hacer nada especial"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:76
|
||||
msgid ""
|
||||
"<b>Peers who do not have reachable interfaces</b> - these peers must "
|
||||
"build \n"
|
||||
"a tunnel pointing at them where the gateway is one of the peers they have"
|
||||
" \n"
|
||||
"established a connection with who has both a publicly reachable interface"
|
||||
" \n"
|
||||
"and who has agreed to serve as their 'introducer'."
|
||||
msgstr ""
|
||||
"<b>Pares que no tienen dispositivos accesibles</b> - estos pares tienen "
|
||||
"que construir un túnel hacia ellos mismos en donde la salida es uno de "
|
||||
"los pares con los que ya ha establecido una conexión y quien tiene un "
|
||||
"dispositivo accesible públicamente y ha aceptado servir como su "
|
||||
"'introductor'."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:84
|
||||
msgid ""
|
||||
"To do this, peers who have no IP address simply connect to a few peers, \n"
|
||||
"build a tunnel through them, and publish a reference to those tunnels "
|
||||
"within \n"
|
||||
"their RouterInfo structure in the network database."
|
||||
msgstr ""
|
||||
"Para hacer esto, los pares que no tiene dirección IP simplemente se "
|
||||
"conectan a varios pares, construye un túnel a través de ellos, y publican"
|
||||
" una referencia de esos túneles dentro de la estructura RouterInfo en la "
|
||||
"base de datos dela red."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:89
|
||||
msgid ""
|
||||
"When someone wants to contact any particular router, they first must get"
|
||||
" \n"
|
||||
"its RouterInfo from the network database, which will tell them whether "
|
||||
"they \n"
|
||||
"can connect directly (e.g. the peer has a publicly reachable interface) \n"
|
||||
"or whether they need to contact them indirectly. Direct connections occur"
|
||||
" \n"
|
||||
"as normal, while indirect connections are done through one of the "
|
||||
"published \n"
|
||||
"tunnels."
|
||||
msgstr ""
|
||||
"Cuando alguien quiere conectar con algún ruter en particular, el primero "
|
||||
"debe obtener su RouterInfo de la base de datos de la red, la que le "
|
||||
"indicará que puede conectarse directamente ( por ejemplo con un par que "
|
||||
"tiene un dispositivo accesible públicamente) o que necesita conectar "
|
||||
"indirectamente. La conexiones directas se hacen directamente, pero las "
|
||||
"indirectas se hacen a través de los túneles publicados. "
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:97
|
||||
msgid ""
|
||||
"When a router just wants to get a message or two to a specific hidden "
|
||||
"peer, \n"
|
||||
"they can just use the indirect tunnel for sending the payload. However, \n"
|
||||
"if the router wants to talk to the hidden peer often (for instance, as "
|
||||
"part \n"
|
||||
"of a tunnel), they will send a garlic routed message through the indirect"
|
||||
" \n"
|
||||
"tunnel to that hidden peer which unwraps to contain a message which "
|
||||
"should \n"
|
||||
"be sent to the originating router. That hidden peer then establishes an \n"
|
||||
"outbound connection to the originating router and from then on, those two"
|
||||
" \n"
|
||||
"routers can talk to each other directly over that newly established "
|
||||
"direct \n"
|
||||
"connection."
|
||||
msgstr ""
|
||||
"Cuando un ruter simplemente quiere enviar un mensaje a un par oculto "
|
||||
"puede usar el túnel indirecto para enviar la información. Sin embargo, si"
|
||||
" el ruter quiere hablar con el par oculto a menudo (por ejemplo, como "
|
||||
"parte de un túnel), enviará un mensaje enrutado a través del túnel "
|
||||
"indirecto del par oculto. Entonces este par oculto establece una conexión"
|
||||
" de salida hacia el ruter original y a partir de entonces estos dos "
|
||||
"ruters puede hablar entre ellos directamente sobre la nueva conexión "
|
||||
"directa. "
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:108
|
||||
msgid ""
|
||||
"Of course, that only works if the originating peer can receive "
|
||||
"connections \n"
|
||||
"(they aren't also hidden). However, if the originating peer is hidden, "
|
||||
"they \n"
|
||||
"can simply direct the garlic routed message to come back to the "
|
||||
"originating \n"
|
||||
"peer's inbound tunnel."
|
||||
msgstr ""
|
||||
"Por supuesto esto solo funciona si el par original puede recibir "
|
||||
"conexiones (y no están también ocultas). Sin embargo, si el par original "
|
||||
"está oculto, pueden simplemente indicar la mensaje enrutado que vuelva "
|
||||
"por el túnel de entrada del par original. "
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:114
|
||||
msgid ""
|
||||
"This is not meant to provide a way for a peer's IP address to be "
|
||||
"concealed, \n"
|
||||
"merely as a way to let people behind firewalls and NATs fully operate "
|
||||
"within \n"
|
||||
"the network. Concealing the peer's IP address adds a little more work, as"
|
||||
" \n"
|
||||
"described <a href=\"#fullRestrictedRoutes\">below.</a>"
|
||||
msgstr ""
|
||||
"Esto no se ha creado para permitir que la IP de un par permanezca oculta,"
|
||||
" simplemente es una forma de permitir a la gente detrás de un NAT o "
|
||||
"cortafuegos funcionar completamente dentro de la red. Ocultar la IP de un"
|
||||
" par cuesta un poco más de trabajo, como se describe <a "
|
||||
"href=\"#fullRestrictedRoutes\">más abajo.</a>"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:120
|
||||
msgid ""
|
||||
"With this technique, any router can participate as any part of a tunnel."
|
||||
" \n"
|
||||
"For efficiency purposes, a hidden peer would be a bad choice for an "
|
||||
"inbound \n"
|
||||
"gateway, and within any given tunnel, two neighboring peers wouldn't want"
|
||||
" \n"
|
||||
"to be hidden. But that is not technically necessary."
|
||||
msgstr ""
|
||||
"Con esta técnica cualquier ruter puede participar como una parte de un "
|
||||
"túnel. Con objeto de mejorar la eficiencia, un par oculto sería una mala "
|
||||
"elección como puerta de entrada, y dentro de un túnel dado, dos pares "
|
||||
"vecinos no desearían estar ocultos. Pero esto no es técnicamente "
|
||||
"necesario."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:132
|
||||
msgid "Both UDP and NIO have been Implemented in I2P"
|
||||
msgstr "Ambos, UDP y NIO ya han sido implementados en I2P"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:133
|
||||
msgid ""
|
||||
"Standard TCP communication in Java generally requires blocking socket \n"
|
||||
"calls, and to keep a blocked socket from hanging the entire system, those"
|
||||
" \n"
|
||||
"blocking calls are done on their own threads. Our current TCP transport \n"
|
||||
"is implemented in a naive fashion - for each peer we are talking to, we \n"
|
||||
"have one thread reading and one thread writing. The reader thread simply"
|
||||
" \n"
|
||||
"loops a bunch of read() calls, building I2NP messages and adding them \n"
|
||||
"to our internal inbound message queue, and the writer thread pulls "
|
||||
"messages \n"
|
||||
"off a per-connection outbound message queue and shoves the data through \n"
|
||||
"write() calls."
|
||||
msgstr ""
|
||||
"Las comunicaciones estándar TCP en java normalmente necesitan el bloqueo "
|
||||
"de llamadas al socket, y para evitar que el socket bloqueado pare todo el"
|
||||
" sistema, estos bloqueos se hacen en sus propios hilos. Nuestro sistema "
|
||||
"de transporte TCP actual está implementado de una forma sencilla - por "
|
||||
"cada par con el que hablamos, tenemos un hilo escribiendo y otro leyendo."
|
||||
" El hilo de lectura simplemente repite un puñado de llamadas read(), "
|
||||
"creando mensajes I2NP y añadiéndolos a la cola interna de mensajes de "
|
||||
"entrada, y el hilo de escritura envía mensajes hacia una cola de mensajes"
|
||||
" de salida y empuja los datos a través de llamadas write()."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:144
|
||||
msgid ""
|
||||
"We do this fairly efficiently, from a CPU perspective - at any time, \n"
|
||||
"almost all of these threads are sitting idle, blocked waiting for "
|
||||
"something \n"
|
||||
"to do. However, each thread consumes real resources (on older Linux "
|
||||
"kernels, \n"
|
||||
"for instance, each thread would often be implemented as a fork()'ed "
|
||||
"process). \n"
|
||||
"As the network grows, the number of peers each router will want to talk \n"
|
||||
"with will increase (remember, I2P is fully connected, meaning that any \n"
|
||||
"given peer should know how to get a message to any other peer, and "
|
||||
"restricted \n"
|
||||
"route support will probably not significantly reduce the number of "
|
||||
"connections \n"
|
||||
"necessary). This means that with a 100,000 router network, each router \n"
|
||||
"will have up to 199,998 threads just to deal with the TCP connections!"
|
||||
msgstr ""
|
||||
"Desde la perspectiva del uso de CPU esto se hace bastante eficientemente "
|
||||
"- la mayoría del tiempo la mayoría de estos hilos están dormidos "
|
||||
"esperando por algo que hacer. Sin embargo, cada uno de estos hilos "
|
||||
"consume recursos (en kernels viejos de Linux, por ejemplo, cada hilo se "
|
||||
"implementa como un proceso fork()'ed). Al mismo tiempo que la red crece, "
|
||||
"el número de pares con el que se comunica un ruter aumentará (recuerde, "
|
||||
"I2P está totalmente conectado, esto quiere decir que cualquier par debe "
|
||||
"saber como enviar un mensaje a cualquier otro par). ¡Esto significa que "
|
||||
"con una red de 100.000 ruters, cada ruter tendrá 199.998 hilos "
|
||||
"simplemente para tratar con las conexiones TCP!"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:156
|
||||
msgid ""
|
||||
"Obviously, that just won't work. We need to use a transport layer that \n"
|
||||
"can scale. In Java, we have two main camps:"
|
||||
msgstr ""
|
||||
"Obviamente esto no funcionará. Necesitamos una capa de transporte que "
|
||||
"pueda escalar. En Java tenemos dos posibles soluciones:"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:161
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Implemented in I2P 0.6 (\"SSU\") as documented <a "
|
||||
"href=\"%(ssu)s\">elsewhere</a>"
|
||||
msgstr ""
|
||||
"Implementado en 2P 0.6 (\"SSU\") y documentado en <a href=\"%(ssu)s\">en "
|
||||
"otra parte</a>"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:164
|
||||
msgid ""
|
||||
"Sending and receiving UDP datagrams is a connectionless operation - if \n"
|
||||
"we are communicating with 100,000 peers, we simply stick the UDP packets"
|
||||
" \n"
|
||||
"in a queue and have a single thread pulling them off the queue and "
|
||||
"shoving \n"
|
||||
"them out the pipe (and to receive, have a single thread pulling in any \n"
|
||||
"UDP packets received and adding them to an inbound queue)."
|
||||
msgstr ""
|
||||
"Enviar y recibir datagramas UDP es una operación que no necesita de "
|
||||
"conexión previa - si estamos comunicándonos con 1000.000 pares, "
|
||||
"simplemente ponemos los paquetes UDP en una cola y hacemos que un único "
|
||||
"hilo los envíe fuera de la cola hacia una tubería ( y para recibir, "
|
||||
"tenemos un único hilo tirando de cualquier paquete UDP recibido y "
|
||||
"añadiéndolos a una cola de entrada)"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:171
|
||||
msgid ""
|
||||
"However, moving to UDP means losing the benefits of TCP's ordering, "
|
||||
"congestion \n"
|
||||
"control, MTU discovery, etc. Implementing that code will take significant"
|
||||
" \n"
|
||||
"work, however I2P doesn't need it to be as strong as TCP. Specifically, \n"
|
||||
"a while ago I was taking some measurements in the simulator and on the \n"
|
||||
"live net, and the vast majority of messages transferred would fit easily"
|
||||
" \n"
|
||||
"within a single unfragmented UDP packet, and the largest of the messages"
|
||||
" \n"
|
||||
"would fit within 20-30 packets. As mule pointed out, TCP adds a "
|
||||
"significant \n"
|
||||
"overhead when dealing with so many small packets, as the ACKs are within"
|
||||
" \n"
|
||||
"an order of magnitude in size. With UDP, we can optimize the transport \n"
|
||||
"for both efficiency and resilience by taking into account I2P's "
|
||||
"particular \n"
|
||||
"needs."
|
||||
msgstr ""
|
||||
"Sin embargo, usar UDP significa perder los beneficios de usar el orden de"
|
||||
" TCP, el control de congestión, descubrimiento de MTU, etc. Implementar "
|
||||
"esto significaría mucho trabajo, sin embargo I2P no necesita ser tan "
|
||||
"fuerte como TCP. Hace algún tiempo estaba tomando medida en un simulador "
|
||||
"y en la red real, y la mayoría de los mensajes pueden ser transmitidas "
|
||||
"dentro de un único paquete UDP no fragmentado, y el más largo de los "
|
||||
"mensajes entraría dentro de 20-30 paquetes. Como mule indicó, TCP añade "
|
||||
"bastante gasto cuando tiene que encargarse de muchos paquetes pequeños. "
|
||||
"Con UDP, se puede optimizar el transporte para la eficiencia y la "
|
||||
"flexibilidad teniendo en cuenta las necesidades particulares de I2P."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:184
|
||||
msgid "It will be a lot of work though."
|
||||
msgstr "Sería muchísimo trabajo por hacer."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:187
|
||||
msgid "NIO or NBIO"
|
||||
msgstr "NIO o NBIO"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:188
|
||||
msgid "NIO Implemented in I2P 0.6.1.22 (\"NTCP\")"
|
||||
msgstr "NIO fue implementada en la versión 0.6.1.22 de I2P (\"NTCP\")"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:191
|
||||
msgid ""
|
||||
"In Java 1.4, a set of \"New I/O\" packages was introduced, allowing Java"
|
||||
" \n"
|
||||
"developers to take advantage of the operating system's nonblocking IO \n"
|
||||
"capabilities - allowing you to maintain a large number of concurrent IO \n"
|
||||
"operations without requiring a separate thread for each. There is much \n"
|
||||
"promise with this approach, as we can scalable handle a large number of \n"
|
||||
"concurrent connections and we don't have to write a mini-TCP stack with \n"
|
||||
"UDP. However, the NIO packages have not proven themselves to be battle-"
|
||||
"ready, \n"
|
||||
"as the Freenet developer's found. In addition, requiring NIO support "
|
||||
"would \n"
|
||||
"mean we can't run on any of the open source JVMs like <a "
|
||||
"href=\"http://www.kaffe.org/\">Kaffe</a>, \n"
|
||||
"as <a href=\"http://www.classpath.org/\">GNU/Classpath</a> has only "
|
||||
"limited \n"
|
||||
"support for NIO. <i>(note: this may not be the case anymore, as there \n"
|
||||
"has been some progress on Classpath's NIO, but it is an unknown "
|
||||
"quantity)</i>"
|
||||
msgstr ""
|
||||
"En Java 1.4 se introdujo paquetes \"I/O nuevos\", permitiendo a los "
|
||||
"desarrolladores de java usar las capacidades de los sistemas operativos "
|
||||
"sin bloquear las entradas y salidas - permitiendo tener un gran número de"
|
||||
" operaciones I/O concurrentes si necesitar un nuevo hilo para cada una. "
|
||||
"Hay muchas esperanzas puestas en este método, ya que podemos manejar un "
|
||||
"gran número de conexiones y no tendríamos que que reescribir un nuevo "
|
||||
"mini TCP stack con UDP. Sin embargo, los paquetes NIO no han probado aún "
|
||||
"estar listos, como averiguaron los desarrolladores de Freenet. Además, "
|
||||
"usar paquetes NIO significaría no poder usar ninguna JVM libre como <a "
|
||||
"href=\"http://www.kaffe.org/\">Kaffe</a>, ya que <a "
|
||||
"href=\"http://www.classpath.org/\">GNU/Classpath</a> sólo tiene soporte "
|
||||
"limitado para NIO.<i>(nota: puede que ahora esto ya no sea verdad, ya que"
|
||||
" se han hecho progreso en los NIO de Classpath, pero no sabemos su "
|
||||
"calidad)</i>"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:205
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Another alternative along the same lines is the <a href=\"%(link)s\">Non"
|
||||
" \n"
|
||||
"Blocking I/O</a> package - essentially a cleanroom NIO implementation \n"
|
||||
"(written before NIO was around). It works by using some native OS code \n"
|
||||
"to do the nonblocking IO, passing off events through Java. It seems to \n"
|
||||
"be working with Kaffe, though there doesn't seem to be much development \n"
|
||||
"activity on it lately (likely due to 1.4's NIO deployment)."
|
||||
msgstr ""
|
||||
"Otra alternativa del mismo tipo es el paquete <a href=\"%(link)s\">sin "
|
||||
"bloqueos I/O</a> - básicamente es una implementación NIO tipo cleanroom "
|
||||
"(escrita antes de que NIO existiese). Funciona utilizando algo de código "
|
||||
"nativo del sistema operativo para hacer I/O sin bloqueos, pasando los "
|
||||
"eventos a través de Java. Parece que funciona con Kaffe, aunque no parece"
|
||||
" que haya mucha actividad últimamante en su desarrollo (debido "
|
||||
"probablemente al desarrollo de NIO 1.4) "
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:220
|
||||
#: i2p2www/pages/site/get-involved/todo.html:44
|
||||
msgid ""
|
||||
"Within the current network database and profile management "
|
||||
"implementation, \n"
|
||||
@@ -970,7 +599,7 @@ msgstr ""
|
||||
"perfil completo. Simplemente no sería práctico escribir el código ya que "
|
||||
"no lo vamos a necesitar por un tiempo."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:235
|
||||
#: i2p2www/pages/site/get-involved/todo.html:59
|
||||
msgid ""
|
||||
"That said, as the network grows we are going to want to keep these "
|
||||
"considerations \n"
|
||||
@@ -980,221 +609,7 @@ msgstr ""
|
||||
"estas consideraciones. Tendremos algún trabajo por hacer, pero se puede "
|
||||
"dejar para mas tarde."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:247
|
||||
#: i2p2www/pages/site/get-involved/todo.html:331
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Addressed in I2P 0.5 as documented <a "
|
||||
"href=\"%(tunnelimpl)s\">elsewhere</a>"
|
||||
msgstr ""
|
||||
"Conseguido en I2P 0.5 como se documenta <a "
|
||||
"href=\"%(tunnelimpl)s\">aquí</a>"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:250
|
||||
msgid ""
|
||||
"Right now, if Alice builds a four hop inbound tunnel starting at Elvis, \n"
|
||||
"going to Dave, then to Charlie, then Bob, and finally Alice "
|
||||
"(A<--B<--C<--D<--E), \n"
|
||||
"all five of them will know they are participating in tunnel \"123\", as \n"
|
||||
"the messages are tagged as such. What we want to do is give each hop "
|
||||
"their \n"
|
||||
"own unique tunnel hop ID - Charlie will receive messages on tunnel 234 \n"
|
||||
"and forward them to tunnel 876 on Bob. The intent is to prevent Bob or \n"
|
||||
"Charlie from knowing that they are in Alice's tunnel, as if each hop in \n"
|
||||
"the tunnel had the same tunnel ID, collusion attacks aren't much work."
|
||||
msgstr ""
|
||||
"Ahora mismo si Alicia crea un túnel de entrada de cuatro saltos empezando"
|
||||
" en Elvis, yendo a través de Dave, después Charlie, después Bob y "
|
||||
"finalmente Alice (A<--B<--C<--D<--E), los cinco sabrán que "
|
||||
"están participando en el túnel \"123\", ya que el mensaje está etiquetado"
|
||||
" así. Lo que queremos hacer es dar a cada salto su propio ID de túnel - "
|
||||
"Charlie recibirá el mensaje en el túnel 234 y lo enviará al túnel 876 de "
|
||||
"Bob. Se intenta prevenir que Bob o Charlie sepan que están en el túnel de"
|
||||
" Alice, lo que ocurriría si en cada salto tuviesen el mismo ID de túnel "
|
||||
"haciendo que un ataque por colisión fuese más fácil."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:260
|
||||
msgid ""
|
||||
"Adding a unique tunnel ID per hop isn't hard, but by itself, "
|
||||
"insufficient. \n"
|
||||
"If Dave and Bob are under the control of the same attacker, they wouldn't"
|
||||
" \n"
|
||||
"be able to tell they are in the same tunnel due to the tunnel ID, but \n"
|
||||
"would be able to tell by the message bodies and verification structures \n"
|
||||
"by simply comparing them. To prevent that, the tunnel must use layered \n"
|
||||
"encryption along the path, both on the payload of the tunneled message \n"
|
||||
"and on the verification structure (used to prevent simple tagging "
|
||||
"attacks). \n"
|
||||
"This requires some simple modifications to the TunnelMessage, as well \n"
|
||||
"as the inclusion of per-hop secret keys delivered during tunnel creation"
|
||||
" \n"
|
||||
"and given to the tunnel's gateway. We must fix a maximum tunnel length \n"
|
||||
"(e.g. 16 hops) and instruct the gateway to encrypt the message to each \n"
|
||||
"of the 16 delivered secret keys, in reverse order, and to encrypt the \n"
|
||||
"signature of the hash of the (encrypted) payload at each step. The "
|
||||
"gateway \n"
|
||||
"then sends that 16-step encrypted message, along with a 16-step and "
|
||||
"16-wide \n"
|
||||
"encrypted mapping to the first hop, which then decrypts the mapping and \n"
|
||||
"the payload with their secret key, looking in the 16-wide mapping for \n"
|
||||
"the entry associated with their own hop (keyed by the per-hop tunnel ID)"
|
||||
" \n"
|
||||
"and verifying the payload by checking it against the associated signed \n"
|
||||
"hash."
|
||||
msgstr ""
|
||||
"Añadir un Id único por cada salto no es difícil, pero sí insuficiente. Si"
|
||||
" Dave y Bob están bajo el control del mismo atacante no sería posible "
|
||||
"saber que están en el mismo túnel a causa del Id, pero podría se capaz de"
|
||||
" saber sobre el cuerpo del mensaje y las estructuras de verificación con "
|
||||
"solo compararlos. Para prevenir esto el túnel debe usar una capa de "
|
||||
"cifrado a lo largo del camino, en el payload tunelado y en la "
|
||||
"verificación de la estructura (usado para evitar ataques simples de "
|
||||
"etiquetado). Esto requiere algunos cambios simples en el TunnelMessage, y"
|
||||
" además, requiere del envío de claves secretas por cada salto durante la "
|
||||
"creación del túnel, y además hacer llegar estas claves a la salida del "
|
||||
"túnel. Tenemos que que crear un valor máximo del tamaño del túnel (por "
|
||||
"ejemplo 16), e instruir a la puerta de salida para que cifre el mensaje "
|
||||
"de cada una de las claves secretas enviadas, en orden inverso, y de que "
|
||||
"cifre la firma del hash del payload (cifrado) en cada salto. La puerta de"
|
||||
" salida envía entonces el mensaje cifrado de 16 pasos, junto con los 16 "
|
||||
"pasos y el mapeado cifrado de 16 de ancho al primer salto, el cual "
|
||||
"entonces descifra el mapeado y el payload con su clave secreta, buscando"
|
||||
" en el mapeado de 16 de ancho por la entrada asociada con su propio salto"
|
||||
" (cifrado por el Id del túnel de cada salto) y verificando el pyload "
|
||||
"chequeándolo con el hash firmado asociado."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:281
|
||||
msgid ""
|
||||
"The tunnel gateway does still have more information than the other peers"
|
||||
" \n"
|
||||
"in the tunnel, and compromising both the gateway and a tunnel participant"
|
||||
" \n"
|
||||
"would allow those peers to collude, exposing the fact that they are both"
|
||||
" \n"
|
||||
"in the same tunnel. In addition, neighboring peers know that they are \n"
|
||||
"in the same tunnel anyway, as they know who they send the message to (and"
|
||||
" \n"
|
||||
"with IP-based transports without restricted routes, they know who they \n"
|
||||
"got it from). However, the above two techniques significantly increase \n"
|
||||
"the cost of gaining meaningful samples when dealing with longer tunnels."
|
||||
msgstr ""
|
||||
"La salida del túnel todavía tiene más información que los otros pares del"
|
||||
" túnel, y comprometiendo la salida y un participante en el túnel "
|
||||
"permitiría a estos confabularse mostrando el hecho de que los dos "
|
||||
"pertenecen al mismo túnel. Además, los pares vecinos saben que están en "
|
||||
"el mismo túnel, ya que saben a quien envían el mensaje (y con transportes"
|
||||
" basados en IP con rutas restrictivas saben de donde lo reciben). Sin "
|
||||
"embargo, estas dos técnicas incrementan significativamente el coste de "
|
||||
"conseguir ejemplos con significado cuando se trata de túneles largos."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:297
|
||||
msgid "Implemented in release 0.6.2"
|
||||
msgstr "Implementado en la versión 0.6.2"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:300
|
||||
#, python-format
|
||||
msgid ""
|
||||
"As Connelly <a href=\"%(link)s\">proposed</a> to deal with the\n"
|
||||
"<a href=\"%(pdf1)s\">predecessor attack</a> <a href=\"%(pdf2)s\">(2008\n"
|
||||
"update)</a>, keeping the order of peers within our tunnels consistent \n"
|
||||
"(aka whenever Alice creates a tunnel with both Bob and Charlie in it, \n"
|
||||
"Bob's next hop is always Charlie), we address the issue as Bob doesn't \n"
|
||||
"get to substantially sample Alice's peer selection group. We may even \n"
|
||||
"want to explicitly allow Bob to participate in Alice's tunnels in only \n"
|
||||
"one way - receiving a message from Dave and sending it to Charlie - and \n"
|
||||
"if any of those peers are not available to participate in the tunnel (due"
|
||||
" \n"
|
||||
"to overload, network disconnection, etc), avoid asking Bob to participate"
|
||||
" \n"
|
||||
"in any tunnels until they are back online."
|
||||
msgstr ""
|
||||
"Como <a href=\"%(link)s\">propuso</a> Connelly para tratar el <a "
|
||||
"href=\"%(pdf1)s\">ataque del predecesor</a><a "
|
||||
"href=\"%(pdf2)s\">(2008)</a>, manteniendo consistente el orden de los "
|
||||
"pares dentro de nuestros túneles (osea cuando Alice crea un túnel con Bob"
|
||||
" y Charlei en él, el siguiente salto de Bob es siempre Charlie), "
|
||||
"solucionamos el problema, ya que Bob no puede obtener una muestra del "
|
||||
"grupo de pares de Alice lo suficientemente grande. Incluso podríamos "
|
||||
"querer permitir explícitamente a Bob participar en el túnel de Alice en "
|
||||
"una dirección - recibiendo un mensaje de Dave y enviándolo a Charlie - y "
|
||||
"si unos de estos pares no están disponible para participar en el túnel "
|
||||
"(debido a saturación, desconexión de red, erc), evitar preguntar a Bob si"
|
||||
" participa en algún túnel hasta que vuelva a estar disponible."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:315
|
||||
msgid ""
|
||||
"More analysis is necessary for revising the tunnel creation - at the \n"
|
||||
"moment, we simply select and order randomly within the peer's top tier \n"
|
||||
"of peers (ones with fast + high capacity)."
|
||||
msgstr ""
|
||||
"Aún hace falta un análisis más detallado de la creación del túnel - hasta"
|
||||
" el momento, simplemente seleccionamos y ordenamos aleatoriamente de "
|
||||
"entre uno de los mejores pares del par (uno rápido y con gran capacidad)"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:320
|
||||
msgid ""
|
||||
"Adding a strict ordering to peers in a tunnel also improves the anonymity"
|
||||
" \n"
|
||||
"of peers with 0-hop tunnels, as otherwise the fact that a peer's gateway"
|
||||
" \n"
|
||||
"is always the same would be particularly damning. However, peers with \n"
|
||||
"0-hop tunnels may want to periodically use a 1-hop tunnel to simulate \n"
|
||||
"the failure of a normally reliable gateway peer (so every MTBF*(tunnel \n"
|
||||
"duration) minutes, use a 1-hop tunnel)."
|
||||
msgstr ""
|
||||
"Añadiendo un orden estricto a los pares de un túnel también mejoramos el "
|
||||
"anonimato de los pares con túneles de 0 saltos, ya que de otra forma el "
|
||||
"hecho de que la salida del par fuese siempre la misma sería bastante "
|
||||
"dañino. Sin embargo, los pares con túneles de 0 saltos necesitarán usar "
|
||||
"periódicamente un túnel de 1 salto para simular el fallo de un par de "
|
||||
"salida normal (así cada MTBF*(duración del túnel) minutos, usaría un "
|
||||
"túnel de 1 salto)"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:337
|
||||
msgid ""
|
||||
"Without tunnel length permutation, if someone were to somehow detect that"
|
||||
" \n"
|
||||
"a destination had a particular number of hops, it might be able to use "
|
||||
"that \n"
|
||||
"information to identify the router the destination is located on, per the"
|
||||
" \n"
|
||||
"predecessor attack. For instance, if everyone has 2-hop tunnels, if Bob \n"
|
||||
"receives a tunnel message from Charlie and forwards it to Alice, Bob "
|
||||
"knows \n"
|
||||
"Alice is the final router in the tunnel. If Bob were to identify what "
|
||||
"destination \n"
|
||||
"that tunnel served (by means of colluding with the gateway and harvesting"
|
||||
" \n"
|
||||
"the network database for all of the LeaseSets), he would know the router"
|
||||
" \n"
|
||||
"on which that destination is located (and without restricted routes, that"
|
||||
" \n"
|
||||
"would mean what IP address the destination is on)."
|
||||
msgstr ""
|
||||
"Sin los cambios de tamaño de los túneles, si alguien de alguna forma "
|
||||
"detectase que una destinación tiene un número determinado de saltos, "
|
||||
"sería capaz de usar esa información para identificar la localización de "
|
||||
"la destinación de ruter usando el ataque del predecesor. Por ejemplo, si"
|
||||
" todo el mundo tiene túneles de 2 saltos, si Bob recibe un mensaje de "
|
||||
"Charlie y lo envía a Alice, Bob sabría que que Alice es el ruter final "
|
||||
"del túnel. Si Bob quisiese identificar la destinación que ese túnel "
|
||||
"sirvió (confabulándose con el nodo de salida y buscando en la base de "
|
||||
"datos de la red a todos los LeaseSets), conocería el ruter que está en "
|
||||
"esa destinación ( y sin rutas restringidas, eso quiere decir que "
|
||||
"sabríamos la IP de la destinación)"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:349
|
||||
msgid ""
|
||||
"It is to counter user behavior that tunnel lengths should be permuted, \n"
|
||||
"using algorithms based on the length requested (for example, the 1/MTBF \n"
|
||||
"length change for 0-hop tunnels outlined above)."
|
||||
msgstr ""
|
||||
"El tamaño de los túneles debe ser cambiante para contrarrestar el "
|
||||
"comportamiento de los usuarios, usando algoritmos basados en el tamaño "
|
||||
"requerido (por ejemplo, el cambio de tamaño a 1/MTBF de los túneles de 0 "
|
||||
"saltos)"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:359
|
||||
#: i2p2www/pages/site/get-involved/todo.html:71
|
||||
msgid ""
|
||||
"The restricted route functionality described before was simply a "
|
||||
"functional \n"
|
||||
@@ -1226,7 +641,7 @@ msgstr ""
|
||||
" a conectar con pares que intenten alcanzarles (como se demuestra en la "
|
||||
"técnica de ruteado 'garlic' esbozada anteriormente)"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:378
|
||||
#: i2p2www/pages/site/get-involved/todo.html:90
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Within the network, we will want some way to deter people from consuming"
|
||||
@@ -1247,7 +662,7 @@ msgstr ""
|
||||
"anonimato del sistema. En su lugar queremos hacer que ciertas peticiones "
|
||||
"sean muy \"caras\"."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:386
|
||||
#: i2p2www/pages/site/get-involved/todo.html:98
|
||||
msgid ""
|
||||
"<a href=\"http://www.hashcash.org/\">Hashcash</a> is one technique that \n"
|
||||
"we can use to anonymously increase the \"cost\" of doing certain "
|
||||
@@ -1275,7 +690,7 @@ msgstr ""
|
||||
"suficientemente caro pero no tan caro como para que agobie a la gente con"
|
||||
" pocos recursos."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:397
|
||||
#: i2p2www/pages/site/get-involved/todo.html:109
|
||||
msgid ""
|
||||
"There are a few other algorithms that we can explore for making those \n"
|
||||
"requests for resources \"nonfree\", and further research on that front is"
|
||||
@@ -1286,7 +701,7 @@ msgstr ""
|
||||
" de recursos \"tengan un costo\", sería conveniente seguir investigando "
|
||||
"sobre este tema."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:407
|
||||
#: i2p2www/pages/site/get-involved/todo.html:119
|
||||
#, python-format
|
||||
msgid ""
|
||||
"To powerful passive external observers as well as large colluding "
|
||||
@@ -1318,7 +733,7 @@ msgstr ""
|
||||
"href=\"%(pdf)s\">estudios</a> sobre estos algoritmos que podríamos "
|
||||
"utilizar para implementar varias estrategias de mezclado de túneles."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:420
|
||||
#: i2p2www/pages/site/get-involved/todo.html:132
|
||||
msgid ""
|
||||
"In addition to the anonymity aspects of more varied tunnel operation, \n"
|
||||
"there is a functional dimension as well. Each peer only has a certain \n"
|
||||
@@ -1347,7 +762,7 @@ msgstr ""
|
||||
"ofrecer un soporte parecido al QoS en sus túneles, negándose a asignar "
|
||||
"más ancho de banda de la que el par tiene disponible."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:433
|
||||
#: i2p2www/pages/site/get-involved/todo.html:145
|
||||
msgid ""
|
||||
"In addition, we may want to implement code to dynamically reroute tunnels"
|
||||
" \n"
|
||||
@@ -1362,7 +777,7 @@ msgstr ""
|
||||
"mensaje a un par en particular con las instrucciones para redefinir el "
|
||||
"siguiente salto del túnel."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:444
|
||||
#: i2p2www/pages/site/get-involved/todo.html:156
|
||||
msgid ""
|
||||
"Beyond the per-tunnel batching and mixing strategy, there are further \n"
|
||||
"capabilities for protecting against powerful attackers, such as allowing"
|
||||
@@ -1384,7 +799,7 @@ msgstr ""
|
||||
"de los pares, excepto a cualquier par donde se hayan dado instrucciones "
|
||||
"de retardo."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:456
|
||||
#: i2p2www/pages/site/get-involved/todo.html:168
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Performance related improvements are listed on the\n"
|
||||
@@ -5669,3 +5084,16 @@ msgstr ""
|
||||
"El canal #i2p-dev del IRC, o el <a "
|
||||
"href=\"http://%(zzz)s/forums/14\">forum de traducción en %(zzz)s</a>."
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
@@ -12,7 +12,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: I2P\n"
|
||||
"Report-Msgid-Bugs-To: http://trac.i2p2.de\n"
|
||||
"POT-Creation-Date: 2014-10-22 20:13+0000\n"
|
||||
"POT-Creation-Date: 2014-11-27 12:12+0000\n"
|
||||
"PO-Revision-Date: 2014-10-29 13:58+0000\n"
|
||||
"Last-Translator: Towinet\n"
|
||||
"Language-Team: French "
|
||||
@@ -530,497 +530,56 @@ msgstr ""
|
||||
"<a href=\"%(volunteer)s\">Impliquez vous</a> !"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:15
|
||||
#: i2p2www/pages/site/get-involved/todo.html:53
|
||||
#: i2p2www/pages/site/get-involved/todo.html:38
|
||||
msgid "Core functionality"
|
||||
msgstr "Fonctionnalité de base"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:15
|
||||
#: i2p2www/pages/site/get-involved/todo.html:27
|
||||
#: i2p2www/pages/site/get-involved/todo.html:51
|
||||
#: i2p2www/pages/site/get-involved/todo.html:21
|
||||
#: i2p2www/pages/site/get-involved/todo.html:36
|
||||
msgid "link"
|
||||
msgstr "lien"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:17
|
||||
#: i2p2www/pages/site/get-involved/todo.html:56
|
||||
msgid "NAT/Firewall bridging via 1-hop restricted routes"
|
||||
msgstr "Pontage NAT/Firewall via des routes restreintes à 1 étape"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:20
|
||||
#: i2p2www/pages/site/get-involved/todo.html:129
|
||||
msgid "High degree transport layer with UDP, NBIO, or NIO"
|
||||
msgstr "Couche transport de haute niveau avec UDP, NBIO, ou NIO"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:23
|
||||
#: i2p2www/pages/site/get-involved/todo.html:217
|
||||
#: i2p2www/pages/site/get-involved/todo.html:41
|
||||
msgid "NetworkDB and profile tuning and ejection policy for large nets"
|
||||
msgstr "NetworkDB et réglage de profil et politique d'éjection pour grands réseaux"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:27
|
||||
#: i2p2www/pages/site/get-involved/todo.html:241
|
||||
#: i2p2www/pages/site/get-involved/todo.html:21
|
||||
#: i2p2www/pages/site/get-involved/todo.html:65
|
||||
msgid "Security / anonymity"
|
||||
msgstr "Sécurité / anonymat"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:29
|
||||
#: i2p2www/pages/site/get-involved/todo.html:244
|
||||
msgid ""
|
||||
"Per-hop tunnel id & new permuted TunnelVerificationStructure "
|
||||
"encryption"
|
||||
msgstr ""
|
||||
"Id de tunnel par-étape (per-hop) & nouveau chiffrement permuté pour "
|
||||
"TunnelVerificationStructure"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:32
|
||||
#: i2p2www/pages/site/get-involved/todo.html:294
|
||||
msgid "Strict ordering of participants within tunnels"
|
||||
msgstr "Ordonnement strict des participants dans les tunnels"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:35
|
||||
msgid "Randomly permuted tunnel lengths"
|
||||
msgstr "Longueurs de tunnel permutées aléatoirement "
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:38
|
||||
#: i2p2www/pages/site/get-involved/todo.html:356
|
||||
#: i2p2www/pages/site/get-involved/todo.html:23
|
||||
#: i2p2www/pages/site/get-involved/todo.html:68
|
||||
msgid "Full blown n-hop restricted routes with optional trusted links"
|
||||
msgstr ""
|
||||
"Routes restreintes \"full blown n-hop\" avec des liens de confiance "
|
||||
"facultatifs"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:41
|
||||
#: i2p2www/pages/site/get-involved/todo.html:375
|
||||
#: i2p2www/pages/site/get-involved/todo.html:26
|
||||
#: i2p2www/pages/site/get-involved/todo.html:87
|
||||
msgid "Hashcash for routerIdentity, destination, and tunnel request"
|
||||
msgstr "Hashcash pour routerIdentity, destination, et requête de tunnel"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:44
|
||||
#: i2p2www/pages/site/get-involved/todo.html:404
|
||||
#: i2p2www/pages/site/get-involved/todo.html:29
|
||||
#: i2p2www/pages/site/get-involved/todo.html:116
|
||||
msgid "Advanced tunnel operation (batching/mixing/throttling/padding)"
|
||||
msgstr ""
|
||||
"Opération avancée de tunnel (traitant par "
|
||||
"lot/mixage/étranglement/étoffement)"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:47
|
||||
#: i2p2www/pages/site/get-involved/todo.html:441
|
||||
#: i2p2www/pages/site/get-involved/todo.html:32
|
||||
#: i2p2www/pages/site/get-involved/todo.html:153
|
||||
msgid "Stop & go mix w/ garlics & tunnels"
|
||||
msgstr "Stop & go mélangé avec tunnels oignon"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:51
|
||||
#: i2p2www/pages/site/get-involved/todo.html:455
|
||||
#: i2p2www/pages/site/get-involved/todo.html:36
|
||||
#: i2p2www/pages/site/get-involved/todo.html:167
|
||||
msgid "Performance"
|
||||
msgstr "Performance"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:61
|
||||
msgid "Implemented in I2P 0.6.0.6"
|
||||
msgstr "Implementé dans I2P 0.6.0.6"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:62
|
||||
msgid ""
|
||||
"The functionality of allowing routers to fully participate within the "
|
||||
"network \n"
|
||||
"while behind firewalls and NATs that they do not control requires some "
|
||||
"basic \n"
|
||||
"restricted route operation (since those peers will not be able to receive"
|
||||
" \n"
|
||||
"inbound connections). To do this successfully, you consider peers one of"
|
||||
" \n"
|
||||
"two ways:"
|
||||
msgstr ""
|
||||
"La fonctionnalité de permettre à des routeurs de participer entièrement "
|
||||
"dans le réseau,\n"
|
||||
"tandis qu'ils sont derrière des pare-feu et NATS qu'ils ne contrôlent "
|
||||
"pas, exige certaines opérations\n"
|
||||
"de la part de routes restreintes basiques (puisque ces pairs ne pourront "
|
||||
"pas recevoir\n"
|
||||
"des connexions arrivantes). Pour faire ceci avec succès, vous considérez "
|
||||
"les pairs de l'une de\n"
|
||||
"ces deux façons :"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:72
|
||||
msgid ""
|
||||
"<b>Peers who have reachable interfaces</b> - these peers do not need to \n"
|
||||
"do anything special"
|
||||
msgstr ""
|
||||
"<b>Les pairs qui ont des interfaces accessibles</b> - ces pairs n'ont pas"
|
||||
" besoin de\n"
|
||||
"faire quoi que ce soit de spécial"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:76
|
||||
msgid ""
|
||||
"<b>Peers who do not have reachable interfaces</b> - these peers must "
|
||||
"build \n"
|
||||
"a tunnel pointing at them where the gateway is one of the peers they have"
|
||||
" \n"
|
||||
"established a connection with who has both a publicly reachable interface"
|
||||
" \n"
|
||||
"and who has agreed to serve as their 'introducer'."
|
||||
msgstr ""
|
||||
"<b>Les pairs qui n'ont pas interfaces accessibles</b> - ces pairs doivent"
|
||||
" construire\n"
|
||||
"un tunnel indiquant à ceux dont la passerelle est un des pairs, qu'ils "
|
||||
"ont\n"
|
||||
"établi une connexion dont laquelle possède une interface publiquement "
|
||||
"accessible\n"
|
||||
"et ayant à la fois consenti à leur servir d' 'introducteur'."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:84
|
||||
msgid ""
|
||||
"To do this, peers who have no IP address simply connect to a few peers, \n"
|
||||
"build a tunnel through them, and publish a reference to those tunnels "
|
||||
"within \n"
|
||||
"their RouterInfo structure in the network database."
|
||||
msgstr ""
|
||||
"Pour faire ceci, les pairs qui n'ont aucune adresse IP se connectent "
|
||||
"simplement à quelques pairs,\n"
|
||||
"construisent un tunnel à travers eux, et publient une référence vers "
|
||||
"tunnels dans\n"
|
||||
"leur structure RouterInfo dans la base de données de réseau."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:89
|
||||
msgid ""
|
||||
"When someone wants to contact any particular router, they first must get"
|
||||
" \n"
|
||||
"its RouterInfo from the network database, which will tell them whether "
|
||||
"they \n"
|
||||
"can connect directly (e.g. the peer has a publicly reachable interface) \n"
|
||||
"or whether they need to contact them indirectly. Direct connections occur"
|
||||
" \n"
|
||||
"as normal, while indirect connections are done through one of the "
|
||||
"published \n"
|
||||
"tunnels."
|
||||
msgstr ""
|
||||
"Quand quelqu''un veut contacter un routeur particulier, ils doivent "
|
||||
"d''abord obtenir\n"
|
||||
"son RouterInfo depuis la base de données de réseau, lequel leur dira "
|
||||
"s''ils\n"
|
||||
"peuvent s''y connecter directement (par exemple le pair a une interface "
|
||||
"publiquement accessible) \n"
|
||||
"ou s''ils doivent les contacter indirectement. Les connexions directes "
|
||||
"arrivent\n"
|
||||
"normalement, tandis que les connexions indirectes sont faites à travers "
|
||||
"un des\n"
|
||||
"tunnels publiés."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:97
|
||||
msgid ""
|
||||
"When a router just wants to get a message or two to a specific hidden "
|
||||
"peer, \n"
|
||||
"they can just use the indirect tunnel for sending the payload. However, \n"
|
||||
"if the router wants to talk to the hidden peer often (for instance, as "
|
||||
"part \n"
|
||||
"of a tunnel), they will send a garlic routed message through the indirect"
|
||||
" \n"
|
||||
"tunnel to that hidden peer which unwraps to contain a message which "
|
||||
"should \n"
|
||||
"be sent to the originating router. That hidden peer then establishes an \n"
|
||||
"outbound connection to the originating router and from then on, those two"
|
||||
" \n"
|
||||
"routers can talk to each other directly over that newly established "
|
||||
"direct \n"
|
||||
"connection."
|
||||
msgstr ""
|
||||
"Quand un routeur veut juste obtenir un message ou deux à un pair caché "
|
||||
"spécifique,\n"
|
||||
"ils peuvent juste utiliser le tunnel indirect pour envoyer la charge "
|
||||
"utile. Cependant,\n"
|
||||
"si le routeur veut parler au pair caché souvent (par exemple, lorsque "
|
||||
"faisant partie\n"
|
||||
"d'un tunnel), ils enverront le message en oignon acheminé à travers le "
|
||||
"tunnel indirect\n"
|
||||
"vers ce pair caché lequel déroule pour contenir un message qui devrait\n"
|
||||
"être envoyé au routeur originaire. Ce pair caché établit alors une\n"
|
||||
"connexion en partance vers le routeur étant originaire et à partir de là,"
|
||||
" ces deux\n"
|
||||
"routeurs peuvent parler l'un à l'autre directement au moyen de cette "
|
||||
"connexion directe\n"
|
||||
"nouvellement établie."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:108
|
||||
msgid ""
|
||||
"Of course, that only works if the originating peer can receive "
|
||||
"connections \n"
|
||||
"(they aren't also hidden). However, if the originating peer is hidden, "
|
||||
"they \n"
|
||||
"can simply direct the garlic routed message to come back to the "
|
||||
"originating \n"
|
||||
"peer's inbound tunnel."
|
||||
msgstr ""
|
||||
"Bien sûr, cela ne marche seulement que si le pair peut recevoir des "
|
||||
"connexions\n"
|
||||
"(si elles ne sont pas cachées elles aussi). Cependant, si le pair étant "
|
||||
"originaire est caché, elles\n"
|
||||
"peuvent simplement diriger le message acheminé oignon de façon à revenir "
|
||||
"au\n"
|
||||
"tunnel arrivant du pair originaire."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:114
|
||||
msgid ""
|
||||
"This is not meant to provide a way for a peer's IP address to be "
|
||||
"concealed, \n"
|
||||
"merely as a way to let people behind firewalls and NATs fully operate "
|
||||
"within \n"
|
||||
"the network. Concealing the peer's IP address adds a little more work, as"
|
||||
" \n"
|
||||
"described <a href=\"#fullRestrictedRoutes\">below.</a>"
|
||||
msgstr ""
|
||||
"Ceci n'est pas pensé pour fournir un chemin pour une adresse IP d'un pair"
|
||||
" à dissimuler,\n"
|
||||
"mais simplement comme une façon de laisser les gens derrière des pare-feu"
|
||||
" et NATs opérer\n"
|
||||
"entièrement dans le réseau. Dissimuler l'adresse IP du pair ajoute un peu"
|
||||
" plus de travail, comme\n"
|
||||
"décrit <a href=\"#fullRestrictedRoutes\">ci-dessus.</a>"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:120
|
||||
msgid ""
|
||||
"With this technique, any router can participate as any part of a tunnel."
|
||||
" \n"
|
||||
"For efficiency purposes, a hidden peer would be a bad choice for an "
|
||||
"inbound \n"
|
||||
"gateway, and within any given tunnel, two neighboring peers wouldn't want"
|
||||
" \n"
|
||||
"to be hidden. But that is not technically necessary."
|
||||
msgstr ""
|
||||
"Avec cette technique, n'importe quel routeur peut participer comme "
|
||||
"n'importe quelle partie d'un tunnel.\n"
|
||||
"Pour des buts d'efficacité, un pair caché serait un mauvais choix pour "
|
||||
"une passerelle arrivante,\n"
|
||||
"et dans n'importe quel tunnel donné, deux pairs voisins ne voudraient pas"
|
||||
"\n"
|
||||
"être cachés. Mais ce n'est pas nécessaire techniquement."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:132
|
||||
msgid "Both UDP and NIO have been Implemented in I2P"
|
||||
msgstr "À la fois UDP et NIO ont étés mis en œuvre dans I2P"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:133
|
||||
msgid ""
|
||||
"Standard TCP communication in Java generally requires blocking socket \n"
|
||||
"calls, and to keep a blocked socket from hanging the entire system, those"
|
||||
" \n"
|
||||
"blocking calls are done on their own threads. Our current TCP transport \n"
|
||||
"is implemented in a naive fashion - for each peer we are talking to, we \n"
|
||||
"have one thread reading and one thread writing. The reader thread simply"
|
||||
" \n"
|
||||
"loops a bunch of read() calls, building I2NP messages and adding them \n"
|
||||
"to our internal inbound message queue, and the writer thread pulls "
|
||||
"messages \n"
|
||||
"off a per-connection outbound message queue and shoves the data through \n"
|
||||
"write() calls."
|
||||
msgstr ""
|
||||
"La communication TCP standard dans Java exige généralement de bloquer des"
|
||||
" appels\n"
|
||||
"socket, et d''empêcher une socket bloquée d'accrocher le système entier, "
|
||||
"ces\n"
|
||||
"appels de blocages sont faits sur leurs propres threads. Notre couche "
|
||||
"transport TCP actuelle\n"
|
||||
"est mise en œuvre d'une façon naïve - pour chaque pair auquel nous "
|
||||
"parlons, nous \n"
|
||||
"avons une thread de lecture et une thread d'une écriture. La thread de "
|
||||
"lecture boucle simplement\n"
|
||||
"une liasse d''appels read(), ceci construisant des messages I2NP et les "
|
||||
"ajoutant\n"
|
||||
"à notre file d'attente interne de messages arrivants, et la thread "
|
||||
"d''écriture tire des messages\n"
|
||||
"d''un queue de message en partance par connexion, et pousse les données "
|
||||
"via\n"
|
||||
"des appels write()."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:144
|
||||
msgid ""
|
||||
"We do this fairly efficiently, from a CPU perspective - at any time, \n"
|
||||
"almost all of these threads are sitting idle, blocked waiting for "
|
||||
"something \n"
|
||||
"to do. However, each thread consumes real resources (on older Linux "
|
||||
"kernels, \n"
|
||||
"for instance, each thread would often be implemented as a fork()'ed "
|
||||
"process). \n"
|
||||
"As the network grows, the number of peers each router will want to talk \n"
|
||||
"with will increase (remember, I2P is fully connected, meaning that any \n"
|
||||
"given peer should know how to get a message to any other peer, and "
|
||||
"restricted \n"
|
||||
"route support will probably not significantly reduce the number of "
|
||||
"connections \n"
|
||||
"necessary). This means that with a 100,000 router network, each router \n"
|
||||
"will have up to 199,998 threads just to deal with the TCP connections!"
|
||||
msgstr ""
|
||||
"Nous faisons ceci assez efficacement, d'une perspective de CPU - à tout "
|
||||
"moment,\n"
|
||||
"presque tous ces fils sont assis en attente, inoccupés, bloqués attendant"
|
||||
" quelque chose\n"
|
||||
"à faire. Cependant, chaque fil consomme des ressources réelles (sur des "
|
||||
"noyaux Linux plus vieux,\n"
|
||||
"par exemple, chaque fil serait souvent mis en œuvre comme processus "
|
||||
"fork() ).\n"
|
||||
"Tandis que le réseau grandit, le nombre de pairs auquel chaque routeur "
|
||||
"voudra parler \n"
|
||||
"augmentera (souvenez-vous, I2P est entièrement connecté, cela signifiant "
|
||||
"que chaque\n"
|
||||
"pair devrait savoir obtenir un message de n'importe quel autre pair, et "
|
||||
"les routes\n"
|
||||
"restreintes ne vont probablement pas réduire significativement le nombre "
|
||||
"de connexions\n"
|
||||
"nécessaires). Cela signifie qu'avec un réseau de 100 000 routeurs, chaque"
|
||||
" routeur\n"
|
||||
"aura jusqu'à 199 998 fils juste pour traiter les connexions TCP !"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:156
|
||||
msgid ""
|
||||
"Obviously, that just won't work. We need to use a transport layer that \n"
|
||||
"can scale. In Java, we have two main camps:"
|
||||
msgstr ""
|
||||
"Évidemment, cela ne marchera simplement pas. Nous devons utiliser une "
|
||||
"couche de transport\n"
|
||||
"qui puissent se mettre à l'échelle Dans Java, nous avons deux camps "
|
||||
"principaux :"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:161
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Implemented in I2P 0.6 (\"SSU\") as documented <a "
|
||||
"href=\"%(ssu)s\">elsewhere</a>"
|
||||
msgstr ""
|
||||
"Implémenté dans I2P 0.6 (\"SSU\") comme documenté <a "
|
||||
"href=\"%(ssu)s\">ailleurs</a>"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:164
|
||||
msgid ""
|
||||
"Sending and receiving UDP datagrams is a connectionless operation - if \n"
|
||||
"we are communicating with 100,000 peers, we simply stick the UDP packets"
|
||||
" \n"
|
||||
"in a queue and have a single thread pulling them off the queue and "
|
||||
"shoving \n"
|
||||
"them out the pipe (and to receive, have a single thread pulling in any \n"
|
||||
"UDP packets received and adding them to an inbound queue)."
|
||||
msgstr ""
|
||||
"L''envoi et la réception de datagrammes UDP est une opération sans "
|
||||
"connexion - si\n"
|
||||
"nous communiquons avec 100000 pairs, nous collons simplement les paquets "
|
||||
"UDP\n"
|
||||
"dans une file d''attente et un seul fil les tirant hors de la file "
|
||||
"d''attente et les poussant\n"
|
||||
"vers la tuyau (et pour les recevoir, un seul fil tirant chaque\n"
|
||||
"paquets UDP reçus et les ajoutant à une file d'attente arrivante)."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:171
|
||||
msgid ""
|
||||
"However, moving to UDP means losing the benefits of TCP's ordering, "
|
||||
"congestion \n"
|
||||
"control, MTU discovery, etc. Implementing that code will take significant"
|
||||
" \n"
|
||||
"work, however I2P doesn't need it to be as strong as TCP. Specifically, \n"
|
||||
"a while ago I was taking some measurements in the simulator and on the \n"
|
||||
"live net, and the vast majority of messages transferred would fit easily"
|
||||
" \n"
|
||||
"within a single unfragmented UDP packet, and the largest of the messages"
|
||||
" \n"
|
||||
"would fit within 20-30 packets. As mule pointed out, TCP adds a "
|
||||
"significant \n"
|
||||
"overhead when dealing with so many small packets, as the ACKs are within"
|
||||
" \n"
|
||||
"an order of magnitude in size. With UDP, we can optimize the transport \n"
|
||||
"for both efficiency and resilience by taking into account I2P's "
|
||||
"particular \n"
|
||||
"needs."
|
||||
msgstr ""
|
||||
"Cependant, basculer vers UDP signifie perdre les avantages de l'ordre de "
|
||||
"TCP, contrôle\n"
|
||||
"de congestion, découverte MTU, etc. Mettre en œuvre ce code prendra du "
|
||||
"travail\n"
|
||||
"significatif, cependant I2P n'en a pas besoin pour être aussi fort que "
|
||||
"TCP. Spécifiquement\n"
|
||||
"il y a quelque temps je prenais quelques mesures dans le simulateur et "
|
||||
"sur le\n"
|
||||
"réseau en direct, et la grande majorité des messages transférés "
|
||||
"contiendrait facilement\n"
|
||||
"dans un simple paquet UDP non fragmenté, et la plus grande partie des "
|
||||
"messages\n"
|
||||
"contiendrait dans 20-30 paquets. Comme la mule l'a fait apparaître, TCP "
|
||||
"ajoute une en-tête\n"
|
||||
"significative quand il traite autant de petits paquets, car les ACKs sont"
|
||||
" dans\n"
|
||||
"un ordre de grandeur de taille. Tandis qu'avec UDP, nous pouvons "
|
||||
"optimiser le transport\n"
|
||||
"tant pour l'efficacité que la résistance en prenant en compte les besoins"
|
||||
"\n"
|
||||
"particuliers de I2P."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:184
|
||||
msgid "It will be a lot of work though."
|
||||
msgstr "Ce sera beaucoup de travail toutefois."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:187
|
||||
msgid "NIO or NBIO"
|
||||
msgstr "NIO ou NBIO"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:188
|
||||
msgid "NIO Implemented in I2P 0.6.1.22 (\"NTCP\")"
|
||||
msgstr "NIO implémenté dans I2P 0.6.1.22 (\"NTCP\")"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:191
|
||||
msgid ""
|
||||
"In Java 1.4, a set of \"New I/O\" packages was introduced, allowing Java"
|
||||
" \n"
|
||||
"developers to take advantage of the operating system's nonblocking IO \n"
|
||||
"capabilities - allowing you to maintain a large number of concurrent IO \n"
|
||||
"operations without requiring a separate thread for each. There is much \n"
|
||||
"promise with this approach, as we can scalable handle a large number of \n"
|
||||
"concurrent connections and we don't have to write a mini-TCP stack with \n"
|
||||
"UDP. However, the NIO packages have not proven themselves to be battle-"
|
||||
"ready, \n"
|
||||
"as the Freenet developer's found. In addition, requiring NIO support "
|
||||
"would \n"
|
||||
"mean we can't run on any of the open source JVMs like <a "
|
||||
"href=\"http://www.kaffe.org/\">Kaffe</a>, \n"
|
||||
"as <a href=\"http://www.classpath.org/\">GNU/Classpath</a> has only "
|
||||
"limited \n"
|
||||
"support for NIO. <i>(note: this may not be the case anymore, as there \n"
|
||||
"has been some progress on Classpath's NIO, but it is an unknown "
|
||||
"quantity)</i>"
|
||||
msgstr ""
|
||||
"Dans Java 1.4, un ensemble de paquets \"Nouvelle E/S\" a été présenté, "
|
||||
"permettant aux\n"
|
||||
"développeurs Java de profiter du capacités de non blocage du système\n"
|
||||
"d'exploitation - vous permettant d'entretenir un grand nombre "
|
||||
"d'opérations ES\n"
|
||||
"simultanées sans exiger un fil séparé pour chacune. Il y a beaucoup\n"
|
||||
"de promesses avec cette approche, car nous pouvons maintenir de façon "
|
||||
"échelonnée un\n"
|
||||
"grand nombre connexions simultanées et nous ne devons pas écrire une pile"
|
||||
" mini-TCP avec\n"
|
||||
"UDP. Cependant, les paquets NIO ne se sont pas prouvés être prêts pour la"
|
||||
" bataille,\n"
|
||||
"comme le développeur de Freenet l'a découvert. De plus, exiger le support"
|
||||
" de NIO voudrait\n"
|
||||
"dire que nous ne pouvons pas fonctionner sur n'importe quel JVM open "
|
||||
"source telles que <a href=\"http://www.kaffe.org/\">Kaffe</a>,\n"
|
||||
"car <a href=\"http://www.classpath.org/\">GNU/Classpath</a> a seulement "
|
||||
"un support limité\n"
|
||||
"pour NIO. <i>(note: ceci pourrait ne plus être le cas, car il y a\n"
|
||||
"eu quelques progrès sur les Classpath de NIO, mais c'est une quantité "
|
||||
"inconnue)</i>"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:205
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Another alternative along the same lines is the <a href=\"%(link)s\">Non"
|
||||
" \n"
|
||||
"Blocking I/O</a> package - essentially a cleanroom NIO implementation \n"
|
||||
"(written before NIO was around). It works by using some native OS code \n"
|
||||
"to do the nonblocking IO, passing off events through Java. It seems to \n"
|
||||
"be working with Kaffe, though there doesn't seem to be much development \n"
|
||||
"activity on it lately (likely due to 1.4's NIO deployment)."
|
||||
msgstr ""
|
||||
"Une autre alternative parmi les mêmes lignes est le paquet <a "
|
||||
"href=\"%(link)s\">Non\n"
|
||||
"Blocking I/O</a> - essentiellement une mise en œuvre en salle blanche\n"
|
||||
"(écrit avant que NIO soit sorti). Cela marche en utilisant du code OS "
|
||||
"natif\n"
|
||||
"pour faire les IO non bloquantes, faisant passer des événements via Java."
|
||||
" Cela semble\n"
|
||||
"fonctionner avec Kaffe, quoiqu''il ne semble pas y avoir beaucoup "
|
||||
"d'activité\n"
|
||||
"de développement sur cela récemment (probablement en raison du "
|
||||
"déploiement de NIO 1.4)."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:220
|
||||
#: i2p2www/pages/site/get-involved/todo.html:44
|
||||
msgid ""
|
||||
"Within the current network database and profile management "
|
||||
"implementation, \n"
|
||||
@@ -1068,7 +627,7 @@ msgstr ""
|
||||
"ce code dès maintenant, puisque nous n'allons pas en avoir besoin pendant"
|
||||
" un certain temps."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:235
|
||||
#: i2p2www/pages/site/get-involved/todo.html:59
|
||||
msgid ""
|
||||
"That said, as the network grows we are going to want to keep these "
|
||||
"considerations \n"
|
||||
@@ -1079,259 +638,7 @@ msgstr ""
|
||||
"à l'esprit. Nous aurons du travail à faire, mais nous pouvons le remettre"
|
||||
" à plus tard."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:247
|
||||
#: i2p2www/pages/site/get-involved/todo.html:331
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Addressed in I2P 0.5 as documented <a "
|
||||
"href=\"%(tunnelimpl)s\">elsewhere</a>"
|
||||
msgstr ""
|
||||
"Abordé dans I2P 0.5 comme documenté <a "
|
||||
"href=\"%(tunnelimpl)s\">ailleurs</a>"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:250
|
||||
msgid ""
|
||||
"Right now, if Alice builds a four hop inbound tunnel starting at Elvis, \n"
|
||||
"going to Dave, then to Charlie, then Bob, and finally Alice "
|
||||
"(A<--B<--C<--D<--E), \n"
|
||||
"all five of them will know they are participating in tunnel \"123\", as \n"
|
||||
"the messages are tagged as such. What we want to do is give each hop "
|
||||
"their \n"
|
||||
"own unique tunnel hop ID - Charlie will receive messages on tunnel 234 \n"
|
||||
"and forward them to tunnel 876 on Bob. The intent is to prevent Bob or \n"
|
||||
"Charlie from knowing that they are in Alice's tunnel, as if each hop in \n"
|
||||
"the tunnel had the same tunnel ID, collusion attacks aren't much work."
|
||||
msgstr ""
|
||||
"Dès à présent, si Alice construit un tunnel de quatre stauts commençant "
|
||||
"chez Elvis, allant chez Dave, allant chez Charlie, puis chez Bob et "
|
||||
"finalement chez Alice (A<--B<--C<--D<--E), tous les cinq "
|
||||
"sauront qu''ils participent au tunnel \"123\", car les messages sont "
|
||||
"étiquetés comme tels. Ce que nous voulons faire est de donner à chaque "
|
||||
"étape son propre ID (identifiant) d''étape unique de tunnel - Charlie "
|
||||
"recevra des messages sur le tunnel 234 et les expédiera au tunnel 876 "
|
||||
"chez Bob. L''intention est d'empêcher Bob ou \n"
|
||||
"Charlie de savoir qu'ils sont dans le tunnel d''Alice, comme si chaque "
|
||||
"étape dans le tunnel avait le même ID de tunnel, les attaques par "
|
||||
"collusion ne demandent pas beaucoup de travail."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:260
|
||||
msgid ""
|
||||
"Adding a unique tunnel ID per hop isn't hard, but by itself, "
|
||||
"insufficient. \n"
|
||||
"If Dave and Bob are under the control of the same attacker, they wouldn't"
|
||||
" \n"
|
||||
"be able to tell they are in the same tunnel due to the tunnel ID, but \n"
|
||||
"would be able to tell by the message bodies and verification structures \n"
|
||||
"by simply comparing them. To prevent that, the tunnel must use layered \n"
|
||||
"encryption along the path, both on the payload of the tunneled message \n"
|
||||
"and on the verification structure (used to prevent simple tagging "
|
||||
"attacks). \n"
|
||||
"This requires some simple modifications to the TunnelMessage, as well \n"
|
||||
"as the inclusion of per-hop secret keys delivered during tunnel creation"
|
||||
" \n"
|
||||
"and given to the tunnel's gateway. We must fix a maximum tunnel length \n"
|
||||
"(e.g. 16 hops) and instruct the gateway to encrypt the message to each \n"
|
||||
"of the 16 delivered secret keys, in reverse order, and to encrypt the \n"
|
||||
"signature of the hash of the (encrypted) payload at each step. The "
|
||||
"gateway \n"
|
||||
"then sends that 16-step encrypted message, along with a 16-step and "
|
||||
"16-wide \n"
|
||||
"encrypted mapping to the first hop, which then decrypts the mapping and \n"
|
||||
"the payload with their secret key, looking in the 16-wide mapping for \n"
|
||||
"the entry associated with their own hop (keyed by the per-hop tunnel ID)"
|
||||
" \n"
|
||||
"and verifying the payload by checking it against the associated signed \n"
|
||||
"hash."
|
||||
msgstr ""
|
||||
"Ajouter un ID unique de tunnel par étape n'est pas difficile, mais par "
|
||||
"lui-même, insuffisant.\n"
|
||||
"Si Dave et Bob sont sous le contrôle du même attaquant, ils ne seraient "
|
||||
"pas capables de dire qu'ils sont dans le même tunnel en raison de l'ID de"
|
||||
" tunnel, mais pourraient être capables de le dire par les corps de "
|
||||
"message et les structures de vérification simplement en les comparant. "
|
||||
"Pour l'empêcher, le tunnel doit utiliser du chiffrage feuilleté tout au "
|
||||
"long du chemin, à la fois sur la charge utile du message transmis par "
|
||||
"tunnel et sur la structure de vérification (utilisée pour empêcher les "
|
||||
"attaques simples d'étiquetage). \n"
|
||||
"Ceci exige quelques modifications simples du TunnelMessage, ainsi que\n"
|
||||
"l'inclusion de clés secrètes par-étape livrées pendant la création de "
|
||||
"tunnel\n"
|
||||
"et données à la passerelle du tunnel. Nous devons fixer une longueur "
|
||||
"maximale de tunnel \n"
|
||||
"(par exemple 16 étapes) et charger la passerelle de chiffrer le message "
|
||||
"vers chacune\n"
|
||||
"des 16 clés secrètes livrées, dans l'ordre inverse, et de chiffrer la\n"
|
||||
"signature du hachage de la charge utile (chiffrée) de chaque étape. La "
|
||||
"passerelle\n"
|
||||
"envoie alors ce message chiffré en 16 étapes, avec une cartographie "
|
||||
"chiffrée à 16 étapes et 16 de largeur à la première étape, qui déchiffre "
|
||||
"alors la cartographie et\n"
|
||||
"la charge utile avec leur clé secrète, en regardant dans la cartographie "
|
||||
"à 16 largeurs\n"
|
||||
"pour l'entrée associée à leur propre étape (verrouillée par l'ID de "
|
||||
"tunnel par-étape)\n"
|
||||
"et en vérifiant la charge utile en la vérifiant contre le hachage signé "
|
||||
"associé."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:281
|
||||
msgid ""
|
||||
"The tunnel gateway does still have more information than the other peers"
|
||||
" \n"
|
||||
"in the tunnel, and compromising both the gateway and a tunnel participant"
|
||||
" \n"
|
||||
"would allow those peers to collude, exposing the fact that they are both"
|
||||
" \n"
|
||||
"in the same tunnel. In addition, neighboring peers know that they are \n"
|
||||
"in the same tunnel anyway, as they know who they send the message to (and"
|
||||
" \n"
|
||||
"with IP-based transports without restricted routes, they know who they \n"
|
||||
"got it from). However, the above two techniques significantly increase \n"
|
||||
"the cost of gaining meaningful samples when dealing with longer tunnels."
|
||||
msgstr ""
|
||||
"La passerelle de tunnel a vraiment toujours plus d'informations que les "
|
||||
"autres pairs\n"
|
||||
"dans le tunnel, et met en péril tant la passerelle qu'un participant de "
|
||||
"tunnel\n"
|
||||
"qui permettrait à ces pairs de s'associer, exposant le fait qu'ils sont "
|
||||
"tous les deux\n"
|
||||
"dans le même tunnel. De plus, des pairs voisins savent qu'ils sont\n"
|
||||
"dans le même tunnel de toute façon, car ils savent à qui ils envoient le "
|
||||
"message (à\n"
|
||||
"avec quels transports IP sans routes restreintes, ils savent de qui ils\n"
|
||||
"l'ont obtenu). Cependant, les deux susdites techniques augmentent "
|
||||
"significativement \n"
|
||||
"le coût pour obtenir des échantillons significatifs quand on traite avec "
|
||||
"des tunnels plus longs."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:297
|
||||
msgid "Implemented in release 0.6.2"
|
||||
msgstr "Implémenté dans la version 0.6.2"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:300
|
||||
#, python-format
|
||||
msgid ""
|
||||
"As Connelly <a href=\"%(link)s\">proposed</a> to deal with the\n"
|
||||
"<a href=\"%(pdf1)s\">predecessor attack</a> <a href=\"%(pdf2)s\">(2008\n"
|
||||
"update)</a>, keeping the order of peers within our tunnels consistent \n"
|
||||
"(aka whenever Alice creates a tunnel with both Bob and Charlie in it, \n"
|
||||
"Bob's next hop is always Charlie), we address the issue as Bob doesn't \n"
|
||||
"get to substantially sample Alice's peer selection group. We may even \n"
|
||||
"want to explicitly allow Bob to participate in Alice's tunnels in only \n"
|
||||
"one way - receiving a message from Dave and sending it to Charlie - and \n"
|
||||
"if any of those peers are not available to participate in the tunnel (due"
|
||||
" \n"
|
||||
"to overload, network disconnection, etc), avoid asking Bob to participate"
|
||||
" \n"
|
||||
"in any tunnels until they are back online."
|
||||
msgstr ""
|
||||
"Comme Connelly l''a <a href=\"%(link)s\">proposé </a> pour traiter les\n"
|
||||
"<a href=\"%(pdf1)s\">attaques précédesseur</a> <a href=\"%(pdf2)s\">(mise"
|
||||
"\n"
|
||||
"à jour de 2008)</a>, garder cohérent l'ordre des pairs dans nos tunnels \n"
|
||||
"(c'est-à-dire quand Alice y crée un tunnel tant avec Bob qu''avec Charlie"
|
||||
" dedans,\n"
|
||||
"l''étape suivante de Bob est toujours Charlie), nous abordons la question"
|
||||
" comme Bob\n"
|
||||
"ne parvient pas à considérablement échantillonner le groupe de sélection "
|
||||
"de pairs d''Alice. Nous pouvons même vouloir explicitement permettre à "
|
||||
"Bob de participer aux tunnels d''Alice de seulement\n"
|
||||
"une façon - recevoir un message de Dave et l''envoyer à Charlie - et\n"
|
||||
"si n'importe lequel de ces pairs n''est pas disponible pour participer au"
|
||||
" tunnel (pour\n"
|
||||
"cause de surcharge, déconnexion de réseau, etc), éviter de demander à Bob"
|
||||
" de participer \n"
|
||||
"à n''importe quel tunnel jusqu'à ce qu''ils soient de retour en ligne."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:315
|
||||
msgid ""
|
||||
"More analysis is necessary for revising the tunnel creation - at the \n"
|
||||
"moment, we simply select and order randomly within the peer's top tier \n"
|
||||
"of peers (ones with fast + high capacity)."
|
||||
msgstr ""
|
||||
"Davantage d''analyse est nécessaire pour réviser la création de tunnel - "
|
||||
"à ce\n"
|
||||
"moment, nous choisissons simplement et ordonnons aléatoirement dans le "
|
||||
"niveau supérieur du pair\n"
|
||||
"des pairs (ceux les plus rapides + hautes capacités)."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:320
|
||||
msgid ""
|
||||
"Adding a strict ordering to peers in a tunnel also improves the anonymity"
|
||||
" \n"
|
||||
"of peers with 0-hop tunnels, as otherwise the fact that a peer's gateway"
|
||||
" \n"
|
||||
"is always the same would be particularly damning. However, peers with \n"
|
||||
"0-hop tunnels may want to periodically use a 1-hop tunnel to simulate \n"
|
||||
"the failure of a normally reliable gateway peer (so every MTBF*(tunnel \n"
|
||||
"duration) minutes, use a 1-hop tunnel)."
|
||||
msgstr ""
|
||||
"Ajouter un ordre strict aux pairs dans un tunnel améliore aussi "
|
||||
"l'anonymat \n"
|
||||
"des pairs ayant 0 étapes de tunnels, car autrement le fait que la "
|
||||
"passerelle d'un pair\n"
|
||||
"soit toujours la même seraient particulièrement pénalisant. Cependant, "
|
||||
"les pairs avec\n"
|
||||
"des tunnels à 0 étapes peuvent vouloir périodiquement utiliser un tunnel "
|
||||
"à 1 étape pour simuler\n"
|
||||
"l'échec d'un pair de passerelle normalement fiable (ainsi chaque "
|
||||
"MTBF*(durée de\n"
|
||||
"tunnel) minutes, en utilisant un tunnel à 1 étape)."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:337
|
||||
msgid ""
|
||||
"Without tunnel length permutation, if someone were to somehow detect that"
|
||||
" \n"
|
||||
"a destination had a particular number of hops, it might be able to use "
|
||||
"that \n"
|
||||
"information to identify the router the destination is located on, per the"
|
||||
" \n"
|
||||
"predecessor attack. For instance, if everyone has 2-hop tunnels, if Bob \n"
|
||||
"receives a tunnel message from Charlie and forwards it to Alice, Bob "
|
||||
"knows \n"
|
||||
"Alice is the final router in the tunnel. If Bob were to identify what "
|
||||
"destination \n"
|
||||
"that tunnel served (by means of colluding with the gateway and harvesting"
|
||||
" \n"
|
||||
"the network database for all of the LeaseSets), he would know the router"
|
||||
" \n"
|
||||
"on which that destination is located (and without restricted routes, that"
|
||||
" \n"
|
||||
"would mean what IP address the destination is on)."
|
||||
msgstr ""
|
||||
"Sans permutation de longueur de tunnel, si quelqu'un devait d'une façon "
|
||||
"ou d'une autre\n"
|
||||
"détecter qu'une destination avait un nombre particulier d'étapes, il "
|
||||
"pourrait pouvoir utiliser\n"
|
||||
"cette information pour identifier le routeur sur lequel la destination "
|
||||
"est localisées, par\n"
|
||||
"l'attaque de prédécesseur. Par exemple, si tout le monde a des tunnels à "
|
||||
"2 étapes, si Bob\n"
|
||||
"reçoit un message de tunnel de Charlie et le fait suivre à Alice, Bob "
|
||||
"sait que\n"
|
||||
"Alice est le routeur final dans le tunnel. Si Bob devait identifier "
|
||||
"quelle destination\n"
|
||||
"ce tunnel dessert (par le moyen de s'associer avec la passerelle et "
|
||||
"récolter\n"
|
||||
"la base de données de réseau pour tous les jeux de baux), il connaîtrait "
|
||||
"le routeur \n"
|
||||
"sur lequel cette destination est localisée (et sans routes restreintes, "
|
||||
"cela\n"
|
||||
"signifierait quelle est l'adresse IP sur laquelle la destination est "
|
||||
"branchée)"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:349
|
||||
msgid ""
|
||||
"It is to counter user behavior that tunnel lengths should be permuted, \n"
|
||||
"using algorithms based on the length requested (for example, the 1/MTBF \n"
|
||||
"length change for 0-hop tunnels outlined above)."
|
||||
msgstr ""
|
||||
"C'est pour résister au comportement d'utilisateur que les longueurs de "
|
||||
"tunnel devraient être permutées,\n"
|
||||
"en utilisant des algorithmes basés sur la longueur demandée (par exemple,"
|
||||
" le changement de longueur\n"
|
||||
"1/MTBF pour les tunnels à 0 étapes décrits ci-dessus)."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:359
|
||||
#: i2p2www/pages/site/get-involved/todo.html:71
|
||||
msgid ""
|
||||
"The restricted route functionality described before was simply a "
|
||||
"functional \n"
|
||||
@@ -1375,7 +682,7 @@ msgstr ""
|
||||
"avec instruction\n"
|
||||
"de le faire suivre comme demandé."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:378
|
||||
#: i2p2www/pages/site/get-involved/todo.html:90
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Within the network, we will want some way to deter people from consuming"
|
||||
@@ -1400,7 +707,7 @@ msgstr ""
|
||||
"nous voulons \n"
|
||||
"rendre certaines requêtes \"chères\"."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:386
|
||||
#: i2p2www/pages/site/get-involved/todo.html:98
|
||||
msgid ""
|
||||
"<a href=\"http://www.hashcash.org/\">Hashcash</a> is one technique that \n"
|
||||
"we can use to anonymously increase the \"cost\" of doing certain "
|
||||
@@ -1434,7 +741,7 @@ msgstr ""
|
||||
"les gens\n"
|
||||
"ayant peu de ressources."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:397
|
||||
#: i2p2www/pages/site/get-involved/todo.html:109
|
||||
msgid ""
|
||||
"There are a few other algorithms that we can explore for making those \n"
|
||||
"requests for resources \"nonfree\", and further research on that front is"
|
||||
@@ -1447,7 +754,7 @@ msgstr ""
|
||||
"ce front\n"
|
||||
"seront appropriées."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:407
|
||||
#: i2p2www/pages/site/get-involved/todo.html:119
|
||||
#, python-format
|
||||
msgid ""
|
||||
"To powerful passive external observers as well as large colluding "
|
||||
@@ -1487,7 +794,7 @@ msgstr ""
|
||||
"mise en œuvre des diverses\n"
|
||||
"stratégies de mélange de tunnels."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:420
|
||||
#: i2p2www/pages/site/get-involved/todo.html:132
|
||||
msgid ""
|
||||
"In addition to the anonymity aspects of more varied tunnel operation, \n"
|
||||
"there is a functional dimension as well. Each peer only has a certain \n"
|
||||
@@ -1526,7 +833,7 @@ msgstr ""
|
||||
"les pairs en ont de\n"
|
||||
"disponible."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:433
|
||||
#: i2p2www/pages/site/get-involved/todo.html:145
|
||||
msgid ""
|
||||
"In addition, we may want to implement code to dynamically reroute tunnels"
|
||||
" \n"
|
||||
@@ -1543,7 +850,7 @@ msgstr ""
|
||||
"pair particulier dans un tunnel\n"
|
||||
"avec des instructions afin de redéfinir l'étape suivante dans le tunnel."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:444
|
||||
#: i2p2www/pages/site/get-involved/todo.html:156
|
||||
msgid ""
|
||||
"Beyond the per-tunnel batching and mixing strategy, there are further \n"
|
||||
"capabilities for protecting against powerful attackers, such as allowing"
|
||||
@@ -1571,7 +878,7 @@ msgstr ""
|
||||
"lesquels\n"
|
||||
"le clou de girofle (clove) exposé inclut des instructions de retard."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:456
|
||||
#: i2p2www/pages/site/get-involved/todo.html:168
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Performance related improvements are listed on the\n"
|
||||
@@ -6042,3 +5349,11 @@ msgstr ""
|
||||
"Le canal IRC #i2p-dev, ou le <a href=\"http://%(zzz)s/forums/14\">forum "
|
||||
"translation sur %(zzz)s</a>."
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
@@ -8,7 +8,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: I2P website\n"
|
||||
"Report-Msgid-Bugs-To: http://trac.i2p2.de\n"
|
||||
"POT-Creation-Date: 2014-10-22 20:13+0000\n"
|
||||
"POT-Creation-Date: 2014-11-27 12:12+0000\n"
|
||||
"PO-Revision-Date: 2014-02-09 19:53+0000\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: he <LL@li.org>\n"
|
||||
@@ -397,317 +397,52 @@ msgid ""
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:15
|
||||
#: i2p2www/pages/site/get-involved/todo.html:53
|
||||
#: i2p2www/pages/site/get-involved/todo.html:38
|
||||
msgid "Core functionality"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:15
|
||||
#: i2p2www/pages/site/get-involved/todo.html:27
|
||||
#: i2p2www/pages/site/get-involved/todo.html:51
|
||||
#: i2p2www/pages/site/get-involved/todo.html:21
|
||||
#: i2p2www/pages/site/get-involved/todo.html:36
|
||||
msgid "link"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:17
|
||||
#: i2p2www/pages/site/get-involved/todo.html:56
|
||||
msgid "NAT/Firewall bridging via 1-hop restricted routes"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:20
|
||||
#: i2p2www/pages/site/get-involved/todo.html:129
|
||||
msgid "High degree transport layer with UDP, NBIO, or NIO"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:23
|
||||
#: i2p2www/pages/site/get-involved/todo.html:217
|
||||
#: i2p2www/pages/site/get-involved/todo.html:41
|
||||
msgid "NetworkDB and profile tuning and ejection policy for large nets"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:27
|
||||
#: i2p2www/pages/site/get-involved/todo.html:241
|
||||
#: i2p2www/pages/site/get-involved/todo.html:21
|
||||
#: i2p2www/pages/site/get-involved/todo.html:65
|
||||
msgid "Security / anonymity"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:29
|
||||
#: i2p2www/pages/site/get-involved/todo.html:244
|
||||
msgid ""
|
||||
"Per-hop tunnel id & new permuted TunnelVerificationStructure "
|
||||
"encryption"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:32
|
||||
#: i2p2www/pages/site/get-involved/todo.html:294
|
||||
msgid "Strict ordering of participants within tunnels"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:35
|
||||
msgid "Randomly permuted tunnel lengths"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:38
|
||||
#: i2p2www/pages/site/get-involved/todo.html:356
|
||||
#: i2p2www/pages/site/get-involved/todo.html:23
|
||||
#: i2p2www/pages/site/get-involved/todo.html:68
|
||||
msgid "Full blown n-hop restricted routes with optional trusted links"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:41
|
||||
#: i2p2www/pages/site/get-involved/todo.html:375
|
||||
#: i2p2www/pages/site/get-involved/todo.html:26
|
||||
#: i2p2www/pages/site/get-involved/todo.html:87
|
||||
msgid "Hashcash for routerIdentity, destination, and tunnel request"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:44
|
||||
#: i2p2www/pages/site/get-involved/todo.html:404
|
||||
#: i2p2www/pages/site/get-involved/todo.html:29
|
||||
#: i2p2www/pages/site/get-involved/todo.html:116
|
||||
msgid "Advanced tunnel operation (batching/mixing/throttling/padding)"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:47
|
||||
#: i2p2www/pages/site/get-involved/todo.html:441
|
||||
#: i2p2www/pages/site/get-involved/todo.html:32
|
||||
#: i2p2www/pages/site/get-involved/todo.html:153
|
||||
msgid "Stop & go mix w/ garlics & tunnels"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:51
|
||||
#: i2p2www/pages/site/get-involved/todo.html:455
|
||||
#: i2p2www/pages/site/get-involved/todo.html:36
|
||||
#: i2p2www/pages/site/get-involved/todo.html:167
|
||||
msgid "Performance"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:61
|
||||
msgid "Implemented in I2P 0.6.0.6"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:62
|
||||
msgid ""
|
||||
"The functionality of allowing routers to fully participate within the "
|
||||
"network \n"
|
||||
"while behind firewalls and NATs that they do not control requires some "
|
||||
"basic \n"
|
||||
"restricted route operation (since those peers will not be able to receive"
|
||||
" \n"
|
||||
"inbound connections). To do this successfully, you consider peers one of"
|
||||
" \n"
|
||||
"two ways:"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:72
|
||||
msgid ""
|
||||
"<b>Peers who have reachable interfaces</b> - these peers do not need to \n"
|
||||
"do anything special"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:76
|
||||
msgid ""
|
||||
"<b>Peers who do not have reachable interfaces</b> - these peers must "
|
||||
"build \n"
|
||||
"a tunnel pointing at them where the gateway is one of the peers they have"
|
||||
" \n"
|
||||
"established a connection with who has both a publicly reachable interface"
|
||||
" \n"
|
||||
"and who has agreed to serve as their 'introducer'."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:84
|
||||
msgid ""
|
||||
"To do this, peers who have no IP address simply connect to a few peers, \n"
|
||||
"build a tunnel through them, and publish a reference to those tunnels "
|
||||
"within \n"
|
||||
"their RouterInfo structure in the network database."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:89
|
||||
msgid ""
|
||||
"When someone wants to contact any particular router, they first must get"
|
||||
" \n"
|
||||
"its RouterInfo from the network database, which will tell them whether "
|
||||
"they \n"
|
||||
"can connect directly (e.g. the peer has a publicly reachable interface) \n"
|
||||
"or whether they need to contact them indirectly. Direct connections occur"
|
||||
" \n"
|
||||
"as normal, while indirect connections are done through one of the "
|
||||
"published \n"
|
||||
"tunnels."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:97
|
||||
msgid ""
|
||||
"When a router just wants to get a message or two to a specific hidden "
|
||||
"peer, \n"
|
||||
"they can just use the indirect tunnel for sending the payload. However, \n"
|
||||
"if the router wants to talk to the hidden peer often (for instance, as "
|
||||
"part \n"
|
||||
"of a tunnel), they will send a garlic routed message through the indirect"
|
||||
" \n"
|
||||
"tunnel to that hidden peer which unwraps to contain a message which "
|
||||
"should \n"
|
||||
"be sent to the originating router. That hidden peer then establishes an \n"
|
||||
"outbound connection to the originating router and from then on, those two"
|
||||
" \n"
|
||||
"routers can talk to each other directly over that newly established "
|
||||
"direct \n"
|
||||
"connection."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:108
|
||||
msgid ""
|
||||
"Of course, that only works if the originating peer can receive "
|
||||
"connections \n"
|
||||
"(they aren't also hidden). However, if the originating peer is hidden, "
|
||||
"they \n"
|
||||
"can simply direct the garlic routed message to come back to the "
|
||||
"originating \n"
|
||||
"peer's inbound tunnel."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:114
|
||||
msgid ""
|
||||
"This is not meant to provide a way for a peer's IP address to be "
|
||||
"concealed, \n"
|
||||
"merely as a way to let people behind firewalls and NATs fully operate "
|
||||
"within \n"
|
||||
"the network. Concealing the peer's IP address adds a little more work, as"
|
||||
" \n"
|
||||
"described <a href=\"#fullRestrictedRoutes\">below.</a>"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:120
|
||||
msgid ""
|
||||
"With this technique, any router can participate as any part of a tunnel."
|
||||
" \n"
|
||||
"For efficiency purposes, a hidden peer would be a bad choice for an "
|
||||
"inbound \n"
|
||||
"gateway, and within any given tunnel, two neighboring peers wouldn't want"
|
||||
" \n"
|
||||
"to be hidden. But that is not technically necessary."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:132
|
||||
msgid "Both UDP and NIO have been Implemented in I2P"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:133
|
||||
msgid ""
|
||||
"Standard TCP communication in Java generally requires blocking socket \n"
|
||||
"calls, and to keep a blocked socket from hanging the entire system, those"
|
||||
" \n"
|
||||
"blocking calls are done on their own threads. Our current TCP transport \n"
|
||||
"is implemented in a naive fashion - for each peer we are talking to, we \n"
|
||||
"have one thread reading and one thread writing. The reader thread simply"
|
||||
" \n"
|
||||
"loops a bunch of read() calls, building I2NP messages and adding them \n"
|
||||
"to our internal inbound message queue, and the writer thread pulls "
|
||||
"messages \n"
|
||||
"off a per-connection outbound message queue and shoves the data through \n"
|
||||
"write() calls."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:144
|
||||
msgid ""
|
||||
"We do this fairly efficiently, from a CPU perspective - at any time, \n"
|
||||
"almost all of these threads are sitting idle, blocked waiting for "
|
||||
"something \n"
|
||||
"to do. However, each thread consumes real resources (on older Linux "
|
||||
"kernels, \n"
|
||||
"for instance, each thread would often be implemented as a fork()'ed "
|
||||
"process). \n"
|
||||
"As the network grows, the number of peers each router will want to talk \n"
|
||||
"with will increase (remember, I2P is fully connected, meaning that any \n"
|
||||
"given peer should know how to get a message to any other peer, and "
|
||||
"restricted \n"
|
||||
"route support will probably not significantly reduce the number of "
|
||||
"connections \n"
|
||||
"necessary). This means that with a 100,000 router network, each router \n"
|
||||
"will have up to 199,998 threads just to deal with the TCP connections!"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:156
|
||||
msgid ""
|
||||
"Obviously, that just won't work. We need to use a transport layer that \n"
|
||||
"can scale. In Java, we have two main camps:"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:161
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Implemented in I2P 0.6 (\"SSU\") as documented <a "
|
||||
"href=\"%(ssu)s\">elsewhere</a>"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:164
|
||||
msgid ""
|
||||
"Sending and receiving UDP datagrams is a connectionless operation - if \n"
|
||||
"we are communicating with 100,000 peers, we simply stick the UDP packets"
|
||||
" \n"
|
||||
"in a queue and have a single thread pulling them off the queue and "
|
||||
"shoving \n"
|
||||
"them out the pipe (and to receive, have a single thread pulling in any \n"
|
||||
"UDP packets received and adding them to an inbound queue)."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:171
|
||||
msgid ""
|
||||
"However, moving to UDP means losing the benefits of TCP's ordering, "
|
||||
"congestion \n"
|
||||
"control, MTU discovery, etc. Implementing that code will take significant"
|
||||
" \n"
|
||||
"work, however I2P doesn't need it to be as strong as TCP. Specifically, \n"
|
||||
"a while ago I was taking some measurements in the simulator and on the \n"
|
||||
"live net, and the vast majority of messages transferred would fit easily"
|
||||
" \n"
|
||||
"within a single unfragmented UDP packet, and the largest of the messages"
|
||||
" \n"
|
||||
"would fit within 20-30 packets. As mule pointed out, TCP adds a "
|
||||
"significant \n"
|
||||
"overhead when dealing with so many small packets, as the ACKs are within"
|
||||
" \n"
|
||||
"an order of magnitude in size. With UDP, we can optimize the transport \n"
|
||||
"for both efficiency and resilience by taking into account I2P's "
|
||||
"particular \n"
|
||||
"needs."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:184
|
||||
msgid "It will be a lot of work though."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:187
|
||||
msgid "NIO or NBIO"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:188
|
||||
msgid "NIO Implemented in I2P 0.6.1.22 (\"NTCP\")"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:191
|
||||
msgid ""
|
||||
"In Java 1.4, a set of \"New I/O\" packages was introduced, allowing Java"
|
||||
" \n"
|
||||
"developers to take advantage of the operating system's nonblocking IO \n"
|
||||
"capabilities - allowing you to maintain a large number of concurrent IO \n"
|
||||
"operations without requiring a separate thread for each. There is much \n"
|
||||
"promise with this approach, as we can scalable handle a large number of \n"
|
||||
"concurrent connections and we don't have to write a mini-TCP stack with \n"
|
||||
"UDP. However, the NIO packages have not proven themselves to be battle-"
|
||||
"ready, \n"
|
||||
"as the Freenet developer's found. In addition, requiring NIO support "
|
||||
"would \n"
|
||||
"mean we can't run on any of the open source JVMs like <a "
|
||||
"href=\"http://www.kaffe.org/\">Kaffe</a>, \n"
|
||||
"as <a href=\"http://www.classpath.org/\">GNU/Classpath</a> has only "
|
||||
"limited \n"
|
||||
"support for NIO. <i>(note: this may not be the case anymore, as there \n"
|
||||
"has been some progress on Classpath's NIO, but it is an unknown "
|
||||
"quantity)</i>"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:205
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Another alternative along the same lines is the <a href=\"%(link)s\">Non"
|
||||
" \n"
|
||||
"Blocking I/O</a> package - essentially a cleanroom NIO implementation \n"
|
||||
"(written before NIO was around). It works by using some native OS code \n"
|
||||
"to do the nonblocking IO, passing off events through Java. It seems to \n"
|
||||
"be working with Kaffe, though there doesn't seem to be much development \n"
|
||||
"activity on it lately (likely due to 1.4's NIO deployment)."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:220
|
||||
#: i2p2www/pages/site/get-involved/todo.html:44
|
||||
msgid ""
|
||||
"Within the current network database and profile management "
|
||||
"implementation, \n"
|
||||
@@ -730,152 +465,14 @@ msgid ""
|
||||
"code yet, since we aren't going to need it for a while."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:235
|
||||
#: i2p2www/pages/site/get-involved/todo.html:59
|
||||
msgid ""
|
||||
"That said, as the network grows we are going to want to keep these "
|
||||
"considerations \n"
|
||||
"in mind. We will have some work to do, but we can put it off for later."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:247
|
||||
#: i2p2www/pages/site/get-involved/todo.html:331
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Addressed in I2P 0.5 as documented <a "
|
||||
"href=\"%(tunnelimpl)s\">elsewhere</a>"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:250
|
||||
msgid ""
|
||||
"Right now, if Alice builds a four hop inbound tunnel starting at Elvis, \n"
|
||||
"going to Dave, then to Charlie, then Bob, and finally Alice "
|
||||
"(A<--B<--C<--D<--E), \n"
|
||||
"all five of them will know they are participating in tunnel \"123\", as \n"
|
||||
"the messages are tagged as such. What we want to do is give each hop "
|
||||
"their \n"
|
||||
"own unique tunnel hop ID - Charlie will receive messages on tunnel 234 \n"
|
||||
"and forward them to tunnel 876 on Bob. The intent is to prevent Bob or \n"
|
||||
"Charlie from knowing that they are in Alice's tunnel, as if each hop in \n"
|
||||
"the tunnel had the same tunnel ID, collusion attacks aren't much work."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:260
|
||||
msgid ""
|
||||
"Adding a unique tunnel ID per hop isn't hard, but by itself, "
|
||||
"insufficient. \n"
|
||||
"If Dave and Bob are under the control of the same attacker, they wouldn't"
|
||||
" \n"
|
||||
"be able to tell they are in the same tunnel due to the tunnel ID, but \n"
|
||||
"would be able to tell by the message bodies and verification structures \n"
|
||||
"by simply comparing them. To prevent that, the tunnel must use layered \n"
|
||||
"encryption along the path, both on the payload of the tunneled message \n"
|
||||
"and on the verification structure (used to prevent simple tagging "
|
||||
"attacks). \n"
|
||||
"This requires some simple modifications to the TunnelMessage, as well \n"
|
||||
"as the inclusion of per-hop secret keys delivered during tunnel creation"
|
||||
" \n"
|
||||
"and given to the tunnel's gateway. We must fix a maximum tunnel length \n"
|
||||
"(e.g. 16 hops) and instruct the gateway to encrypt the message to each \n"
|
||||
"of the 16 delivered secret keys, in reverse order, and to encrypt the \n"
|
||||
"signature of the hash of the (encrypted) payload at each step. The "
|
||||
"gateway \n"
|
||||
"then sends that 16-step encrypted message, along with a 16-step and "
|
||||
"16-wide \n"
|
||||
"encrypted mapping to the first hop, which then decrypts the mapping and \n"
|
||||
"the payload with their secret key, looking in the 16-wide mapping for \n"
|
||||
"the entry associated with their own hop (keyed by the per-hop tunnel ID)"
|
||||
" \n"
|
||||
"and verifying the payload by checking it against the associated signed \n"
|
||||
"hash."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:281
|
||||
msgid ""
|
||||
"The tunnel gateway does still have more information than the other peers"
|
||||
" \n"
|
||||
"in the tunnel, and compromising both the gateway and a tunnel participant"
|
||||
" \n"
|
||||
"would allow those peers to collude, exposing the fact that they are both"
|
||||
" \n"
|
||||
"in the same tunnel. In addition, neighboring peers know that they are \n"
|
||||
"in the same tunnel anyway, as they know who they send the message to (and"
|
||||
" \n"
|
||||
"with IP-based transports without restricted routes, they know who they \n"
|
||||
"got it from). However, the above two techniques significantly increase \n"
|
||||
"the cost of gaining meaningful samples when dealing with longer tunnels."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:297
|
||||
msgid "Implemented in release 0.6.2"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:300
|
||||
#, python-format
|
||||
msgid ""
|
||||
"As Connelly <a href=\"%(link)s\">proposed</a> to deal with the\n"
|
||||
"<a href=\"%(pdf1)s\">predecessor attack</a> <a href=\"%(pdf2)s\">(2008\n"
|
||||
"update)</a>, keeping the order of peers within our tunnels consistent \n"
|
||||
"(aka whenever Alice creates a tunnel with both Bob and Charlie in it, \n"
|
||||
"Bob's next hop is always Charlie), we address the issue as Bob doesn't \n"
|
||||
"get to substantially sample Alice's peer selection group. We may even \n"
|
||||
"want to explicitly allow Bob to participate in Alice's tunnels in only \n"
|
||||
"one way - receiving a message from Dave and sending it to Charlie - and \n"
|
||||
"if any of those peers are not available to participate in the tunnel (due"
|
||||
" \n"
|
||||
"to overload, network disconnection, etc), avoid asking Bob to participate"
|
||||
" \n"
|
||||
"in any tunnels until they are back online."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:315
|
||||
msgid ""
|
||||
"More analysis is necessary for revising the tunnel creation - at the \n"
|
||||
"moment, we simply select and order randomly within the peer's top tier \n"
|
||||
"of peers (ones with fast + high capacity)."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:320
|
||||
msgid ""
|
||||
"Adding a strict ordering to peers in a tunnel also improves the anonymity"
|
||||
" \n"
|
||||
"of peers with 0-hop tunnels, as otherwise the fact that a peer's gateway"
|
||||
" \n"
|
||||
"is always the same would be particularly damning. However, peers with \n"
|
||||
"0-hop tunnels may want to periodically use a 1-hop tunnel to simulate \n"
|
||||
"the failure of a normally reliable gateway peer (so every MTBF*(tunnel \n"
|
||||
"duration) minutes, use a 1-hop tunnel)."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:337
|
||||
msgid ""
|
||||
"Without tunnel length permutation, if someone were to somehow detect that"
|
||||
" \n"
|
||||
"a destination had a particular number of hops, it might be able to use "
|
||||
"that \n"
|
||||
"information to identify the router the destination is located on, per the"
|
||||
" \n"
|
||||
"predecessor attack. For instance, if everyone has 2-hop tunnels, if Bob \n"
|
||||
"receives a tunnel message from Charlie and forwards it to Alice, Bob "
|
||||
"knows \n"
|
||||
"Alice is the final router in the tunnel. If Bob were to identify what "
|
||||
"destination \n"
|
||||
"that tunnel served (by means of colluding with the gateway and harvesting"
|
||||
" \n"
|
||||
"the network database for all of the LeaseSets), he would know the router"
|
||||
" \n"
|
||||
"on which that destination is located (and without restricted routes, that"
|
||||
" \n"
|
||||
"would mean what IP address the destination is on)."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:349
|
||||
msgid ""
|
||||
"It is to counter user behavior that tunnel lengths should be permuted, \n"
|
||||
"using algorithms based on the length requested (for example, the 1/MTBF \n"
|
||||
"length change for 0-hop tunnels outlined above)."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:359
|
||||
#: i2p2www/pages/site/get-involved/todo.html:71
|
||||
msgid ""
|
||||
"The restricted route functionality described before was simply a "
|
||||
"functional \n"
|
||||
@@ -897,7 +494,7 @@ msgid ""
|
||||
"to forward it as requested."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:378
|
||||
#: i2p2www/pages/site/get-involved/todo.html:90
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Within the network, we will want some way to deter people from consuming"
|
||||
@@ -911,7 +508,7 @@ msgid ""
|
||||
"to make certain requests \"expensive\"."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:386
|
||||
#: i2p2www/pages/site/get-involved/todo.html:98
|
||||
msgid ""
|
||||
"<a href=\"http://www.hashcash.org/\">Hashcash</a> is one technique that \n"
|
||||
"we can use to anonymously increase the \"cost\" of doing certain "
|
||||
@@ -929,7 +526,7 @@ msgid ""
|
||||
"with few resources."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:397
|
||||
#: i2p2www/pages/site/get-involved/todo.html:109
|
||||
msgid ""
|
||||
"There are a few other algorithms that we can explore for making those \n"
|
||||
"requests for resources \"nonfree\", and further research on that front is"
|
||||
@@ -937,7 +534,7 @@ msgid ""
|
||||
"appropriate."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:407
|
||||
#: i2p2www/pages/site/get-involved/todo.html:119
|
||||
#, python-format
|
||||
msgid ""
|
||||
"To powerful passive external observers as well as large colluding "
|
||||
@@ -958,7 +555,7 @@ msgid ""
|
||||
"tunnel mixing strategies."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:420
|
||||
#: i2p2www/pages/site/get-involved/todo.html:132
|
||||
msgid ""
|
||||
"In addition to the anonymity aspects of more varied tunnel operation, \n"
|
||||
"there is a functional dimension as well. Each peer only has a certain \n"
|
||||
@@ -976,7 +573,7 @@ msgid ""
|
||||
"available."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:433
|
||||
#: i2p2www/pages/site/get-involved/todo.html:145
|
||||
msgid ""
|
||||
"In addition, we may want to implement code to dynamically reroute tunnels"
|
||||
" \n"
|
||||
@@ -986,7 +583,7 @@ msgid ""
|
||||
"with instructions to redefine the next-hop in the tunnel."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:444
|
||||
#: i2p2www/pages/site/get-involved/todo.html:156
|
||||
msgid ""
|
||||
"Beyond the per-tunnel batching and mixing strategy, there are further \n"
|
||||
"capabilities for protecting against powerful attackers, such as allowing"
|
||||
@@ -1001,7 +598,7 @@ msgid ""
|
||||
"clove exposed includes delay instructions."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:456
|
||||
#: i2p2www/pages/site/get-involved/todo.html:168
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Performance related improvements are listed on the\n"
|
||||
@@ -4134,3 +3731,15 @@ msgid ""
|
||||
"href=\"http://%(zzz)s/forums/14\">translation forum on %(zzz)s</a>."
|
||||
msgstr ""
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@@ -8,7 +8,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: I2P\n"
|
||||
"Report-Msgid-Bugs-To: http://trac.i2p2.de\n"
|
||||
"POT-Creation-Date: 2014-10-22 20:13+0000\n"
|
||||
"POT-Creation-Date: 2014-11-27 12:12+0000\n"
|
||||
"PO-Revision-Date: 2014-10-22 20:24+0000\n"
|
||||
"Last-Translator: str4d <str4d@i2pmail.org>\n"
|
||||
"Language-Team: Indonesian "
|
||||
@@ -493,317 +493,52 @@ msgid ""
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:15
|
||||
#: i2p2www/pages/site/get-involved/todo.html:53
|
||||
#: i2p2www/pages/site/get-involved/todo.html:38
|
||||
msgid "Core functionality"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:15
|
||||
#: i2p2www/pages/site/get-involved/todo.html:27
|
||||
#: i2p2www/pages/site/get-involved/todo.html:51
|
||||
#: i2p2www/pages/site/get-involved/todo.html:21
|
||||
#: i2p2www/pages/site/get-involved/todo.html:36
|
||||
msgid "link"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:17
|
||||
#: i2p2www/pages/site/get-involved/todo.html:56
|
||||
msgid "NAT/Firewall bridging via 1-hop restricted routes"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:20
|
||||
#: i2p2www/pages/site/get-involved/todo.html:129
|
||||
msgid "High degree transport layer with UDP, NBIO, or NIO"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:23
|
||||
#: i2p2www/pages/site/get-involved/todo.html:217
|
||||
#: i2p2www/pages/site/get-involved/todo.html:41
|
||||
msgid "NetworkDB and profile tuning and ejection policy for large nets"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:27
|
||||
#: i2p2www/pages/site/get-involved/todo.html:241
|
||||
#: i2p2www/pages/site/get-involved/todo.html:21
|
||||
#: i2p2www/pages/site/get-involved/todo.html:65
|
||||
msgid "Security / anonymity"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:29
|
||||
#: i2p2www/pages/site/get-involved/todo.html:244
|
||||
msgid ""
|
||||
"Per-hop tunnel id & new permuted TunnelVerificationStructure "
|
||||
"encryption"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:32
|
||||
#: i2p2www/pages/site/get-involved/todo.html:294
|
||||
msgid "Strict ordering of participants within tunnels"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:35
|
||||
msgid "Randomly permuted tunnel lengths"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:38
|
||||
#: i2p2www/pages/site/get-involved/todo.html:356
|
||||
#: i2p2www/pages/site/get-involved/todo.html:23
|
||||
#: i2p2www/pages/site/get-involved/todo.html:68
|
||||
msgid "Full blown n-hop restricted routes with optional trusted links"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:41
|
||||
#: i2p2www/pages/site/get-involved/todo.html:375
|
||||
#: i2p2www/pages/site/get-involved/todo.html:26
|
||||
#: i2p2www/pages/site/get-involved/todo.html:87
|
||||
msgid "Hashcash for routerIdentity, destination, and tunnel request"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:44
|
||||
#: i2p2www/pages/site/get-involved/todo.html:404
|
||||
#: i2p2www/pages/site/get-involved/todo.html:29
|
||||
#: i2p2www/pages/site/get-involved/todo.html:116
|
||||
msgid "Advanced tunnel operation (batching/mixing/throttling/padding)"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:47
|
||||
#: i2p2www/pages/site/get-involved/todo.html:441
|
||||
#: i2p2www/pages/site/get-involved/todo.html:32
|
||||
#: i2p2www/pages/site/get-involved/todo.html:153
|
||||
msgid "Stop & go mix w/ garlics & tunnels"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:51
|
||||
#: i2p2www/pages/site/get-involved/todo.html:455
|
||||
#: i2p2www/pages/site/get-involved/todo.html:36
|
||||
#: i2p2www/pages/site/get-involved/todo.html:167
|
||||
msgid "Performance"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:61
|
||||
msgid "Implemented in I2P 0.6.0.6"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:62
|
||||
msgid ""
|
||||
"The functionality of allowing routers to fully participate within the "
|
||||
"network \n"
|
||||
"while behind firewalls and NATs that they do not control requires some "
|
||||
"basic \n"
|
||||
"restricted route operation (since those peers will not be able to receive"
|
||||
" \n"
|
||||
"inbound connections). To do this successfully, you consider peers one of"
|
||||
" \n"
|
||||
"two ways:"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:72
|
||||
msgid ""
|
||||
"<b>Peers who have reachable interfaces</b> - these peers do not need to \n"
|
||||
"do anything special"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:76
|
||||
msgid ""
|
||||
"<b>Peers who do not have reachable interfaces</b> - these peers must "
|
||||
"build \n"
|
||||
"a tunnel pointing at them where the gateway is one of the peers they have"
|
||||
" \n"
|
||||
"established a connection with who has both a publicly reachable interface"
|
||||
" \n"
|
||||
"and who has agreed to serve as their 'introducer'."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:84
|
||||
msgid ""
|
||||
"To do this, peers who have no IP address simply connect to a few peers, \n"
|
||||
"build a tunnel through them, and publish a reference to those tunnels "
|
||||
"within \n"
|
||||
"their RouterInfo structure in the network database."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:89
|
||||
msgid ""
|
||||
"When someone wants to contact any particular router, they first must get"
|
||||
" \n"
|
||||
"its RouterInfo from the network database, which will tell them whether "
|
||||
"they \n"
|
||||
"can connect directly (e.g. the peer has a publicly reachable interface) \n"
|
||||
"or whether they need to contact them indirectly. Direct connections occur"
|
||||
" \n"
|
||||
"as normal, while indirect connections are done through one of the "
|
||||
"published \n"
|
||||
"tunnels."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:97
|
||||
msgid ""
|
||||
"When a router just wants to get a message or two to a specific hidden "
|
||||
"peer, \n"
|
||||
"they can just use the indirect tunnel for sending the payload. However, \n"
|
||||
"if the router wants to talk to the hidden peer often (for instance, as "
|
||||
"part \n"
|
||||
"of a tunnel), they will send a garlic routed message through the indirect"
|
||||
" \n"
|
||||
"tunnel to that hidden peer which unwraps to contain a message which "
|
||||
"should \n"
|
||||
"be sent to the originating router. That hidden peer then establishes an \n"
|
||||
"outbound connection to the originating router and from then on, those two"
|
||||
" \n"
|
||||
"routers can talk to each other directly over that newly established "
|
||||
"direct \n"
|
||||
"connection."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:108
|
||||
msgid ""
|
||||
"Of course, that only works if the originating peer can receive "
|
||||
"connections \n"
|
||||
"(they aren't also hidden). However, if the originating peer is hidden, "
|
||||
"they \n"
|
||||
"can simply direct the garlic routed message to come back to the "
|
||||
"originating \n"
|
||||
"peer's inbound tunnel."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:114
|
||||
msgid ""
|
||||
"This is not meant to provide a way for a peer's IP address to be "
|
||||
"concealed, \n"
|
||||
"merely as a way to let people behind firewalls and NATs fully operate "
|
||||
"within \n"
|
||||
"the network. Concealing the peer's IP address adds a little more work, as"
|
||||
" \n"
|
||||
"described <a href=\"#fullRestrictedRoutes\">below.</a>"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:120
|
||||
msgid ""
|
||||
"With this technique, any router can participate as any part of a tunnel."
|
||||
" \n"
|
||||
"For efficiency purposes, a hidden peer would be a bad choice for an "
|
||||
"inbound \n"
|
||||
"gateway, and within any given tunnel, two neighboring peers wouldn't want"
|
||||
" \n"
|
||||
"to be hidden. But that is not technically necessary."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:132
|
||||
msgid "Both UDP and NIO have been Implemented in I2P"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:133
|
||||
msgid ""
|
||||
"Standard TCP communication in Java generally requires blocking socket \n"
|
||||
"calls, and to keep a blocked socket from hanging the entire system, those"
|
||||
" \n"
|
||||
"blocking calls are done on their own threads. Our current TCP transport \n"
|
||||
"is implemented in a naive fashion - for each peer we are talking to, we \n"
|
||||
"have one thread reading and one thread writing. The reader thread simply"
|
||||
" \n"
|
||||
"loops a bunch of read() calls, building I2NP messages and adding them \n"
|
||||
"to our internal inbound message queue, and the writer thread pulls "
|
||||
"messages \n"
|
||||
"off a per-connection outbound message queue and shoves the data through \n"
|
||||
"write() calls."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:144
|
||||
msgid ""
|
||||
"We do this fairly efficiently, from a CPU perspective - at any time, \n"
|
||||
"almost all of these threads are sitting idle, blocked waiting for "
|
||||
"something \n"
|
||||
"to do. However, each thread consumes real resources (on older Linux "
|
||||
"kernels, \n"
|
||||
"for instance, each thread would often be implemented as a fork()'ed "
|
||||
"process). \n"
|
||||
"As the network grows, the number of peers each router will want to talk \n"
|
||||
"with will increase (remember, I2P is fully connected, meaning that any \n"
|
||||
"given peer should know how to get a message to any other peer, and "
|
||||
"restricted \n"
|
||||
"route support will probably not significantly reduce the number of "
|
||||
"connections \n"
|
||||
"necessary). This means that with a 100,000 router network, each router \n"
|
||||
"will have up to 199,998 threads just to deal with the TCP connections!"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:156
|
||||
msgid ""
|
||||
"Obviously, that just won't work. We need to use a transport layer that \n"
|
||||
"can scale. In Java, we have two main camps:"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:161
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Implemented in I2P 0.6 (\"SSU\") as documented <a "
|
||||
"href=\"%(ssu)s\">elsewhere</a>"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:164
|
||||
msgid ""
|
||||
"Sending and receiving UDP datagrams is a connectionless operation - if \n"
|
||||
"we are communicating with 100,000 peers, we simply stick the UDP packets"
|
||||
" \n"
|
||||
"in a queue and have a single thread pulling them off the queue and "
|
||||
"shoving \n"
|
||||
"them out the pipe (and to receive, have a single thread pulling in any \n"
|
||||
"UDP packets received and adding them to an inbound queue)."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:171
|
||||
msgid ""
|
||||
"However, moving to UDP means losing the benefits of TCP's ordering, "
|
||||
"congestion \n"
|
||||
"control, MTU discovery, etc. Implementing that code will take significant"
|
||||
" \n"
|
||||
"work, however I2P doesn't need it to be as strong as TCP. Specifically, \n"
|
||||
"a while ago I was taking some measurements in the simulator and on the \n"
|
||||
"live net, and the vast majority of messages transferred would fit easily"
|
||||
" \n"
|
||||
"within a single unfragmented UDP packet, and the largest of the messages"
|
||||
" \n"
|
||||
"would fit within 20-30 packets. As mule pointed out, TCP adds a "
|
||||
"significant \n"
|
||||
"overhead when dealing with so many small packets, as the ACKs are within"
|
||||
" \n"
|
||||
"an order of magnitude in size. With UDP, we can optimize the transport \n"
|
||||
"for both efficiency and resilience by taking into account I2P's "
|
||||
"particular \n"
|
||||
"needs."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:184
|
||||
msgid "It will be a lot of work though."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:187
|
||||
msgid "NIO or NBIO"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:188
|
||||
msgid "NIO Implemented in I2P 0.6.1.22 (\"NTCP\")"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:191
|
||||
msgid ""
|
||||
"In Java 1.4, a set of \"New I/O\" packages was introduced, allowing Java"
|
||||
" \n"
|
||||
"developers to take advantage of the operating system's nonblocking IO \n"
|
||||
"capabilities - allowing you to maintain a large number of concurrent IO \n"
|
||||
"operations without requiring a separate thread for each. There is much \n"
|
||||
"promise with this approach, as we can scalable handle a large number of \n"
|
||||
"concurrent connections and we don't have to write a mini-TCP stack with \n"
|
||||
"UDP. However, the NIO packages have not proven themselves to be battle-"
|
||||
"ready, \n"
|
||||
"as the Freenet developer's found. In addition, requiring NIO support "
|
||||
"would \n"
|
||||
"mean we can't run on any of the open source JVMs like <a "
|
||||
"href=\"http://www.kaffe.org/\">Kaffe</a>, \n"
|
||||
"as <a href=\"http://www.classpath.org/\">GNU/Classpath</a> has only "
|
||||
"limited \n"
|
||||
"support for NIO. <i>(note: this may not be the case anymore, as there \n"
|
||||
"has been some progress on Classpath's NIO, but it is an unknown "
|
||||
"quantity)</i>"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:205
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Another alternative along the same lines is the <a href=\"%(link)s\">Non"
|
||||
" \n"
|
||||
"Blocking I/O</a> package - essentially a cleanroom NIO implementation \n"
|
||||
"(written before NIO was around). It works by using some native OS code \n"
|
||||
"to do the nonblocking IO, passing off events through Java. It seems to \n"
|
||||
"be working with Kaffe, though there doesn't seem to be much development \n"
|
||||
"activity on it lately (likely due to 1.4's NIO deployment)."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:220
|
||||
#: i2p2www/pages/site/get-involved/todo.html:44
|
||||
msgid ""
|
||||
"Within the current network database and profile management "
|
||||
"implementation, \n"
|
||||
@@ -826,152 +561,14 @@ msgid ""
|
||||
"code yet, since we aren't going to need it for a while."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:235
|
||||
#: i2p2www/pages/site/get-involved/todo.html:59
|
||||
msgid ""
|
||||
"That said, as the network grows we are going to want to keep these "
|
||||
"considerations \n"
|
||||
"in mind. We will have some work to do, but we can put it off for later."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:247
|
||||
#: i2p2www/pages/site/get-involved/todo.html:331
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Addressed in I2P 0.5 as documented <a "
|
||||
"href=\"%(tunnelimpl)s\">elsewhere</a>"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:250
|
||||
msgid ""
|
||||
"Right now, if Alice builds a four hop inbound tunnel starting at Elvis, \n"
|
||||
"going to Dave, then to Charlie, then Bob, and finally Alice "
|
||||
"(A<--B<--C<--D<--E), \n"
|
||||
"all five of them will know they are participating in tunnel \"123\", as \n"
|
||||
"the messages are tagged as such. What we want to do is give each hop "
|
||||
"their \n"
|
||||
"own unique tunnel hop ID - Charlie will receive messages on tunnel 234 \n"
|
||||
"and forward them to tunnel 876 on Bob. The intent is to prevent Bob or \n"
|
||||
"Charlie from knowing that they are in Alice's tunnel, as if each hop in \n"
|
||||
"the tunnel had the same tunnel ID, collusion attacks aren't much work."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:260
|
||||
msgid ""
|
||||
"Adding a unique tunnel ID per hop isn't hard, but by itself, "
|
||||
"insufficient. \n"
|
||||
"If Dave and Bob are under the control of the same attacker, they wouldn't"
|
||||
" \n"
|
||||
"be able to tell they are in the same tunnel due to the tunnel ID, but \n"
|
||||
"would be able to tell by the message bodies and verification structures \n"
|
||||
"by simply comparing them. To prevent that, the tunnel must use layered \n"
|
||||
"encryption along the path, both on the payload of the tunneled message \n"
|
||||
"and on the verification structure (used to prevent simple tagging "
|
||||
"attacks). \n"
|
||||
"This requires some simple modifications to the TunnelMessage, as well \n"
|
||||
"as the inclusion of per-hop secret keys delivered during tunnel creation"
|
||||
" \n"
|
||||
"and given to the tunnel's gateway. We must fix a maximum tunnel length \n"
|
||||
"(e.g. 16 hops) and instruct the gateway to encrypt the message to each \n"
|
||||
"of the 16 delivered secret keys, in reverse order, and to encrypt the \n"
|
||||
"signature of the hash of the (encrypted) payload at each step. The "
|
||||
"gateway \n"
|
||||
"then sends that 16-step encrypted message, along with a 16-step and "
|
||||
"16-wide \n"
|
||||
"encrypted mapping to the first hop, which then decrypts the mapping and \n"
|
||||
"the payload with their secret key, looking in the 16-wide mapping for \n"
|
||||
"the entry associated with their own hop (keyed by the per-hop tunnel ID)"
|
||||
" \n"
|
||||
"and verifying the payload by checking it against the associated signed \n"
|
||||
"hash."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:281
|
||||
msgid ""
|
||||
"The tunnel gateway does still have more information than the other peers"
|
||||
" \n"
|
||||
"in the tunnel, and compromising both the gateway and a tunnel participant"
|
||||
" \n"
|
||||
"would allow those peers to collude, exposing the fact that they are both"
|
||||
" \n"
|
||||
"in the same tunnel. In addition, neighboring peers know that they are \n"
|
||||
"in the same tunnel anyway, as they know who they send the message to (and"
|
||||
" \n"
|
||||
"with IP-based transports without restricted routes, they know who they \n"
|
||||
"got it from). However, the above two techniques significantly increase \n"
|
||||
"the cost of gaining meaningful samples when dealing with longer tunnels."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:297
|
||||
msgid "Implemented in release 0.6.2"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:300
|
||||
#, python-format
|
||||
msgid ""
|
||||
"As Connelly <a href=\"%(link)s\">proposed</a> to deal with the\n"
|
||||
"<a href=\"%(pdf1)s\">predecessor attack</a> <a href=\"%(pdf2)s\">(2008\n"
|
||||
"update)</a>, keeping the order of peers within our tunnels consistent \n"
|
||||
"(aka whenever Alice creates a tunnel with both Bob and Charlie in it, \n"
|
||||
"Bob's next hop is always Charlie), we address the issue as Bob doesn't \n"
|
||||
"get to substantially sample Alice's peer selection group. We may even \n"
|
||||
"want to explicitly allow Bob to participate in Alice's tunnels in only \n"
|
||||
"one way - receiving a message from Dave and sending it to Charlie - and \n"
|
||||
"if any of those peers are not available to participate in the tunnel (due"
|
||||
" \n"
|
||||
"to overload, network disconnection, etc), avoid asking Bob to participate"
|
||||
" \n"
|
||||
"in any tunnels until they are back online."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:315
|
||||
msgid ""
|
||||
"More analysis is necessary for revising the tunnel creation - at the \n"
|
||||
"moment, we simply select and order randomly within the peer's top tier \n"
|
||||
"of peers (ones with fast + high capacity)."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:320
|
||||
msgid ""
|
||||
"Adding a strict ordering to peers in a tunnel also improves the anonymity"
|
||||
" \n"
|
||||
"of peers with 0-hop tunnels, as otherwise the fact that a peer's gateway"
|
||||
" \n"
|
||||
"is always the same would be particularly damning. However, peers with \n"
|
||||
"0-hop tunnels may want to periodically use a 1-hop tunnel to simulate \n"
|
||||
"the failure of a normally reliable gateway peer (so every MTBF*(tunnel \n"
|
||||
"duration) minutes, use a 1-hop tunnel)."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:337
|
||||
msgid ""
|
||||
"Without tunnel length permutation, if someone were to somehow detect that"
|
||||
" \n"
|
||||
"a destination had a particular number of hops, it might be able to use "
|
||||
"that \n"
|
||||
"information to identify the router the destination is located on, per the"
|
||||
" \n"
|
||||
"predecessor attack. For instance, if everyone has 2-hop tunnels, if Bob \n"
|
||||
"receives a tunnel message from Charlie and forwards it to Alice, Bob "
|
||||
"knows \n"
|
||||
"Alice is the final router in the tunnel. If Bob were to identify what "
|
||||
"destination \n"
|
||||
"that tunnel served (by means of colluding with the gateway and harvesting"
|
||||
" \n"
|
||||
"the network database for all of the LeaseSets), he would know the router"
|
||||
" \n"
|
||||
"on which that destination is located (and without restricted routes, that"
|
||||
" \n"
|
||||
"would mean what IP address the destination is on)."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:349
|
||||
msgid ""
|
||||
"It is to counter user behavior that tunnel lengths should be permuted, \n"
|
||||
"using algorithms based on the length requested (for example, the 1/MTBF \n"
|
||||
"length change for 0-hop tunnels outlined above)."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:359
|
||||
#: i2p2www/pages/site/get-involved/todo.html:71
|
||||
msgid ""
|
||||
"The restricted route functionality described before was simply a "
|
||||
"functional \n"
|
||||
@@ -993,7 +590,7 @@ msgid ""
|
||||
"to forward it as requested."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:378
|
||||
#: i2p2www/pages/site/get-involved/todo.html:90
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Within the network, we will want some way to deter people from consuming"
|
||||
@@ -1007,7 +604,7 @@ msgid ""
|
||||
"to make certain requests \"expensive\"."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:386
|
||||
#: i2p2www/pages/site/get-involved/todo.html:98
|
||||
msgid ""
|
||||
"<a href=\"http://www.hashcash.org/\">Hashcash</a> is one technique that \n"
|
||||
"we can use to anonymously increase the \"cost\" of doing certain "
|
||||
@@ -1025,7 +622,7 @@ msgid ""
|
||||
"with few resources."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:397
|
||||
#: i2p2www/pages/site/get-involved/todo.html:109
|
||||
msgid ""
|
||||
"There are a few other algorithms that we can explore for making those \n"
|
||||
"requests for resources \"nonfree\", and further research on that front is"
|
||||
@@ -1033,7 +630,7 @@ msgid ""
|
||||
"appropriate."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:407
|
||||
#: i2p2www/pages/site/get-involved/todo.html:119
|
||||
#, python-format
|
||||
msgid ""
|
||||
"To powerful passive external observers as well as large colluding "
|
||||
@@ -1054,7 +651,7 @@ msgid ""
|
||||
"tunnel mixing strategies."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:420
|
||||
#: i2p2www/pages/site/get-involved/todo.html:132
|
||||
msgid ""
|
||||
"In addition to the anonymity aspects of more varied tunnel operation, \n"
|
||||
"there is a functional dimension as well. Each peer only has a certain \n"
|
||||
@@ -1072,7 +669,7 @@ msgid ""
|
||||
"available."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:433
|
||||
#: i2p2www/pages/site/get-involved/todo.html:145
|
||||
msgid ""
|
||||
"In addition, we may want to implement code to dynamically reroute tunnels"
|
||||
" \n"
|
||||
@@ -1082,7 +679,7 @@ msgid ""
|
||||
"with instructions to redefine the next-hop in the tunnel."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:444
|
||||
#: i2p2www/pages/site/get-involved/todo.html:156
|
||||
msgid ""
|
||||
"Beyond the per-tunnel batching and mixing strategy, there are further \n"
|
||||
"capabilities for protecting against powerful attackers, such as allowing"
|
||||
@@ -1097,7 +694,7 @@ msgid ""
|
||||
"clove exposed includes delay instructions."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:456
|
||||
#: i2p2www/pages/site/get-involved/todo.html:168
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Performance related improvements are listed on the\n"
|
||||
@@ -4230,3 +3827,15 @@ msgid ""
|
||||
"href=\"http://%(zzz)s/forums/14\">translation forum on %(zzz)s</a>."
|
||||
msgstr ""
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
@@ -11,7 +11,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: I2P\n"
|
||||
"Report-Msgid-Bugs-To: http://trac.i2p2.de\n"
|
||||
"POT-Creation-Date: 2014-10-22 20:13+0000\n"
|
||||
"POT-Creation-Date: 2014-11-27 12:12+0000\n"
|
||||
"PO-Revision-Date: 2014-10-22 20:24+0000\n"
|
||||
"Last-Translator: str4d <str4d@i2pmail.org>\n"
|
||||
"Language-Team: Italian "
|
||||
@@ -457,319 +457,52 @@ msgid ""
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:15
|
||||
#: i2p2www/pages/site/get-involved/todo.html:53
|
||||
#: i2p2www/pages/site/get-involved/todo.html:38
|
||||
msgid "Core functionality"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:15
|
||||
#: i2p2www/pages/site/get-involved/todo.html:27
|
||||
#: i2p2www/pages/site/get-involved/todo.html:51
|
||||
#: i2p2www/pages/site/get-involved/todo.html:21
|
||||
#: i2p2www/pages/site/get-involved/todo.html:36
|
||||
msgid "link"
|
||||
msgstr "link"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:17
|
||||
#: i2p2www/pages/site/get-involved/todo.html:56
|
||||
msgid "NAT/Firewall bridging via 1-hop restricted routes"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:20
|
||||
#: i2p2www/pages/site/get-involved/todo.html:129
|
||||
msgid "High degree transport layer with UDP, NBIO, or NIO"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:23
|
||||
#: i2p2www/pages/site/get-involved/todo.html:217
|
||||
#: i2p2www/pages/site/get-involved/todo.html:41
|
||||
msgid "NetworkDB and profile tuning and ejection policy for large nets"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:27
|
||||
#: i2p2www/pages/site/get-involved/todo.html:241
|
||||
#: i2p2www/pages/site/get-involved/todo.html:21
|
||||
#: i2p2www/pages/site/get-involved/todo.html:65
|
||||
msgid "Security / anonymity"
|
||||
msgstr "Sicurezza / anonimato"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:29
|
||||
#: i2p2www/pages/site/get-involved/todo.html:244
|
||||
msgid ""
|
||||
"Per-hop tunnel id & new permuted TunnelVerificationStructure "
|
||||
"encryption"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:32
|
||||
#: i2p2www/pages/site/get-involved/todo.html:294
|
||||
msgid "Strict ordering of participants within tunnels"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:35
|
||||
msgid "Randomly permuted tunnel lengths"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:38
|
||||
#: i2p2www/pages/site/get-involved/todo.html:356
|
||||
#: i2p2www/pages/site/get-involved/todo.html:23
|
||||
#: i2p2www/pages/site/get-involved/todo.html:68
|
||||
msgid "Full blown n-hop restricted routes with optional trusted links"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:41
|
||||
#: i2p2www/pages/site/get-involved/todo.html:375
|
||||
#: i2p2www/pages/site/get-involved/todo.html:26
|
||||
#: i2p2www/pages/site/get-involved/todo.html:87
|
||||
msgid "Hashcash for routerIdentity, destination, and tunnel request"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:44
|
||||
#: i2p2www/pages/site/get-involved/todo.html:404
|
||||
#: i2p2www/pages/site/get-involved/todo.html:29
|
||||
#: i2p2www/pages/site/get-involved/todo.html:116
|
||||
msgid "Advanced tunnel operation (batching/mixing/throttling/padding)"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:47
|
||||
#: i2p2www/pages/site/get-involved/todo.html:441
|
||||
#: i2p2www/pages/site/get-involved/todo.html:32
|
||||
#: i2p2www/pages/site/get-involved/todo.html:153
|
||||
msgid "Stop & go mix w/ garlics & tunnels"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:51
|
||||
#: i2p2www/pages/site/get-involved/todo.html:455
|
||||
#: i2p2www/pages/site/get-involved/todo.html:36
|
||||
#: i2p2www/pages/site/get-involved/todo.html:167
|
||||
msgid "Performance"
|
||||
msgstr "Prestazioni"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:61
|
||||
msgid "Implemented in I2P 0.6.0.6"
|
||||
msgstr "Implementato in I2P 0.6.0.6"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:62
|
||||
msgid ""
|
||||
"The functionality of allowing routers to fully participate within the "
|
||||
"network \n"
|
||||
"while behind firewalls and NATs that they do not control requires some "
|
||||
"basic \n"
|
||||
"restricted route operation (since those peers will not be able to receive"
|
||||
" \n"
|
||||
"inbound connections). To do this successfully, you consider peers one of"
|
||||
" \n"
|
||||
"two ways:"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:72
|
||||
msgid ""
|
||||
"<b>Peers who have reachable interfaces</b> - these peers do not need to \n"
|
||||
"do anything special"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:76
|
||||
msgid ""
|
||||
"<b>Peers who do not have reachable interfaces</b> - these peers must "
|
||||
"build \n"
|
||||
"a tunnel pointing at them where the gateway is one of the peers they have"
|
||||
" \n"
|
||||
"established a connection with who has both a publicly reachable interface"
|
||||
" \n"
|
||||
"and who has agreed to serve as their 'introducer'."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:84
|
||||
msgid ""
|
||||
"To do this, peers who have no IP address simply connect to a few peers, \n"
|
||||
"build a tunnel through them, and publish a reference to those tunnels "
|
||||
"within \n"
|
||||
"their RouterInfo structure in the network database."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:89
|
||||
msgid ""
|
||||
"When someone wants to contact any particular router, they first must get"
|
||||
" \n"
|
||||
"its RouterInfo from the network database, which will tell them whether "
|
||||
"they \n"
|
||||
"can connect directly (e.g. the peer has a publicly reachable interface) \n"
|
||||
"or whether they need to contact them indirectly. Direct connections occur"
|
||||
" \n"
|
||||
"as normal, while indirect connections are done through one of the "
|
||||
"published \n"
|
||||
"tunnels."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:97
|
||||
msgid ""
|
||||
"When a router just wants to get a message or two to a specific hidden "
|
||||
"peer, \n"
|
||||
"they can just use the indirect tunnel for sending the payload. However, \n"
|
||||
"if the router wants to talk to the hidden peer often (for instance, as "
|
||||
"part \n"
|
||||
"of a tunnel), they will send a garlic routed message through the indirect"
|
||||
" \n"
|
||||
"tunnel to that hidden peer which unwraps to contain a message which "
|
||||
"should \n"
|
||||
"be sent to the originating router. That hidden peer then establishes an \n"
|
||||
"outbound connection to the originating router and from then on, those two"
|
||||
" \n"
|
||||
"routers can talk to each other directly over that newly established "
|
||||
"direct \n"
|
||||
"connection."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:108
|
||||
msgid ""
|
||||
"Of course, that only works if the originating peer can receive "
|
||||
"connections \n"
|
||||
"(they aren't also hidden). However, if the originating peer is hidden, "
|
||||
"they \n"
|
||||
"can simply direct the garlic routed message to come back to the "
|
||||
"originating \n"
|
||||
"peer's inbound tunnel."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:114
|
||||
msgid ""
|
||||
"This is not meant to provide a way for a peer's IP address to be "
|
||||
"concealed, \n"
|
||||
"merely as a way to let people behind firewalls and NATs fully operate "
|
||||
"within \n"
|
||||
"the network. Concealing the peer's IP address adds a little more work, as"
|
||||
" \n"
|
||||
"described <a href=\"#fullRestrictedRoutes\">below.</a>"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:120
|
||||
msgid ""
|
||||
"With this technique, any router can participate as any part of a tunnel."
|
||||
" \n"
|
||||
"For efficiency purposes, a hidden peer would be a bad choice for an "
|
||||
"inbound \n"
|
||||
"gateway, and within any given tunnel, two neighboring peers wouldn't want"
|
||||
" \n"
|
||||
"to be hidden. But that is not technically necessary."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:132
|
||||
msgid "Both UDP and NIO have been Implemented in I2P"
|
||||
msgstr "Sia UDP che NIO sono stati implementati in I2P"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:133
|
||||
msgid ""
|
||||
"Standard TCP communication in Java generally requires blocking socket \n"
|
||||
"calls, and to keep a blocked socket from hanging the entire system, those"
|
||||
" \n"
|
||||
"blocking calls are done on their own threads. Our current TCP transport \n"
|
||||
"is implemented in a naive fashion - for each peer we are talking to, we \n"
|
||||
"have one thread reading and one thread writing. The reader thread simply"
|
||||
" \n"
|
||||
"loops a bunch of read() calls, building I2NP messages and adding them \n"
|
||||
"to our internal inbound message queue, and the writer thread pulls "
|
||||
"messages \n"
|
||||
"off a per-connection outbound message queue and shoves the data through \n"
|
||||
"write() calls."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:144
|
||||
msgid ""
|
||||
"We do this fairly efficiently, from a CPU perspective - at any time, \n"
|
||||
"almost all of these threads are sitting idle, blocked waiting for "
|
||||
"something \n"
|
||||
"to do. However, each thread consumes real resources (on older Linux "
|
||||
"kernels, \n"
|
||||
"for instance, each thread would often be implemented as a fork()'ed "
|
||||
"process). \n"
|
||||
"As the network grows, the number of peers each router will want to talk \n"
|
||||
"with will increase (remember, I2P is fully connected, meaning that any \n"
|
||||
"given peer should know how to get a message to any other peer, and "
|
||||
"restricted \n"
|
||||
"route support will probably not significantly reduce the number of "
|
||||
"connections \n"
|
||||
"necessary). This means that with a 100,000 router network, each router \n"
|
||||
"will have up to 199,998 threads just to deal with the TCP connections!"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:156
|
||||
msgid ""
|
||||
"Obviously, that just won't work. We need to use a transport layer that \n"
|
||||
"can scale. In Java, we have two main camps:"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:161
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Implemented in I2P 0.6 (\"SSU\") as documented <a "
|
||||
"href=\"%(ssu)s\">elsewhere</a>"
|
||||
msgstr ""
|
||||
"Implementato in I2P 0.6.0.6 (\"SSU\") come documentato <a "
|
||||
"href=\"%(ssu)s\">altrove</a>"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:164
|
||||
msgid ""
|
||||
"Sending and receiving UDP datagrams is a connectionless operation - if \n"
|
||||
"we are communicating with 100,000 peers, we simply stick the UDP packets"
|
||||
" \n"
|
||||
"in a queue and have a single thread pulling them off the queue and "
|
||||
"shoving \n"
|
||||
"them out the pipe (and to receive, have a single thread pulling in any \n"
|
||||
"UDP packets received and adding them to an inbound queue)."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:171
|
||||
msgid ""
|
||||
"However, moving to UDP means losing the benefits of TCP's ordering, "
|
||||
"congestion \n"
|
||||
"control, MTU discovery, etc. Implementing that code will take significant"
|
||||
" \n"
|
||||
"work, however I2P doesn't need it to be as strong as TCP. Specifically, \n"
|
||||
"a while ago I was taking some measurements in the simulator and on the \n"
|
||||
"live net, and the vast majority of messages transferred would fit easily"
|
||||
" \n"
|
||||
"within a single unfragmented UDP packet, and the largest of the messages"
|
||||
" \n"
|
||||
"would fit within 20-30 packets. As mule pointed out, TCP adds a "
|
||||
"significant \n"
|
||||
"overhead when dealing with so many small packets, as the ACKs are within"
|
||||
" \n"
|
||||
"an order of magnitude in size. With UDP, we can optimize the transport \n"
|
||||
"for both efficiency and resilience by taking into account I2P's "
|
||||
"particular \n"
|
||||
"needs."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:184
|
||||
msgid "It will be a lot of work though."
|
||||
msgstr "Tuttavia richiederebbe molto lavoro."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:187
|
||||
msgid "NIO or NBIO"
|
||||
msgstr "NIO o NBIO"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:188
|
||||
msgid "NIO Implemented in I2P 0.6.1.22 (\"NTCP\")"
|
||||
msgstr "NIO implementato in I2P 0.6.1.22 (\"NTCP\")"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:191
|
||||
msgid ""
|
||||
"In Java 1.4, a set of \"New I/O\" packages was introduced, allowing Java"
|
||||
" \n"
|
||||
"developers to take advantage of the operating system's nonblocking IO \n"
|
||||
"capabilities - allowing you to maintain a large number of concurrent IO \n"
|
||||
"operations without requiring a separate thread for each. There is much \n"
|
||||
"promise with this approach, as we can scalable handle a large number of \n"
|
||||
"concurrent connections and we don't have to write a mini-TCP stack with \n"
|
||||
"UDP. However, the NIO packages have not proven themselves to be battle-"
|
||||
"ready, \n"
|
||||
"as the Freenet developer's found. In addition, requiring NIO support "
|
||||
"would \n"
|
||||
"mean we can't run on any of the open source JVMs like <a "
|
||||
"href=\"http://www.kaffe.org/\">Kaffe</a>, \n"
|
||||
"as <a href=\"http://www.classpath.org/\">GNU/Classpath</a> has only "
|
||||
"limited \n"
|
||||
"support for NIO. <i>(note: this may not be the case anymore, as there \n"
|
||||
"has been some progress on Classpath's NIO, but it is an unknown "
|
||||
"quantity)</i>"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:205
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Another alternative along the same lines is the <a href=\"%(link)s\">Non"
|
||||
" \n"
|
||||
"Blocking I/O</a> package - essentially a cleanroom NIO implementation \n"
|
||||
"(written before NIO was around). It works by using some native OS code \n"
|
||||
"to do the nonblocking IO, passing off events through Java. It seems to \n"
|
||||
"be working with Kaffe, though there doesn't seem to be much development \n"
|
||||
"activity on it lately (likely due to 1.4's NIO deployment)."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:220
|
||||
#: i2p2www/pages/site/get-involved/todo.html:44
|
||||
msgid ""
|
||||
"Within the current network database and profile management "
|
||||
"implementation, \n"
|
||||
@@ -792,152 +525,14 @@ msgid ""
|
||||
"code yet, since we aren't going to need it for a while."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:235
|
||||
#: i2p2www/pages/site/get-involved/todo.html:59
|
||||
msgid ""
|
||||
"That said, as the network grows we are going to want to keep these "
|
||||
"considerations \n"
|
||||
"in mind. We will have some work to do, but we can put it off for later."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:247
|
||||
#: i2p2www/pages/site/get-involved/todo.html:331
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Addressed in I2P 0.5 as documented <a "
|
||||
"href=\"%(tunnelimpl)s\">elsewhere</a>"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:250
|
||||
msgid ""
|
||||
"Right now, if Alice builds a four hop inbound tunnel starting at Elvis, \n"
|
||||
"going to Dave, then to Charlie, then Bob, and finally Alice "
|
||||
"(A<--B<--C<--D<--E), \n"
|
||||
"all five of them will know they are participating in tunnel \"123\", as \n"
|
||||
"the messages are tagged as such. What we want to do is give each hop "
|
||||
"their \n"
|
||||
"own unique tunnel hop ID - Charlie will receive messages on tunnel 234 \n"
|
||||
"and forward them to tunnel 876 on Bob. The intent is to prevent Bob or \n"
|
||||
"Charlie from knowing that they are in Alice's tunnel, as if each hop in \n"
|
||||
"the tunnel had the same tunnel ID, collusion attacks aren't much work."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:260
|
||||
msgid ""
|
||||
"Adding a unique tunnel ID per hop isn't hard, but by itself, "
|
||||
"insufficient. \n"
|
||||
"If Dave and Bob are under the control of the same attacker, they wouldn't"
|
||||
" \n"
|
||||
"be able to tell they are in the same tunnel due to the tunnel ID, but \n"
|
||||
"would be able to tell by the message bodies and verification structures \n"
|
||||
"by simply comparing them. To prevent that, the tunnel must use layered \n"
|
||||
"encryption along the path, both on the payload of the tunneled message \n"
|
||||
"and on the verification structure (used to prevent simple tagging "
|
||||
"attacks). \n"
|
||||
"This requires some simple modifications to the TunnelMessage, as well \n"
|
||||
"as the inclusion of per-hop secret keys delivered during tunnel creation"
|
||||
" \n"
|
||||
"and given to the tunnel's gateway. We must fix a maximum tunnel length \n"
|
||||
"(e.g. 16 hops) and instruct the gateway to encrypt the message to each \n"
|
||||
"of the 16 delivered secret keys, in reverse order, and to encrypt the \n"
|
||||
"signature of the hash of the (encrypted) payload at each step. The "
|
||||
"gateway \n"
|
||||
"then sends that 16-step encrypted message, along with a 16-step and "
|
||||
"16-wide \n"
|
||||
"encrypted mapping to the first hop, which then decrypts the mapping and \n"
|
||||
"the payload with their secret key, looking in the 16-wide mapping for \n"
|
||||
"the entry associated with their own hop (keyed by the per-hop tunnel ID)"
|
||||
" \n"
|
||||
"and verifying the payload by checking it against the associated signed \n"
|
||||
"hash."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:281
|
||||
msgid ""
|
||||
"The tunnel gateway does still have more information than the other peers"
|
||||
" \n"
|
||||
"in the tunnel, and compromising both the gateway and a tunnel participant"
|
||||
" \n"
|
||||
"would allow those peers to collude, exposing the fact that they are both"
|
||||
" \n"
|
||||
"in the same tunnel. In addition, neighboring peers know that they are \n"
|
||||
"in the same tunnel anyway, as they know who they send the message to (and"
|
||||
" \n"
|
||||
"with IP-based transports without restricted routes, they know who they \n"
|
||||
"got it from). However, the above two techniques significantly increase \n"
|
||||
"the cost of gaining meaningful samples when dealing with longer tunnels."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:297
|
||||
msgid "Implemented in release 0.6.2"
|
||||
msgstr "Implementato nella versione 0.6.2"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:300
|
||||
#, python-format
|
||||
msgid ""
|
||||
"As Connelly <a href=\"%(link)s\">proposed</a> to deal with the\n"
|
||||
"<a href=\"%(pdf1)s\">predecessor attack</a> <a href=\"%(pdf2)s\">(2008\n"
|
||||
"update)</a>, keeping the order of peers within our tunnels consistent \n"
|
||||
"(aka whenever Alice creates a tunnel with both Bob and Charlie in it, \n"
|
||||
"Bob's next hop is always Charlie), we address the issue as Bob doesn't \n"
|
||||
"get to substantially sample Alice's peer selection group. We may even \n"
|
||||
"want to explicitly allow Bob to participate in Alice's tunnels in only \n"
|
||||
"one way - receiving a message from Dave and sending it to Charlie - and \n"
|
||||
"if any of those peers are not available to participate in the tunnel (due"
|
||||
" \n"
|
||||
"to overload, network disconnection, etc), avoid asking Bob to participate"
|
||||
" \n"
|
||||
"in any tunnels until they are back online."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:315
|
||||
msgid ""
|
||||
"More analysis is necessary for revising the tunnel creation - at the \n"
|
||||
"moment, we simply select and order randomly within the peer's top tier \n"
|
||||
"of peers (ones with fast + high capacity)."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:320
|
||||
msgid ""
|
||||
"Adding a strict ordering to peers in a tunnel also improves the anonymity"
|
||||
" \n"
|
||||
"of peers with 0-hop tunnels, as otherwise the fact that a peer's gateway"
|
||||
" \n"
|
||||
"is always the same would be particularly damning. However, peers with \n"
|
||||
"0-hop tunnels may want to periodically use a 1-hop tunnel to simulate \n"
|
||||
"the failure of a normally reliable gateway peer (so every MTBF*(tunnel \n"
|
||||
"duration) minutes, use a 1-hop tunnel)."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:337
|
||||
msgid ""
|
||||
"Without tunnel length permutation, if someone were to somehow detect that"
|
||||
" \n"
|
||||
"a destination had a particular number of hops, it might be able to use "
|
||||
"that \n"
|
||||
"information to identify the router the destination is located on, per the"
|
||||
" \n"
|
||||
"predecessor attack. For instance, if everyone has 2-hop tunnels, if Bob \n"
|
||||
"receives a tunnel message from Charlie and forwards it to Alice, Bob "
|
||||
"knows \n"
|
||||
"Alice is the final router in the tunnel. If Bob were to identify what "
|
||||
"destination \n"
|
||||
"that tunnel served (by means of colluding with the gateway and harvesting"
|
||||
" \n"
|
||||
"the network database for all of the LeaseSets), he would know the router"
|
||||
" \n"
|
||||
"on which that destination is located (and without restricted routes, that"
|
||||
" \n"
|
||||
"would mean what IP address the destination is on)."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:349
|
||||
msgid ""
|
||||
"It is to counter user behavior that tunnel lengths should be permuted, \n"
|
||||
"using algorithms based on the length requested (for example, the 1/MTBF \n"
|
||||
"length change for 0-hop tunnels outlined above)."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:359
|
||||
#: i2p2www/pages/site/get-involved/todo.html:71
|
||||
msgid ""
|
||||
"The restricted route functionality described before was simply a "
|
||||
"functional \n"
|
||||
@@ -959,7 +554,7 @@ msgid ""
|
||||
"to forward it as requested."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:378
|
||||
#: i2p2www/pages/site/get-involved/todo.html:90
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Within the network, we will want some way to deter people from consuming"
|
||||
@@ -973,7 +568,7 @@ msgid ""
|
||||
"to make certain requests \"expensive\"."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:386
|
||||
#: i2p2www/pages/site/get-involved/todo.html:98
|
||||
msgid ""
|
||||
"<a href=\"http://www.hashcash.org/\">Hashcash</a> is one technique that \n"
|
||||
"we can use to anonymously increase the \"cost\" of doing certain "
|
||||
@@ -991,7 +586,7 @@ msgid ""
|
||||
"with few resources."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:397
|
||||
#: i2p2www/pages/site/get-involved/todo.html:109
|
||||
msgid ""
|
||||
"There are a few other algorithms that we can explore for making those \n"
|
||||
"requests for resources \"nonfree\", and further research on that front is"
|
||||
@@ -999,7 +594,7 @@ msgid ""
|
||||
"appropriate."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:407
|
||||
#: i2p2www/pages/site/get-involved/todo.html:119
|
||||
#, python-format
|
||||
msgid ""
|
||||
"To powerful passive external observers as well as large colluding "
|
||||
@@ -1020,7 +615,7 @@ msgid ""
|
||||
"tunnel mixing strategies."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:420
|
||||
#: i2p2www/pages/site/get-involved/todo.html:132
|
||||
msgid ""
|
||||
"In addition to the anonymity aspects of more varied tunnel operation, \n"
|
||||
"there is a functional dimension as well. Each peer only has a certain \n"
|
||||
@@ -1038,7 +633,7 @@ msgid ""
|
||||
"available."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:433
|
||||
#: i2p2www/pages/site/get-involved/todo.html:145
|
||||
msgid ""
|
||||
"In addition, we may want to implement code to dynamically reroute tunnels"
|
||||
" \n"
|
||||
@@ -1048,7 +643,7 @@ msgid ""
|
||||
"with instructions to redefine the next-hop in the tunnel."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:444
|
||||
#: i2p2www/pages/site/get-involved/todo.html:156
|
||||
msgid ""
|
||||
"Beyond the per-tunnel batching and mixing strategy, there are further \n"
|
||||
"capabilities for protecting against powerful attackers, such as allowing"
|
||||
@@ -1063,7 +658,7 @@ msgid ""
|
||||
"clove exposed includes delay instructions."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:456
|
||||
#: i2p2www/pages/site/get-involved/todo.html:168
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Performance related improvements are listed on the\n"
|
||||
@@ -4219,3 +3814,14 @@ msgstr ""
|
||||
"Il canale #i2p'dev su IRC o il <a href=\"http://%(zzz)s/forums/14\">forum"
|
||||
" di traduzione su %(zzz)s</a>."
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
@@ -10,7 +10,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: I2P\n"
|
||||
"Report-Msgid-Bugs-To: http://trac.i2p2.de\n"
|
||||
"POT-Creation-Date: 2014-10-22 20:13+0000\n"
|
||||
"POT-Creation-Date: 2014-11-27 12:12+0000\n"
|
||||
"PO-Revision-Date: 2014-11-26 19:44+0000\n"
|
||||
"Last-Translator: blueboy\n"
|
||||
"Language-Team: Portuguese (Brazil) "
|
||||
@@ -458,319 +458,52 @@ msgid ""
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:15
|
||||
#: i2p2www/pages/site/get-involved/todo.html:53
|
||||
#: i2p2www/pages/site/get-involved/todo.html:38
|
||||
msgid "Core functionality"
|
||||
msgstr "Funcionalidade essencial"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:15
|
||||
#: i2p2www/pages/site/get-involved/todo.html:27
|
||||
#: i2p2www/pages/site/get-involved/todo.html:51
|
||||
#: i2p2www/pages/site/get-involved/todo.html:21
|
||||
#: i2p2www/pages/site/get-involved/todo.html:36
|
||||
msgid "link"
|
||||
msgstr "linque"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:17
|
||||
#: i2p2www/pages/site/get-involved/todo.html:56
|
||||
msgid "NAT/Firewall bridging via 1-hop restricted routes"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:20
|
||||
#: i2p2www/pages/site/get-involved/todo.html:129
|
||||
msgid "High degree transport layer with UDP, NBIO, or NIO"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:23
|
||||
#: i2p2www/pages/site/get-involved/todo.html:217
|
||||
#: i2p2www/pages/site/get-involved/todo.html:41
|
||||
msgid "NetworkDB and profile tuning and ejection policy for large nets"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:27
|
||||
#: i2p2www/pages/site/get-involved/todo.html:241
|
||||
#: i2p2www/pages/site/get-involved/todo.html:21
|
||||
#: i2p2www/pages/site/get-involved/todo.html:65
|
||||
msgid "Security / anonymity"
|
||||
msgstr "Segurança / anonimato"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:29
|
||||
#: i2p2www/pages/site/get-involved/todo.html:244
|
||||
msgid ""
|
||||
"Per-hop tunnel id & new permuted TunnelVerificationStructure "
|
||||
"encryption"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:32
|
||||
#: i2p2www/pages/site/get-involved/todo.html:294
|
||||
msgid "Strict ordering of participants within tunnels"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:35
|
||||
msgid "Randomly permuted tunnel lengths"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:38
|
||||
#: i2p2www/pages/site/get-involved/todo.html:356
|
||||
#: i2p2www/pages/site/get-involved/todo.html:23
|
||||
#: i2p2www/pages/site/get-involved/todo.html:68
|
||||
msgid "Full blown n-hop restricted routes with optional trusted links"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:41
|
||||
#: i2p2www/pages/site/get-involved/todo.html:375
|
||||
#: i2p2www/pages/site/get-involved/todo.html:26
|
||||
#: i2p2www/pages/site/get-involved/todo.html:87
|
||||
msgid "Hashcash for routerIdentity, destination, and tunnel request"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:44
|
||||
#: i2p2www/pages/site/get-involved/todo.html:404
|
||||
#: i2p2www/pages/site/get-involved/todo.html:29
|
||||
#: i2p2www/pages/site/get-involved/todo.html:116
|
||||
msgid "Advanced tunnel operation (batching/mixing/throttling/padding)"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:47
|
||||
#: i2p2www/pages/site/get-involved/todo.html:441
|
||||
#: i2p2www/pages/site/get-involved/todo.html:32
|
||||
#: i2p2www/pages/site/get-involved/todo.html:153
|
||||
msgid "Stop & go mix w/ garlics & tunnels"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:51
|
||||
#: i2p2www/pages/site/get-involved/todo.html:455
|
||||
#: i2p2www/pages/site/get-involved/todo.html:36
|
||||
#: i2p2www/pages/site/get-involved/todo.html:167
|
||||
msgid "Performance"
|
||||
msgstr "Desempenho"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:61
|
||||
msgid "Implemented in I2P 0.6.0.6"
|
||||
msgstr "Implementado na versão 0.6.0.6 da I2P"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:62
|
||||
msgid ""
|
||||
"The functionality of allowing routers to fully participate within the "
|
||||
"network \n"
|
||||
"while behind firewalls and NATs that they do not control requires some "
|
||||
"basic \n"
|
||||
"restricted route operation (since those peers will not be able to receive"
|
||||
" \n"
|
||||
"inbound connections). To do this successfully, you consider peers one of"
|
||||
" \n"
|
||||
"two ways:"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:72
|
||||
msgid ""
|
||||
"<b>Peers who have reachable interfaces</b> - these peers do not need to \n"
|
||||
"do anything special"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:76
|
||||
msgid ""
|
||||
"<b>Peers who do not have reachable interfaces</b> - these peers must "
|
||||
"build \n"
|
||||
"a tunnel pointing at them where the gateway is one of the peers they have"
|
||||
" \n"
|
||||
"established a connection with who has both a publicly reachable interface"
|
||||
" \n"
|
||||
"and who has agreed to serve as their 'introducer'."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:84
|
||||
msgid ""
|
||||
"To do this, peers who have no IP address simply connect to a few peers, \n"
|
||||
"build a tunnel through them, and publish a reference to those tunnels "
|
||||
"within \n"
|
||||
"their RouterInfo structure in the network database."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:89
|
||||
msgid ""
|
||||
"When someone wants to contact any particular router, they first must get"
|
||||
" \n"
|
||||
"its RouterInfo from the network database, which will tell them whether "
|
||||
"they \n"
|
||||
"can connect directly (e.g. the peer has a publicly reachable interface) \n"
|
||||
"or whether they need to contact them indirectly. Direct connections occur"
|
||||
" \n"
|
||||
"as normal, while indirect connections are done through one of the "
|
||||
"published \n"
|
||||
"tunnels."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:97
|
||||
msgid ""
|
||||
"When a router just wants to get a message or two to a specific hidden "
|
||||
"peer, \n"
|
||||
"they can just use the indirect tunnel for sending the payload. However, \n"
|
||||
"if the router wants to talk to the hidden peer often (for instance, as "
|
||||
"part \n"
|
||||
"of a tunnel), they will send a garlic routed message through the indirect"
|
||||
" \n"
|
||||
"tunnel to that hidden peer which unwraps to contain a message which "
|
||||
"should \n"
|
||||
"be sent to the originating router. That hidden peer then establishes an \n"
|
||||
"outbound connection to the originating router and from then on, those two"
|
||||
" \n"
|
||||
"routers can talk to each other directly over that newly established "
|
||||
"direct \n"
|
||||
"connection."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:108
|
||||
msgid ""
|
||||
"Of course, that only works if the originating peer can receive "
|
||||
"connections \n"
|
||||
"(they aren't also hidden). However, if the originating peer is hidden, "
|
||||
"they \n"
|
||||
"can simply direct the garlic routed message to come back to the "
|
||||
"originating \n"
|
||||
"peer's inbound tunnel."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:114
|
||||
msgid ""
|
||||
"This is not meant to provide a way for a peer's IP address to be "
|
||||
"concealed, \n"
|
||||
"merely as a way to let people behind firewalls and NATs fully operate "
|
||||
"within \n"
|
||||
"the network. Concealing the peer's IP address adds a little more work, as"
|
||||
" \n"
|
||||
"described <a href=\"#fullRestrictedRoutes\">below.</a>"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:120
|
||||
msgid ""
|
||||
"With this technique, any router can participate as any part of a tunnel."
|
||||
" \n"
|
||||
"For efficiency purposes, a hidden peer would be a bad choice for an "
|
||||
"inbound \n"
|
||||
"gateway, and within any given tunnel, two neighboring peers wouldn't want"
|
||||
" \n"
|
||||
"to be hidden. But that is not technically necessary."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:132
|
||||
msgid "Both UDP and NIO have been Implemented in I2P"
|
||||
msgstr "UDP e NIO, ambos, foram implementados no roteador I2P"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:133
|
||||
msgid ""
|
||||
"Standard TCP communication in Java generally requires blocking socket \n"
|
||||
"calls, and to keep a blocked socket from hanging the entire system, those"
|
||||
" \n"
|
||||
"blocking calls are done on their own threads. Our current TCP transport \n"
|
||||
"is implemented in a naive fashion - for each peer we are talking to, we \n"
|
||||
"have one thread reading and one thread writing. The reader thread simply"
|
||||
" \n"
|
||||
"loops a bunch of read() calls, building I2NP messages and adding them \n"
|
||||
"to our internal inbound message queue, and the writer thread pulls "
|
||||
"messages \n"
|
||||
"off a per-connection outbound message queue and shoves the data through \n"
|
||||
"write() calls."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:144
|
||||
msgid ""
|
||||
"We do this fairly efficiently, from a CPU perspective - at any time, \n"
|
||||
"almost all of these threads are sitting idle, blocked waiting for "
|
||||
"something \n"
|
||||
"to do. However, each thread consumes real resources (on older Linux "
|
||||
"kernels, \n"
|
||||
"for instance, each thread would often be implemented as a fork()'ed "
|
||||
"process). \n"
|
||||
"As the network grows, the number of peers each router will want to talk \n"
|
||||
"with will increase (remember, I2P is fully connected, meaning that any \n"
|
||||
"given peer should know how to get a message to any other peer, and "
|
||||
"restricted \n"
|
||||
"route support will probably not significantly reduce the number of "
|
||||
"connections \n"
|
||||
"necessary). This means that with a 100,000 router network, each router \n"
|
||||
"will have up to 199,998 threads just to deal with the TCP connections!"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:156
|
||||
msgid ""
|
||||
"Obviously, that just won't work. We need to use a transport layer that \n"
|
||||
"can scale. In Java, we have two main camps:"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:161
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Implemented in I2P 0.6 (\"SSU\") as documented <a "
|
||||
"href=\"%(ssu)s\">elsewhere</a>"
|
||||
msgstr ""
|
||||
"Implementado no lançamento da versão 0.6 da I2P (\"SSU\") como "
|
||||
"documentado <a href=\"%(ssu)s\">aqui</a>"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:164
|
||||
msgid ""
|
||||
"Sending and receiving UDP datagrams is a connectionless operation - if \n"
|
||||
"we are communicating with 100,000 peers, we simply stick the UDP packets"
|
||||
" \n"
|
||||
"in a queue and have a single thread pulling them off the queue and "
|
||||
"shoving \n"
|
||||
"them out the pipe (and to receive, have a single thread pulling in any \n"
|
||||
"UDP packets received and adding them to an inbound queue)."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:171
|
||||
msgid ""
|
||||
"However, moving to UDP means losing the benefits of TCP's ordering, "
|
||||
"congestion \n"
|
||||
"control, MTU discovery, etc. Implementing that code will take significant"
|
||||
" \n"
|
||||
"work, however I2P doesn't need it to be as strong as TCP. Specifically, \n"
|
||||
"a while ago I was taking some measurements in the simulator and on the \n"
|
||||
"live net, and the vast majority of messages transferred would fit easily"
|
||||
" \n"
|
||||
"within a single unfragmented UDP packet, and the largest of the messages"
|
||||
" \n"
|
||||
"would fit within 20-30 packets. As mule pointed out, TCP adds a "
|
||||
"significant \n"
|
||||
"overhead when dealing with so many small packets, as the ACKs are within"
|
||||
" \n"
|
||||
"an order of magnitude in size. With UDP, we can optimize the transport \n"
|
||||
"for both efficiency and resilience by taking into account I2P's "
|
||||
"particular \n"
|
||||
"needs."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:184
|
||||
msgid "It will be a lot of work though."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:187
|
||||
msgid "NIO or NBIO"
|
||||
msgstr "NIO ou NBIO"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:188
|
||||
msgid "NIO Implemented in I2P 0.6.1.22 (\"NTCP\")"
|
||||
msgstr "NIO foi implementado no lançamento da versão 0.6.1.22 da I2P (\"NTCP\")"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:191
|
||||
msgid ""
|
||||
"In Java 1.4, a set of \"New I/O\" packages was introduced, allowing Java"
|
||||
" \n"
|
||||
"developers to take advantage of the operating system's nonblocking IO \n"
|
||||
"capabilities - allowing you to maintain a large number of concurrent IO \n"
|
||||
"operations without requiring a separate thread for each. There is much \n"
|
||||
"promise with this approach, as we can scalable handle a large number of \n"
|
||||
"concurrent connections and we don't have to write a mini-TCP stack with \n"
|
||||
"UDP. However, the NIO packages have not proven themselves to be battle-"
|
||||
"ready, \n"
|
||||
"as the Freenet developer's found. In addition, requiring NIO support "
|
||||
"would \n"
|
||||
"mean we can't run on any of the open source JVMs like <a "
|
||||
"href=\"http://www.kaffe.org/\">Kaffe</a>, \n"
|
||||
"as <a href=\"http://www.classpath.org/\">GNU/Classpath</a> has only "
|
||||
"limited \n"
|
||||
"support for NIO. <i>(note: this may not be the case anymore, as there \n"
|
||||
"has been some progress on Classpath's NIO, but it is an unknown "
|
||||
"quantity)</i>"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:205
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Another alternative along the same lines is the <a href=\"%(link)s\">Non"
|
||||
" \n"
|
||||
"Blocking I/O</a> package - essentially a cleanroom NIO implementation \n"
|
||||
"(written before NIO was around). It works by using some native OS code \n"
|
||||
"to do the nonblocking IO, passing off events through Java. It seems to \n"
|
||||
"be working with Kaffe, though there doesn't seem to be much development \n"
|
||||
"activity on it lately (likely due to 1.4's NIO deployment)."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:220
|
||||
#: i2p2www/pages/site/get-involved/todo.html:44
|
||||
msgid ""
|
||||
"Within the current network database and profile management "
|
||||
"implementation, \n"
|
||||
@@ -793,154 +526,14 @@ msgid ""
|
||||
"code yet, since we aren't going to need it for a while."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:235
|
||||
#: i2p2www/pages/site/get-involved/todo.html:59
|
||||
msgid ""
|
||||
"That said, as the network grows we are going to want to keep these "
|
||||
"considerations \n"
|
||||
"in mind. We will have some work to do, but we can put it off for later."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:247
|
||||
#: i2p2www/pages/site/get-involved/todo.html:331
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Addressed in I2P 0.5 as documented <a "
|
||||
"href=\"%(tunnelimpl)s\">elsewhere</a>"
|
||||
msgstr ""
|
||||
"Encaminhado no lançamento da versão 0.5 da I2P como documentado <a "
|
||||
"href=\"%(tunnelimpl)s\">aqui</a>"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:250
|
||||
msgid ""
|
||||
"Right now, if Alice builds a four hop inbound tunnel starting at Elvis, \n"
|
||||
"going to Dave, then to Charlie, then Bob, and finally Alice "
|
||||
"(A<--B<--C<--D<--E), \n"
|
||||
"all five of them will know they are participating in tunnel \"123\", as \n"
|
||||
"the messages are tagged as such. What we want to do is give each hop "
|
||||
"their \n"
|
||||
"own unique tunnel hop ID - Charlie will receive messages on tunnel 234 \n"
|
||||
"and forward them to tunnel 876 on Bob. The intent is to prevent Bob or \n"
|
||||
"Charlie from knowing that they are in Alice's tunnel, as if each hop in \n"
|
||||
"the tunnel had the same tunnel ID, collusion attacks aren't much work."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:260
|
||||
msgid ""
|
||||
"Adding a unique tunnel ID per hop isn't hard, but by itself, "
|
||||
"insufficient. \n"
|
||||
"If Dave and Bob are under the control of the same attacker, they wouldn't"
|
||||
" \n"
|
||||
"be able to tell they are in the same tunnel due to the tunnel ID, but \n"
|
||||
"would be able to tell by the message bodies and verification structures \n"
|
||||
"by simply comparing them. To prevent that, the tunnel must use layered \n"
|
||||
"encryption along the path, both on the payload of the tunneled message \n"
|
||||
"and on the verification structure (used to prevent simple tagging "
|
||||
"attacks). \n"
|
||||
"This requires some simple modifications to the TunnelMessage, as well \n"
|
||||
"as the inclusion of per-hop secret keys delivered during tunnel creation"
|
||||
" \n"
|
||||
"and given to the tunnel's gateway. We must fix a maximum tunnel length \n"
|
||||
"(e.g. 16 hops) and instruct the gateway to encrypt the message to each \n"
|
||||
"of the 16 delivered secret keys, in reverse order, and to encrypt the \n"
|
||||
"signature of the hash of the (encrypted) payload at each step. The "
|
||||
"gateway \n"
|
||||
"then sends that 16-step encrypted message, along with a 16-step and "
|
||||
"16-wide \n"
|
||||
"encrypted mapping to the first hop, which then decrypts the mapping and \n"
|
||||
"the payload with their secret key, looking in the 16-wide mapping for \n"
|
||||
"the entry associated with their own hop (keyed by the per-hop tunnel ID)"
|
||||
" \n"
|
||||
"and verifying the payload by checking it against the associated signed \n"
|
||||
"hash."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:281
|
||||
msgid ""
|
||||
"The tunnel gateway does still have more information than the other peers"
|
||||
" \n"
|
||||
"in the tunnel, and compromising both the gateway and a tunnel participant"
|
||||
" \n"
|
||||
"would allow those peers to collude, exposing the fact that they are both"
|
||||
" \n"
|
||||
"in the same tunnel. In addition, neighboring peers know that they are \n"
|
||||
"in the same tunnel anyway, as they know who they send the message to (and"
|
||||
" \n"
|
||||
"with IP-based transports without restricted routes, they know who they \n"
|
||||
"got it from). However, the above two techniques significantly increase \n"
|
||||
"the cost of gaining meaningful samples when dealing with longer tunnels."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:297
|
||||
msgid "Implemented in release 0.6.2"
|
||||
msgstr "Implementado no lançamento 0.6.2"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:300
|
||||
#, python-format
|
||||
msgid ""
|
||||
"As Connelly <a href=\"%(link)s\">proposed</a> to deal with the\n"
|
||||
"<a href=\"%(pdf1)s\">predecessor attack</a> <a href=\"%(pdf2)s\">(2008\n"
|
||||
"update)</a>, keeping the order of peers within our tunnels consistent \n"
|
||||
"(aka whenever Alice creates a tunnel with both Bob and Charlie in it, \n"
|
||||
"Bob's next hop is always Charlie), we address the issue as Bob doesn't \n"
|
||||
"get to substantially sample Alice's peer selection group. We may even \n"
|
||||
"want to explicitly allow Bob to participate in Alice's tunnels in only \n"
|
||||
"one way - receiving a message from Dave and sending it to Charlie - and \n"
|
||||
"if any of those peers are not available to participate in the tunnel (due"
|
||||
" \n"
|
||||
"to overload, network disconnection, etc), avoid asking Bob to participate"
|
||||
" \n"
|
||||
"in any tunnels until they are back online."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:315
|
||||
msgid ""
|
||||
"More analysis is necessary for revising the tunnel creation - at the \n"
|
||||
"moment, we simply select and order randomly within the peer's top tier \n"
|
||||
"of peers (ones with fast + high capacity)."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:320
|
||||
msgid ""
|
||||
"Adding a strict ordering to peers in a tunnel also improves the anonymity"
|
||||
" \n"
|
||||
"of peers with 0-hop tunnels, as otherwise the fact that a peer's gateway"
|
||||
" \n"
|
||||
"is always the same would be particularly damning. However, peers with \n"
|
||||
"0-hop tunnels may want to periodically use a 1-hop tunnel to simulate \n"
|
||||
"the failure of a normally reliable gateway peer (so every MTBF*(tunnel \n"
|
||||
"duration) minutes, use a 1-hop tunnel)."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:337
|
||||
msgid ""
|
||||
"Without tunnel length permutation, if someone were to somehow detect that"
|
||||
" \n"
|
||||
"a destination had a particular number of hops, it might be able to use "
|
||||
"that \n"
|
||||
"information to identify the router the destination is located on, per the"
|
||||
" \n"
|
||||
"predecessor attack. For instance, if everyone has 2-hop tunnels, if Bob \n"
|
||||
"receives a tunnel message from Charlie and forwards it to Alice, Bob "
|
||||
"knows \n"
|
||||
"Alice is the final router in the tunnel. If Bob were to identify what "
|
||||
"destination \n"
|
||||
"that tunnel served (by means of colluding with the gateway and harvesting"
|
||||
" \n"
|
||||
"the network database for all of the LeaseSets), he would know the router"
|
||||
" \n"
|
||||
"on which that destination is located (and without restricted routes, that"
|
||||
" \n"
|
||||
"would mean what IP address the destination is on)."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:349
|
||||
msgid ""
|
||||
"It is to counter user behavior that tunnel lengths should be permuted, \n"
|
||||
"using algorithms based on the length requested (for example, the 1/MTBF \n"
|
||||
"length change for 0-hop tunnels outlined above)."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:359
|
||||
#: i2p2www/pages/site/get-involved/todo.html:71
|
||||
msgid ""
|
||||
"The restricted route functionality described before was simply a "
|
||||
"functional \n"
|
||||
@@ -962,7 +555,7 @@ msgid ""
|
||||
"to forward it as requested."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:378
|
||||
#: i2p2www/pages/site/get-involved/todo.html:90
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Within the network, we will want some way to deter people from consuming"
|
||||
@@ -976,7 +569,7 @@ msgid ""
|
||||
"to make certain requests \"expensive\"."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:386
|
||||
#: i2p2www/pages/site/get-involved/todo.html:98
|
||||
msgid ""
|
||||
"<a href=\"http://www.hashcash.org/\">Hashcash</a> is one technique that \n"
|
||||
"we can use to anonymously increase the \"cost\" of doing certain "
|
||||
@@ -994,7 +587,7 @@ msgid ""
|
||||
"with few resources."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:397
|
||||
#: i2p2www/pages/site/get-involved/todo.html:109
|
||||
msgid ""
|
||||
"There are a few other algorithms that we can explore for making those \n"
|
||||
"requests for resources \"nonfree\", and further research on that front is"
|
||||
@@ -1002,7 +595,7 @@ msgid ""
|
||||
"appropriate."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:407
|
||||
#: i2p2www/pages/site/get-involved/todo.html:119
|
||||
#, python-format
|
||||
msgid ""
|
||||
"To powerful passive external observers as well as large colluding "
|
||||
@@ -1023,7 +616,7 @@ msgid ""
|
||||
"tunnel mixing strategies."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:420
|
||||
#: i2p2www/pages/site/get-involved/todo.html:132
|
||||
msgid ""
|
||||
"In addition to the anonymity aspects of more varied tunnel operation, \n"
|
||||
"there is a functional dimension as well. Each peer only has a certain \n"
|
||||
@@ -1041,7 +634,7 @@ msgid ""
|
||||
"available."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:433
|
||||
#: i2p2www/pages/site/get-involved/todo.html:145
|
||||
msgid ""
|
||||
"In addition, we may want to implement code to dynamically reroute tunnels"
|
||||
" \n"
|
||||
@@ -1051,7 +644,7 @@ msgid ""
|
||||
"with instructions to redefine the next-hop in the tunnel."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:444
|
||||
#: i2p2www/pages/site/get-involved/todo.html:156
|
||||
msgid ""
|
||||
"Beyond the per-tunnel batching and mixing strategy, there are further \n"
|
||||
"capabilities for protecting against powerful attackers, such as allowing"
|
||||
@@ -1066,7 +659,7 @@ msgid ""
|
||||
"clove exposed includes delay instructions."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:456
|
||||
#: i2p2www/pages/site/get-involved/todo.html:168
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Performance related improvements are listed on the\n"
|
||||
@@ -4214,3 +3807,15 @@ msgstr ""
|
||||
"href=\"http://%(zzz)s/forums/14\">sessão de traduções do fórum em "
|
||||
"%(zzz)s</a>."
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
@@ -12,7 +12,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: I2P\n"
|
||||
"Report-Msgid-Bugs-To: http://trac.i2p2.de\n"
|
||||
"POT-Creation-Date: 2014-10-22 20:13+0000\n"
|
||||
"POT-Creation-Date: 2014-11-27 12:12+0000\n"
|
||||
"PO-Revision-Date: 2014-11-01 20:07+0000\n"
|
||||
"Last-Translator: yume\n"
|
||||
"Language-Team: Russian (Russia) "
|
||||
@@ -511,468 +511,56 @@ msgstr ""
|
||||
"<a href=\"%(volunteer)s\">Участвуй</a>!"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:15
|
||||
#: i2p2www/pages/site/get-involved/todo.html:53
|
||||
#: i2p2www/pages/site/get-involved/todo.html:38
|
||||
msgid "Core functionality"
|
||||
msgstr "Основная функциональность"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:15
|
||||
#: i2p2www/pages/site/get-involved/todo.html:27
|
||||
#: i2p2www/pages/site/get-involved/todo.html:51
|
||||
#: i2p2www/pages/site/get-involved/todo.html:21
|
||||
#: i2p2www/pages/site/get-involved/todo.html:36
|
||||
msgid "link"
|
||||
msgstr "ссылка"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:17
|
||||
#: i2p2www/pages/site/get-involved/todo.html:56
|
||||
msgid "NAT/Firewall bridging via 1-hop restricted routes"
|
||||
msgstr "Преодоление NAT/Firewall в ограниченных маршрутах с 1 прыжком"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:20
|
||||
#: i2p2www/pages/site/get-involved/todo.html:129
|
||||
msgid "High degree transport layer with UDP, NBIO, or NIO"
|
||||
msgstr "Высокоуровневый маршрут с UDP, NBIO, or NIO"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:23
|
||||
#: i2p2www/pages/site/get-involved/todo.html:217
|
||||
#: i2p2www/pages/site/get-involved/todo.html:41
|
||||
msgid "NetworkDB and profile tuning and ejection policy for large nets"
|
||||
msgstr "NetworkDB, настройка профиля и политика исключения для больших сетей"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:27
|
||||
#: i2p2www/pages/site/get-involved/todo.html:241
|
||||
#: i2p2www/pages/site/get-involved/todo.html:21
|
||||
#: i2p2www/pages/site/get-involved/todo.html:65
|
||||
msgid "Security / anonymity"
|
||||
msgstr "Безопасность / анонимность"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:29
|
||||
#: i2p2www/pages/site/get-involved/todo.html:244
|
||||
msgid ""
|
||||
"Per-hop tunnel id & new permuted TunnelVerificationStructure "
|
||||
"encryption"
|
||||
msgstr ""
|
||||
"Идентификатор туннеля для каждого прыжка & переменное шифрование "
|
||||
"TunnelVerificationStructure"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:32
|
||||
#: i2p2www/pages/site/get-involved/todo.html:294
|
||||
msgid "Strict ordering of participants within tunnels"
|
||||
msgstr "Строгая последовательность участников в туннеле"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:35
|
||||
msgid "Randomly permuted tunnel lengths"
|
||||
msgstr "Случайное изменение длины туннеля"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:38
|
||||
#: i2p2www/pages/site/get-involved/todo.html:356
|
||||
#: i2p2www/pages/site/get-involved/todo.html:23
|
||||
#: i2p2www/pages/site/get-involved/todo.html:68
|
||||
msgid "Full blown n-hop restricted routes with optional trusted links"
|
||||
msgstr ""
|
||||
"Полностью разорванные n-прыжковые ограниченные маршруты с необязательными"
|
||||
" доверенными ссылками"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:41
|
||||
#: i2p2www/pages/site/get-involved/todo.html:375
|
||||
#: i2p2www/pages/site/get-involved/todo.html:26
|
||||
#: i2p2www/pages/site/get-involved/todo.html:87
|
||||
msgid "Hashcash for routerIdentity, destination, and tunnel request"
|
||||
msgstr "Hashcash для запросов идентификатора маршрута, пункта назначения и туннеля"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:44
|
||||
#: i2p2www/pages/site/get-involved/todo.html:404
|
||||
#: i2p2www/pages/site/get-involved/todo.html:29
|
||||
#: i2p2www/pages/site/get-involved/todo.html:116
|
||||
msgid "Advanced tunnel operation (batching/mixing/throttling/padding)"
|
||||
msgstr ""
|
||||
"Расширенные операции над туннелем "
|
||||
"(пакетирование/смешивание/регулирование/изменение размера)"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:47
|
||||
#: i2p2www/pages/site/get-involved/todo.html:441
|
||||
#: i2p2www/pages/site/get-involved/todo.html:32
|
||||
#: i2p2www/pages/site/get-involved/todo.html:153
|
||||
msgid "Stop & go mix w/ garlics & tunnels"
|
||||
msgstr "Задержка совместно с чесночной маршрутизацией & туннелями"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:51
|
||||
#: i2p2www/pages/site/get-involved/todo.html:455
|
||||
#: i2p2www/pages/site/get-involved/todo.html:36
|
||||
#: i2p2www/pages/site/get-involved/todo.html:167
|
||||
msgid "Performance"
|
||||
msgstr "Производительность"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:61
|
||||
msgid "Implemented in I2P 0.6.0.6"
|
||||
msgstr "Реализовано в I2P 0.6.0.6"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:62
|
||||
msgid ""
|
||||
"The functionality of allowing routers to fully participate within the "
|
||||
"network \n"
|
||||
"while behind firewalls and NATs that they do not control requires some "
|
||||
"basic \n"
|
||||
"restricted route operation (since those peers will not be able to receive"
|
||||
" \n"
|
||||
"inbound connections). To do this successfully, you consider peers one of"
|
||||
" \n"
|
||||
"two ways:"
|
||||
msgstr ""
|
||||
"Функциональность, позволяющая маршрутизатору, находящемуся за "
|
||||
"брандмауэром или NAT, \n"
|
||||
"которые он не контролирует, полностью взаимодействовать с сетью, "
|
||||
"нуждается в некоторых основных\n"
|
||||
"операциях ограниченного маршрута (т.к. эти узлы не смогут принимать \n"
|
||||
"входящие подключения). Для этого мы считаем, что узлы могут быть одного\n"
|
||||
"из двух возможных типов:"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:72
|
||||
msgid ""
|
||||
"<b>Peers who have reachable interfaces</b> - these peers do not need to \n"
|
||||
"do anything special"
|
||||
msgstr ""
|
||||
"<b>Узлы, имеющие доступные интерфейсы</b> - этим узлам не нужно \n"
|
||||
"делать ничего особенного"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:76
|
||||
msgid ""
|
||||
"<b>Peers who do not have reachable interfaces</b> - these peers must "
|
||||
"build \n"
|
||||
"a tunnel pointing at them where the gateway is one of the peers they have"
|
||||
" \n"
|
||||
"established a connection with who has both a publicly reachable interface"
|
||||
" \n"
|
||||
"and who has agreed to serve as their 'introducer'."
|
||||
msgstr ""
|
||||
"<b>Узлы, не имеющие доступных интерфейсов</b> - эти узлы должны построить"
|
||||
" \n"
|
||||
"туннель, указывающий на них, где шлюзом выступает один из узлов, с "
|
||||
"которым \n"
|
||||
"они установили соединение, последний должен иметь доступный для всех "
|
||||
"интерфейс \n"
|
||||
"и согласиться служить их 'представителем'."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:84
|
||||
msgid ""
|
||||
"To do this, peers who have no IP address simply connect to a few peers, \n"
|
||||
"build a tunnel through them, and publish a reference to those tunnels "
|
||||
"within \n"
|
||||
"their RouterInfo structure in the network database."
|
||||
msgstr ""
|
||||
"Чтобы сделать это, узлы, у которых нет IP адреса, просто подключаются к "
|
||||
"нескольким узлам, \n"
|
||||
"строят туннель между ними, и публикуют ссылку на эти туннели внутри \n"
|
||||
"их структуры RouterInfo в базе данных сети."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:89
|
||||
msgid ""
|
||||
"When someone wants to contact any particular router, they first must get"
|
||||
" \n"
|
||||
"its RouterInfo from the network database, which will tell them whether "
|
||||
"they \n"
|
||||
"can connect directly (e.g. the peer has a publicly reachable interface) \n"
|
||||
"or whether they need to contact them indirectly. Direct connections occur"
|
||||
" \n"
|
||||
"as normal, while indirect connections are done through one of the "
|
||||
"published \n"
|
||||
"tunnels."
|
||||
msgstr ""
|
||||
"Когда кто-нибудь хочет обратиться к определенному маршрутизатору, сначала"
|
||||
" он должен получить \n"
|
||||
"RouterInfo этого маршрутизатора из базы данных сети, который подскажет - "
|
||||
"можно ли ему \n"
|
||||
"подключиться напрямую (т.к. узел имеет общедоступный интерфейс) \n"
|
||||
"или нет. Прямые подключения устанавливаются\n"
|
||||
"обычным способом, в то время как непрямые соединения устанавливаются "
|
||||
"через один из опубликованных \n"
|
||||
"туннелей."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:97
|
||||
msgid ""
|
||||
"When a router just wants to get a message or two to a specific hidden "
|
||||
"peer, \n"
|
||||
"they can just use the indirect tunnel for sending the payload. However, \n"
|
||||
"if the router wants to talk to the hidden peer often (for instance, as "
|
||||
"part \n"
|
||||
"of a tunnel), they will send a garlic routed message through the indirect"
|
||||
" \n"
|
||||
"tunnel to that hidden peer which unwraps to contain a message which "
|
||||
"should \n"
|
||||
"be sent to the originating router. That hidden peer then establishes an \n"
|
||||
"outbound connection to the originating router and from then on, those two"
|
||||
" \n"
|
||||
"routers can talk to each other directly over that newly established "
|
||||
"direct \n"
|
||||
"connection."
|
||||
msgstr ""
|
||||
"Когда маршрутизатор хочет доставить всего одно или два сообщения "
|
||||
"определенному скрытому узлу, \n"
|
||||
"он может использовать непрямой туннель для отправки трафика. Тем не "
|
||||
"менее, \n"
|
||||
"если маршрутизатор хочет часто общаться со скрытым узлом (например, как "
|
||||
"с частью \n"
|
||||
"туннеля), он отправит чесночно маршрутизированное сообщение через "
|
||||
"непрямой \n"
|
||||
"туннель этому скрытому узлу, которое распаковывается до сообщения, \n"
|
||||
"которое должно быть послано исходному маршрутизатору. Затем этот скрытый "
|
||||
"узел устанавливает \n"
|
||||
"исходящее соединение с исходным маршрутизатором, и, затем, эти два "
|
||||
"маршрутизатора \n"
|
||||
"могут общаться друг с другом напрямую через это новое установленное \n"
|
||||
"прямое соединение."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:108
|
||||
msgid ""
|
||||
"Of course, that only works if the originating peer can receive "
|
||||
"connections \n"
|
||||
"(they aren't also hidden). However, if the originating peer is hidden, "
|
||||
"they \n"
|
||||
"can simply direct the garlic routed message to come back to the "
|
||||
"originating \n"
|
||||
"peer's inbound tunnel."
|
||||
msgstr ""
|
||||
"Конечно, это работает только если исходный узел может принимать "
|
||||
"подключения \n"
|
||||
"(он не скрыт). Тем не менее, если исходный узел скрыт, он \n"
|
||||
"может направить чесночно маршрутизированное сообщение обратно исходному \n"
|
||||
"узлу по его входящему туннелю."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:114
|
||||
msgid ""
|
||||
"This is not meant to provide a way for a peer's IP address to be "
|
||||
"concealed, \n"
|
||||
"merely as a way to let people behind firewalls and NATs fully operate "
|
||||
"within \n"
|
||||
"the network. Concealing the peer's IP address adds a little more work, as"
|
||||
" \n"
|
||||
"described <a href=\"#fullRestrictedRoutes\">below.</a>"
|
||||
msgstr ""
|
||||
"Это не способ скрыть IP адреса узлов, наоборот - этот способ позволяет "
|
||||
"людям \n"
|
||||
"за брандмауэром или NAT полноценно пользоваться сетью. \n"
|
||||
"Сокрытие IP адресов узлов добавляет немного больше работы, как\n"
|
||||
"описано <a href=\"#fullRestrictedRoutes\">ниже.</a>"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:120
|
||||
msgid ""
|
||||
"With this technique, any router can participate as any part of a tunnel."
|
||||
" \n"
|
||||
"For efficiency purposes, a hidden peer would be a bad choice for an "
|
||||
"inbound \n"
|
||||
"gateway, and within any given tunnel, two neighboring peers wouldn't want"
|
||||
" \n"
|
||||
"to be hidden. But that is not technically necessary."
|
||||
msgstr ""
|
||||
"Таким способом любой маршрутизатор может выступать любой частью туннеля."
|
||||
" \n"
|
||||
"С точки зрения эффективности, скрытый узел будет плохим вариантом в "
|
||||
"качестве \n"
|
||||
"входящего шлюза, и внутри любого туннеля два соседних узлане захотят \n"
|
||||
"быть скрытыми. Но технически это не важно."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:132
|
||||
msgid "Both UDP and NIO have been Implemented in I2P"
|
||||
msgstr "И UDP, и NIO были реализованы в I2P"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:133
|
||||
msgid ""
|
||||
"Standard TCP communication in Java generally requires blocking socket \n"
|
||||
"calls, and to keep a blocked socket from hanging the entire system, those"
|
||||
" \n"
|
||||
"blocking calls are done on their own threads. Our current TCP transport \n"
|
||||
"is implemented in a naive fashion - for each peer we are talking to, we \n"
|
||||
"have one thread reading and one thread writing. The reader thread simply"
|
||||
" \n"
|
||||
"loops a bunch of read() calls, building I2NP messages and adding them \n"
|
||||
"to our internal inbound message queue, and the writer thread pulls "
|
||||
"messages \n"
|
||||
"off a per-connection outbound message queue and shoves the data through \n"
|
||||
"write() calls."
|
||||
msgstr ""
|
||||
"В Java для стандартного соединения TCP обычно требуется блокирующий вызов"
|
||||
" сокета,\n"
|
||||
"и, чтобы предотвратить подвисание системы этим блокированным сокетом,\n"
|
||||
"эти блокирующие вызовы выполняются в их собственных потоках. Наш текущий "
|
||||
"транспорт TCP\n"
|
||||
"реализуется в родном виде - для каждого узла, к которому мы обращаемся,\n"
|
||||
"мы имеем один поток для чтения и один для записи. Читающий поток "
|
||||
"выполняет\n"
|
||||
"цикл вызовов read(), строит сообщение I2NP и добавляет его \n"
|
||||
"во внутреннюю очередь входящих сообщений, а записывающий поток вытягивает"
|
||||
"\n"
|
||||
"сообщения из очереди исходящих сообщений каждого соединения и пропихивает"
|
||||
" данные \n"
|
||||
"вызовом write()."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:144
|
||||
msgid ""
|
||||
"We do this fairly efficiently, from a CPU perspective - at any time, \n"
|
||||
"almost all of these threads are sitting idle, blocked waiting for "
|
||||
"something \n"
|
||||
"to do. However, each thread consumes real resources (on older Linux "
|
||||
"kernels, \n"
|
||||
"for instance, each thread would often be implemented as a fork()'ed "
|
||||
"process). \n"
|
||||
"As the network grows, the number of peers each router will want to talk \n"
|
||||
"with will increase (remember, I2P is fully connected, meaning that any \n"
|
||||
"given peer should know how to get a message to any other peer, and "
|
||||
"restricted \n"
|
||||
"route support will probably not significantly reduce the number of "
|
||||
"connections \n"
|
||||
"necessary). This means that with a 100,000 router network, each router \n"
|
||||
"will have up to 199,998 threads just to deal with the TCP connections!"
|
||||
msgstr ""
|
||||
"Мы делаем это довольно эффективно, с точки зрения CPU - в любой момент "
|
||||
"времени \n"
|
||||
"почти все эти потоки ничего не делают, блокированные в ожидании работы. \n"
|
||||
"Тем не менее, каждый поток потребляет реальные системные ресурсы (на "
|
||||
"старых ядрах Linux,\n"
|
||||
"например, каждый поток будет реализован как fork()-нутый процесс). \n"
|
||||
"С ростом сети число узлов, с которым маршрутизатор захочет общаться, \n"
|
||||
"будет увеличиваться (запомните, I2P - полностью связана, это означает что"
|
||||
" любой\n"
|
||||
"узел должен знать как доставить сообщение любому другому узлу, и "
|
||||
"поддержка \n"
|
||||
"ограниченного маршрута, возможно, не существенно уменьшит число "
|
||||
"необходимых\n"
|
||||
" соединений). Это означает, что в сети с 100,000 маршрутизаторов, каждый "
|
||||
"маршрутизатор \n"
|
||||
"будет иметь 199,998 потоков только для поддержки TCP соединений!"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:156
|
||||
msgid ""
|
||||
"Obviously, that just won't work. We need to use a transport layer that \n"
|
||||
"can scale. In Java, we have two main camps:"
|
||||
msgstr ""
|
||||
"Очевидно, это просто не будет работать. Мы должны использовать "
|
||||
"масштабируемый \n"
|
||||
"транспортный уровень. В Java у нас есть два основных лагеря:"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:161
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Implemented in I2P 0.6 (\"SSU\") as documented <a "
|
||||
"href=\"%(ssu)s\">elsewhere</a>"
|
||||
msgstr ""
|
||||
"Реализованный в I2P 0.6 (\"SSU\"), согласно <a "
|
||||
"href=\"%(ssu)s\">описанию</a>"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:164
|
||||
msgid ""
|
||||
"Sending and receiving UDP datagrams is a connectionless operation - if \n"
|
||||
"we are communicating with 100,000 peers, we simply stick the UDP packets"
|
||||
" \n"
|
||||
"in a queue and have a single thread pulling them off the queue and "
|
||||
"shoving \n"
|
||||
"them out the pipe (and to receive, have a single thread pulling in any \n"
|
||||
"UDP packets received and adding them to an inbound queue)."
|
||||
msgstr ""
|
||||
"Отправка и получение дейтаграмм UDP - это операция без установления "
|
||||
"соединения - если\n"
|
||||
"мы общаемся с 100,000 узлами, мы просто собираем пакеты UDP \n"
|
||||
"в очередь и, имеем один поток, извлекающий их из очереди, и отправляющий"
|
||||
" \n"
|
||||
"их в канал соединения (и, для получения, имеем один поток принимающий "
|
||||
"любые \n"
|
||||
"пакеты UDP и добавляющий их во входящую очередь)."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:171
|
||||
msgid ""
|
||||
"However, moving to UDP means losing the benefits of TCP's ordering, "
|
||||
"congestion \n"
|
||||
"control, MTU discovery, etc. Implementing that code will take significant"
|
||||
" \n"
|
||||
"work, however I2P doesn't need it to be as strong as TCP. Specifically, \n"
|
||||
"a while ago I was taking some measurements in the simulator and on the \n"
|
||||
"live net, and the vast majority of messages transferred would fit easily"
|
||||
" \n"
|
||||
"within a single unfragmented UDP packet, and the largest of the messages"
|
||||
" \n"
|
||||
"would fit within 20-30 packets. As mule pointed out, TCP adds a "
|
||||
"significant \n"
|
||||
"overhead when dealing with so many small packets, as the ACKs are within"
|
||||
" \n"
|
||||
"an order of magnitude in size. With UDP, we can optimize the transport \n"
|
||||
"for both efficiency and resilience by taking into account I2P's "
|
||||
"particular \n"
|
||||
"needs."
|
||||
msgstr ""
|
||||
"Тем не менее, движение в сторону UDP означает потерю преимуществ TCP: \n"
|
||||
"очередности, контроля блокировок, определения MTU и т.д. Реализация этого"
|
||||
" \n"
|
||||
"кода - это значительная работа, тем не менее, I2P не должна быть такой же"
|
||||
" устойчивой, как TCP.\n"
|
||||
"Конкретно, недавно я собирал метрики в симуляторе и в живой сети, \n"
|
||||
"и подавляющее большинство переданных сообщений легко уместилось бы \n"
|
||||
"в одном нефрагментированном пакете UDP, а самое большое из сообщений \n"
|
||||
"уместилось бы в 20-30 пакетах. Как показал mule, TCP добавляет "
|
||||
"значительные \n"
|
||||
"накладные расходы в случае большого количества маленьких пакетов, т.к. "
|
||||
"ACK \n"
|
||||
"влияют на увеличение размера. С UDP мы можем оптимизировать транспорт\n"
|
||||
"и для эффективности, и для эластичности, с учетом частных потребностей "
|
||||
"I2P."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:184
|
||||
msgid "It will be a lot of work though."
|
||||
msgstr "И все таки, предстоит выполнить много работы."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:187
|
||||
msgid "NIO or NBIO"
|
||||
msgstr "NIO или NBIO"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:188
|
||||
msgid "NIO Implemented in I2P 0.6.1.22 (\"NTCP\")"
|
||||
msgstr "NIO реализовано в I2P 0.6.1.22 (\"NTCP\")"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:191
|
||||
msgid ""
|
||||
"In Java 1.4, a set of \"New I/O\" packages was introduced, allowing Java"
|
||||
" \n"
|
||||
"developers to take advantage of the operating system's nonblocking IO \n"
|
||||
"capabilities - allowing you to maintain a large number of concurrent IO \n"
|
||||
"operations without requiring a separate thread for each. There is much \n"
|
||||
"promise with this approach, as we can scalable handle a large number of \n"
|
||||
"concurrent connections and we don't have to write a mini-TCP stack with \n"
|
||||
"UDP. However, the NIO packages have not proven themselves to be battle-"
|
||||
"ready, \n"
|
||||
"as the Freenet developer's found. In addition, requiring NIO support "
|
||||
"would \n"
|
||||
"mean we can't run on any of the open source JVMs like <a "
|
||||
"href=\"http://www.kaffe.org/\">Kaffe</a>, \n"
|
||||
"as <a href=\"http://www.classpath.org/\">GNU/Classpath</a> has only "
|
||||
"limited \n"
|
||||
"support for NIO. <i>(note: this may not be the case anymore, as there \n"
|
||||
"has been some progress on Classpath's NIO, but it is an unknown "
|
||||
"quantity)</i>"
|
||||
msgstr ""
|
||||
"В Java 1.4 был представлен набор пакетов \"New I/O\", позволяющий "
|
||||
"разработчикам \n"
|
||||
"Java получить преимущество возможностей неблокирующих системных вызовов "
|
||||
"I/O,\n"
|
||||
"позволяющих выполнять большое количество конкурирующих операций \n"
|
||||
"ввода/вывода, не требующих отдельного потока для каждой операции. \n"
|
||||
"Это многообещающая возможность, т.к. мы можем масштабируемо работать с "
|
||||
"большим количеством\n"
|
||||
"конкурирующих соединений, и на не нужно писать мини-TCP стек с UDP. \n"
|
||||
"Тем не менее, пакеты NIO не доказали свою боеспособность, \n"
|
||||
"как было обнаружено разработчиками Freenet. Кроме того, необходимость "
|
||||
"поддержки NIO \n"
|
||||
"означала бы, что мы не можем запуститься на любой JVM с открытым исходным"
|
||||
" кодом, как <a href=\"http://www.kaffe.org/\">Kaffe</a>, \n"
|
||||
"т.к. только <a href=\"http://www.classpath.org/\">GNU/Classpath</a> имеет"
|
||||
" ограниченную \n"
|
||||
"поддержку NIO. <i>(к сведению: это может быть уже не так, так как \n"
|
||||
"в Classpath'ах NIO был достигнут некоторый прогресс, но пока ничего "
|
||||
"определенного)</i>"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:205
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Another alternative along the same lines is the <a href=\"%(link)s\">Non"
|
||||
" \n"
|
||||
"Blocking I/O</a> package - essentially a cleanroom NIO implementation \n"
|
||||
"(written before NIO was around). It works by using some native OS code \n"
|
||||
"to do the nonblocking IO, passing off events through Java. It seems to \n"
|
||||
"be working with Kaffe, though there doesn't seem to be much development \n"
|
||||
"activity on it lately (likely due to 1.4's NIO deployment)."
|
||||
msgstr ""
|
||||
"Другая альтернатива по той же схеме - это пакет <a href=\"%(link)s\">Non"
|
||||
" \n"
|
||||
"Blocking I/O</a> - по сути подчищенная реализация NIO (написанная до "
|
||||
"появления NIO). Он использует некоторый родной код OS, \n"
|
||||
"чтобы выполнять неблокирующие вызовы IO, пропуская события через Java. "
|
||||
"Кажется, \n"
|
||||
"оно работает с Kaffe, хотя, похоже, в последнее время разработка ведется\n"
|
||||
"не очень активно (вероятно, это связано с разработкой NIO 1.4)."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:220
|
||||
#: i2p2www/pages/site/get-involved/todo.html:44
|
||||
msgid ""
|
||||
"Within the current network database and profile management "
|
||||
"implementation, \n"
|
||||
@@ -1015,7 +603,7 @@ msgstr ""
|
||||
"иметь практического значения, т.к. в ближайшее время он не будет нам "
|
||||
"нужен."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:235
|
||||
#: i2p2www/pages/site/get-involved/todo.html:59
|
||||
msgid ""
|
||||
"That said, as the network grows we are going to want to keep these "
|
||||
"considerations \n"
|
||||
@@ -1024,246 +612,7 @@ msgstr ""
|
||||
"Как было упомянут, с ростом сети мы будем помнить об этих моментах. \n"
|
||||
"У нас есть над чем поработать, но мы можем отложить это на потом."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:247
|
||||
#: i2p2www/pages/site/get-involved/todo.html:331
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Addressed in I2P 0.5 as documented <a "
|
||||
"href=\"%(tunnelimpl)s\">elsewhere</a>"
|
||||
msgstr ""
|
||||
"Планируется реализовать в I2P 0.5 согласно <a "
|
||||
"href=\"%(tunnelimpl)s\">описанию</a>"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:250
|
||||
msgid ""
|
||||
"Right now, if Alice builds a four hop inbound tunnel starting at Elvis, \n"
|
||||
"going to Dave, then to Charlie, then Bob, and finally Alice "
|
||||
"(A<--B<--C<--D<--E), \n"
|
||||
"all five of them will know they are participating in tunnel \"123\", as \n"
|
||||
"the messages are tagged as such. What we want to do is give each hop "
|
||||
"their \n"
|
||||
"own unique tunnel hop ID - Charlie will receive messages on tunnel 234 \n"
|
||||
"and forward them to tunnel 876 on Bob. The intent is to prevent Bob or \n"
|
||||
"Charlie from knowing that they are in Alice's tunnel, as if each hop in \n"
|
||||
"the tunnel had the same tunnel ID, collusion attacks aren't much work."
|
||||
msgstr ""
|
||||
"Сейчас, если Alice строит входящий туннель с четырьмя отрезками, \n"
|
||||
"начиная от Elvis, к Dave, затем к Charlie, затем к Bob, и, наконец, к "
|
||||
"Alice \n"
|
||||
"(A<--B<--C<--D<--E), то все четверо будут знать, что они "
|
||||
"общаются через туннель \n"
|
||||
"\"123\", как это указано в сообщении. Что мы хотим сделать, так это дать "
|
||||
"каждому отрезку \n"
|
||||
"уникальный ID отрезка туннеля - Chrlie получить сообщение по туннелю 234"
|
||||
" \n"
|
||||
"и перенаправит его в туннель 876 к Bob. Это нужно для того, чтобы Bob "
|
||||
"или \n"
|
||||
"Charlie не знали что они находятся в туннеле Alice - из-за того что "
|
||||
"каждый прыжок \n"
|
||||
"в туннеле имеет один и тот же ID туннеля, и атака сговором - collusion "
|
||||
"attack - не сработает."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:260
|
||||
msgid ""
|
||||
"Adding a unique tunnel ID per hop isn't hard, but by itself, "
|
||||
"insufficient. \n"
|
||||
"If Dave and Bob are under the control of the same attacker, they wouldn't"
|
||||
" \n"
|
||||
"be able to tell they are in the same tunnel due to the tunnel ID, but \n"
|
||||
"would be able to tell by the message bodies and verification structures \n"
|
||||
"by simply comparing them. To prevent that, the tunnel must use layered \n"
|
||||
"encryption along the path, both on the payload of the tunneled message \n"
|
||||
"and on the verification structure (used to prevent simple tagging "
|
||||
"attacks). \n"
|
||||
"This requires some simple modifications to the TunnelMessage, as well \n"
|
||||
"as the inclusion of per-hop secret keys delivered during tunnel creation"
|
||||
" \n"
|
||||
"and given to the tunnel's gateway. We must fix a maximum tunnel length \n"
|
||||
"(e.g. 16 hops) and instruct the gateway to encrypt the message to each \n"
|
||||
"of the 16 delivered secret keys, in reverse order, and to encrypt the \n"
|
||||
"signature of the hash of the (encrypted) payload at each step. The "
|
||||
"gateway \n"
|
||||
"then sends that 16-step encrypted message, along with a 16-step and "
|
||||
"16-wide \n"
|
||||
"encrypted mapping to the first hop, which then decrypts the mapping and \n"
|
||||
"the payload with their secret key, looking in the 16-wide mapping for \n"
|
||||
"the entry associated with their own hop (keyed by the per-hop tunnel ID)"
|
||||
" \n"
|
||||
"and verifying the payload by checking it against the associated signed \n"
|
||||
"hash."
|
||||
msgstr ""
|
||||
"Добавить уникальный ID туннеля для каждого прыжка не сложно, но этого не "
|
||||
"достаточно. \n"
|
||||
"Если Dave и Bob контролируются одним атакующим, они не смогут сказать \n"
|
||||
"что они в одном туннеле из-за ID туннелей, но это можно выяснить по "
|
||||
"содержимому сообщений \n"
|
||||
"и структуре верификации, просто сравнив их. Чтобы избежать этого, туннель"
|
||||
" \n"
|
||||
"должен использовать слоеное шифрование на всем пути, и над содержимым "
|
||||
"сообщения, \n"
|
||||
"и над структурой верификации (необходимо для предотвращения простой атаки"
|
||||
" по меткам - tagging attack). \n"
|
||||
"Для этого необходимо немного модифицировать TunnelMessage, а также \n"
|
||||
"добавить секретные ключи прыжков, отправленные во время создания туннеля,"
|
||||
" \n"
|
||||
"и отданные шлюзу туннеля. Мы должны зафиксировать максимальную длину "
|
||||
"туннеля \n"
|
||||
"(например, 16 отрезков), и сказать шлюзу шифровать сообщения для каждого"
|
||||
" \n"
|
||||
"из 16 секретных ключей, в обратном порядке, и зашифровать \n"
|
||||
"подпись хеша (шифрованного) содержимого на каждом шаге. Затем шлюз \n"
|
||||
"отсылает эти 16-кратно зашифрованное сообщение, вместе с 16-кратным и "
|
||||
"16-wide \n"
|
||||
"зашифрованным маппингом в первый прыжок, который дешифрует маппинг и \n"
|
||||
"содержимое своим секретным ключом, ищет в 16-wide маппинге "
|
||||
"ассоциированную \n"
|
||||
"с его прыжком информацию (по ключу ID отрезка туннеля) \n"
|
||||
"и верифицирует содержимое по связанному с ним подписанному \n"
|
||||
"хешу."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:281
|
||||
msgid ""
|
||||
"The tunnel gateway does still have more information than the other peers"
|
||||
" \n"
|
||||
"in the tunnel, and compromising both the gateway and a tunnel participant"
|
||||
" \n"
|
||||
"would allow those peers to collude, exposing the fact that they are both"
|
||||
" \n"
|
||||
"in the same tunnel. In addition, neighboring peers know that they are \n"
|
||||
"in the same tunnel anyway, as they know who they send the message to (and"
|
||||
" \n"
|
||||
"with IP-based transports without restricted routes, they know who they \n"
|
||||
"got it from). However, the above two techniques significantly increase \n"
|
||||
"the cost of gaining meaningful samples when dealing with longer tunnels."
|
||||
msgstr ""
|
||||
"Шлюз туннеля все еще имеет больше информации, чем другие узлы \n"
|
||||
"в туннеле, и одновременное компрометирование шлюза и участника туннеля \n"
|
||||
"позволит этим узлам сговориться, раскрывая тот факт, что они оба "
|
||||
"находятся \n"
|
||||
"в одном туннеле. Также, в любом случае, соседние узлы знают, что они в "
|
||||
"одном \n"
|
||||
"и том же туннеле, поскольку они знают кому они отсылают сообщение \n"
|
||||
"(и с основанным на IP транспортом без ограниченных маршрутов они знают \n"
|
||||
"от кого они их получили). Тем не менее, оба описанных выше метода "
|
||||
"значительно \n"
|
||||
"увеличивают стоимость получения значимых образцов, когда мы имеем дело с "
|
||||
"длинными туннелями."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:297
|
||||
msgid "Implemented in release 0.6.2"
|
||||
msgstr "Реализовано в 0.6.2"
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:300
|
||||
#, python-format
|
||||
msgid ""
|
||||
"As Connelly <a href=\"%(link)s\">proposed</a> to deal with the\n"
|
||||
"<a href=\"%(pdf1)s\">predecessor attack</a> <a href=\"%(pdf2)s\">(2008\n"
|
||||
"update)</a>, keeping the order of peers within our tunnels consistent \n"
|
||||
"(aka whenever Alice creates a tunnel with both Bob and Charlie in it, \n"
|
||||
"Bob's next hop is always Charlie), we address the issue as Bob doesn't \n"
|
||||
"get to substantially sample Alice's peer selection group. We may even \n"
|
||||
"want to explicitly allow Bob to participate in Alice's tunnels in only \n"
|
||||
"one way - receiving a message from Dave and sending it to Charlie - and \n"
|
||||
"if any of those peers are not available to participate in the tunnel (due"
|
||||
" \n"
|
||||
"to overload, network disconnection, etc), avoid asking Bob to participate"
|
||||
" \n"
|
||||
"in any tunnels until they are back online."
|
||||
msgstr ""
|
||||
"Как <a href=\"%(link)s\">предложил</a> Connelly, чтобы разобраться с\n"
|
||||
"<a href=\"%(pdf1)s\">атакой предшественника</a> <a "
|
||||
"href=\"%(pdf2)s\">(обновление от 2008)</a>, сохраняя очередность узлов в "
|
||||
"туннеле постоянной \n"
|
||||
"(aka когда бы Alice ни создала туннель одновременно с Bob и Charlie, \n"
|
||||
"следующий прыжок Bob'а всегда приведет его к Charlie), мы определяем что "
|
||||
"Bob никогда \n"
|
||||
"не войдет в группу выбора узлов Alice. Мы даже можем \n"
|
||||
"разрешить Bob'e взаимодействовать с тунеллями Alice только \n"
|
||||
"одним способом - получать сообщения от Dave и отсылать их Charlie - и \n"
|
||||
"если любой из этих узлов не доступен для образования туннеля (из-за \n"
|
||||
"перегрузки, обрыва связи, и т.д.), не позволять Bob'у учавствовать \n"
|
||||
"в любом туннеле до тех пор, пока они не станут доступны."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:315
|
||||
msgid ""
|
||||
"More analysis is necessary for revising the tunnel creation - at the \n"
|
||||
"moment, we simply select and order randomly within the peer's top tier \n"
|
||||
"of peers (ones with fast + high capacity)."
|
||||
msgstr ""
|
||||
"Для пересмотра процесса создания туннеля необходим более глубокий анализ "
|
||||
"- \n"
|
||||
"сейчас мы просто выбираем и сортируем случайным образом верхушку списка "
|
||||
"узлов (по скорости + большой вместимости)."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:320
|
||||
msgid ""
|
||||
"Adding a strict ordering to peers in a tunnel also improves the anonymity"
|
||||
" \n"
|
||||
"of peers with 0-hop tunnels, as otherwise the fact that a peer's gateway"
|
||||
" \n"
|
||||
"is always the same would be particularly damning. However, peers with \n"
|
||||
"0-hop tunnels may want to periodically use a 1-hop tunnel to simulate \n"
|
||||
"the failure of a normally reliable gateway peer (so every MTBF*(tunnel \n"
|
||||
"duration) minutes, use a 1-hop tunnel)."
|
||||
msgstr ""
|
||||
"Введение жесткой очередности узлов в туннеле также улучшает анонимность \n"
|
||||
"узлов в 0-прыжковых туннелях, тогда как, в другом случае, тот факт, что "
|
||||
"шлюз узла \n"
|
||||
"всегда будет одним и тем же, будет особенно губительным. Тем не менее, "
|
||||
"узлы \n"
|
||||
"с 0-прыжковыми туннелями периодически могут хотеть использовать "
|
||||
"1-прыжковый туннель, чтобы симулировать \n"
|
||||
"ошибку в обычно надежном узле (и так каждые MTBF*(длительность туннеля) \n"
|
||||
"минут, используя 1-прыжковый туннель)."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:337
|
||||
msgid ""
|
||||
"Without tunnel length permutation, if someone were to somehow detect that"
|
||||
" \n"
|
||||
"a destination had a particular number of hops, it might be able to use "
|
||||
"that \n"
|
||||
"information to identify the router the destination is located on, per the"
|
||||
" \n"
|
||||
"predecessor attack. For instance, if everyone has 2-hop tunnels, if Bob \n"
|
||||
"receives a tunnel message from Charlie and forwards it to Alice, Bob "
|
||||
"knows \n"
|
||||
"Alice is the final router in the tunnel. If Bob were to identify what "
|
||||
"destination \n"
|
||||
"that tunnel served (by means of colluding with the gateway and harvesting"
|
||||
" \n"
|
||||
"the network database for all of the LeaseSets), he would know the router"
|
||||
" \n"
|
||||
"on which that destination is located (and without restricted routes, that"
|
||||
" \n"
|
||||
"would mean what IP address the destination is on)."
|
||||
msgstr ""
|
||||
"Без изменения длины туннеля, если кто-то как-то обнаружит, что \n"
|
||||
"до пункта назначения определенное число хопов, это может быть "
|
||||
"использовано \n"
|
||||
"для обнаружения местоположения маршрутизатора во время атаки "
|
||||
"предшественника. \n"
|
||||
"Например, если у всех есть 2-прыжковый туннель, и если Bob \n"
|
||||
"получает сообщение от Charlie и пересылает его Alice, то Bob знает - \n"
|
||||
"Alice - это конечный маршрутизатор в туннеле. Если Bob выяснил, куда "
|
||||
"приводит \n"
|
||||
"этот туннель (путем сговора со шлюзом и сбора \n"
|
||||
"базы данных сети для всех LeaseSets), он узнает маршрутизатор, на которым"
|
||||
" \n"
|
||||
"расположен пункт назначения (и без ограниченных маршрутов это будет "
|
||||
"указывать \n"
|
||||
"на IP адрес пункта назначения)."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:349
|
||||
msgid ""
|
||||
"It is to counter user behavior that tunnel lengths should be permuted, \n"
|
||||
"using algorithms based on the length requested (for example, the 1/MTBF \n"
|
||||
"length change for 0-hop tunnels outlined above)."
|
||||
msgstr ""
|
||||
"Изменяемая длина туннелей должна противостоять поведению пользователей, \n"
|
||||
"используя алгоритмы, основанные на длине (для примера, изменение \n"
|
||||
"длины на 1/MTBF для 0-прыжковых туннелей, описанных выше)."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:359
|
||||
#: i2p2www/pages/site/get-involved/todo.html:71
|
||||
msgid ""
|
||||
"The restricted route functionality described before was simply a "
|
||||
"functional \n"
|
||||
@@ -1304,7 +653,7 @@ msgstr ""
|
||||
" \n"
|
||||
"с предписанием переслать его согласно запросу."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:378
|
||||
#: i2p2www/pages/site/get-involved/todo.html:90
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Within the network, we will want some way to deter people from consuming"
|
||||
@@ -1326,7 +675,7 @@ msgstr ""
|
||||
"скомпрометирует анонимность системы. Вместо этого мы хотим \n"
|
||||
"сделать такие запросы \"дорогостоящими\"."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:386
|
||||
#: i2p2www/pages/site/get-involved/todo.html:98
|
||||
msgid ""
|
||||
"<a href=\"http://www.hashcash.org/\">Hashcash</a> is one technique that \n"
|
||||
"we can use to anonymously increase the \"cost\" of doing certain "
|
||||
@@ -1360,7 +709,7 @@ msgstr ""
|
||||
" \n"
|
||||
"с ограниченными ресурсами."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:397
|
||||
#: i2p2www/pages/site/get-involved/todo.html:109
|
||||
msgid ""
|
||||
"There are a few other algorithms that we can explore for making those \n"
|
||||
"requests for resources \"nonfree\", and further research on that front is"
|
||||
@@ -1371,7 +720,7 @@ msgstr ""
|
||||
"для \"удорожания\" подобных запросов, и дальнейшие исследования \n"
|
||||
"на этом фронте являются целесообразными."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:407
|
||||
#: i2p2www/pages/site/get-involved/todo.html:119
|
||||
#, python-format
|
||||
msgid ""
|
||||
"To powerful passive external observers as well as large colluding "
|
||||
@@ -1406,7 +755,7 @@ msgstr ""
|
||||
"этих алгоритмов, на которые мы можем опираться при реализации \n"
|
||||
"различных стратегий смешивания туннелей."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:420
|
||||
#: i2p2www/pages/site/get-involved/todo.html:132
|
||||
msgid ""
|
||||
"In addition to the anonymity aspects of more varied tunnel operation, \n"
|
||||
"there is a functional dimension as well. Each peer only has a certain \n"
|
||||
@@ -1440,7 +789,7 @@ msgstr ""
|
||||
"для их туннелей, избегая выделения полосы пропускания большей, чем \n"
|
||||
"доступно узлу."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:433
|
||||
#: i2p2www/pages/site/get-involved/todo.html:145
|
||||
msgid ""
|
||||
"In addition, we may want to implement code to dynamically reroute tunnels"
|
||||
" \n"
|
||||
@@ -1457,7 +806,7 @@ msgstr ""
|
||||
"узла в туннеле, \n"
|
||||
"с предписанием переопределить следующий прыжок в туннеле."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:444
|
||||
#: i2p2www/pages/site/get-involved/todo.html:156
|
||||
msgid ""
|
||||
"Beyond the per-tunnel batching and mixing strategy, there are further \n"
|
||||
"capabilities for protecting against powerful attackers, such as allowing"
|
||||
@@ -1482,7 +831,7 @@ msgstr ""
|
||||
"исключением тех узлов, где \n"
|
||||
"зубчик подвергается добавлению инструкций по задержке."
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:456
|
||||
#: i2p2www/pages/site/get-involved/todo.html:168
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Performance related improvements are listed on the\n"
|
||||
@@ -5811,3 +5160,10 @@ msgstr ""
|
||||
"Канал #i2p-dev в IRC, или <a href=\"http://%(zzz)s/forums/14\">форум "
|
||||
"перевода на %(zzz)s</a>."
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
@@ -9,7 +9,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: I2P\n"
|
||||
"Report-Msgid-Bugs-To: https://trac.i2p2.de/\n"
|
||||
"POT-Creation-Date: 2014-10-22 20:13+0000\n"
|
||||
"POT-Creation-Date: 2014-11-27 12:12+0000\n"
|
||||
"PO-Revision-Date: 2013-04-27 23:10+0000\n"
|
||||
"Last-Translator: Martin Svensson <digitalmannen@gmail.com>\n"
|
||||
"Language-Team: Swedish (Sweden) "
|
||||
@@ -399,317 +399,52 @@ msgid ""
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:15
|
||||
#: i2p2www/pages/site/get-involved/todo.html:53
|
||||
#: i2p2www/pages/site/get-involved/todo.html:38
|
||||
msgid "Core functionality"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:15
|
||||
#: i2p2www/pages/site/get-involved/todo.html:27
|
||||
#: i2p2www/pages/site/get-involved/todo.html:51
|
||||
#: i2p2www/pages/site/get-involved/todo.html:21
|
||||
#: i2p2www/pages/site/get-involved/todo.html:36
|
||||
msgid "link"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:17
|
||||
#: i2p2www/pages/site/get-involved/todo.html:56
|
||||
msgid "NAT/Firewall bridging via 1-hop restricted routes"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:20
|
||||
#: i2p2www/pages/site/get-involved/todo.html:129
|
||||
msgid "High degree transport layer with UDP, NBIO, or NIO"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:23
|
||||
#: i2p2www/pages/site/get-involved/todo.html:217
|
||||
#: i2p2www/pages/site/get-involved/todo.html:41
|
||||
msgid "NetworkDB and profile tuning and ejection policy for large nets"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:27
|
||||
#: i2p2www/pages/site/get-involved/todo.html:241
|
||||
#: i2p2www/pages/site/get-involved/todo.html:21
|
||||
#: i2p2www/pages/site/get-involved/todo.html:65
|
||||
msgid "Security / anonymity"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:29
|
||||
#: i2p2www/pages/site/get-involved/todo.html:244
|
||||
msgid ""
|
||||
"Per-hop tunnel id & new permuted TunnelVerificationStructure "
|
||||
"encryption"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:32
|
||||
#: i2p2www/pages/site/get-involved/todo.html:294
|
||||
msgid "Strict ordering of participants within tunnels"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:35
|
||||
msgid "Randomly permuted tunnel lengths"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:38
|
||||
#: i2p2www/pages/site/get-involved/todo.html:356
|
||||
#: i2p2www/pages/site/get-involved/todo.html:23
|
||||
#: i2p2www/pages/site/get-involved/todo.html:68
|
||||
msgid "Full blown n-hop restricted routes with optional trusted links"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:41
|
||||
#: i2p2www/pages/site/get-involved/todo.html:375
|
||||
#: i2p2www/pages/site/get-involved/todo.html:26
|
||||
#: i2p2www/pages/site/get-involved/todo.html:87
|
||||
msgid "Hashcash for routerIdentity, destination, and tunnel request"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:44
|
||||
#: i2p2www/pages/site/get-involved/todo.html:404
|
||||
#: i2p2www/pages/site/get-involved/todo.html:29
|
||||
#: i2p2www/pages/site/get-involved/todo.html:116
|
||||
msgid "Advanced tunnel operation (batching/mixing/throttling/padding)"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:47
|
||||
#: i2p2www/pages/site/get-involved/todo.html:441
|
||||
#: i2p2www/pages/site/get-involved/todo.html:32
|
||||
#: i2p2www/pages/site/get-involved/todo.html:153
|
||||
msgid "Stop & go mix w/ garlics & tunnels"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:51
|
||||
#: i2p2www/pages/site/get-involved/todo.html:455
|
||||
#: i2p2www/pages/site/get-involved/todo.html:36
|
||||
#: i2p2www/pages/site/get-involved/todo.html:167
|
||||
msgid "Performance"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:61
|
||||
msgid "Implemented in I2P 0.6.0.6"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:62
|
||||
msgid ""
|
||||
"The functionality of allowing routers to fully participate within the "
|
||||
"network \n"
|
||||
"while behind firewalls and NATs that they do not control requires some "
|
||||
"basic \n"
|
||||
"restricted route operation (since those peers will not be able to receive"
|
||||
" \n"
|
||||
"inbound connections). To do this successfully, you consider peers one of"
|
||||
" \n"
|
||||
"two ways:"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:72
|
||||
msgid ""
|
||||
"<b>Peers who have reachable interfaces</b> - these peers do not need to \n"
|
||||
"do anything special"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:76
|
||||
msgid ""
|
||||
"<b>Peers who do not have reachable interfaces</b> - these peers must "
|
||||
"build \n"
|
||||
"a tunnel pointing at them where the gateway is one of the peers they have"
|
||||
" \n"
|
||||
"established a connection with who has both a publicly reachable interface"
|
||||
" \n"
|
||||
"and who has agreed to serve as their 'introducer'."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:84
|
||||
msgid ""
|
||||
"To do this, peers who have no IP address simply connect to a few peers, \n"
|
||||
"build a tunnel through them, and publish a reference to those tunnels "
|
||||
"within \n"
|
||||
"their RouterInfo structure in the network database."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:89
|
||||
msgid ""
|
||||
"When someone wants to contact any particular router, they first must get"
|
||||
" \n"
|
||||
"its RouterInfo from the network database, which will tell them whether "
|
||||
"they \n"
|
||||
"can connect directly (e.g. the peer has a publicly reachable interface) \n"
|
||||
"or whether they need to contact them indirectly. Direct connections occur"
|
||||
" \n"
|
||||
"as normal, while indirect connections are done through one of the "
|
||||
"published \n"
|
||||
"tunnels."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:97
|
||||
msgid ""
|
||||
"When a router just wants to get a message or two to a specific hidden "
|
||||
"peer, \n"
|
||||
"they can just use the indirect tunnel for sending the payload. However, \n"
|
||||
"if the router wants to talk to the hidden peer often (for instance, as "
|
||||
"part \n"
|
||||
"of a tunnel), they will send a garlic routed message through the indirect"
|
||||
" \n"
|
||||
"tunnel to that hidden peer which unwraps to contain a message which "
|
||||
"should \n"
|
||||
"be sent to the originating router. That hidden peer then establishes an \n"
|
||||
"outbound connection to the originating router and from then on, those two"
|
||||
" \n"
|
||||
"routers can talk to each other directly over that newly established "
|
||||
"direct \n"
|
||||
"connection."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:108
|
||||
msgid ""
|
||||
"Of course, that only works if the originating peer can receive "
|
||||
"connections \n"
|
||||
"(they aren't also hidden). However, if the originating peer is hidden, "
|
||||
"they \n"
|
||||
"can simply direct the garlic routed message to come back to the "
|
||||
"originating \n"
|
||||
"peer's inbound tunnel."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:114
|
||||
msgid ""
|
||||
"This is not meant to provide a way for a peer's IP address to be "
|
||||
"concealed, \n"
|
||||
"merely as a way to let people behind firewalls and NATs fully operate "
|
||||
"within \n"
|
||||
"the network. Concealing the peer's IP address adds a little more work, as"
|
||||
" \n"
|
||||
"described <a href=\"#fullRestrictedRoutes\">below.</a>"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:120
|
||||
msgid ""
|
||||
"With this technique, any router can participate as any part of a tunnel."
|
||||
" \n"
|
||||
"For efficiency purposes, a hidden peer would be a bad choice for an "
|
||||
"inbound \n"
|
||||
"gateway, and within any given tunnel, two neighboring peers wouldn't want"
|
||||
" \n"
|
||||
"to be hidden. But that is not technically necessary."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:132
|
||||
msgid "Both UDP and NIO have been Implemented in I2P"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:133
|
||||
msgid ""
|
||||
"Standard TCP communication in Java generally requires blocking socket \n"
|
||||
"calls, and to keep a blocked socket from hanging the entire system, those"
|
||||
" \n"
|
||||
"blocking calls are done on their own threads. Our current TCP transport \n"
|
||||
"is implemented in a naive fashion - for each peer we are talking to, we \n"
|
||||
"have one thread reading and one thread writing. The reader thread simply"
|
||||
" \n"
|
||||
"loops a bunch of read() calls, building I2NP messages and adding them \n"
|
||||
"to our internal inbound message queue, and the writer thread pulls "
|
||||
"messages \n"
|
||||
"off a per-connection outbound message queue and shoves the data through \n"
|
||||
"write() calls."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:144
|
||||
msgid ""
|
||||
"We do this fairly efficiently, from a CPU perspective - at any time, \n"
|
||||
"almost all of these threads are sitting idle, blocked waiting for "
|
||||
"something \n"
|
||||
"to do. However, each thread consumes real resources (on older Linux "
|
||||
"kernels, \n"
|
||||
"for instance, each thread would often be implemented as a fork()'ed "
|
||||
"process). \n"
|
||||
"As the network grows, the number of peers each router will want to talk \n"
|
||||
"with will increase (remember, I2P is fully connected, meaning that any \n"
|
||||
"given peer should know how to get a message to any other peer, and "
|
||||
"restricted \n"
|
||||
"route support will probably not significantly reduce the number of "
|
||||
"connections \n"
|
||||
"necessary). This means that with a 100,000 router network, each router \n"
|
||||
"will have up to 199,998 threads just to deal with the TCP connections!"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:156
|
||||
msgid ""
|
||||
"Obviously, that just won't work. We need to use a transport layer that \n"
|
||||
"can scale. In Java, we have two main camps:"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:161
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Implemented in I2P 0.6 (\"SSU\") as documented <a "
|
||||
"href=\"%(ssu)s\">elsewhere</a>"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:164
|
||||
msgid ""
|
||||
"Sending and receiving UDP datagrams is a connectionless operation - if \n"
|
||||
"we are communicating with 100,000 peers, we simply stick the UDP packets"
|
||||
" \n"
|
||||
"in a queue and have a single thread pulling them off the queue and "
|
||||
"shoving \n"
|
||||
"them out the pipe (and to receive, have a single thread pulling in any \n"
|
||||
"UDP packets received and adding them to an inbound queue)."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:171
|
||||
msgid ""
|
||||
"However, moving to UDP means losing the benefits of TCP's ordering, "
|
||||
"congestion \n"
|
||||
"control, MTU discovery, etc. Implementing that code will take significant"
|
||||
" \n"
|
||||
"work, however I2P doesn't need it to be as strong as TCP. Specifically, \n"
|
||||
"a while ago I was taking some measurements in the simulator and on the \n"
|
||||
"live net, and the vast majority of messages transferred would fit easily"
|
||||
" \n"
|
||||
"within a single unfragmented UDP packet, and the largest of the messages"
|
||||
" \n"
|
||||
"would fit within 20-30 packets. As mule pointed out, TCP adds a "
|
||||
"significant \n"
|
||||
"overhead when dealing with so many small packets, as the ACKs are within"
|
||||
" \n"
|
||||
"an order of magnitude in size. With UDP, we can optimize the transport \n"
|
||||
"for both efficiency and resilience by taking into account I2P's "
|
||||
"particular \n"
|
||||
"needs."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:184
|
||||
msgid "It will be a lot of work though."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:187
|
||||
msgid "NIO or NBIO"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:188
|
||||
msgid "NIO Implemented in I2P 0.6.1.22 (\"NTCP\")"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:191
|
||||
msgid ""
|
||||
"In Java 1.4, a set of \"New I/O\" packages was introduced, allowing Java"
|
||||
" \n"
|
||||
"developers to take advantage of the operating system's nonblocking IO \n"
|
||||
"capabilities - allowing you to maintain a large number of concurrent IO \n"
|
||||
"operations without requiring a separate thread for each. There is much \n"
|
||||
"promise with this approach, as we can scalable handle a large number of \n"
|
||||
"concurrent connections and we don't have to write a mini-TCP stack with \n"
|
||||
"UDP. However, the NIO packages have not proven themselves to be battle-"
|
||||
"ready, \n"
|
||||
"as the Freenet developer's found. In addition, requiring NIO support "
|
||||
"would \n"
|
||||
"mean we can't run on any of the open source JVMs like <a "
|
||||
"href=\"http://www.kaffe.org/\">Kaffe</a>, \n"
|
||||
"as <a href=\"http://www.classpath.org/\">GNU/Classpath</a> has only "
|
||||
"limited \n"
|
||||
"support for NIO. <i>(note: this may not be the case anymore, as there \n"
|
||||
"has been some progress on Classpath's NIO, but it is an unknown "
|
||||
"quantity)</i>"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:205
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Another alternative along the same lines is the <a href=\"%(link)s\">Non"
|
||||
" \n"
|
||||
"Blocking I/O</a> package - essentially a cleanroom NIO implementation \n"
|
||||
"(written before NIO was around). It works by using some native OS code \n"
|
||||
"to do the nonblocking IO, passing off events through Java. It seems to \n"
|
||||
"be working with Kaffe, though there doesn't seem to be much development \n"
|
||||
"activity on it lately (likely due to 1.4's NIO deployment)."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:220
|
||||
#: i2p2www/pages/site/get-involved/todo.html:44
|
||||
msgid ""
|
||||
"Within the current network database and profile management "
|
||||
"implementation, \n"
|
||||
@@ -732,152 +467,14 @@ msgid ""
|
||||
"code yet, since we aren't going to need it for a while."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:235
|
||||
#: i2p2www/pages/site/get-involved/todo.html:59
|
||||
msgid ""
|
||||
"That said, as the network grows we are going to want to keep these "
|
||||
"considerations \n"
|
||||
"in mind. We will have some work to do, but we can put it off for later."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:247
|
||||
#: i2p2www/pages/site/get-involved/todo.html:331
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Addressed in I2P 0.5 as documented <a "
|
||||
"href=\"%(tunnelimpl)s\">elsewhere</a>"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:250
|
||||
msgid ""
|
||||
"Right now, if Alice builds a four hop inbound tunnel starting at Elvis, \n"
|
||||
"going to Dave, then to Charlie, then Bob, and finally Alice "
|
||||
"(A<--B<--C<--D<--E), \n"
|
||||
"all five of them will know they are participating in tunnel \"123\", as \n"
|
||||
"the messages are tagged as such. What we want to do is give each hop "
|
||||
"their \n"
|
||||
"own unique tunnel hop ID - Charlie will receive messages on tunnel 234 \n"
|
||||
"and forward them to tunnel 876 on Bob. The intent is to prevent Bob or \n"
|
||||
"Charlie from knowing that they are in Alice's tunnel, as if each hop in \n"
|
||||
"the tunnel had the same tunnel ID, collusion attacks aren't much work."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:260
|
||||
msgid ""
|
||||
"Adding a unique tunnel ID per hop isn't hard, but by itself, "
|
||||
"insufficient. \n"
|
||||
"If Dave and Bob are under the control of the same attacker, they wouldn't"
|
||||
" \n"
|
||||
"be able to tell they are in the same tunnel due to the tunnel ID, but \n"
|
||||
"would be able to tell by the message bodies and verification structures \n"
|
||||
"by simply comparing them. To prevent that, the tunnel must use layered \n"
|
||||
"encryption along the path, both on the payload of the tunneled message \n"
|
||||
"and on the verification structure (used to prevent simple tagging "
|
||||
"attacks). \n"
|
||||
"This requires some simple modifications to the TunnelMessage, as well \n"
|
||||
"as the inclusion of per-hop secret keys delivered during tunnel creation"
|
||||
" \n"
|
||||
"and given to the tunnel's gateway. We must fix a maximum tunnel length \n"
|
||||
"(e.g. 16 hops) and instruct the gateway to encrypt the message to each \n"
|
||||
"of the 16 delivered secret keys, in reverse order, and to encrypt the \n"
|
||||
"signature of the hash of the (encrypted) payload at each step. The "
|
||||
"gateway \n"
|
||||
"then sends that 16-step encrypted message, along with a 16-step and "
|
||||
"16-wide \n"
|
||||
"encrypted mapping to the first hop, which then decrypts the mapping and \n"
|
||||
"the payload with their secret key, looking in the 16-wide mapping for \n"
|
||||
"the entry associated with their own hop (keyed by the per-hop tunnel ID)"
|
||||
" \n"
|
||||
"and verifying the payload by checking it against the associated signed \n"
|
||||
"hash."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:281
|
||||
msgid ""
|
||||
"The tunnel gateway does still have more information than the other peers"
|
||||
" \n"
|
||||
"in the tunnel, and compromising both the gateway and a tunnel participant"
|
||||
" \n"
|
||||
"would allow those peers to collude, exposing the fact that they are both"
|
||||
" \n"
|
||||
"in the same tunnel. In addition, neighboring peers know that they are \n"
|
||||
"in the same tunnel anyway, as they know who they send the message to (and"
|
||||
" \n"
|
||||
"with IP-based transports without restricted routes, they know who they \n"
|
||||
"got it from). However, the above two techniques significantly increase \n"
|
||||
"the cost of gaining meaningful samples when dealing with longer tunnels."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:297
|
||||
msgid "Implemented in release 0.6.2"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:300
|
||||
#, python-format
|
||||
msgid ""
|
||||
"As Connelly <a href=\"%(link)s\">proposed</a> to deal with the\n"
|
||||
"<a href=\"%(pdf1)s\">predecessor attack</a> <a href=\"%(pdf2)s\">(2008\n"
|
||||
"update)</a>, keeping the order of peers within our tunnels consistent \n"
|
||||
"(aka whenever Alice creates a tunnel with both Bob and Charlie in it, \n"
|
||||
"Bob's next hop is always Charlie), we address the issue as Bob doesn't \n"
|
||||
"get to substantially sample Alice's peer selection group. We may even \n"
|
||||
"want to explicitly allow Bob to participate in Alice's tunnels in only \n"
|
||||
"one way - receiving a message from Dave and sending it to Charlie - and \n"
|
||||
"if any of those peers are not available to participate in the tunnel (due"
|
||||
" \n"
|
||||
"to overload, network disconnection, etc), avoid asking Bob to participate"
|
||||
" \n"
|
||||
"in any tunnels until they are back online."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:315
|
||||
msgid ""
|
||||
"More analysis is necessary for revising the tunnel creation - at the \n"
|
||||
"moment, we simply select and order randomly within the peer's top tier \n"
|
||||
"of peers (ones with fast + high capacity)."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:320
|
||||
msgid ""
|
||||
"Adding a strict ordering to peers in a tunnel also improves the anonymity"
|
||||
" \n"
|
||||
"of peers with 0-hop tunnels, as otherwise the fact that a peer's gateway"
|
||||
" \n"
|
||||
"is always the same would be particularly damning. However, peers with \n"
|
||||
"0-hop tunnels may want to periodically use a 1-hop tunnel to simulate \n"
|
||||
"the failure of a normally reliable gateway peer (so every MTBF*(tunnel \n"
|
||||
"duration) minutes, use a 1-hop tunnel)."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:337
|
||||
msgid ""
|
||||
"Without tunnel length permutation, if someone were to somehow detect that"
|
||||
" \n"
|
||||
"a destination had a particular number of hops, it might be able to use "
|
||||
"that \n"
|
||||
"information to identify the router the destination is located on, per the"
|
||||
" \n"
|
||||
"predecessor attack. For instance, if everyone has 2-hop tunnels, if Bob \n"
|
||||
"receives a tunnel message from Charlie and forwards it to Alice, Bob "
|
||||
"knows \n"
|
||||
"Alice is the final router in the tunnel. If Bob were to identify what "
|
||||
"destination \n"
|
||||
"that tunnel served (by means of colluding with the gateway and harvesting"
|
||||
" \n"
|
||||
"the network database for all of the LeaseSets), he would know the router"
|
||||
" \n"
|
||||
"on which that destination is located (and without restricted routes, that"
|
||||
" \n"
|
||||
"would mean what IP address the destination is on)."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:349
|
||||
msgid ""
|
||||
"It is to counter user behavior that tunnel lengths should be permuted, \n"
|
||||
"using algorithms based on the length requested (for example, the 1/MTBF \n"
|
||||
"length change for 0-hop tunnels outlined above)."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:359
|
||||
#: i2p2www/pages/site/get-involved/todo.html:71
|
||||
msgid ""
|
||||
"The restricted route functionality described before was simply a "
|
||||
"functional \n"
|
||||
@@ -899,7 +496,7 @@ msgid ""
|
||||
"to forward it as requested."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:378
|
||||
#: i2p2www/pages/site/get-involved/todo.html:90
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Within the network, we will want some way to deter people from consuming"
|
||||
@@ -913,7 +510,7 @@ msgid ""
|
||||
"to make certain requests \"expensive\"."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:386
|
||||
#: i2p2www/pages/site/get-involved/todo.html:98
|
||||
msgid ""
|
||||
"<a href=\"http://www.hashcash.org/\">Hashcash</a> is one technique that \n"
|
||||
"we can use to anonymously increase the \"cost\" of doing certain "
|
||||
@@ -931,7 +528,7 @@ msgid ""
|
||||
"with few resources."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:397
|
||||
#: i2p2www/pages/site/get-involved/todo.html:109
|
||||
msgid ""
|
||||
"There are a few other algorithms that we can explore for making those \n"
|
||||
"requests for resources \"nonfree\", and further research on that front is"
|
||||
@@ -939,7 +536,7 @@ msgid ""
|
||||
"appropriate."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:407
|
||||
#: i2p2www/pages/site/get-involved/todo.html:119
|
||||
#, python-format
|
||||
msgid ""
|
||||
"To powerful passive external observers as well as large colluding "
|
||||
@@ -960,7 +557,7 @@ msgid ""
|
||||
"tunnel mixing strategies."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:420
|
||||
#: i2p2www/pages/site/get-involved/todo.html:132
|
||||
msgid ""
|
||||
"In addition to the anonymity aspects of more varied tunnel operation, \n"
|
||||
"there is a functional dimension as well. Each peer only has a certain \n"
|
||||
@@ -978,7 +575,7 @@ msgid ""
|
||||
"available."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:433
|
||||
#: i2p2www/pages/site/get-involved/todo.html:145
|
||||
msgid ""
|
||||
"In addition, we may want to implement code to dynamically reroute tunnels"
|
||||
" \n"
|
||||
@@ -988,7 +585,7 @@ msgid ""
|
||||
"with instructions to redefine the next-hop in the tunnel."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:444
|
||||
#: i2p2www/pages/site/get-involved/todo.html:156
|
||||
msgid ""
|
||||
"Beyond the per-tunnel batching and mixing strategy, there are further \n"
|
||||
"capabilities for protecting against powerful attackers, such as allowing"
|
||||
@@ -1003,7 +600,7 @@ msgid ""
|
||||
"clove exposed includes delay instructions."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:456
|
||||
#: i2p2www/pages/site/get-involved/todo.html:168
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Performance related improvements are listed on the\n"
|
||||
@@ -4136,3 +3733,15 @@ msgid ""
|
||||
"href=\"http://%(zzz)s/forums/14\">translation forum on %(zzz)s</a>."
|
||||
msgstr ""
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
561
pots/docs.pot
561
pots/docs.pot
File diff suppressed because it is too large
Load Diff
@@ -8,7 +8,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: I2P website\n"
|
||||
"Report-Msgid-Bugs-To: http://trac.i2p2.de\n"
|
||||
"POT-Creation-Date: 2014-10-22 20:13+0000\n"
|
||||
"POT-Creation-Date: 2014-11-27 12:12+0000\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
@@ -396,317 +396,52 @@ msgid ""
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:15
|
||||
#: i2p2www/pages/site/get-involved/todo.html:53
|
||||
#: i2p2www/pages/site/get-involved/todo.html:38
|
||||
msgid "Core functionality"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:15
|
||||
#: i2p2www/pages/site/get-involved/todo.html:27
|
||||
#: i2p2www/pages/site/get-involved/todo.html:51
|
||||
#: i2p2www/pages/site/get-involved/todo.html:21
|
||||
#: i2p2www/pages/site/get-involved/todo.html:36
|
||||
msgid "link"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:17
|
||||
#: i2p2www/pages/site/get-involved/todo.html:56
|
||||
msgid "NAT/Firewall bridging via 1-hop restricted routes"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:20
|
||||
#: i2p2www/pages/site/get-involved/todo.html:129
|
||||
msgid "High degree transport layer with UDP, NBIO, or NIO"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:23
|
||||
#: i2p2www/pages/site/get-involved/todo.html:217
|
||||
#: i2p2www/pages/site/get-involved/todo.html:41
|
||||
msgid "NetworkDB and profile tuning and ejection policy for large nets"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:27
|
||||
#: i2p2www/pages/site/get-involved/todo.html:241
|
||||
#: i2p2www/pages/site/get-involved/todo.html:21
|
||||
#: i2p2www/pages/site/get-involved/todo.html:65
|
||||
msgid "Security / anonymity"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:29
|
||||
#: i2p2www/pages/site/get-involved/todo.html:244
|
||||
msgid ""
|
||||
"Per-hop tunnel id & new permuted TunnelVerificationStructure "
|
||||
"encryption"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:32
|
||||
#: i2p2www/pages/site/get-involved/todo.html:294
|
||||
msgid "Strict ordering of participants within tunnels"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:35
|
||||
msgid "Randomly permuted tunnel lengths"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:38
|
||||
#: i2p2www/pages/site/get-involved/todo.html:356
|
||||
#: i2p2www/pages/site/get-involved/todo.html:23
|
||||
#: i2p2www/pages/site/get-involved/todo.html:68
|
||||
msgid "Full blown n-hop restricted routes with optional trusted links"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:41
|
||||
#: i2p2www/pages/site/get-involved/todo.html:375
|
||||
#: i2p2www/pages/site/get-involved/todo.html:26
|
||||
#: i2p2www/pages/site/get-involved/todo.html:87
|
||||
msgid "Hashcash for routerIdentity, destination, and tunnel request"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:44
|
||||
#: i2p2www/pages/site/get-involved/todo.html:404
|
||||
#: i2p2www/pages/site/get-involved/todo.html:29
|
||||
#: i2p2www/pages/site/get-involved/todo.html:116
|
||||
msgid "Advanced tunnel operation (batching/mixing/throttling/padding)"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:47
|
||||
#: i2p2www/pages/site/get-involved/todo.html:441
|
||||
#: i2p2www/pages/site/get-involved/todo.html:32
|
||||
#: i2p2www/pages/site/get-involved/todo.html:153
|
||||
msgid "Stop & go mix w/ garlics & tunnels"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:51
|
||||
#: i2p2www/pages/site/get-involved/todo.html:455
|
||||
#: i2p2www/pages/site/get-involved/todo.html:36
|
||||
#: i2p2www/pages/site/get-involved/todo.html:167
|
||||
msgid "Performance"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:61
|
||||
msgid "Implemented in I2P 0.6.0.6"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:62
|
||||
msgid ""
|
||||
"The functionality of allowing routers to fully participate within the "
|
||||
"network \n"
|
||||
"while behind firewalls and NATs that they do not control requires some "
|
||||
"basic \n"
|
||||
"restricted route operation (since those peers will not be able to receive"
|
||||
" \n"
|
||||
"inbound connections). To do this successfully, you consider peers one of"
|
||||
" \n"
|
||||
"two ways:"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:72
|
||||
msgid ""
|
||||
"<b>Peers who have reachable interfaces</b> - these peers do not need to \n"
|
||||
"do anything special"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:76
|
||||
msgid ""
|
||||
"<b>Peers who do not have reachable interfaces</b> - these peers must "
|
||||
"build \n"
|
||||
"a tunnel pointing at them where the gateway is one of the peers they have"
|
||||
" \n"
|
||||
"established a connection with who has both a publicly reachable interface"
|
||||
" \n"
|
||||
"and who has agreed to serve as their 'introducer'."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:84
|
||||
msgid ""
|
||||
"To do this, peers who have no IP address simply connect to a few peers, \n"
|
||||
"build a tunnel through them, and publish a reference to those tunnels "
|
||||
"within \n"
|
||||
"their RouterInfo structure in the network database."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:89
|
||||
msgid ""
|
||||
"When someone wants to contact any particular router, they first must get"
|
||||
" \n"
|
||||
"its RouterInfo from the network database, which will tell them whether "
|
||||
"they \n"
|
||||
"can connect directly (e.g. the peer has a publicly reachable interface) \n"
|
||||
"or whether they need to contact them indirectly. Direct connections occur"
|
||||
" \n"
|
||||
"as normal, while indirect connections are done through one of the "
|
||||
"published \n"
|
||||
"tunnels."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:97
|
||||
msgid ""
|
||||
"When a router just wants to get a message or two to a specific hidden "
|
||||
"peer, \n"
|
||||
"they can just use the indirect tunnel for sending the payload. However, \n"
|
||||
"if the router wants to talk to the hidden peer often (for instance, as "
|
||||
"part \n"
|
||||
"of a tunnel), they will send a garlic routed message through the indirect"
|
||||
" \n"
|
||||
"tunnel to that hidden peer which unwraps to contain a message which "
|
||||
"should \n"
|
||||
"be sent to the originating router. That hidden peer then establishes an \n"
|
||||
"outbound connection to the originating router and from then on, those two"
|
||||
" \n"
|
||||
"routers can talk to each other directly over that newly established "
|
||||
"direct \n"
|
||||
"connection."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:108
|
||||
msgid ""
|
||||
"Of course, that only works if the originating peer can receive "
|
||||
"connections \n"
|
||||
"(they aren't also hidden). However, if the originating peer is hidden, "
|
||||
"they \n"
|
||||
"can simply direct the garlic routed message to come back to the "
|
||||
"originating \n"
|
||||
"peer's inbound tunnel."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:114
|
||||
msgid ""
|
||||
"This is not meant to provide a way for a peer's IP address to be "
|
||||
"concealed, \n"
|
||||
"merely as a way to let people behind firewalls and NATs fully operate "
|
||||
"within \n"
|
||||
"the network. Concealing the peer's IP address adds a little more work, as"
|
||||
" \n"
|
||||
"described <a href=\"#fullRestrictedRoutes\">below.</a>"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:120
|
||||
msgid ""
|
||||
"With this technique, any router can participate as any part of a tunnel."
|
||||
" \n"
|
||||
"For efficiency purposes, a hidden peer would be a bad choice for an "
|
||||
"inbound \n"
|
||||
"gateway, and within any given tunnel, two neighboring peers wouldn't want"
|
||||
" \n"
|
||||
"to be hidden. But that is not technically necessary."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:132
|
||||
msgid "Both UDP and NIO have been Implemented in I2P"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:133
|
||||
msgid ""
|
||||
"Standard TCP communication in Java generally requires blocking socket \n"
|
||||
"calls, and to keep a blocked socket from hanging the entire system, those"
|
||||
" \n"
|
||||
"blocking calls are done on their own threads. Our current TCP transport \n"
|
||||
"is implemented in a naive fashion - for each peer we are talking to, we \n"
|
||||
"have one thread reading and one thread writing. The reader thread simply"
|
||||
" \n"
|
||||
"loops a bunch of read() calls, building I2NP messages and adding them \n"
|
||||
"to our internal inbound message queue, and the writer thread pulls "
|
||||
"messages \n"
|
||||
"off a per-connection outbound message queue and shoves the data through \n"
|
||||
"write() calls."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:144
|
||||
msgid ""
|
||||
"We do this fairly efficiently, from a CPU perspective - at any time, \n"
|
||||
"almost all of these threads are sitting idle, blocked waiting for "
|
||||
"something \n"
|
||||
"to do. However, each thread consumes real resources (on older Linux "
|
||||
"kernels, \n"
|
||||
"for instance, each thread would often be implemented as a fork()'ed "
|
||||
"process). \n"
|
||||
"As the network grows, the number of peers each router will want to talk \n"
|
||||
"with will increase (remember, I2P is fully connected, meaning that any \n"
|
||||
"given peer should know how to get a message to any other peer, and "
|
||||
"restricted \n"
|
||||
"route support will probably not significantly reduce the number of "
|
||||
"connections \n"
|
||||
"necessary). This means that with a 100,000 router network, each router \n"
|
||||
"will have up to 199,998 threads just to deal with the TCP connections!"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:156
|
||||
msgid ""
|
||||
"Obviously, that just won't work. We need to use a transport layer that \n"
|
||||
"can scale. In Java, we have two main camps:"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:161
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Implemented in I2P 0.6 (\"SSU\") as documented <a "
|
||||
"href=\"%(ssu)s\">elsewhere</a>"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:164
|
||||
msgid ""
|
||||
"Sending and receiving UDP datagrams is a connectionless operation - if \n"
|
||||
"we are communicating with 100,000 peers, we simply stick the UDP packets"
|
||||
" \n"
|
||||
"in a queue and have a single thread pulling them off the queue and "
|
||||
"shoving \n"
|
||||
"them out the pipe (and to receive, have a single thread pulling in any \n"
|
||||
"UDP packets received and adding them to an inbound queue)."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:171
|
||||
msgid ""
|
||||
"However, moving to UDP means losing the benefits of TCP's ordering, "
|
||||
"congestion \n"
|
||||
"control, MTU discovery, etc. Implementing that code will take significant"
|
||||
" \n"
|
||||
"work, however I2P doesn't need it to be as strong as TCP. Specifically, \n"
|
||||
"a while ago I was taking some measurements in the simulator and on the \n"
|
||||
"live net, and the vast majority of messages transferred would fit easily"
|
||||
" \n"
|
||||
"within a single unfragmented UDP packet, and the largest of the messages"
|
||||
" \n"
|
||||
"would fit within 20-30 packets. As mule pointed out, TCP adds a "
|
||||
"significant \n"
|
||||
"overhead when dealing with so many small packets, as the ACKs are within"
|
||||
" \n"
|
||||
"an order of magnitude in size. With UDP, we can optimize the transport \n"
|
||||
"for both efficiency and resilience by taking into account I2P's "
|
||||
"particular \n"
|
||||
"needs."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:184
|
||||
msgid "It will be a lot of work though."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:187
|
||||
msgid "NIO or NBIO"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:188
|
||||
msgid "NIO Implemented in I2P 0.6.1.22 (\"NTCP\")"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:191
|
||||
msgid ""
|
||||
"In Java 1.4, a set of \"New I/O\" packages was introduced, allowing Java"
|
||||
" \n"
|
||||
"developers to take advantage of the operating system's nonblocking IO \n"
|
||||
"capabilities - allowing you to maintain a large number of concurrent IO \n"
|
||||
"operations without requiring a separate thread for each. There is much \n"
|
||||
"promise with this approach, as we can scalable handle a large number of \n"
|
||||
"concurrent connections and we don't have to write a mini-TCP stack with \n"
|
||||
"UDP. However, the NIO packages have not proven themselves to be battle-"
|
||||
"ready, \n"
|
||||
"as the Freenet developer's found. In addition, requiring NIO support "
|
||||
"would \n"
|
||||
"mean we can't run on any of the open source JVMs like <a "
|
||||
"href=\"http://www.kaffe.org/\">Kaffe</a>, \n"
|
||||
"as <a href=\"http://www.classpath.org/\">GNU/Classpath</a> has only "
|
||||
"limited \n"
|
||||
"support for NIO. <i>(note: this may not be the case anymore, as there \n"
|
||||
"has been some progress on Classpath's NIO, but it is an unknown "
|
||||
"quantity)</i>"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:205
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Another alternative along the same lines is the <a href=\"%(link)s\">Non"
|
||||
" \n"
|
||||
"Blocking I/O</a> package - essentially a cleanroom NIO implementation \n"
|
||||
"(written before NIO was around). It works by using some native OS code \n"
|
||||
"to do the nonblocking IO, passing off events through Java. It seems to \n"
|
||||
"be working with Kaffe, though there doesn't seem to be much development \n"
|
||||
"activity on it lately (likely due to 1.4's NIO deployment)."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:220
|
||||
#: i2p2www/pages/site/get-involved/todo.html:44
|
||||
msgid ""
|
||||
"Within the current network database and profile management "
|
||||
"implementation, \n"
|
||||
@@ -729,152 +464,14 @@ msgid ""
|
||||
"code yet, since we aren't going to need it for a while."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:235
|
||||
#: i2p2www/pages/site/get-involved/todo.html:59
|
||||
msgid ""
|
||||
"That said, as the network grows we are going to want to keep these "
|
||||
"considerations \n"
|
||||
"in mind. We will have some work to do, but we can put it off for later."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:247
|
||||
#: i2p2www/pages/site/get-involved/todo.html:331
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Addressed in I2P 0.5 as documented <a "
|
||||
"href=\"%(tunnelimpl)s\">elsewhere</a>"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:250
|
||||
msgid ""
|
||||
"Right now, if Alice builds a four hop inbound tunnel starting at Elvis, \n"
|
||||
"going to Dave, then to Charlie, then Bob, and finally Alice "
|
||||
"(A<--B<--C<--D<--E), \n"
|
||||
"all five of them will know they are participating in tunnel \"123\", as \n"
|
||||
"the messages are tagged as such. What we want to do is give each hop "
|
||||
"their \n"
|
||||
"own unique tunnel hop ID - Charlie will receive messages on tunnel 234 \n"
|
||||
"and forward them to tunnel 876 on Bob. The intent is to prevent Bob or \n"
|
||||
"Charlie from knowing that they are in Alice's tunnel, as if each hop in \n"
|
||||
"the tunnel had the same tunnel ID, collusion attacks aren't much work."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:260
|
||||
msgid ""
|
||||
"Adding a unique tunnel ID per hop isn't hard, but by itself, "
|
||||
"insufficient. \n"
|
||||
"If Dave and Bob are under the control of the same attacker, they wouldn't"
|
||||
" \n"
|
||||
"be able to tell they are in the same tunnel due to the tunnel ID, but \n"
|
||||
"would be able to tell by the message bodies and verification structures \n"
|
||||
"by simply comparing them. To prevent that, the tunnel must use layered \n"
|
||||
"encryption along the path, both on the payload of the tunneled message \n"
|
||||
"and on the verification structure (used to prevent simple tagging "
|
||||
"attacks). \n"
|
||||
"This requires some simple modifications to the TunnelMessage, as well \n"
|
||||
"as the inclusion of per-hop secret keys delivered during tunnel creation"
|
||||
" \n"
|
||||
"and given to the tunnel's gateway. We must fix a maximum tunnel length \n"
|
||||
"(e.g. 16 hops) and instruct the gateway to encrypt the message to each \n"
|
||||
"of the 16 delivered secret keys, in reverse order, and to encrypt the \n"
|
||||
"signature of the hash of the (encrypted) payload at each step. The "
|
||||
"gateway \n"
|
||||
"then sends that 16-step encrypted message, along with a 16-step and "
|
||||
"16-wide \n"
|
||||
"encrypted mapping to the first hop, which then decrypts the mapping and \n"
|
||||
"the payload with their secret key, looking in the 16-wide mapping for \n"
|
||||
"the entry associated with their own hop (keyed by the per-hop tunnel ID)"
|
||||
" \n"
|
||||
"and verifying the payload by checking it against the associated signed \n"
|
||||
"hash."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:281
|
||||
msgid ""
|
||||
"The tunnel gateway does still have more information than the other peers"
|
||||
" \n"
|
||||
"in the tunnel, and compromising both the gateway and a tunnel participant"
|
||||
" \n"
|
||||
"would allow those peers to collude, exposing the fact that they are both"
|
||||
" \n"
|
||||
"in the same tunnel. In addition, neighboring peers know that they are \n"
|
||||
"in the same tunnel anyway, as they know who they send the message to (and"
|
||||
" \n"
|
||||
"with IP-based transports without restricted routes, they know who they \n"
|
||||
"got it from). However, the above two techniques significantly increase \n"
|
||||
"the cost of gaining meaningful samples when dealing with longer tunnels."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:297
|
||||
msgid "Implemented in release 0.6.2"
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:300
|
||||
#, python-format
|
||||
msgid ""
|
||||
"As Connelly <a href=\"%(link)s\">proposed</a> to deal with the\n"
|
||||
"<a href=\"%(pdf1)s\">predecessor attack</a> <a href=\"%(pdf2)s\">(2008\n"
|
||||
"update)</a>, keeping the order of peers within our tunnels consistent \n"
|
||||
"(aka whenever Alice creates a tunnel with both Bob and Charlie in it, \n"
|
||||
"Bob's next hop is always Charlie), we address the issue as Bob doesn't \n"
|
||||
"get to substantially sample Alice's peer selection group. We may even \n"
|
||||
"want to explicitly allow Bob to participate in Alice's tunnels in only \n"
|
||||
"one way - receiving a message from Dave and sending it to Charlie - and \n"
|
||||
"if any of those peers are not available to participate in the tunnel (due"
|
||||
" \n"
|
||||
"to overload, network disconnection, etc), avoid asking Bob to participate"
|
||||
" \n"
|
||||
"in any tunnels until they are back online."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:315
|
||||
msgid ""
|
||||
"More analysis is necessary for revising the tunnel creation - at the \n"
|
||||
"moment, we simply select and order randomly within the peer's top tier \n"
|
||||
"of peers (ones with fast + high capacity)."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:320
|
||||
msgid ""
|
||||
"Adding a strict ordering to peers in a tunnel also improves the anonymity"
|
||||
" \n"
|
||||
"of peers with 0-hop tunnels, as otherwise the fact that a peer's gateway"
|
||||
" \n"
|
||||
"is always the same would be particularly damning. However, peers with \n"
|
||||
"0-hop tunnels may want to periodically use a 1-hop tunnel to simulate \n"
|
||||
"the failure of a normally reliable gateway peer (so every MTBF*(tunnel \n"
|
||||
"duration) minutes, use a 1-hop tunnel)."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:337
|
||||
msgid ""
|
||||
"Without tunnel length permutation, if someone were to somehow detect that"
|
||||
" \n"
|
||||
"a destination had a particular number of hops, it might be able to use "
|
||||
"that \n"
|
||||
"information to identify the router the destination is located on, per the"
|
||||
" \n"
|
||||
"predecessor attack. For instance, if everyone has 2-hop tunnels, if Bob \n"
|
||||
"receives a tunnel message from Charlie and forwards it to Alice, Bob "
|
||||
"knows \n"
|
||||
"Alice is the final router in the tunnel. If Bob were to identify what "
|
||||
"destination \n"
|
||||
"that tunnel served (by means of colluding with the gateway and harvesting"
|
||||
" \n"
|
||||
"the network database for all of the LeaseSets), he would know the router"
|
||||
" \n"
|
||||
"on which that destination is located (and without restricted routes, that"
|
||||
" \n"
|
||||
"would mean what IP address the destination is on)."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:349
|
||||
msgid ""
|
||||
"It is to counter user behavior that tunnel lengths should be permuted, \n"
|
||||
"using algorithms based on the length requested (for example, the 1/MTBF \n"
|
||||
"length change for 0-hop tunnels outlined above)."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:359
|
||||
#: i2p2www/pages/site/get-involved/todo.html:71
|
||||
msgid ""
|
||||
"The restricted route functionality described before was simply a "
|
||||
"functional \n"
|
||||
@@ -896,7 +493,7 @@ msgid ""
|
||||
"to forward it as requested."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:378
|
||||
#: i2p2www/pages/site/get-involved/todo.html:90
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Within the network, we will want some way to deter people from consuming"
|
||||
@@ -910,7 +507,7 @@ msgid ""
|
||||
"to make certain requests \"expensive\"."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:386
|
||||
#: i2p2www/pages/site/get-involved/todo.html:98
|
||||
msgid ""
|
||||
"<a href=\"http://www.hashcash.org/\">Hashcash</a> is one technique that \n"
|
||||
"we can use to anonymously increase the \"cost\" of doing certain "
|
||||
@@ -928,7 +525,7 @@ msgid ""
|
||||
"with few resources."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:397
|
||||
#: i2p2www/pages/site/get-involved/todo.html:109
|
||||
msgid ""
|
||||
"There are a few other algorithms that we can explore for making those \n"
|
||||
"requests for resources \"nonfree\", and further research on that front is"
|
||||
@@ -936,7 +533,7 @@ msgid ""
|
||||
"appropriate."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:407
|
||||
#: i2p2www/pages/site/get-involved/todo.html:119
|
||||
#, python-format
|
||||
msgid ""
|
||||
"To powerful passive external observers as well as large colluding "
|
||||
@@ -957,7 +554,7 @@ msgid ""
|
||||
"tunnel mixing strategies."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:420
|
||||
#: i2p2www/pages/site/get-involved/todo.html:132
|
||||
msgid ""
|
||||
"In addition to the anonymity aspects of more varied tunnel operation, \n"
|
||||
"there is a functional dimension as well. Each peer only has a certain \n"
|
||||
@@ -975,7 +572,7 @@ msgid ""
|
||||
"available."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:433
|
||||
#: i2p2www/pages/site/get-involved/todo.html:145
|
||||
msgid ""
|
||||
"In addition, we may want to implement code to dynamically reroute tunnels"
|
||||
" \n"
|
||||
@@ -985,7 +582,7 @@ msgid ""
|
||||
"with instructions to redefine the next-hop in the tunnel."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:444
|
||||
#: i2p2www/pages/site/get-involved/todo.html:156
|
||||
msgid ""
|
||||
"Beyond the per-tunnel batching and mixing strategy, there are further \n"
|
||||
"capabilities for protecting against powerful attackers, such as allowing"
|
||||
@@ -1000,7 +597,7 @@ msgid ""
|
||||
"clove exposed includes delay instructions."
|
||||
msgstr ""
|
||||
|
||||
#: i2p2www/pages/site/get-involved/todo.html:456
|
||||
#: i2p2www/pages/site/get-involved/todo.html:168
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Performance related improvements are listed on the\n"
|
||||
|
Reference in New Issue
Block a user