Abstract:
Context and objective. The article shows that the original Skein hash algorithm, which was developed as part
of the competition for the new standard SHA-3 of the National Institute of Standards and Technology USA (NIST) and was
one of five finalists can be modified to improve its operation efficiency in systems with multicore processors, which are used
in almost all modern desktop and mobile devices. Analysis of the few publications that dedicated to such improvement of
the original algorithm shows that all the authors focus on improving efficiency by optimizing the algorithm computations
parallelization because computing speed was one of its main weaknesses. The simplification the original algorithm was not
considered before and became the main purpose of the article.
Research methods. Analysis of the original algorithm showed that the basic premise for the modifications is flexibility
for adjusting to build a hash function, particularly hash function is based on block encryption algorithm with adjustable
block size. Block size and key are fixed, but they do not determine the size of the original hash function string, which complicates
the method of attack, based on finding the key length. Alternating nature of the output line allows you to make
hash function very flexible: it is possible to use a hash function and applications in devices with limited memory. Including
mobile devices. Results. Modification for Skein based on the fact that the original algorithm is assumed that the hash process can be
represented as a multilevel tree structure. The basic idea is that the message on the first hashing level is divided into blocks,
for each of the blocks calculated parameters for the second and higher levels become the input values for the next level.
A significant simplification has been proposed no speed up the algorithm – use the only single-level hash that actually
means abandoning the use of tree structure calculations.
Hash function based on the modified algorithm is implemented with the use of the programming language Python.
Test results according to NIST SP 800-22 standard for set of 1,000 files with hash function results showed the percentage of
files that have been tested successfully from 98.0 to 99.6% that indicates that the hash function under consideration meets
random and pseudorandom generator integers and hash functions conditions.
The scientific novelty and practical significance. It is the first time then simplification of the structure for Skein hash algorithm
calculations effectiveness improvement was proposed and it was shown that the hash function based on a simplified
algorithm comply NIST SP 800-22.