技术
App Store 收据验证 SHA-256 迁移
Apple 正在更新 App Store 收据验证使用的加密算法。如果您使用服务器端收据验证,需要在截止日期前完成迁移。
❓ 为什么迁移
Apple 正在从 SHA-1 迁移到 SHA-256 来签署 App Store 收据,原因是:
- 安全性:SHA-1 已被认为不够安全
- 行业标准:SHA-256 是当前的加密标准
- 未来兼容:为更强的安全要求做准备
📅 时间线
2024 年 8 月
沙盒环境开始发送 SHA-256 签名的收据
2025 年 1 月
生产环境完全切换到 SHA-256
📝 迁移步骤
- 更新您的收据验证代码以支持 SHA-256
- 更新 Apple 根证书(下载新的 SHA-256 证书)
- 在沙盒环境测试验证流程
- 部署到生产环境
- 监控验证错误
✨ 考虑 StoreKit 2
如果可能,考虑迁移到 StoreKit 2:
- 更简单:使用 JWS(JSON Web Signature)格式
- 更安全:内置 SHA-256 签名验证
- 更现代:async/await API,更好的错误处理
- App Store Server API:新的服务器端验证方式
注意:StoreKit 2 需要 iOS 15+。如果需要支持更早版本,仍需使用原始 StoreKit。