A new distributed file-sharing system featuring fast, exhaustive searches and modest network bandwidth requirements. Written in Java 1.1 (with Swing GUI) for platform independence. (free and open-source, of course) This free package contains two pieces of software (runnable Java classes): konspire.server.Server-- command-line distributed indexing server. konspire.client.Client-- graphical client for searching, downloading, and serving files to other clients Features Files: -- supports downloading and serving any kind of file (e.g., text, software, music, movies...) -- all file transfers are resumable (e.g., if connection is broken or transfer is canceled) Searching: -- search query load shared by a distributed network of file index servers (thus, searches are fast) -- multiple search terms supported (files returned match all terms entered) -- partial string matches supported (e.g., searching for "uta" would match "utah.zip" and "computation.exe") -- every search is exhaustive (if a file exists in the system that matches all search terms, it will be returned) -- all load from file searching carried by servers (except for load on client that issues a search request) -- file name index is kept in a novel data structure that makes substring searches both fast and space efficient Transfers: -- supports simultaneous downloads and uploads -- fast file transfers (comparable to FTP; 500 KB/sec has been witnessed on machines with fast connections) -- all file transfer load carried by client (servers are only involved in indexing and searching, not file serving) Portability: --written in pure Java 1.1, so it runs on almost every platform (including: Windows 95/98/NT, MacOS, MacOSX, Linux, and Solaris) --compiled applications fit easily on a floppy disk so they can be installed and run *anywhere* System requirements Server: -- Java 1.1 (or higher) installed -- internet connection -- not behind a firewall (or a tunnel set up by firewall administrator for konspire) Client -- Java 1.1 (or higher) installed -- Swing installed (can be installed on any platform that supports Java 1.1). Note that swing comes built-in with Java 1.2 and higher. -- internet connection -- (to serve files to others) not behind a firewall (or a tunnel set up by firewall administrator for konspire) -- searching and downloading will work from behind a firewall Getting required system software: -- download Java from Sun's Java products site -- download Swing from Sun's JFC site -- download Macintosh Runtime for Java from Apple's Java site Beta Testers If you'd like to help us test the beta version of konspire, feel free to download the software listed below. So far, we've worked out most of the bugs in this version, and we believe there are no more "show-stoppers." However, there may be a few minor bugs that only occur in particular sets of circumstances. If you run into one of these bugs, you may see a Java stack-trace in the command-line window (Java warns that an exception occurred and tries to tell you where it occurred with a list of "at..." lines). If you see a stack trace, please copy and paste it into an email to us (in Windows, you may need to put the command line window into "mark" mode using the edit sub-menu to be able to select text). In the email, please also include a rough description of what you were doing when the stack-trace happened. Alternately, your bug may not show up in the form of a stack-trace. Perhaps part of the program won't work correctly (e.g., a button will not respond, etc.) Please look through the documentation *before* you report this kind of bug since the "bug" may actually be correct behavior (e.g., you need to be connected to a server before you can click the search button). Again, in your email about the bug, please include what you were doing when the bug occurred. Finally, we're also looking for general, small suggestions about how to make konspire better. For instance, "It would be nice if there was a button that let you do [some small task]" is a small, appropriate suggestion. "It would be nice if konspire played MP3 files to the speakers during MP3 downloads" is not a small, reasonable suggestion. Please explain you suggestion completely in your email. Please send all bug reports / suggestions via email to: konspirebugs@apnrecords.org View the list of Bug Fixes Live Server List To see a recent list of live servers, click here. You can use a server from this list a seed server for starting a konspire client or server for the first time. Downloads
Supporting HardenedCriminal software konspire, like all HardenedCriminal projects, is completely free. We're not accepting any monetary donations in support of these projects. However, if you're really itching to help us out, you might want to visit our associate record label. APN records is a not-for-profit label that seeks to promote interesting music from all genres. While visiting the site, you can learn about APN's roster of artists and download 14, full-length, high-quality MP3 tracks. APN is run by the same people who run HardenedCriminal software (some of us even have our musical work on the label). Check it out. www.apnrecords.org Why is konspire better? After glancing through the above feature list, konspire may seem to be quite similar to other popular distributed file-sharing systems. However, besides using Java for extraordinary portability, konspire makes many improvements over other popular packages in the way that its file system operates. On *almost* every point, konspire is superior to other available file-sharing systems. See below for a more detailed analysis. Please note that this analysis is not meant to knock these programs or their authors. These are wonderful programs, and their authors are near-geniuses. konspire would not exist without the mental sparks triggered by using and enjoying these programs. This analysis is meant to be an honest, feature-by-feature comparison. Why konspire is better than Gnutella Visit the Gnutella website. Why konspire is better than Napster Visit the Napster website. Table comparing features of konspire, Gnutella, and Napster. konspire is written in Java. Many may point to Java as konspire's main weakpoint, since performance of Java applications can pale in comparison to natively compiled C/C++ applications. We've found that for the tasks konspire performs, Java works fine, since network bandwidth, not code speed, is usually the main limitation. We chose to use Java for a number of important reasons. Why Java? Documentation Using the konspire server Using the konspire client How konspire works How the konspire file index database works How to adjust client and server launch parameters in MacOS Developer Documentation Browse the entire konspire package javadoc Screenshot This screenshot shows the konspire client Swing-based graphical user interface. (click to enlarge) Source Browse the source directory. Download the entire source tree: konspire_src.tar.gz (42 KiB) (ver. Beta3) |