Perfect Dark (P2P)
From Wikipedia, the free encyclopedia
| This article needs references that appear in reliable third-party publications. Primary sources or sources affiliated with the subject are generally not sufficient for a Wikipedia article. Please add more appropriate citations from reliable sources. (October 2007) |
| Developer(s) | Kaichō (会長, "The Chairman") |
|---|---|
| Stable release | version 1.06 "Nothing Ends" / 2009-10-27 |
| Operating system | Microsoft Windows Wine officially supported[1] |
| Available in | Japanese, English |
| Type | File sharing |
| License | Closed source |
Perfect Dark is a Japanese peer-to-peer file-sharing (P2P) application designed for use with Microsoft Windows (not to be confused with the video game franchise Perfect Dark). Its author is known by the pseudonym Kaichō (会長, lit. "The Chairman"). Perfect Dark was developed with the intention for it to be the successor to both Winny and Share.[2] As of version 1.02, code named "STAND ALONE COMPLEX", there is support for the program to run in English, an option that can be selected when the program is installed.
Contents |
[edit] Open Testing
Presently, since Perfect Dark is still being actively developed, the author does not ask that the program's users at this point become dedicated "users" of the software. Instead the author asks them to participate in the test phase. Through this test phase, the author hopes for bug reports and discussion that will help shape Perfect Dark into the most useful application possible.
In comparison to its predecessors Winny and Share, the bandwidth and hard drive space requirements have increased. The minimum upload speed required by perfect dark is 100KB/sec, and it also requires a minimum of 40GB of hard drive space for its "unity" (cache) folder.
[edit] Overview
Like other Japanese sharing software, Perfect Dark has its own proprietary P2P network called "unity".
One of the biggest characteristics of Perfect Dark is the strong searching capability. By using distributed hash tables searching performance is greatly improved compared to either Winny or Share making it unnecessary to rely on the construction of node clusters. This frees users from inputting or switching cluster keywords and also enables users to search for files of different genres at the same time. This is in contrast to "Winny" and "Share", where cluster keywords, such as "DVDISO" or "アニメ"/"anime" are used to specify what types of files the user is searching for. These keywords segregate the network and introduce delays when the user is to change them.
The concept of "tree search" brings its strong searching ability. Also, the flexible use of AND, OR and NOT like operators helps filtering out undesirable results.
Perfect Dark requires more bandwidth and HDD space than Winny and Share, forcing fairer loads for all users. If a user does not have Perfect Dark configured with the proper settings or if the user is unable to support the settings then download rates will be throttled and priority will be given to other users. The intention of this is to increase the retention rate of the Perfect Dark network.
The author implements an architecture called dkt+dht+du in the design of the network. Other features besides file sharing are also given considerations. For instance, a simple bulletin system has been implemented.
[edit] dkt+dht+du
Respectively, they stand for Distributed Keyword Table, Distributed Hash Table and Distributed Unity, which compose the whole network according to the author.
dkt is mainly for providing effective file searching, while dht+du is for effective file sharing and anonymity enhancement.
[edit] Security
The overall structure of the Perfect Dark network broadly resembles recent versions of Freenet, only with a heavier use of distributed hash tables.
The anonymity relies on a mixnet where traffic is forwarded according to a certain probability, as well as the deniability of the distributed datastore ("unity"), which is stored and transferred in encrypted blocks, with the keys distributed separately.
Perfect Dark uses RSA (1024-bit) and AES (128-bit) to encrypt data transmitted between peers. Exchanged keys are cached for efficiency.
Published files and boards (including automatic updates from the author, where enabled) are usually signed with 160-bit ECDSA signatures. Automatic updates are additionally protected with a 2048-bit RSA signature.
The author believes that initially, a layer of obscurity due to the closed-source nature of the program will frustrate attempted attacks on the anonymity, as well as network degradation due to "free riders" and junk files; however, the author has stated that it may become open-source in the future should an acceptable solution to these problems be found.
There also came the news that Perfect Dark has been deciphered by NetAgent, which allegedly has the capability to determine encrypted information such as IP addresses, port numbers, keywords, version numbers of clients, and even file names, file sizes, cache creation dates and ratings from the public nodes.[3]