TextecEncrypted Text Format Specification and ToolsIf you are here because you are looking for notex program, you can proceed directly to Notex section. This Web-page is a working repository for a family of programs which share a central feature: strong (128-bit) encryption of text in a form (referred to as "textec" in this document) which makes such text suitable for communication between different application programs not necessarily designed to operate with encrypted data, as well as for communication of protected text between applications running on different operating systems and on different hardware architectures. All core C language functions - most notably those that perform Blowfish encryption and decryption - are part of the source code collection posted here. They have been rigorously tested on a large number of different computer systems. Textec is designed assuming a typical "unit" of protected data consists mostly - but not entirely - of natural language text and that its volume is what would be expected in a typical e-mail message or a narrative record-element of a computerized database. The encrypted text format attempts to be both simple and robust. In particular, textec "by design" steers away from "tags", "headers" or similar identifiers. Flexibility and simplicity have been the primary design principles. Specifically, and in contrast to MIME protocol and similar endeavors, textec design assumes that in many instances the archival repository or communication infrastructure system need not - indeed, there are good reasons why it should not - know "too much" about the data it is handling. Textec design also recognizes that in most real-life computer applications the weakest link in the security chain lies not with the strength (ill-understood as it might be) of the cryptographic algorithm, but remains well hidden somewhere in the myriad number of minor software engineering details that all large systems are burdened with. If this view is correct, simplicity and isolation of the code that participates in the "security chain" is an important condition of system security. Users that (perhaps legitimately) fear their opponent can cryptographically break the algorithm used by textec, may as well view all current cryptographic algorithms with equal scepticism and opt for non-algorithmic security solutions (OTP, physical protection, dedicated communication channels and so on). So far, "the family" consists of the following members:
The current version of these programs is posted for testing and feedback; however, the format of textec is stable and is not expected to change. Its details are documented in this text file). Encodex and DecodexTwo "command line" utility programs (Encodex and Decodex) for three selected platforms (Linux, Mac OS X and Windows) provide the basic ability to encrypt and decrypt files into and out of the textec format.
Download Encodex (encodex) for Linux.
Download Encodex (encodex) for Mac OS X.
Download Encodex (encodex.exe) for Windows.
Download Encodex (encodex) for Zaurus. The complete C language source code of both programs is included here. The primary reason for providing it is to have it inspected as widely as possible, in order to ensure that it can be trusted. Additionally, both programs can be simply recompiled on new platforms in order to provide a quick ability to generate and process textec. The code can also be "stitched into" any other application (e-mail, text-processing, database, etc.) in order to give such application the ability to encrypt, decrypt and exchange secure text with other applications using the same format. There are no restrictions - this can be done by the developers of both "proprietary" and "open-source" systems, commercial or free. A small encrypted text file, included here (textectest.xtx), can be used to confirm the correct operation of ported program. Its key is "geodyssey" (without quotes).
Download Encodex and Decodex source
code (codex.zip). NotexNotex is a program very similar to the Windows Notepad "applet". Using Windows "clipboard" it can exchange both clear and encrypted text not only with the e-mail clients, but with a wide variety of other text-processing applications running under the Windows family of "desktop" OS-es (9x, ME, 2K, XP, etc). Read or save preliminary documentation (notex.txt). Download and/or test-run Notex (notex.exe). The program requires no "installation" or "configuration files". Your browser may let you run Notex from its current location on the 'net. If this is the case, you can use the clipboard to locally transfer the text to and from your e-mail program window, and encrypt and decrypt e-mail without any encryption software "installed" on your computer. You can test this quickly by selecting and copying into the clipboard the text displayed by your browser if you click on textectest.xtx, then starting notex.exe from the 'net and entering the password [Crypto] - [Enter...Key...] (the password is "geodyssey", no quotes) and decrypting the clipboard to the Notex text window [Crypto] - [Decrypt Clipboard to Text]. EudoxThe same format of e-mail-friendly ciphertext is used by an Eudora "plug-in" named Eudox. This plugin has been developed for use with Eudora 3.0.6: the most popular and probably still the best e-mail program for the Windows desktop. It has additionally been tested with Eudora 4.3 and 5.0. Read or save brief documentation (eudox.txt). Download the eudox.dll file and simply copy it into the Eudora plug-in directory (usually named "plugins"), no other "installation" is required. Then run Eudora and first select [Tools] - [Eudox - Enter or Change Key] to enter the encryption key. Once the key has been entered select [Edit] - [Message-Plug-ins] and [Eudox encrypt] or [...decrypt] on the main Eudora menu to encrypt or decrypt either the whole body or only the selected (highlighted) part of an e-mail message in the active message window. Download Eudox (eudox.dll).
All of the above executable programs and the C language source code
are published with no restrictions on their use and copying, and no
guarantee, either explicit or implied. |