Timing attack against implementation of a parallel algorithm for modular exponentiation

Yasuyuki Sakai, Kouichi Sakurai

Research output: Contribution to journalArticle

Abstract

We describe a parallel algorithm for modular exponentiation y ≡ xk mod n. Then we discuss timing attacks against an implementation of the proposed parallel algorithm for modular exponentiation. When we have two processors, which perform modular exponentiation, an exponent k is scattered into two partial exponents k(0) and k(1), where k(0) and k(1) are derived by bitwise AND operation from k such that k(0) = k ∧ (0101⋯01)2 and k(1) = k ∧(1010 ⋯10)2. Two partial modular exponentiations y0 ≡ xk(0) mod n and y1 ≡ xk(1) mod n are performed in parallel using two processors. Then we can obtain y by computing y ≡ y0y1 mod n. In general, the hamming weight of k(0) and k(1) are smaller than that of k. Thus fast computation of modular exponentiation y ≡ xk mod n can be achieved. Moreover we show a timing attack against an implementation of this algorithm. We perform a software simulation of the attack and analyze security of the parallel implementation.

Original languageEnglish
Pages (from-to)319-330
Number of pages12
JournalLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume2846
Publication statusPublished - Dec 1 2003

Fingerprint

Timing Attack
Modular Exponentiation
Parallel algorithms
Parallel Algorithms
Exponent
Software
Partial
Hamming Weight
Weights and Measures
Simulation Software
Parallel Implementation
Attack
Side channel attack
Computing

All Science Journal Classification (ASJC) codes

  • Theoretical Computer Science
  • Computer Science(all)

Cite this

@article{f3a7f1445f2d440b95bd04c1b6ebb302,
title = "Timing attack against implementation of a parallel algorithm for modular exponentiation",
abstract = "We describe a parallel algorithm for modular exponentiation y ≡ xk mod n. Then we discuss timing attacks against an implementation of the proposed parallel algorithm for modular exponentiation. When we have two processors, which perform modular exponentiation, an exponent k is scattered into two partial exponents k(0) and k(1), where k(0) and k(1) are derived by bitwise AND operation from k such that k(0) = k ∧ (0101⋯01)2 and k(1) = k ∧(1010 ⋯10)2. Two partial modular exponentiations y0 ≡ xk(0) mod n and y1 ≡ xk(1) mod n are performed in parallel using two processors. Then we can obtain y by computing y ≡ y0y1 mod n. In general, the hamming weight of k(0) and k(1) are smaller than that of k. Thus fast computation of modular exponentiation y ≡ xk mod n can be achieved. Moreover we show a timing attack against an implementation of this algorithm. We perform a software simulation of the attack and analyze security of the parallel implementation.",
author = "Yasuyuki Sakai and Kouichi Sakurai",
year = "2003",
month = "12",
day = "1",
language = "English",
volume = "2846",
pages = "319--330",
journal = "Lecture Notes in Computer Science",
issn = "0302-9743",
publisher = "Springer Verlag",

}

TY - JOUR

T1 - Timing attack against implementation of a parallel algorithm for modular exponentiation

AU - Sakai, Yasuyuki

AU - Sakurai, Kouichi

PY - 2003/12/1

Y1 - 2003/12/1

N2 - We describe a parallel algorithm for modular exponentiation y ≡ xk mod n. Then we discuss timing attacks against an implementation of the proposed parallel algorithm for modular exponentiation. When we have two processors, which perform modular exponentiation, an exponent k is scattered into two partial exponents k(0) and k(1), where k(0) and k(1) are derived by bitwise AND operation from k such that k(0) = k ∧ (0101⋯01)2 and k(1) = k ∧(1010 ⋯10)2. Two partial modular exponentiations y0 ≡ xk(0) mod n and y1 ≡ xk(1) mod n are performed in parallel using two processors. Then we can obtain y by computing y ≡ y0y1 mod n. In general, the hamming weight of k(0) and k(1) are smaller than that of k. Thus fast computation of modular exponentiation y ≡ xk mod n can be achieved. Moreover we show a timing attack against an implementation of this algorithm. We perform a software simulation of the attack and analyze security of the parallel implementation.

AB - We describe a parallel algorithm for modular exponentiation y ≡ xk mod n. Then we discuss timing attacks against an implementation of the proposed parallel algorithm for modular exponentiation. When we have two processors, which perform modular exponentiation, an exponent k is scattered into two partial exponents k(0) and k(1), where k(0) and k(1) are derived by bitwise AND operation from k such that k(0) = k ∧ (0101⋯01)2 and k(1) = k ∧(1010 ⋯10)2. Two partial modular exponentiations y0 ≡ xk(0) mod n and y1 ≡ xk(1) mod n are performed in parallel using two processors. Then we can obtain y by computing y ≡ y0y1 mod n. In general, the hamming weight of k(0) and k(1) are smaller than that of k. Thus fast computation of modular exponentiation y ≡ xk mod n can be achieved. Moreover we show a timing attack against an implementation of this algorithm. We perform a software simulation of the attack and analyze security of the parallel implementation.

UR - http://www.scopus.com/inward/record.url?scp=0242340685&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=0242340685&partnerID=8YFLogxK

M3 - Article

AN - SCOPUS:0242340685

VL - 2846

SP - 319

EP - 330

JO - Lecture Notes in Computer Science

JF - Lecture Notes in Computer Science

SN - 0302-9743

ER -