Skip to content

Commit e64026e

Browse files
authored
Fix/icicle ml kem 768 (#2288)
* fix 768 version Signed-off-by: nonam3e <[email protected]> * update upstream git commit Signed-off-by: nonam3e <[email protected]> --------- Signed-off-by: nonam3e <[email protected]>
1 parent dd942d4 commit e64026e

File tree

5 files changed

+13
-115
lines changed

5 files changed

+13
-115
lines changed

docs/algorithms/kem/ml_kem.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
- **Source**: https://github.com/open-quantum-safe/liboqs-cupqc-meta/commit/b026f4e5475cd9c20c2082c7d9bad80e5b0ba89e
1515
- **Implementation license (SPDX-Identifier)**: Apache-2.0
1616
- **icicle-icicle_cuda**:<a name="icicle-icicle_cuda"></a>
17-
- **Source**: https://github.com/ingonyama-zk/icicle-liboqs/commit/8f215fd845928abfc2bb7d5ca15db76b839bee5c
17+
- **Source**: https://github.com/ingonyama-zk/icicle-liboqs/commit/4ea3e612ff26e3e72b5e5bcfff4cf3dda45dc0a8
1818
- **Implementation license (SPDX-Identifier)**: MIT
1919

2020

docs/algorithms/kem/ml_kem.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ optimized-upstreams:
2424
source: https://github.com/open-quantum-safe/liboqs-cupqc-meta/commit/b026f4e5475cd9c20c2082c7d9bad80e5b0ba89e
2525
spdx-license-identifier: Apache-2.0
2626
icicle-icicle_cuda:
27-
source: https://github.com/ingonyama-zk/icicle-liboqs/commit/8f215fd845928abfc2bb7d5ca15db76b839bee5c
27+
source: https://github.com/ingonyama-zk/icicle-liboqs/commit/4ea3e612ff26e3e72b5e5bcfff4cf3dda45dc0a8
2828
spdx-license-identifier: MIT
2929
parameter-sets:
3030
- name: ML-KEM-512

scripts/copy_from_upstream/copy_from_upstream.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,10 +51,10 @@ upstreams:
5151
name: icicle
5252
git_url: https://github.com/ingonyama-zk/icicle-liboqs.git
5353
git_branch: main
54-
git_commit: 8f215fd845928abfc2bb7d5ca15db76b839bee5c
54+
git_commit: 4ea3e612ff26e3e72b5e5bcfff4cf3dda45dc0a8
5555
kem_meta_path: '{pretty_name_full}_META.yml'
5656
kem_scheme_path: '.'
57-
patches: [icicle-mlkem-enc-derand.patch]
57+
patches: []
5858
-
5959
name: pqcrystals-dilithium-standard
6060
git_url: https://github.com/pq-crystals/dilithium.git

scripts/copy_from_upstream/patches/icicle-mlkem-enc-derand.patch

Lines changed: 0 additions & 102 deletions
This file was deleted.

src/kem/ml_kem/icicle_ml-kem-768_icicle_cuda/icicle_ml-kem.cpp

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -8,31 +8,31 @@
88
#include "icicle/errors.h"
99

1010
extern "C" {
11-
#if defined(OQS_ENABLE_KEM_ml_kem_1024_icicle_cuda)
12-
OQS_STATUS icicle_ml_kem_1024_keypair(uint8_t *pk, uint8_t *sk) {
11+
#if defined(OQS_ENABLE_KEM_ml_kem_768_icicle_cuda)
12+
OQS_STATUS icicle_ml_kem_768_keypair(uint8_t *pk, uint8_t *sk) {
1313
uint8_t coins[icicle::pqc::ml_kem::ENTROPY_BYTES];
1414
OQS_randombytes(coins, icicle::pqc::ml_kem::ENTROPY_BYTES);
1515

1616
icicle::pqc::ml_kem::MlKemConfig config;
17-
return icicle::pqc::ml_kem::keygen<icicle::pqc::ml_kem::Kyber1024Params>((std::byte*)coins, config, (std::byte*)pk, (std::byte*)sk) == icicle::eIcicleError::SUCCESS ? OQS_SUCCESS : OQS_ERROR;
17+
return icicle::pqc::ml_kem::keygen<icicle::pqc::ml_kem::Kyber768Params>((std::byte*)coins, config, (std::byte*)pk, (std::byte*)sk) == icicle::eIcicleError::SUCCESS ? OQS_SUCCESS : OQS_ERROR;
1818
}
1919

20-
OQS_STATUS icicle_ml_kem_1024_enc(uint8_t *ct, uint8_t *ss, const uint8_t *pk) {
20+
OQS_STATUS icicle_ml_kem_768_enc(uint8_t *ct, uint8_t *ss, const uint8_t *pk) {
2121
uint8_t coins[icicle::pqc::ml_kem::MESSAGE_BYTES];
2222
OQS_randombytes(coins, icicle::pqc::ml_kem::MESSAGE_BYTES);
2323

2424
icicle::pqc::ml_kem::MlKemConfig config;
25-
return icicle::pqc::ml_kem::encapsulate<icicle::pqc::ml_kem::Kyber1024Params>((std::byte*)coins, (std::byte*)pk, config, (std::byte*)ct, (std::byte*)ss) == icicle::eIcicleError::SUCCESS ? OQS_SUCCESS : OQS_ERROR;
25+
return icicle::pqc::ml_kem::encapsulate<icicle::pqc::ml_kem::Kyber768Params>((std::byte*)coins, (std::byte*)pk, config, (std::byte*)ct, (std::byte*)ss) == icicle::eIcicleError::SUCCESS ? OQS_SUCCESS : OQS_ERROR;
2626
}
2727

28-
OQS_STATUS icicle_ml_kem_1024_enc_derand(uint8_t *ct, uint8_t *ss, const uint8_t *pk, const uint8_t *coins) {
28+
OQS_STATUS icicle_ml_kem_768_enc_derand(uint8_t *ct, uint8_t *ss, const uint8_t *pk, const uint8_t *coins) {
2929
icicle::pqc::ml_kem::MlKemConfig config;
30-
return icicle::pqc::ml_kem::encapsulate<icicle::pqc::ml_kem::Kyber1024Params>((std::byte*)coins, (std::byte*)pk, config, (std::byte*)ct, (std::byte*)ss) == icicle::eIcicleError::SUCCESS ? OQS_SUCCESS : OQS_ERROR;
30+
return icicle::pqc::ml_kem::encapsulate<icicle::pqc::ml_kem::Kyber768Params>((std::byte*)coins, (std::byte*)pk, config, (std::byte*)ct, (std::byte*)ss) == icicle::eIcicleError::SUCCESS ? OQS_SUCCESS : OQS_ERROR;
3131
}
3232

33-
OQS_STATUS icicle_ml_kem_1024_dec(uint8_t *ss, const uint8_t *ct, const uint8_t *sk) {
33+
OQS_STATUS icicle_ml_kem_768_dec(uint8_t *ss, const uint8_t *ct, const uint8_t *sk) {
3434
icicle::pqc::ml_kem::MlKemConfig config;
35-
return icicle::pqc::ml_kem::decapsulate<icicle::pqc::ml_kem::Kyber1024Params>((std::byte*)sk, (std::byte*)ct, config, (std::byte*)ss) == icicle::eIcicleError::SUCCESS ? OQS_SUCCESS : OQS_ERROR;
35+
return icicle::pqc::ml_kem::decapsulate<icicle::pqc::ml_kem::Kyber768Params>((std::byte*)sk, (std::byte*)ct, config, (std::byte*)ss) == icicle::eIcicleError::SUCCESS ? OQS_SUCCESS : OQS_ERROR;
3636
}
3737
#endif
3838
}

0 commit comments

Comments
 (0)