Abstract:
|
User needs increases as time passes. We started with computers like the size of
a room where the perforated plaques did the same function as the current
machine code object does and at present we are at a point where the number of
processors within our graphic device unit it’s not enough for our requirements.
A change in the evolution of computing is looming. We are in a transition
where the sequential computation is losing ground on the benefit of the
distributed. And not because of the birth of the new GPUs easily accessible this
trend is novel but long before it was used for projects like SETI@Home,
fightAIDS@Home, ClimatePrediction and there were shouting from the
rooftops about what was to come. Grid computing was its formal name. Until
now it was linked only to distributed systems over the network, but as this
technology evolves it will take different meaning.
nVidia with CUDA has been one of the first companies to make this kind of
software package noteworthy. Instead of being a proof of concept it’s a real
tool. Where the transition is expressed in greater magnitude in which the true
artist is the programmer who uses it and achieves performance increases.
As with many innovations, a community distributed worldwide has grown
behind this software package and each one doing its bit. It is noteworthy that
after CUDA release a lot of software developments grown like the cracking of
the hitherto insurmountable WPA.
With Sony‐Toshiba‐IBM (STI) alliance it could be said the same thing, it has a
great community and great software (IBM is the company in charge of
maintenance). Unlike nVidia is not as accessible as it is but IBM is powerful
enough to enter home made supercomputing market. In this case, after IBM
released the PS3 SDK, a notorious application was created using the benefits of
parallel computing named Folding@Home. Its purpose is to, inter alia, find the
cure for cancer.
To sum up, this is only the beginning, and in this thesis is sized up the
possibility of using this technology for accelerating cryptographic hash
algorithms. BLUE MIDNIGHT WISH (The hash algorithm that is applied to the
surgery) is undergone to an environment change adapting it to a parallel
capable code for creating empirical measures that compare to the current
sequential implementations. It will answer questions that nowadays haven’t
been answered yet.
BLUE MIDNIGHT WISH is a candidate hash function for the next NIST standard
SHA‐3, designed by professor Danilo Gligoroski from NTNU and Vlastimil
Klima – an independent cryptographer from Czech Republic.So far, from speed point of view BLUE MIDNIGHT WISH is on the top of the charts
(generally on the second place – right behind EDON‐R ‐ another hash function
from professor Danilo Gligoroski).
One part of the work on this thesis was to investigate is it possible to achieve
faster speeds in processing of Blue Midnight Wish when the computations are
distributed among the cores in a CUDA device card. My numerous experiments
give a clear answer: NO. Although the answer is negative, it still has a
significant scientific value. The point is that my work acknowledges viewpoints
and standings of a part of the cryptographic community that is doubtful that
the cryptographic primitives will benefit when executed in parallel in many
cores in one CPU. Indeed, my experiments show that the communication costs
between cores in CUDA outweigh by big margin the computational costs done
inside one core (processor) unit. |