quickjs-tart

quickjs-based runtime for wallet-core logic
Log | Files | Refs | README | LICENSE

test_suite_cipher.padding.data (9517B)


      1 Cipher list
      2 mbedtls_cipher_list:
      3 
      4 Set padding with AES-CBC
      5 depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
      6 set_padding:MBEDTLS_CIPHER_AES_128_CBC:MBEDTLS_PADDING_PKCS7:0
      7 
      8 Set padding with AES-CFB
      9 depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CFB
     10 set_padding:MBEDTLS_CIPHER_AES_128_CFB128:MBEDTLS_PADDING_PKCS7:MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA
     11 
     12 Set padding with AES-CTR
     13 depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CTR
     14 set_padding:MBEDTLS_CIPHER_AES_128_CTR:MBEDTLS_PADDING_PKCS7:MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA
     15 
     16 Set padding with CAMELLIA-CBC
     17 depends_on:MBEDTLS_CAMELLIA_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
     18 set_padding:MBEDTLS_CIPHER_CAMELLIA_128_CBC:MBEDTLS_PADDING_PKCS7:0
     19 
     20 Set padding with CAMELLIA-CFB
     21 depends_on:MBEDTLS_CAMELLIA_C:MBEDTLS_CIPHER_MODE_CFB
     22 set_padding:MBEDTLS_CIPHER_CAMELLIA_128_CFB128:MBEDTLS_PADDING_PKCS7:MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA
     23 
     24 Set padding with CAMELLIA-CTR
     25 depends_on:MBEDTLS_CAMELLIA_C:MBEDTLS_CIPHER_MODE_CTR
     26 set_padding:MBEDTLS_CIPHER_CAMELLIA_128_CTR:MBEDTLS_PADDING_PKCS7:MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA
     27 
     28 Set padding with DES-CBC
     29 depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
     30 set_padding:MBEDTLS_CIPHER_DES_CBC:MBEDTLS_PADDING_PKCS7:0
     31 
     32 Set padding with NULL
     33 depends_on:MBEDTLS_CIPHER_NULL_CIPHER
     34 set_padding:MBEDTLS_CIPHER_NULL:MBEDTLS_PADDING_PKCS7:MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA
     35 
     36 Set non-existent padding with AES-CBC
     37 depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC
     38 set_padding:MBEDTLS_CIPHER_AES_128_CBC:-1:MBEDTLS_ERR_CIPHER_FEATURE_UNAVAILABLE
     39 
     40 Set non-existent padding with CAMELLIA-CBC
     41 depends_on:MBEDTLS_CAMELLIA_C:MBEDTLS_CIPHER_MODE_CBC
     42 set_padding:MBEDTLS_CIPHER_CAMELLIA_128_CBC:-1:MBEDTLS_ERR_CIPHER_FEATURE_UNAVAILABLE
     43 
     44 Set non-existent padding with DES-CBC
     45 depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC
     46 set_padding:MBEDTLS_CIPHER_DES_CBC:-1:MBEDTLS_ERR_CIPHER_FEATURE_UNAVAILABLE
     47 
     48 Check PKCS padding #1 (correct)
     49 depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
     50 check_padding:MBEDTLS_PADDING_PKCS7:"DABBAD0004040404":0:4
     51 
     52 Check PKCS padding #2 (correct)
     53 depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
     54 check_padding:MBEDTLS_PADDING_PKCS7:"DABBAD0001":0:4
     55 
     56 Check PKCS padding #3 (correct)
     57 depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
     58 check_padding:MBEDTLS_PADDING_PKCS7:"DABBAD000101":0:5
     59 
     60 Check PKCS padding #4 (correct)
     61 depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
     62 check_padding:MBEDTLS_PADDING_PKCS7:"030303":0:0
     63 
     64 Check PKCS padding #5 (null padding)
     65 depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
     66 check_padding:MBEDTLS_PADDING_PKCS7:"DABBAD0000":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
     67 
     68 Check PKCS padding #6 (too few padding bytes)
     69 depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
     70 check_padding:MBEDTLS_PADDING_PKCS7:"DABBAD0002":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
     71 
     72 Check PKCS padding #7 (non-uniform padding bytes #1)
     73 depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
     74 check_padding:MBEDTLS_PADDING_PKCS7:"DABBAD00030203":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
     75 
     76 Check PKCS padding #7 (non-uniform padding bytes #2)
     77 depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
     78 check_padding:MBEDTLS_PADDING_PKCS7:"DABBAD00030103":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
     79 
     80 Check PKCS padding #7 (non-uniform padding bytes #3)
     81 depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
     82 check_padding:MBEDTLS_PADDING_PKCS7:"DABBAD00030703":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
     83 
     84 Check PKCS padding #7 (non-uniform padding bytes #4)
     85 depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
     86 check_padding:MBEDTLS_PADDING_PKCS7:"DABBAD00030b03":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
     87 
     88 Check PKCS padding #7 (non-uniform padding bytes #5)
     89 depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
     90 check_padding:MBEDTLS_PADDING_PKCS7:"DABBAD00031303":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
     91 
     92 Check PKCS padding #7 (non-uniform padding bytes #6)
     93 depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
     94 check_padding:MBEDTLS_PADDING_PKCS7:"DABBAD00032303":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
     95 
     96 Check PKCS padding #7 (non-uniform padding bytes #7)
     97 depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
     98 check_padding:MBEDTLS_PADDING_PKCS7:"DABBAD00034203":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
     99 
    100 Check PKCS padding #7 (non-uniform padding bytes #8)
    101 depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
    102 check_padding:MBEDTLS_PADDING_PKCS7:"DABBAD00038303":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
    103 
    104 Check PKCS padding #7 (non-uniform padding bytes #9)
    105 depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
    106 check_padding:MBEDTLS_PADDING_PKCS7:"DABBAD00020303":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
    107 
    108 Check PKCS padding #7 (non-uniform padding bytes #10)
    109 depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
    110 check_padding:MBEDTLS_PADDING_PKCS7:"DABBAD00010303":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
    111 
    112 Check PKCS padding #7 (non-uniform padding bytes #11)
    113 depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
    114 check_padding:MBEDTLS_PADDING_PKCS7:"DABBAD00070303":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
    115 
    116 Check PKCS padding #7 (non-uniform padding bytes #12)
    117 depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
    118 check_padding:MBEDTLS_PADDING_PKCS7:"DABBAD000b0303":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
    119 
    120 Check PKCS padding #7 (non-uniform padding bytes #13)
    121 depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
    122 check_padding:MBEDTLS_PADDING_PKCS7:"DABBAD00130303":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
    123 
    124 Check PKCS padding #7 (non-uniform padding bytes #14)
    125 depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
    126 check_padding:MBEDTLS_PADDING_PKCS7:"DABBAD00230303":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
    127 
    128 Check PKCS padding #7 (non-uniform padding bytes #15)
    129 depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
    130 check_padding:MBEDTLS_PADDING_PKCS7:"DABBAD00420303":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
    131 
    132 Check PKCS padding #7 (non-uniform padding bytes #16)
    133 depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
    134 check_padding:MBEDTLS_PADDING_PKCS7:"DABBAD00830303":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
    135 
    136 Check PKCS padding #8 (overlong)
    137 depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
    138 check_padding:MBEDTLS_PADDING_PKCS7:"040404":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
    139 
    140 Check one and zeros padding #1 (correct)
    141 depends_on:MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS
    142 check_padding:MBEDTLS_PADDING_ONE_AND_ZEROS:"DABBAD0080":0:4
    143 
    144 Check one and zeros padding #2 (correct)
    145 depends_on:MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS
    146 check_padding:MBEDTLS_PADDING_ONE_AND_ZEROS:"DABBAD008000":0:4
    147 
    148 Check one and zeros padding #3 (correct)
    149 depends_on:MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS
    150 check_padding:MBEDTLS_PADDING_ONE_AND_ZEROS:"DABBAD00800000":0:4
    151 
    152 Check one and zeros padding #4 (correct)
    153 depends_on:MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS
    154 check_padding:MBEDTLS_PADDING_ONE_AND_ZEROS:"DABBAD00808000":0:5
    155 
    156 Check one and zeros padding #5 (correct)
    157 depends_on:MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS
    158 check_padding:MBEDTLS_PADDING_ONE_AND_ZEROS:"800000":0:0
    159 
    160 Check one and zeros padding #6 (missing one)
    161 depends_on:MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS
    162 check_padding:MBEDTLS_PADDING_ONE_AND_ZEROS:"DABBAD0000":MBEDTLS_ERR_CIPHER_INVALID_PADDING:4
    163 
    164 Check one and zeros padding #7 (overlong)
    165 depends_on:MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS
    166 check_padding:MBEDTLS_PADDING_ONE_AND_ZEROS:"0000000000":MBEDTLS_ERR_CIPHER_INVALID_PADDING:4
    167 
    168 Check one and zeros padding #8 (last byte 0x80 | x)
    169 depends_on:MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS
    170 check_padding:MBEDTLS_PADDING_ONE_AND_ZEROS:"0000000082":MBEDTLS_ERR_CIPHER_INVALID_PADDING:4
    171 
    172 Check zeros and len padding #1 (correct)
    173 depends_on:MBEDTLS_CIPHER_PADDING_ZEROS_AND_LEN
    174 check_padding:MBEDTLS_PADDING_ZEROS_AND_LEN:"DABBAD0001":0:4
    175 
    176 Check zeros and len padding #2 (correct)
    177 depends_on:MBEDTLS_CIPHER_PADDING_ZEROS_AND_LEN
    178 check_padding:MBEDTLS_PADDING_ZEROS_AND_LEN:"DABBAD000002":0:4
    179 
    180 Check zeros and len padding #3 (correct)
    181 depends_on:MBEDTLS_CIPHER_PADDING_ZEROS_AND_LEN
    182 check_padding:MBEDTLS_PADDING_ZEROS_AND_LEN:"DABBAD000003":0:3
    183 
    184 Check zeros and len padding #4 (correct)
    185 depends_on:MBEDTLS_CIPHER_PADDING_ZEROS_AND_LEN
    186 check_padding:MBEDTLS_PADDING_ZEROS_AND_LEN:"000003":0:0
    187 
    188 Check zeros and len padding #5 (overlong)
    189 depends_on:MBEDTLS_CIPHER_PADDING_ZEROS_AND_LEN
    190 check_padding:MBEDTLS_PADDING_ZEROS_AND_LEN:"000004":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
    191 
    192 Check zeros and len padding #6 (not enough zeros)
    193 depends_on:MBEDTLS_CIPHER_PADDING_ZEROS_AND_LEN
    194 check_padding:MBEDTLS_PADDING_ZEROS_AND_LEN:"DABBAD000004":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
    195 
    196 Check zeros padding #1 (correct)
    197 depends_on:MBEDTLS_CIPHER_PADDING_ZEROS
    198 check_padding:MBEDTLS_PADDING_ZEROS:"DABBAD00":0:3
    199 
    200 Check zeros padding #2 (correct)
    201 depends_on:MBEDTLS_CIPHER_PADDING_ZEROS
    202 check_padding:MBEDTLS_PADDING_ZEROS:"DABBAD0000":0:3
    203 
    204 Check zeros padding #3 (correct)
    205 depends_on:MBEDTLS_CIPHER_PADDING_ZEROS
    206 check_padding:MBEDTLS_PADDING_ZEROS:"DABBAD":0:3
    207 
    208 Check zeros padding #4 (correct)
    209 depends_on:MBEDTLS_CIPHER_PADDING_ZEROS
    210 check_padding:MBEDTLS_PADDING_ZEROS:"000000":0:0
    211 
    212 Check no padding #1 (correct by definition)
    213 check_padding:MBEDTLS_PADDING_NONE:"DABBAD00":0:4
    214 
    215 Check no padding #2 (correct by definition)
    216 check_padding:MBEDTLS_PADDING_NONE:"DABBAD0001":0:5
    217 
    218 Check no padding #3 (correct by definition)
    219 check_padding:MBEDTLS_PADDING_NONE:"":0:0
    220 
    221 Constant-time PKCS7 padding, valid #1
    222 get_pkcs_padding:"00112233445566778899AABBCCDDEE01":0:15
    223 
    224 Constant-time PKCS7 padding, valid #2
    225 get_pkcs_padding:"00112233445566778899AA0505050505":0:11
    226 
    227 Constant-time PKCS7 padding, valid #3
    228 get_pkcs_padding:"10101010101010101010101010101010":0:0
    229 
    230 Constant-time PKCS7 padding, invalid zero
    231 get_pkcs_padding:"00112233445566778899AABBCCDDEE00":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
    232 
    233 Constant-time PKCS7 padding, invalid > 16
    234 get_pkcs_padding:"00112233445566778899AABBCCDDEE11":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0