diff options
| author | NIIBE Yutaka <[email protected]> | 2025-05-22 05:34:05 +0000 |
|---|---|---|
| committer | NIIBE Yutaka <[email protected]> | 2025-05-22 05:34:05 +0000 |
| commit | 04782e7fd62923db8f4565bca2adc6cc349f667a (patch) | |
| tree | beac226345b464d7813c6e1c687e61f2e253d098 /agent/pkdecrypt.c | |
| parent | agent: Finish ECC KEM, adding support for NIST curves. (diff) | |
| download | gnupg-04782e7fd62923db8f4565bca2adc6cc349f667a.tar.gz gnupg-04782e7fd62923db8f4565bca2adc6cc349f667a.zip | |
agent: Add support for TPM2 for ECC KEM.
* agent/agent.h (agent_tpm2d_ecc_kem): New.
* agent/divert-tpm2.c (agent_tpm2d_ecc_kem): New.
* agent/pkdecrypt.c (ecc_pgp_kem_decap): Call agent_tpm2d_ecc_kem.
--
GnuPG-bug-id: 7649
Signed-off-by: NIIBE Yutaka <[email protected]>
Diffstat (limited to 'agent/pkdecrypt.c')
| -rw-r--r-- | agent/pkdecrypt.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/agent/pkdecrypt.c b/agent/pkdecrypt.c index 6fe69e20f..90d84ee3f 100644 --- a/agent/pkdecrypt.c +++ b/agent/pkdecrypt.c @@ -503,8 +503,13 @@ ecc_pgp_kem_decap (ctrl_t ctrl, gcry_sexp_t s_skey0, { if (s_skey0 && agent_is_tpm2_key (s_skey0)) { - log_error ("TPM decryption failed: %s\n", gpg_strerror (err)); - return gpg_error (GPG_ERR_NOT_IMPLEMENTED); + err = agent_tpm2d_ecc_kem (ctrl, shadow_info0, + ecc_ct, ecc->point_len, ecc_ecdh); + if (err) + { + log_error ("TPM decryption failed: %s\n", gpg_strerror (err)); + return err; + } } else { |
