Skip to content

Commit a84e637

Browse files
committed
[pentest] Port OTBN SCA code to uJSON
This commit ports the existing OTBN SCA code located in sw/device/sca/otbn_vertical to the cryptotest framework to use the uJSON interface. The host code is located in lowRISC/ot-sca#347 Signed-off-by: Pascal Nasahl <[email protected]>
1 parent 2d5cc77 commit a84e637

File tree

12 files changed

+1204
-0
lines changed

12 files changed

+1204
-0
lines changed

sw/device/tests/crypto/cryptotest/firmware/BUILD

Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -206,6 +206,72 @@ cc_library(
206206
],
207207
)
208208

209+
cc_library(
210+
name = "ecc256_keygen_sca",
211+
srcs = ["ecc256_keygen_sca.c"],
212+
hdrs = ["ecc256_keygen_sca.h"],
213+
deps = [
214+
"//hw/top_earlgrey/sw/autogen:top_earlgrey",
215+
"//sw/device/lib/base:abs_mmio",
216+
"//sw/device/lib/base:memory",
217+
"//sw/device/lib/crypto/drivers:otbn",
218+
"//sw/device/lib/runtime:ibex",
219+
"//sw/device/lib/runtime:log",
220+
"//sw/device/lib/testing:entropy_testutils",
221+
"//sw/device/lib/testing/test_framework:ottf_ld_silicon_creator_slot_a",
222+
"//sw/device/lib/testing/test_framework:ottf_main",
223+
"//sw/device/lib/testing/test_framework:ujson_ottf",
224+
"//sw/device/lib/ujson",
225+
"//sw/device/sca/lib:prng",
226+
"//sw/device/sca/lib:sca",
227+
"//sw/device/tests/crypto/cryptotest/json:otbn_sca_commands",
228+
"//sw/otbn/crypto:p256_key_from_seed_sca",
229+
],
230+
)
231+
232+
cc_library(
233+
name = "ecc256_modinv_sca",
234+
srcs = ["ecc256_modinv_sca.c"],
235+
hdrs = ["ecc256_modinv_sca.h"],
236+
deps = [
237+
"//hw/top_earlgrey/sw/autogen:top_earlgrey",
238+
"//sw/device/lib/base:abs_mmio",
239+
"//sw/device/lib/base:memory",
240+
"//sw/device/lib/crypto/drivers:otbn",
241+
"//sw/device/lib/runtime:ibex",
242+
"//sw/device/lib/runtime:log",
243+
"//sw/device/lib/testing:entropy_testutils",
244+
"//sw/device/lib/testing/test_framework:ottf_ld_silicon_creator_slot_a",
245+
"//sw/device/lib/testing/test_framework:ottf_main",
246+
"//sw/device/lib/testing/test_framework:ujson_ottf",
247+
"//sw/device/lib/ujson",
248+
"//sw/device/sca/lib:prng",
249+
"//sw/device/sca/lib:sca",
250+
"//sw/device/tests/crypto/cryptotest/json:otbn_sca_commands",
251+
"//sw/otbn/crypto:p256_mod_inv_sca",
252+
],
253+
)
254+
255+
cc_library(
256+
name = "otbn_sca",
257+
srcs = ["otbn_sca.c"],
258+
hdrs = ["otbn_sca.h"],
259+
deps = [
260+
":ecc256_keygen_sca",
261+
":ecc256_modinv_sca",
262+
"//sw/device/lib/base:memory",
263+
"//sw/device/lib/base:status",
264+
"//sw/device/lib/crypto/impl:status",
265+
"//sw/device/lib/runtime:log",
266+
"//sw/device/lib/testing/test_framework:ujson_ottf",
267+
"//sw/device/lib/ujson",
268+
"//sw/device/sca/lib:prng",
269+
"//sw/device/sca/lib:sca",
270+
"//sw/device/tests/crypto/cryptotest/firmware:sca_lib",
271+
"//sw/device/tests/crypto/cryptotest/json:otbn_sca_commands",
272+
],
273+
)
274+
209275
cc_library(
210276
name = "otbn_fi",
211277
srcs = ["otbn_fi.c"],
@@ -303,6 +369,7 @@ FIRMWARE_DEPS = [
303369
":ibex_fi",
304370
":kmac_sca",
305371
":kmac",
372+
":otbn_sca",
306373
":otbn_fi",
307374
":prng_sca",
308375
":sha3_sca",

0 commit comments

Comments
 (0)