Module:RadioGatun32/doc
This is a documentation subpage for Module:RadioGatun32. It may contain usage information, categories and other content that is not part of the original module page. |
Usage
[edit]This module calculates the RadioGatún[32] sum for a given string, returning it in a format suitable for showing a demonstration sum on a Wikipedia page. RadioGatún is a cryptographic hash function from 2006 which remains, as of 2022, unbroken.
To use:
{{#invoke:RadioGatun32|rg32|String to input}}
Or with the template (at Template:RadioGatun32):
{{RadioGatun32|String to input}}
If there is {{Background color|#888|d}} in the string to input, the calculated sum will be based on a string without the background color formatting.
The rg32hash call
[edit]It is also possible to show the raw hexadecimal RadioGatun[32] sum of a given string without any formatting:
{{#invoke:RadioGatun32|rg32sum|String to input}}
For example, if we run:
{{#invoke:RadioGatun32|rg32sum|1234}}
We will get this:
- 9EBDD24F469993796C4AAC6A821735A65A3CDEF8A359944CE71F34E7A08E1182
This should output "9EBDD24F469993796C4AAC6A821735A65A3CDEF8A359944CE71F34E7A08E1182".
Examples
[edit]{{#invoke:RadioGatun32|rg32|Hello, world}}
Will create this output:
RadioGatun[32]("Hello, world") = D91BBD22BE5D01F091F26A16704CDA0E165588E025D9BA6619C5B01550756349
Here is the computed output:
RadioGatun[32]("Hello, world") = D91BBD22BE5D01F091F26A16704CDA0E165588E025D9BA6619C5B01550756349
We can have background colors:
{{#invoke:RadioGatun32|rg32|{{Background color|#ff8cc0|Li}}{{Background color|#c08dff|fe}}!}}
Shows us this:
RadioGatun[32]("Life!") = 80E706E851DCDE1170452EEC6EAD24F40E63B9A07B86D8D32053A1237835E03D
The above should look exactly like this:
RadioGatun[32]("Life!") = 80E706E851DCDE1170452EEC6EAD24F40E63B9A07B86D8D32053A1237835E03D
The computed sum will be for the string Life!
, as can be seen in the following:
RadioGatun[32]("Life!") = 80E706E851DCDE1170452EEC6EAD24F40E63B9A07B86D8D32053A1237835E03D
The above should look like this:
RadioGatun[32]("Life!") = 80E706E851DCDE1170452EEC6EAD24F40E63B9A07B86D8D32053A1237835E03D
The background colors do not affect the computed RadioGatun[32] sum.
Testing
[edit]Testing inside Mediawiki
[edit]To test this in Mediawiki, go to Module talk:RadioGatun32/testcases, and verify that one sees "All RadioGatun[32] test vectors pass". One can rerun the test by going to Module:RadioGatun32/testcases, clicking on "edit this page", then in the debug console at the bottom, typing in print(p.test())
. One should then see "All RadioGatun[32] test vectors pass".
Another way to test this is to add {{#invoke:RadioGatun32/testcases|test}}
to a page; wherever RadioGatun32/test is invoked, it should show "All RadioGatun[32] test vectors pass".
Testing outside Mediawiki
[edit]This module can either be run as a Mediawiki Lua module, or as a standalone Lua script. This very same script is also available on GitHub in a repo which includes automated tests to ensure implementations of RadioGatun[32] generate correct hashes against a number of test inputs, including all official RadioGatun[32] test vectors.
To test this code, in a *NIX compatible environment like Linux, with Git and a version of Lua above 5.1 and below 5.4 (Lua 5.4 dropped bit32
; a Lua 5.1 implementation with bit32
support will also work), do the following:
git clone https://github.com/samboy/rg32hash cd rg32hash/sqa ./do.test.sh ../Lua/rg32wiki.sh