ABSTRACT
Security is an extremely important feature in modern computer
systems. The fundamental basis of many security
problems, most notably authentication, is a secure hashing
algorithm. These algorithms take a message, return a
fixed size hash for the message, and require the following
important properties: ease of hash computation, inability of
generating the message from the hash, inability to change
the message and not the hash, and inability to have the same
hash for two different messages.
A family of these algorithms has been standardized by NIST
and given the name Secure Hashing Algorithm (SHA). The
newest of this family is SHA3, formerly known as Keccak,
and thus contains the most opportunity for design space
exploration. Since this hashing function will be frequently
used, requires many operations per input and is generally
inefficient on a general purpose CPU, it is an ideal function
to be implemented with a hardware accelerator to improve
performance (hashes/sec) and energy use (hashes/Watt). In
order to facilitate choosing a hashing accelerator for a particular
project, a parameterized implementation is developed
and explored using automated tools.
Publications
Tags
2D
Accelerators
Algorithms
Architectures
Arrays
Big Data
Bootstrapping
C++
Cache Partitioning
Cancer
Careers
Chisel
Communication
Computer Architecture
CTF
DIABLO
Efficiency
Energy
FPGA
GAP
Gaussian Elimination
Genomics
GPU
Hardware
HLS
Lower Bounds
LU
Matrix Multiplication
Memory
Multicore
Oblivious
Open Space
OS
Parallelism
Parallel Reduction
Performance
PHANTOM
Processors
Python
Research Centers
RISC-V
SEJITS
Tall-Skinny QR
Technical Report
Test generation