X11 Algorithm Explained

0
981
An image to represent X11 algorithm article

X11 Algorithm Explained 

Last Updated: 30th October 2018

The X11 algorithm is a proof-of-work hashing function that was developed by Evan Duffield and implemented into the Darkcoin protocol in 2014, later renamed to DASH. X11 was developed and selected by Duffield as the algorithm of choice because of the inherent resistance that it had at the time to Application-Specific Integrated Circuits, or better known as, ASICs.

The notion by the Darkcoin development team was such that, a more complex proof-of-work algorithm would substantially increase the length of time for an ASIC capable of efficiently mining the X11 algorithm to be developed. In the meantime, hobbyists who could only mine with CPUs and GPUs would remain competitive when it came to producing blocks and securing a block reward.

How The X11 Algorithms Works

X11 works by combing 11 individual hash functions (hence the number 11 in X11) into one algorithm. When a value is submitted, the first function produces a hash which is then submitted to the following function to produce another hash. The X11 algorithm is comprised of the following hash functions:

  • BLAKE
  • BLUE MIDNIGHT WISH (BMW)
  • Grøstl
  • JH
  • Keccak
  • Skein
  • Luffa
  • CubeHash
  • SHAvite-3
  • SIMD
  • ECHO

To illustrate how the algorithm works at a high level, when a value is submitted to the BLAKE  function, it produces a hash value; this value is then submitted to the BMW  function, which then produces another value; this process repeats until the very last function.

All of the algorithms above were entered into the US National Institute of Standards and Technology (NIST) open competition in order to develop a new hash function, SHA-3, that was more secure than the previous generations: SHA-1 and SHA-2. Of the 64 algorithms that were entered into the competition, all the X11 hash functions were accepted as first-round candidates. Of the 14 second-round candidates, all the X11 algorithms were once again accepted, with the only following functions making it into the final 5: BLAKE, Grøstl, JH, Keccak and Skein. Keccak would then be the function to win the competition.

In short, the involvement of these functions in what was a 5-year long competition, speaks to their security and credibility.

Advantage & Disadvantage of The X11 Algorithm

One advantage of the X11 algorithm includes:

  • Arguably more secure than Bitcoin

Arguably more secure than Bitcoin – Where SHA-256 is based on a previous secure hash algorithm family of standards, namely SHA-2, the hash functions within the X11 algorithm all successfully made it into the second-round in search for a new, more secure standard, i.e. SHA-3. Keccak, the function which won the competition and is therefore the new standard on which SHA-3 is based on, can at the very least be considered more secure that SHA-256.

Conversely, one current disadvantage of the X11 algorithm is:

  • No longer ASIC-resistant

No longer AISC-resistant – As previously mentioned, the X11 algorithm was designed to be ASIC-resistant due to its additional complexity. However, since its inception in 2014, ASICs capable of mining the X11 algorithm have been developed. The net result of this is, hobbyists with CPUs and GPUS are put at a competitive disadvantage with regards to producing new blocks and receiving a block reward for their efforts.

Conclusion

To conclude, X11 is an algorithm that contains 11 individual hash functions. It was formerly developed by Evan Duffield and implemented into the Darkcoin, now DASH, protocol.

It is arguably more secure than Bitcoin, due to the hash function used within it being based on the latest hash algorithm family of standards, SHA-3. However, its initial purpose of being ASIC-resistant has since failed as there are now ASICs capable of efficiently mining the algorithm.

Additional algorithms have been developed that include more than 11 individual hashing algorithms, these include: X13, X14, X15 and X17. The number of hash functions within the algorithm can be determined by the number that appears after the ‘X’. For example, in the algorithm X17, there will be 17 individual hash functions contained within it.

Additional information on X11 algorithm can be found in the DASH whitepaper.

More information on the SHA-3 competition can be found on the official NIST website.