last    next    beginning





5. Conclusions

This paper has presented some basic ideas, algorithms, and criteria for producing library hash functions. It has shown how the existing hash mechanisms in Java could be improved by employing a better library hash function. Last but not least it has formulated an abstract type for hashing that allows programmers to create new hash values from other primitive hash values and gives them a method to convert hash values to integers for use in table searching and other authentication and validation techniques which employ hashing.

The hash algorithms given here are freely available both from the SAL sketches here, the Java code in the appendix, and C-code in the original publications given in the references. The Java Hash class given in the appendix is copyrighted but I am happy to let anyone use it for non-commercial, non-governmental uses.



6. Acknowledgements

This paper would have taken much longer to create, if I did not have the help and criticism of the following people. Or perhaps, it is more accurate to say this paper would have been finished much earlier without the help and criticism of Paul Eggert, Michael Lennon, Matthew TONG Chi Fai, and Keith Wansbrough. The errors that remain are, of course, still mine.



7. References

[bashe86] Bashe, Charles J., et.al.  IBM's Early Computers,
Addison-Wesley, Reading, Mass., 1986.
[bently86] Bentley, Jon.  Programming Pearls, Addison-Wesley,
Reading, Mass., 1986, p139-150.
[mcilroy82] McIlroy, Doug.  "Development of a Spelling List",
IEEE Trans. on Commun. COM-30, Part 1 (Jan 1982), p91-99.
[mckenzie90] McKenzie, B. J., R. Harries, and T. Bell.  Selecting a Hashing
Algorithm, Software Practice and Experience 20,2 (Feb 1990), p209.
[pearson90] Pearson, Peter K.  Fast Hashing of Variable Length Text Strings.
Commun. ACM 33,6 (Jun 1990), p677.
[pieprzyk93] Pieprzyk Josef and Babak Sadeghiyan, Design Of Hashing
Algorithms, Lecture Notes in Computer Science 756,
Springer-Verlag, 1993, (Science Lib 001.64 L47 756)
[rcs91] Tishy, Walter F. and Paul R. Eggert. The Revision Control System (RCS)
Version 5.7, ftp:ftp.cs.purdue.edu/pub/RCS/rcs-5.7.tar.Z
[tong96] Tong, Matthew C. F.  General Hashing.
PhD Thesis, Computer Science Department, University
of Auckland, 1996; {in preparation}.
[tong97] Tong, Matthew C. F., Robert C. Uzgalis. Hash Program Development in
Squigol.Submitted to 1997 WG2.1 Working Conference on Program
Transfomations
[uzgalis91] Uzgalis, Robert C.  General Hash Functions.
TR. 91-01 Computer Science Department, University
of Hong Kong, January 1991
[uzgalis94] Uzgalis, Robert C. and  M.C.F. Tong `Guaranteed Random
Input Arrivals', TR 95, Department of Computer Science,
University of Auckland, June 1994










last    next    beginning


Copyright © 1996 Robert Uzgalis, All Rights Reserved.
Contact: Robert Uzgalis <buz@zis.com>
home


This paper was automatically translated from troff into html by t2h.