The Infotrope Project

Hacking protocols

Welcome to The Infotrope Project's Trac. This is part Wiki, part weird subversion interface, and part ticket tracker. To use it fully, you'll need to register - you can then edit pages, create tickets, etc.

About the project

The Infotrope Project is concerned with email and groupware based purely on open standards, without using a single monolithic server. There's a few distinct projects that have come out of this, all so far GPL licensed open source. It's almost entirely the code output of Dave Cridland, or "me", as I like to call myself, but anyone's welcome to join in.

Infotrope Polymer is an email client geared towards network performance and roaming. It has full ACAP support, support for full Lemonade Profile mail, and performs reasonably well over high latency, low bandwidth connections like mobile phone links.

Infotrope Telomer is a work-in-progress email client for the Nokia 770 Internet Tablet. Like Polymer, it has full ACAP support, support for the full Lemonade Profile, and works fine over mobile phone or wireless LANs. It's barely suitable for the end-user, just yet.

Infotrope ACAP Server, or IAS, is a full implementation of RFC2244, generally suitable for small to medium installations. There's a public ACAP server I run, as well, at public-acap.dave.cridland.net - a standard ACAP client, or one authenticating using PLAIN, will be able to automatically create and provision accounts on it just by logging into it.

Infotrope Python Library, or IPL, is a Python library used by Polymer and Telomer which provides IMAP, Submission, ACAP, XMPP, ManageSieve?, and NNTP support to applications. It can be used in simple scripts, or large applications.

ACAP Mozilla - seeking a better name. Brings late 90's technology to Firefox. (Really early stages, help welcome).

Other Stuff Here

There's also other stuff, like a slightly hacked copy of pyOpenSSL (official versions here) available to download. This version allows the IPL to track post-TLS bandwidth figures, detect if TLS compression is on or off, and tell the world what cipher is used.

About the technologies

The Infotrope Project uses purely open standards, the core ones are covered here:

ACAP is a protocol concerned with the storage and access of small units of structured data, primarily designed to support roaming and configuration management for Internet clients. The Infotrope Project provides both an ACAP client library in Python and an ACAP server in C++.

IMAP is a protocol concerned with the storage and access of mailboxes containing email messages. It has been extended to support Fax and voice messages, too. The Infotrope Project provides a heavily extended IMAP client library.

Submission? is a protocol adapted from the better known ESMTP designed for mail clients to send messages. It supports a suite of extensions to increase security and streamline this initial submission. The Infotrope Project provides a heavily extended Submission client library.

Sieve? is a simple scripting language designed expressly for the purpose of filtering messages. Typically these are filtered on delivery.

Lemonade? is a profile which defines a set of extensions to Submission and IMAP suited to low-bandwidth, high-latency, email access for possibly constrained devices. Mobile email is a typical example of a Lemonade deployment, but there's plenty of other less obvious uses. The Infotrope Project's IMAP and Submission libraries cover almost everything in the Lemonade Profile. (The exceptions are SIZE and DSN, should you wish to know).

SASL? is the Simple Authentication and Security Layer, and provides pluggable authentication and encryption facilities. The Infotrope Project's client library also includes a custom-built SASL client library, used by the protocol clients, providing shared credential caching across multiple services.

TLS? is the replacement to SSL. The Infotrope Project's client library will use TLS where available automatically, including using anonymous ciphers and compression.

ManageSIEVE? is a proposal for managing SIEVE scripts remotely. The Infotrope Project provides a client library for the protocol.

Supporting Companies

Infotrope Polymer is developed in association with Isode. Isode provided me with development versions of their M-Box IMAP server. Many of the features of the next generation Lemonade Profile have been developed as a direct result of this association. Isode Ltd are no longer directly involved, as such, but allow me to continue this as a hobby, since I now work for them.

The Nokia 770 port of Polymer, Telomer, is developed with support from Oryx Mailsystems GMBH. This collaboration is already resulting in the first Lemonade capable IMAP client on a mobile device.