935 research outputs found
High-level Cryptographic Abstractions
The interfaces exposed by commonly used cryptographic libraries are clumsy,
complicated, and assume an understanding of cryptographic algorithms. The
challenge is to design high-level abstractions that require minimum knowledge
and effort to use while also allowing maximum control when needed.
This paper proposes such high-level abstractions consisting of simple
cryptographic primitives and full declarative configuration. These abstractions
can be implemented on top of any cryptographic library in any language. We have
implemented these abstractions in Python, and used them to write a wide variety
of well-known security protocols, including Signal, Kerberos, and TLS.
We show that programs using our abstractions are much smaller and easier to
write than using low-level libraries, where size of security protocols
implemented is reduced by about a third on average. We show our implementation
incurs a small overhead, less than 5 microseconds for shared key operations and
less than 341 microseconds (< 1%) for public key operations. We also show our
abstractions are safe against main types of cryptographic misuse reported in
the literature
Floorplanning as a practical countermeasure against clock fault attack in Trivium stream cipher
The fault injection in ciphers operation is a very
successful mechanism to attack them. The inclusion of elements
of protection against this kind of attacks is more and more
necessary. These mechanisms are usually based on introducing
redundancy, which leads to a greater consumption of resources
or a longer processing time. This article presents how the
introduction of placement restrictions on ciphers can make it
difficult to inject faults by altering the clock signal. It is therefore
a countermeasure that neither increases the consumption of
resources nor the processing time. This mechanism has been
tested on FPGA implementations of the Trivium cipher. Several
tests have been performed on a Spartan 3E device from Xilinx
and the experimental measurements have been carried out with
ChipScope Pro. The tests showed that an adequate floorplanning
is a good countermeasure against these kind of attacks.Ministerio de EconomÃa y Competitividad TEC2013-45523-RMinisterio de EconomÃa y Competitividad TEC2016-80549-RMinisterio de EconomÃa y Competitividad CSIC 201550E03
Secret Key Cryptography Using Graphics Cards
One frequently cited reason for the lack of wide deployment of cryptographic protocols is the (perceived) poor performance of the algorithms they employ and their impact on the rest of the system. Although high-performance dedicated cryptographic accelerator cards have been commercially available for some time, market penetration remains low. We take a different approach, seeking to exploit {\it existing system resources,} such as Graphics Processing Units (GPUs) to accelerate cryptographic processing. We exploit the ability for GPUs to simultaneously process large quantities of pixels to offload cryptographic processing from the main processor. We demonstrate the use of GPUs for stream ciphers, which can achieve 75\% the performance of a fast CPU. We also investigate the use of GPUs for block ciphers, discuss operations that make certain ciphers unsuitable for use with a GPU, and compare the performance of an OpenGL-based implementation of AES with implementations utilizing general CPUs. In addition to offloading system resources, the ability to perform encryption and decryption within the GPU has potential applications in image processing by limiting exposure of the plaintext to within the GPU
- …