DES

The current version is 0.1 (May 7, 2001)

DESLib is a free system library for Palm OS. It contains functions to encrypt/decrypt data using DES, DESX and Triple DES. A complete list of the functions currently provided by the latest version of DESLib can be found in the User's Manual.

This library was written as a system library (not in GLib format) for benefiting the full support from the latest version of Palm OS and the developing tools. The system library is supported by the Palm OS SysLib* API calls and is officially described in Palm OS FAQ Shared Libraries and Other Advanced Project Types. It is a runtime shared library which allows Palm applications or other shared libraries using the DESLib functions dynamically. This in terms saves the applications from keeping copies of the same code in their own code resources.

Another advantage of implementing those functions in the form of a shared library is to overcome two memory constraints of Palm OS namely the 32KB jump limit (CodeWarrior default model) and the code resource size limit.

Another type of shared libraries is called GLib, which is more user-friendly (or programmer-friendly) than the system library mentioned above and is also faster because no systraps are done when calling the GLib functions. However, as of this writing, neither CodeWarrior nor the latest version of PRC-Tools supports GLibs. Only PRC-Tools 0.5.0 and Michael Sokolov's 0.6.0 beta do so. This is also one of the reasons of implementing the library as a system library instead of a GLib.

How to Use?

If you just want to use the DESLib with your Palm programs, simply follow the steps below to download the files and learn how to use them.

  1. Download the PRC file, DESLib.prc and install it to your Palm Pilot.
  2. Download header files, DESLib.h Your Palm program needs to include the DESLib.h header file.
  3. Finally, download DESLib User's Manual and learn the library functions. I'll polish a better one when I have time.

We have only tested the library on the Palm V and Palm IIIc with Palm OS v3.3 and Palm OS v3.5 so far. So your feedbacks of running the library on other Palm devices are welcome. This library is in the public domain. You can distribute, copy or modify the code as you will. I would also appreciate any comments, bug reports and enhancements.

Disclaimer

THE AUTHORS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.

Count