Showing
1 changed file
with
81 additions
and
0 deletions
1 | +LIBTRHASH | |
2 | +========= | |
3 | + | |
4 | +This bundles some useful hashing and encoding functions. | |
5 | +Part of this comes from taskrambler, other are added later. | |
6 | + | |
7 | +Currently it contains code to create an sha1 hash, Uuids Version 1, 3 and | |
8 | +5 and code to hexencode or decode in a charset independent way. | |
9 | +The idea for this is taken from the base64 code in the linux | |
10 | +core utils. | |
11 | + | |
12 | +### Hashing: sha1 md5 ### | |
13 | + | |
14 | +When OpenSSL is available it is used for sha1 or md5 creation because | |
15 | +it is really hard to outperform it. Anyway, if for some reason | |
16 | +OpenSSL is not available I have alternative code in place here. | |
17 | + | |
18 | +The C implementation without SSE intrisics is created by myself. | |
19 | +The vectorized SSE intrisics code is public domain and from | |
20 | +[this page](http://arctic.org/~dean/crypto/sha1.html). | |
21 | + | |
22 | +On my system the implementation without intrisics is 4 times | |
23 | +slower than the OpenSSL code whereas the intrisics code is just | |
24 | +marginally slower. | |
25 | + | |
26 | +In future I will add own md5 code to make this library independet | |
27 | +from OpenSSL if needed. | |
28 | + | |
29 | +### Uuid ### | |
30 | + | |
31 | +This is just an addon on to the utils-linux implementation of | |
32 | +DCE uuid's done by Theodore Y. Ts'o. It wraps uuids in my class system | |
33 | +right now and adds version 3 and version 5 uuid. | |
34 | + | |
35 | +Anyway, this will only work on linux as it's build around the util-linux | |
36 | +code. | |
37 | + | |
38 | +### encoding ### | |
39 | + | |
40 | +Currently this contains code hexencode and hexdecode data in a | |
41 | +charset independent way. As a special case of hexdecoding a | |
42 | +urldecode function is also available. | |
43 | + | |
44 | +In the near future code to urlencode and base64 encode and decode | |
45 | +code will be added. | |
46 | + | |
47 | +INSTALLATION | |
48 | +------------ | |
49 | + | |
50 | +This can be installed via the usual configure, make, make install | |
51 | +cycle. For gentoo users am ebuild is added under docs. | |
52 | + | |
53 | +### API DOC ### | |
54 | + | |
55 | +To generate the api doc a patched version of doxygen is | |
56 | +neccessary. A patch is included under docs. | |
57 | + | |
58 | +`make docs` creates the api doc. | |
59 | + | |
60 | +USAGE | |
61 | +----- | |
62 | + | |
63 | +### API ### | |
64 | + | |
65 | +### EXAMPLE ### | |
66 | + | |
67 | +TESTING | |
68 | +------- | |
69 | + | |
70 | +No tests right now... sorry. | |
71 | + | |
72 | +### REQUIREMENTS | |
73 | + | |
74 | +CONTRIBUTION | |
75 | +------------ | |
76 | + | |
77 | +I would really like to see some people possibly interested in this stuff. | |
78 | +I think it contains some really interesting ideas. | |
79 | + | |
80 | +If you like to contribute anyway, make a fork, do your changes and generate | |
81 | +a pull request. Or simply contact me on georg@steffers.org. | ... | ... |
Please
register
or
login
to post a comment