Template:User committed identity/doc

From translatewiki.net
This is the documentation subpage for the parent Template:User committed identity page.

This template gives you a way to later prove that you are the person who was in control of your account on the day this template was placed. This is done by putting a code (called a "hash") on your user page so that, in the event that your account is compromised, you can convince someone else that you are really the person behind your username.

Usage:
{{User committed identity|
1 = hash value (usuall a large hexadecimal number, whose minimal length and prefered format depends on the hash function used) |
2 = optional hash function used (“SHA-512” by default) |
background = optional CSS color for the background of the box |
border = optional CSS color for the outer border of the box |
article = optional grammatical article to use before the named hash function (“a” by default)
}}
Commitments should be computed using a cryptographic hash (or message digest) function that are sufficiently strong, with open documentation allowing their implemenation to be available in most platforms with many tools and libraries. Weak hashes (including all CRC functions which are designed to be easily reversible, independantly of their sizes must never be used for commitments. As well, hash sizes smaller than 256 bits should also no longer be used (even with the strongest cryptographic algorithms), as they can now be broken with brute force attacks using low cost modern hardwares, especially on the web. Using the SHA-512 hash function (part of the SHA-2 standard on the web) is then recommanded and is the default, but you can use alternate algorithms (like Whirlpool, BLAKE2, BLAKE3), or those designed in the newer SHA-3 standard (like SHAKE-512), with appropriate hash sizes (avoid excessive truncation).
The computed hashed commitments should generally be formatted in hexadecimal (the lettercase is not significant in that case and whitespaces may eventually be inserted within long hash values to make them more readable). Some hash functions suggest other formats (using other bases, or embedding them is a specific form): this may break this template unless you name explicitly parameter "2=" passing the hash value (don't place newlines or HTML formatting in the middle of its given value, which should be plain-text on a single line; that value will still be rendered by the template so that it can wrap anywhere if needed).
See also: