@bytesurging/pay-protocol
v0.1.0
Published
HMAC signing protocol for business-server → pay-central service calls
Readme
@bytesurging/pay-protocol
业务服 → pay-central 服务间 HMAC 签名算法(不含 app_secret)。
安全依赖密钥保密,不依赖算法保密。包内禁止放入真实生产密钥。
用法
import {
buildPathWithQuery,
buildServiceSignContent,
computeServiceSignature,
verifyServiceSignature,
isTimestampWithinSkew,
} from "@bytesurging/pay-protocol";待签串(\n 分隔):timestamp / METHOD / pathWithQuery / userId / sha256(rawBody)。
x-signature = HMAC_SHA256(appSecret, content).hex().lower()时间窗默认 ±300 秒(PAY_SERVICE_SIGN_SKEW_SECONDS)。
本地联调
在消费方 package.json:
"@bytesurging/pay-protocol": "file:../../npm/packages/pay-protocol"(路径按实际相对位置调整。)请先在本包执行 pnpm install && pnpm build,保证 dist/ 存在后再在消费方 pnpm install。
当前为便于 file: 引用,仓库内可保留已构建的 dist/;发到私有 registry 后由 CI build 产出即可。
发布
公开包:publishConfig.access = public(任何人可安装,无需私有 registry)。协议变更请 bump 版本,消费方同步升级。
完整步骤见仓库文档:如何 npm publish。
