seckit/src/__tests__/algorithm/sm4-gcm.test.ts
2026-04-15 17:34:25 +08:00

22 lines
944 B
TypeScript

import { sm4Encrypt, sm4Decrypt } from '../../utils/algorithm/sm4'
describe('SM4 GCM 模式测试(用户提供的测试用例)', () => {
test('用户提供的 GCM 测试用例', () => {
const key = '00000000000000000000000000000000'
const iv = '000000000000000000000000'
const message = '00000000000000000000000000000000'
const expected = '7de2aa7f1110188218063be1bfeb6d89b851b5f39493752be508f1bb4482c557'
const encrypted = sm4Encrypt(message, key, 'gcm', iv, 'none')
console.log('实际结果:', encrypted)
console.log('预期结果:', expected)
console.log('结果是否匹配:', encrypted.toUpperCase() === expected.toUpperCase())
// 验证加密结果
expect(encrypted.toUpperCase()).toBe(expected.toUpperCase())
// 验证解密结果
const decrypted = sm4Decrypt(encrypted, key, 'gcm', iv, 'none')
expect(decrypted.toUpperCase()).toBe(message.toUpperCase())
})
})