code wiki / (root) / nx_p384_point_test.nx

nx_p384_point_test.nx

buildroot/runtime/nx_p384_point_test.nx

2074 B64 linesdepth 9pulls 10 transitivereach 0 importersview sourcekind gate/prooftopic p384
docsdependenciesstructsconstsfunctions

about

nx_p384_point_test.nx -- KAT for P-384 point operations. Verifies: - G (base point) is on curve - 2G via double + to_affine is on curve - 2G computed via add(G, G) equals 2G via double(G) - G + infinity == G - G + (-G) == infinity (additive inverse: -G = (Gx, -Gy)) - 3G via add(2G, G) is on curve expect_exit: 0 license_tier: ORIGINAL

dependencies 5 imports · 0 importers

nx_syscalls.nx nx_u384.nx nx_p384_field.nx nx_p384_point.nx nx_p384_point_add.nx nx_p384_point_test.nx

imports: nx_syscalls.nxnx_u384.nxnx_p384_field.nxnx_p384_point.nxnx_p384_point_add.nx

imported by: nobody (leaf or entry point)

call flow from main pre-order; caps 40 nodes / depth 6 declared; ↻ = already shown

main p384_point_alloc nx_u384_scratch nx_u384_scratch_init sys_mmap sys_write sys_exit sys_mmap ↻ u384_alloc nx_u384_scratch ↻ p384_field_one u384_one u384_zero p384_field_zero u384_zero ↻ p384_point_load_g p384_field_one ↻ p384_point_on_curve p384_point_is_infinity u384_is_zero u384_alloc ↻ u384_copy p384_field_sq_fast p384_field_mul_fast u384_wide_alloc sys_mmap ↻ u384_mul_wide u384_alloc ↻ p384_field_load_p p384_fold_once u384_alloc ↻ p384_acc_add_shifted p384_acc_sub_shifted p384_fast_reduce_final u384_sub_with_borrow u384_cmp u384_wide_copy_low p384_field_mul_fast ↻ p384_field_add u384_alloc ↻

structs

none

consts

none

functions

20func main() -> i64