Turtle F2F
title: "Turtle F2F" type: doc version: 1 created: 2026-02-28 author: "Wikipedia contributors" status: active scope: public tags: ["anonymity-networks", "internet-privacy-software", "file-sharing-networks", "file-sharing-software", "free-routing-software", "free-network-related-software", "free-software-programmed-in-c++", "software-using-the-gnu-general-public-license"] topic_path: "technology/networking" source: "https://en.wikipedia.org/wiki/Turtle_F2F" license: "CC BY-SA 4.0" wikipedia_page_id: 0 wikipedia_revision_id: 0
::data[format=table title="Infobox software"]
| Field | Value |
|---|---|
| name | Turtle F2F |
| logo | [[Image:turtle-logo.png |
| screenshot | |
| developer | Petr Matejka |
| Bogdan Popescu | |
| released | 2004 (v0.0.2) |
| discontinued | yes |
| latest release date | |
| latest preview date | |
| frequently updated | |
| programming language | C++ |
| operating system | Linux |
| language | English |
| language count | |
| genre | Anonymous P2P / friend-to-friend |
| license | GNU GPL |
| website | |
| :: |
| name = Turtle F2F | title = | logo = [[Image:turtle-logo.png|150px]] | logo caption = | logo_size = | logo_alt = | screenshot = | caption = | screenshot_size = | screenshot_alt = | collapsible = | author = | developer = Petr Matejka Bogdan Popescu | released = 2004 (v0.0.2) | discontinued = yes | latest release version = | latest release date = | latest preview version = | latest preview date = | frequently updated = | programming language = C++ | operating system = Linux | platform = | size = | language = English | language count = | language footnote = | genre = Anonymous P2P / friend-to-friend | license = GNU GPL | alexa = | website = | standard = | AsOf = Turtle was a free anonymous peer-to-peer network project being developed at the Vrije Universiteit in Amsterdam, involving professor Andrew Tanenbaum. It is not developed anymore. Like other anonymous P2P software, it allows users to share files and otherwise communicate without fear of legal sanctions or censorship.
Architecture
Technically, Turtle is a friend-to-friend (F2F) network - a special type of peer-to-peer network in which all your communication goes only to your friends, and then to their friends, and so on, to the ultimate destination.
The basic idea behind Turtle is to build a P2P overlay on top of pre-existing trust relationships among Turtle users. Each user acts as node in the overlay by running a copy of the Turtle client software. Unlike existing P2P networks, Turtle does not allow arbitrary nodes to connect and exchange information. Instead, each user establishes secure and authenticated channels with a limited number of other nodes controlled by trusted people (friends).
In the Turtle overlay, both queries and results move hop by hop; the net result is that information is only exchanged between people that trust each other and is always encrypted. Consequently, a snooper or adversary has no way to determine who is requesting / providing information, and what that information is. Given this design, a Turtle network offers a number of useful security properties, such as confined damage in case of node compromise, and resilience against denial of service attacks.
References
- https://turtle-p2p.sourceforge.net/turtleinitial.pdf "Safe and Private Data Sharing with Turtle: Friends Team-Up and Beat the System"
- http://www.usenix.org/events/sec05/wips/popescu.pdf "Turtle: Safe and Private Data Sharing" from Usenix 2005 conference
- http://delis.upb.de/paper/DELIS-TR-169.pdf from the "Applied Public Key Infrastructure: 4th International Workshop: Iwap 2005"
- http://csdl2.computer.org/persagen/DLAbsToc.jsp?resourcePath=/dl/proceedings/&toc=comp/proceedings/icpads/2005/2281/01/22811toc.xml&DOI=10.1109/ICPADS.2005.215 from the "11th International Conference on Parallel and Distributed Systems (ICPADS'05)"
::callout[type=info title="Wikipedia Source"] This article was imported from Wikipedia and is available under the Creative Commons Attribution-ShareAlike 4.0 License. Content has been adapted to SurfDoc format. Original contributors can be found on the article history page. ::