diff --git a/src/App.tsx b/src/App.tsx index 2542046..011ee7e 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -25,6 +25,7 @@ function App() { const [sm4Iv, setSm4Iv] = useState('') const [sm4Message, setSm4Message] = useState('') const [sm4Mode, setSm4Mode] = useState('ecb') + const [sm4PaddingMode, setSm4PaddingMode] = useState<'pkcs7' | 'none'>('pkcs7') const [sm4Encrypted, setSm4Encrypted] = useState('') const [sm4Decrypted, setSm4Decrypted] = useState('') @@ -116,7 +117,7 @@ function App() { // SM4 加密 const handleEncryptSm4 = () => { try { - const encrypted = sm4Encrypt(sm4Message, sm4Key, sm4Mode, sm4Iv) + const encrypted = sm4Encrypt(sm4Message, sm4Key, sm4Mode, sm4Iv, sm4PaddingMode) setSm4Encrypted(encrypted) } catch (error) { alert('加密失败: ' + (error instanceof Error ? error.message : error)) @@ -126,7 +127,7 @@ function App() { // SM4 解密 const handleDecryptSm4 = () => { try { - const decrypted = sm4Decrypt(sm4Encrypted, sm4Key, sm4Mode, sm4Iv) + const decrypted = sm4Decrypt(sm4Encrypted, sm4Key, sm4Mode, sm4Iv, sm4PaddingMode) setSm4Decrypted(decrypted) } catch (error) { alert('解密失败: ' + (error instanceof Error ? error.message : error)) @@ -347,6 +348,21 @@ function App() { +
+ +
+ {(['pkcs7', 'none'] as const).map(paddingMode => ( + + ))} +
+
+