summaryrefslogtreecommitdiffstats
path: root/src/tpm2/crypto/openssl/consttime.txt'
blob: b667086171be49eb1ccef0a5ae2f7248044cd3db (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
The following OpenSSL public BIGNUM functions check for the BN_FLG_CONSTTIME:

bn_blind.c:
  BN_BLINDING_new()

bn_exp.c:
  BN_exp     : must not be set for input bignums
! BN_mod_exp : SHOULD be set for any one of input bignums (only) if m is odd
  BN_mod_exp_recp: must NOT be set for input bignums
  BN_mod_exp_mont: SHOULD be set for any one of input bignums
  BN_mod_exp_mont_word: must NOT be set for input bignums
  BN_mod_exp_simple: must NOT bet set for input bignums

bn_gcd.c:
! BN_mod_inverse: SHOULD be set for any one of input bignums

bn_lib:
  BN_num_bits
! BN_copy

bn_mont.c:
  BN_MONT_CTX_set

bn.h:
! BN_num_bytes: Calls BN_num_bits


Relevant files and functions in the files:
Helpers.c
 - BN_dup:
 - BN_sub:
 - BN_add_word:
 - BN_mod_inverse: yes
 - BN_set_word:
 - BN_bin2bn:
 - BN_div:
 - BN_is_zero:

TpmToOsslMath:
  OsslToTpmBn:
   - BN_num_bytes:
   - BN_bn2bin:
  BigInitialized:
   - BN_bin2bn:
   - BN_copy:
  BnModMult:
   - BN_mul:
   - BN_div:
  BnMult:
   - BN_mul:
  BnDiv:
   - BN_div:
  BnGcd:
   - BN_gcd:
  BnModExp:
   - BN_mod_exp: YES
  BnModInverse:
   - BN_mod_inverse: YES