You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ConfigureISDPRequest报BSP安全错误,求验证ECDH字段转换Go代码正确性

SGP.22 BSP(原SCP03t)共享密钥转换代码合规性疑问

我正在组装SGP.22的GetBoundProfilePackage响应,目前遇到问题:InitialiseSecureChannelRequest返回90 00成功,但后续的ConfigureISDPRequest返回errorReason 8(即BSP安全错误)。BSP是SGP.22 v3中SCP03t的新名称,该流程包含多步操作,ConfigureISDPRequest需要加密和MAC操作,但这个错误码无法定位具体出错环节。

当前排查到关键步骤:使用InitialiseSecureChannelRequest生成的smdpOtsk私钥和euiccOtpk公钥生成ShS共享密钥,该ECDH流程需遵循NIST SP 800-56Ar3第5.7.1.2节,步骤如下:

  • 计算点P = hdAQB
  • 若P为空(Ø),销毁所有中间值,输出错误并退出
  • 若P有效,取P的x坐标z,按照附录C.2定义的字段元素到字节串转换例程将z转换为Z

我已实现计算点的Go代码:

calcedX, _ := euiccOtpk.Curve.ScalarMult(euiccOtpk.X, euiccOtpk.Y, smdpOtsk.D.Bytes())

但对第3步的转换逻辑存疑,目前的实现代码如下,想请教这段代码是否符合NIST SP 800-56Ar3附录C.2的要求?

fixedBytes := make([]byte, 32)
calcedX.FillBytes(fixedBytes)
return fixedBytes

内容的提问来源于stack exchange,提问作者chris mode51

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.30 19:45:31