Skip to content

[TEST ONLY] Experimentation around structured API #998

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 7 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions .github/workflows/cbmc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ jobs:
uses: ./.github/workflows/ci_ec2_reusable.yml
with:
name: CBMC (MLKEM-512)
ec2_instance_type: c7g.4xlarge
ec2_instance_type: c7g.8xlarge
ec2_ami: ubuntu-latest (custom AMI)
ec2_ami_id: ami-08ddb0acd99dc3d33 # aarch64, ubuntu-latest, 64g
compile_mode: native
Expand All @@ -40,7 +40,7 @@ jobs:
uses: ./.github/workflows/ci_ec2_reusable.yml
with:
name: CBMC (MLKEM-768)
ec2_instance_type: c7g.4xlarge
ec2_instance_type: c7g.8xlarge
ec2_ami: ubuntu-latest (custom AMI)
ec2_ami_id: ami-08ddb0acd99dc3d33 # aarch64, ubuntu-latest, 64g
compile_mode: native
Expand All @@ -63,7 +63,7 @@ jobs:
uses: ./.github/workflows/ci_ec2_reusable.yml
with:
name: CBMC (MLKEM-1024)
ec2_instance_type: c7g.4xlarge
ec2_instance_type: c7g.8xlarge
ec2_ami: ubuntu-latest (custom AMI)
ec2_ami_id: ami-08ddb0acd99dc3d33 # aarch64, ubuntu-latest, 64g
compile_mode: native
Expand Down
6 changes: 6 additions & 0 deletions .github/workflows/integration-awslc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,8 @@ jobs:
run: |
cd $AWSLC_DIR/crypto/fipsmodule/ml_kem
rm -rf mlkem
# patch mlkem_native_config.h to allow unused external API functions
sed -i.bak 's/^#define MLK_CONFIG_EXTERNAL_API_QUALIFIER static$/#define MLK_CONFIG_EXTERNAL_API_QUALIFIER static __attribute__((unused))/' mlkem_native_config.h
GITHUB_REPOSITORY=$GITHUB_REPOSITORY GITHUB_SHA=$GITHUB_SHA ./importer.sh --force
- name: Build+Test AWS-LC (FIPS=${{ matrix.fips }})
run: |
Expand Down Expand Up @@ -91,6 +93,8 @@ jobs:
- name: Run importer
run: |
cd $AWSLC_DIR/crypto/fipsmodule/ml_kem
# patch mlkem_native_config.h to allow unused external API functions
sed -i.bak 's/^#define MLK_CONFIG_EXTERNAL_API_QUALIFIER static$/#define MLK_CONFIG_EXTERNAL_API_QUALIFIER static __attribute__((unused))/' mlkem_native_config.h
GITHUB_REPOSITORY=$GITHUB_REPOSITORY GITHUB_SHA=$GITHUB_SHA ./importer.sh --force
- name: Run test
run: |
Expand Down Expand Up @@ -123,6 +127,8 @@ jobs:
- name: Run importer
run: |
cd $AWSLC_DIR/crypto/fipsmodule/ml_kem
# patch mlkem_native_config.h to allow unused external API functions
sed -i.bak 's/^#define MLK_CONFIG_EXTERNAL_API_QUALIFIER static$/#define MLK_CONFIG_EXTERNAL_API_QUALIFIER static __attribute__((unused))/' mlkem_native_config.h
GITHUB_REPOSITORY=$GITHUB_REPOSITORY GITHUB_SHA=$GITHUB_SHA ./importer.sh --force
- name: Run test
run: |
Expand Down
19 changes: 19 additions & 0 deletions examples/monolithic_build/mlkem_native_monobuild.c
Original file line number Diff line number Diff line change
Expand Up @@ -126,14 +126,33 @@
#undef mlk_indcpa_dec
#undef mlk_indcpa_enc
#undef mlk_indcpa_keypair_derand
#undef mlk_indcpa_marshal_pk
#undef mlk_indcpa_marshal_sk
#undef mlk_indcpa_parse_pk
#undef mlk_indcpa_parse_sk
#undef mlk_indcpa_public_key
#undef mlk_indcpa_secret_key
/* mlkem/kem.h */
#undef MLK_CONFIG_API_NO_SUPERCOP
#undef MLK_KEM_H
#undef crypto_kem_dec
#undef crypto_kem_dec_struct
#undef crypto_kem_enc
#undef crypto_kem_enc_derand
#undef crypto_kem_enc_derand_struct
#undef crypto_kem_enc_struct
#undef crypto_kem_keypair
#undef crypto_kem_keypair_derand
#undef crypto_kem_keypair_derand_struct
#undef crypto_kem_keypair_struct
#undef crypto_kem_marshal_pk
#undef crypto_kem_marshal_sk
#undef crypto_kem_parse_pk
#undef crypto_kem_parse_sk
#undef crypto_kem_pk_from_sk
#undef crypto_kem_sk_from_seed
#undef mlk_public_key
#undef mlk_secret_key
/* mlkem/mlkem_native.h */
#undef CRYPTO_BYTES
#undef CRYPTO_CIPHERTEXTBYTES
Expand Down
1 change: 1 addition & 0 deletions examples/monolithic_build_multilevel_native/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -93,6 +93,7 @@ CFLAGS := \
-Wpointer-arith \
-Wno-long-long \
-Wno-unknown-pragmas \
-Wno-unused-function \
-Wredundant-decls \
-Wno-unused-command-line-argument \
-fomit-frame-pointer \
Expand Down
Loading
Loading