This software package is an extension library for the MzScheme interpreter. It provides an interface to Ronald Rivest's sample MD5 implementation as published in RFC 1321.
The project was a self-inflicted exercise aimed at the understanding of the basics of MzScheme low-level extension. Acquired knowledge will lead to other extensions already in development or planed.
Digest extension is available in two forms:
The first form is prefered as compilation and installation is automatically handled by DrScheme. One has to apply the distribution archive to the `setup-plt' program:
$ setup-plt digest-1.0a1.plt
The following versions are available:
The following table summarize the platforms on which the digest extension is known to work. Each platform name is associated with the latest reported version.
|i386-freebsd||1.0 alpha 1|
Your help is needed to check the good behavior of the Digest extension on platforms not listed in the previous table. Please report your findings to the author.
For the reader convenience, documentations bundled in the latest distribution archives are also available for on-line reading.
If you value your privacy you can send OpenPGP-crypted mails, the author's key whose id is 0606CEF7 is available on public keyrings such as the MIT PGP Public Key Server or directly here. Be sure that the fetched the key you obtained has the following fingerprint:
79C9 10C8 9C3A 3F35 482F 06D6 150B A8BB 0606 CEF7
This MzScheme extension is © 2001 by Bertrand Petit. It is distributed under the terms of the license similar to the Berkeley license reproduced below.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
- Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
- Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
- Neither the name of the author nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
This extension is a work derived from the RSA Data Security, Inc. MD5 Message-Digest Algorithm. The original license of the reference implementation published in RFC 1321 is reproduced below.
Copyright © 1991-2, RSA Data Security, Inc. Created 1991. All rights reserved.
License to copy and use this software is granted provided that it is identified as the "RSA Data Security, Inc. MD5 Message-Digest Algorithm" in all material mentioning or referencing this software or this function.
License is also granted to make and use derivative works provided that such works are identified as "derived from the RSA Data Security, Inc. MD5 Message-Digest Algorithm" in all material mentioning or referencing the derived work.
RSA Data Security, Inc. makes no representations concerning either the merchantability of this software or the suitability of this software for any particular purpose. It is provided "as is" without express or implied warranty of any kind.
These notices must be retained in any copies of any part of this documentation and/or software.