4 research outputs found
Error Detection Schemes for Ï„ NAF Conversion within Koblitz Curves Benchmarked on Various ARM Processors
Elliptic curves cryptography, the most widely-deployed pre-quantum public key cryptography, can be implemented efficiently with Koblitz curves. The reason for these realizations is that in such efficient architectures, through using Frobenius endomorphism, the high cost of doubling can be ameliorated by simple shifting. However, in order to use this property, scalars should be represented by a Ï„-expansion. Such curves require integer to Ï„-NAF conversion, which is a prominent factor in Koblitz curves cryptography. Nevertheless, natural and malicious faults, can threaten the reliability of such constructions. In cryptosystems, verifying the correctness of the underlying computation implemented in hardware and software platforms is extremely important to detect permanent and transient errors. In this paper, for the first time to the best of our knowledge, we investigate fault detection schemes in single and double Ï„-NAF (nonadjacent form) conversion algorithms. To this end, we propose refined algorithms and implementation to resist both permanent and transient error occurrence using a number of fault models to make sure the performed assessments reflect the results accurately. Additionally, we simulate the proposed algorithms in Python environment with single, random, and burst fault models resulting in very high error coverage. Finally, we implement our scheme on ARMv7 and ARMv8 platforms to show the overhead of our implementation. We achieved less than 17% clock cycle overhead on Cortex-M4 and about 25% on Cortex-A72 processors. Our proposed scheme code size overhead was less than 6%. The proposed approaches make the implementations of Koblitz curves Ï„-NAF conversion more reliable with acceptable overheads.</p
Efficient Error Detection Schemes for ECSM Window Method Benchmarked on FPGAs
Elliptic curve scalar multiplication (ECSM) stands as a crucial sub-block in elliptic curve cryptography, which represents the most widely-used pre-quantum public key cryptography. Hardware constructions of cryptographic systems utilizing ECSM have been subject to permanent or transient errors. In cryptographic systems, it is important to validate the correctness of the underlying computation performed on hardware or software to identify such errors. In this paper, we present new fault detection schemes in window method scalar multiplication, which, to the best of our knowledge, has not been previously investigated. Our approach involves introducing refined algorithms and implementations that can effectively counter both permanent and transient errors. We assess this by simulating a fault model, ensuring that the evaluations conducted reflect the obtained results. As a result, we achieve a significantly extensive coverage of errors. Lastly, we benchmark our proposed error detection scheme on ARMv8 and FPGA to demonstrate the implementation and resource overhead. On Cortex-A72 processors, we maintain a clock cycle overhead of under 3%. Additionally, when implementing our error detection method on different FPGAs including Zynq Ultrascale+, Artix-7, and Kintex Ultrascale+, we achieve comparable throughput while introducing a mere 2% increase in area compared to the original hardware implementations. </p
PUF-Kyber: Design of a PUF-Based Kyber Architecture Benchmarked on Diverse ARM Processors
In this paper, through using physical unclonable functions (PUF) and true random number generators (TRNG), we improve the overall security of CRYSTALS-Kyber and provide physical security to it. Our implementation results on ARMv7 and ARMv8 architectures indicate significant speedup, compared to the reference work.</p
PUF-Dilithium: Design of a PUF-Based Dilithium Architecture Benchmarked on ARM Processors
In this paper, by taking advantage of physical unclonable functions (PUFs), we introduce a novel design that provides physical security to CRYSTALS-Dilithium. After discussing the advantages of our design compared to the original design, we implemented it on two different architectures, ARMv7 and ARMv8. Our findings demonstrate substantial enhancements in both security and performance over the reference work.</p