User:WhiteHatLurker/Proxomitron

Proxomitron, the Universal Web filter, is a filtering web proxy, written by Scott R. Lemmon. Proxomitron intercepts pages coming from web servers before they reach the user's browser, and alters the page content as the user desires by removing or adding text. The filter can also block particular requests from being sent to web servers, based on the web page address requested. This software is no longer under development.

The program is often used to block pop-ups and banners, to remove embedded sounds and animation from web pages, and to modify the appearance or content of web pages. The user can specify the items to add, remove, block or enhance through the use of filters written in a matching language, similar to the standard regular expressions used in text editing.

Use of the program requires knowledge of the Proxomitron scripting language, as well as some familiarity with at least one of HTTP, HTML, JavaScript, and CSS. The scripting interface was not designed to be user-friendly. Because of these complications, the program can be difficult to customise for a "regular" user. Several default filters come with the program, and more advanced sets can be downloaded from filter sites.

Features
The following items are the basic applications of the program.
 * Filter page content
 * Using the scripting language, filters are prepared with editing commands to match and replace text in the uploaded page. Pages are selected by matching the pages URL with a specified pattern.


 * Filter stream based on headers
 * There are also filters for incoming and outgoing HTTP headers. This includes cookie management.


 * Create lists for filters
 * Text files (known as "blocklists") can be used as sources for patterns for filter matches.


 * View traffic between server and browser
 * The log window permits the user to see the HTTP traffic between the browser and server. This can (optionally) include any POSTed data.


 * Uncompress data on the fly
 * With the ZLIB library, the Proxomitron can uncompress GZIP compressed data streams and filter pages delivered in compressed modes.


 * Filter "secure" channels
 * With libraries to provide the SSL routines, the Proxomitron can filter secure, encoded streams. Since this forces the proxy to act as a "man in the middle", this should not be used in most cases.

History
The first public release of Proxomitron (Naoko 2) was in 1999 as a download via Simtel. The program was distributed under a "ShonenWare" license; it was free to use, but if the user bought a Shonen Knife CD and convinced Lemmon that he or she had listened to it, then Lemmon would consider that to be sufficient to register that user.

Releases that followed were all named "Naoko" (for Naoko Yamano) followed by a release number. (Release versions were 3, 3(b), 4.0, 4.1, 4.2, 4.3, 4.4, 4.5.)

The May 2003 release of Naoko 4.5 was followed very quickly by the removal of the program's web site, and Lemmon's declared termination of continued development of Proxomitron. However, a subsequent release was made in June 2003 to revert some program changes to the behavior prior to 4.5.

After the release of Naoko 4.5 (June), development was permanently discontinued and the official site had the message:


 * 消
 * え
 * ま
 * し
 * た

This reads "kiemashita" and translates to "it went out" or "gone." The original home webpage is no longer accessible.

The author, Scott R. Lemmon, died 1 May 2004 at the age of 36.

Current status
As this was a closed source project, Proxomitron is no longer being maintained nor developed. However, the Proxomitron program is still functional and there is a community of users who provide support for it through electronic forums (see external links).

Extra user interface features have been made available through the use of patches available at the ProxoPatcher website. An open source project called Proximodo (see below) has been started to provide a replacement.

Many current browsers do contain features similar to the ones that Proxomitron provided - blocking advertisements and pop-ups, for example. Other browser features or add-ons such as Greasemonkey for Firefox, or the user scripts in Opera also allow for cosmetic modification of web pages.

Filter sets

 * Sidki: Advanced filter sets and SSL files
 * JD5000: Proxomitron advanced filters/configuration