feat: 新增共享加密包并引入 ZIP/PGP 依赖
This commit is contained in:
23
packages/crypto/src/hmac.ts
Normal file
23
packages/crypto/src/hmac.ts
Normal file
@@ -0,0 +1,23 @@
|
||||
import { createHmac } from 'node:crypto'
|
||||
|
||||
/**
|
||||
* Compute HMAC-SHA256 and return Base64-encoded signature.
|
||||
*
|
||||
* @param key - HMAC key (Buffer)
|
||||
* @param data - Data to sign (UTF-8 string)
|
||||
* @returns Base64-encoded HMAC-SHA256 signature
|
||||
*/
|
||||
export const hmacSha256Base64 = (key: Buffer, data: string): string => {
|
||||
return createHmac('sha256', key).update(data, 'utf-8').digest('base64')
|
||||
}
|
||||
|
||||
/**
|
||||
* Compute HMAC-SHA256 and return raw Buffer.
|
||||
*
|
||||
* @param key - HMAC key (Buffer)
|
||||
* @param data - Data to sign (UTF-8 string)
|
||||
* @returns HMAC-SHA256 digest as Buffer
|
||||
*/
|
||||
export const hmacSha256 = (key: Buffer, data: string): Buffer => {
|
||||
return createHmac('sha256', key).update(data, 'utf-8').digest()
|
||||
}
|
||||
Reference in New Issue
Block a user