PKE - Arbitrary File Transfer by Packet Radio |
| What is It? | PKE is a simple program that will compress and encode an arbitrary file for subsequent transmission (ostensibly by packet radio). The same program can be used to decode and uncompress the file at the receiving site, resulting in an exact copy of the original. The files processed by PKE may be MS Word or Excel documents, executable files, or virtually any file type (except directories/folders; these will be added in later versions). |
| What do I need? | PKE will run on most modern version of Windows, although it was developed on Windows XP. (Later versions will support Mac OS X and Linux.) The program requires only 170KB of disk space for installation. The files it processes naturally require additional space. |
| Where can I get it? | A zip file containing the installer can be downloaded by clicking here. A simple file compressed and encoded with PKE can be found here. You may use this file as a decompression test. |
| How do I install it? | After you've downloaded the pke zip file (see above), unzip it to obtain a directory called "disk1". In "disk1" there will be a number of files, but in particular there will be one named "setup.exe". Double click it and the setup should proceed pretty easily. There's nothing special that needs to be done -- no questions to answer, no credit card numbers to enter, ... |
| How do I use it? | Once the program has been installed, it will appear in your start menu. So to start it, just click on "Start," "All Programs," and "PKE", and the program is running! There are three steps to using it... |
| Step 1. | What do you want to do? Click "Encode" if you wish to prepare a file for transmission, "Decode" if you wish to reconstitute a PKE file you've received, "Quit" (hopefully obvious), or "Help" (again, hopefully obvious). If you click "Encode" or "Decode", step 2 happens... |
| Step 2. | In step 2, you will identify the file you want to compress and encode, or the file you want to decode and uncompress. A (hopefully familiar) Windows file selection dialog box will appear. Once you have selected the file, click on the "Open" button. (You may also click "Cancel" which will take you back to step 1.) On to step 3! |
| Step 3. | Now you need to tell PKE where to put the result.
If you're encoding something for transmission, the default file extension will be ".pke" (what else?) If you are decoding something you received, then the suggested file name is the same as that which was used when the file was encoded (without the directory information). By default, the program will ask you before it overwrites an existing file. When you've identified where you want the output to go, click "Save." At this point, the encoding or decoding is performed, and some messages will be displayed in the text box (file names and sizes, for example). After step 3, the program goes back to step 1 to allow you to encode or decode another file. If you've got nothing else to do, just click "Quit." |
| Now what? | If you encoded a file, you can now send it.
The encoded files contain only text (A-Z, a-z, 0-9, + and /),
and thus can be sent as ordinary messages to packet radio
mailboxes. Likewise, if you receive a PKE file, you can just
cut it from the mail display and paste it into a text file and
send it through PKE to unecode it.
It's helpful to look at an encoded file (use notepad or another editor to open a PKE file). The first line must also begin with "begin-base64..." and the last line will contain a few equal signs. This is what PKE generates, and expects to see in a file that it will unencode. |
| For the curious... | The encoding performed by PKE is essentially the
same as the MIME encoding in the IEEE/POSIX standard
uuencode/uudecode programs. Each group of three arbitrary
characters (24 bits) is replaced with four base-64 characters.
These are arranged in lines containing no more than 72 characters
each.
Note that this is an encoded format, not an encrypted format. There is no public or private key required, and anyone with the PKE program can easily decode such messages. As a result, don't expect the messages to be "secure" (which would violate FCC rules anyway). The compression performed by PKE is based on the LZW (Lempel-Ziv-Welch) technique. PKE requires that a file contain at least 1K (1024) bytes before it attempts compression. Also, if the compressed file is larger than the original, then the original file is used without compression. PKE automatically performs compression/decompression as needed without any spcial user interaction. |
| Future directions | As noted above, the program will be available for the Apple Mac OS X and Linux systems in the future. The program will also provide automatic "splitting" of large output files into separate pieces of a user-specified maximum size to deal with TNC mailboxes that have various memory constraints. |
| Author contact | Stan Wileman, Department of Computer Science, Peter Kiewit Institute, University of Nebraska at Omaha |
Last Updated: Sunday, March 30, 2008