gnupg/mpi
NIIBE Yutaka 6cbc75e712 mpi: Avoid data-dependent timing variations in mpi_powm.
* include/mpi.h, mpi/mpiutils.c (mpi_set_cond): New.
* mpi/mpi-pow.c (SIZE_PRECOMP): Rename from SIZE_B_2I3.
(mpi_powm): Access all data in the table and use mpi_set_cond.

--

Access to the precomputed table was indexed by a portion of EXPO,
which could be mounted by a side channel attack.  This change fixes
this particular data-dependent access pattern.
2015-02-26 21:00:05 +09:00
..
alpha Switched to GPLv3. 2007-10-23 10:48:09 +00:00
generic Switched to GPLv3. 2007-10-23 10:48:09 +00:00
hppa Switched to GPLv3. 2007-10-23 10:48:09 +00:00
hppa1.1 Switched to GPLv3. 2007-10-23 10:48:09 +00:00
i386 Switched to GPLv3. 2007-10-23 10:48:09 +00:00
i586 Switched to GPLv3. 2007-10-23 10:48:09 +00:00
m68k Switched to GPLv3. 2007-10-23 10:48:09 +00:00
mips3 Switched to GPLv3. 2007-10-23 10:48:09 +00:00
pa7100 Switched to GPLv3. 2007-10-23 10:48:09 +00:00
power Switched to GPLv3. 2007-10-23 10:48:09 +00:00
powerpc32 Switched to GPLv3. 2007-10-23 10:48:09 +00:00
powerpc64 Update head to match stable 1.0 2002-06-29 14:15:02 +00:00
sparc32 Switched to GPLv3. 2007-10-23 10:48:09 +00:00
sparc32v8 Switched to GPLv3. 2007-10-23 10:48:09 +00:00
supersparc Switched to GPLv3. 2007-10-23 10:48:09 +00:00
ChangeLog-2011 Rename all ChangeLog files to ChangeLog-2011. 2011-12-02 19:42:56 +01:00
Makefile.am Modernize to automake 1.14. 2015-01-19 18:59:13 +01:00
config.links Support NetBSD m68K ELF targets 2012-12-13 18:15:38 +01:00
longlong.h mpi: Fix syntax error for mips64 and gcc < 4.4 2013-10-11 14:11:43 +02:00
mpi-add.c Switched to GPLv3. 2007-10-23 10:48:09 +00:00
mpi-bit.c Switched to GPLv3. 2007-10-23 10:48:09 +00:00
mpi-cmp.c Switched to GPLv3. 2007-10-23 10:48:09 +00:00
mpi-div.c Switched to GPLv3. 2007-10-23 10:48:09 +00:00
mpi-gcd.c Switched to GPLv3. 2007-10-23 10:48:09 +00:00
mpi-inline.c Switched to GPLv3. 2007-10-23 10:48:09 +00:00
mpi-inline.h Fix extern inline use for gcc > 4.3 in c99 mode 2012-11-06 17:14:04 +01:00
mpi-internal.h mpi: Suppress set-but-unused-variables warnings. 2014-08-20 13:25:17 +02:00
mpi-inv.c mpi: Fix compiler warning. 2014-10-03 18:28:58 +02:00
mpi-mpow.c Switched to GPLv3. 2007-10-23 10:48:09 +00:00
mpi-mul.c Switched to GPLv3. 2007-10-23 10:48:09 +00:00
mpi-pow.c mpi: Avoid data-dependent timing variations in mpi_powm. 2015-02-26 21:00:05 +09:00
mpi-scan.c Switched to GPLv3. 2007-10-23 10:48:09 +00:00
mpicoder.c Removed some set but unused vars. 2011-08-09 10:54:22 +02:00
mpih-cmp.c Switched to GPLv3. 2007-10-23 10:48:09 +00:00
mpih-div.c mpi: Suppress set-but-unused-variables warnings. 2014-08-20 13:25:17 +02:00
mpih-mul.c Switched to GPLv3. 2007-10-23 10:48:09 +00:00
mpiutil.c mpi: Avoid data-dependent timing variations in mpi_powm. 2015-02-26 21:00:05 +09:00