From 9ccb5147efe210b4a9944ad01c632c762293ec4f Mon Sep 17 00:00:00 2001 From: waner Date: Sat, 9 May 2026 14:05:32 +0800 Subject: [PATCH] fix --- .../backup/crypto/ResourceEnvelopeCryptoServiceImpl.java | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/cisd/tms/modules/backup/crypto/ResourceEnvelopeCryptoServiceImpl.java b/src/main/java/com/cisd/tms/modules/backup/crypto/ResourceEnvelopeCryptoServiceImpl.java index dabc996..89c43ae 100644 --- a/src/main/java/com/cisd/tms/modules/backup/crypto/ResourceEnvelopeCryptoServiceImpl.java +++ b/src/main/java/com/cisd/tms/modules/backup/crypto/ResourceEnvelopeCryptoServiceImpl.java @@ -116,11 +116,10 @@ public class ResourceEnvelopeCryptoServiceImpl implements ResourceEnvelopeCrypto byte[] wrappedDek = Base64.getDecoder().decode(String.valueOf(envelope.get("wrappedDekBase64"))); int dekLength = parseInt(envelope.get("dekLength"), 16); // 先验签,再解数字信封,再解 payload;顺序固定,避免篡改包先进入明文处理路径。 - EccInternalDecryptRequest decryptRequest = new EccInternalDecryptRequest(); + UserKeyDecryptRequest decryptRequest = new UserKeyDecryptRequest(); decryptRequest.setKeyIndex(ResourceCryptoKeyConstants.STORAGE_ENC_KEY_INDEX); decryptRequest.setCipherBlob(wrappedDek); - decryptRequest.setOutBufferSize(dekLength); - byte[] sm4Key = normalizeAndWipe(pcieCryptoService.sdfeInternalDecryptEcc(decryptRequest)); + byte[] sm4Key = normalizeAndWipe(pcieCryptoService.userKeyDecrypt(decryptRequest)); byte[] iv = Base64.getDecoder().decode(String.valueOf(envelope.get("ivBase64"))); try { Cipher cipher = Cipher.getInstance("SM4/CBC/PKCS7Padding", PROVIDER);