当前位置: 首页 > wzjs >正文

网站做优化有几种方式有域名怎么建设网站

网站做优化有几种方式,有域名怎么建设网站,营销软文范例大全,做卖挖掘机的网站👻前言 我在使用rawDataHex和privateKeyHex进行签名的时候,是可以正常签名的,但是一广播就失败,无法上链,以下是我签名的方法 /// Tron签名函数,返回 r s v 的 65字节签名String signTronTx(Uint8List …

👻前言

我在使用rawDataHex和privateKeyHex进行签名的时候,是可以正常签名的,但是一广播就失败,无法上链,以下是我签名的方法

/// Tron签名函数,返回 r + s + v 的 65字节签名String signTronTx(Uint8List rawData, String privateKeyHex) {// 1. SHA256 哈希final hash = sha256.convert(rawData).bytes;// 2. 私钥 hex -> bytesfinal privateKeyBytes = web3.hexToBytes(privateKeyHex);// 3. 签名final sig = web3.sign(Uint8List.fromList(hash), privateKeyBytes);// 4. 拼接 r(32) + s(32) + v(1)final r = sig.r.toBytesPadded(32);// final r = bigIntToBytes(sig.r, 32);// final s = bigIntToBytes(sig.s, 32);final s = sig.s.toBytesPadded(32);final v = Uint8List.fromList([sig.v]);final sigList = Uint8List.fromList([...r, ...s, ...v]);return hex.encode(sigList);}

后来查询了大量文档才知道,我这个是r + s + v格式的字节签名,能上链的签名是v + r + s 格式的 65 字节签名,所以导致失败。

🧠 背景知识:椭圆曲线签名(ECDSA)

在 ECDSA(用于 Tron、Ethereum 等链)中,签名的结构是:

r(32字节) + s(32字节) + v(1字节)

注意:但是这个顺序并不是所有链都一样,不同链对签名的顺序有细微要求。

✅正确格式:v + r + s

Tron 的签名顺序是:

[1 byte v] + [32 byte r] + [32 byte s] = 65 字节

✏️ 修改 signTronTx 函数

String signTronTx(Uint8List rawData, String privateKeyHex) {// 1. SHA256 哈希final hash = sha256.convert(rawData).bytes;// 2. 私钥 hex -> bytesfinal privateKeyBytes = web3.hexToBytes(privateKeyHex);// 3. 签名final sig = web3.sign(Uint8List.fromList(hash), privateKeyBytes);// 4. 拼接成 [v, r, s]final r = sig.r.toBytesPadded(32);final s = sig.s.toBytesPadded(32);final v = Uint8List.fromList([sig.v]); // 注意,这里是 1 字节// ✅ 顺序改成 v + r + sfinal sigList = Uint8List.fromList([...v, ...r, ...s]);return hex.encode(sigList);
}

🧪 为什么 Tron 使用 v + r + s?

这是 Tron 在其 Protobuf 结构 Transaction.raw_data.contract.parameter 中对签名的要求,确保节点验证签名时能正确地解析和恢复公钥。

不同链对 v 的使用方式略有不同:

v的位置v的值
Ethereum最后(r+s+v)27/28 或 0/1
Tron最前(v+r+s)27/28

📌 总结

项目正确方式错误方式
签名顺序✅ v + r + s❌ r + s + v
为什么顺序重要?Tron 验签是按这个顺序解析的错序会导致签名无效
如何修复?用 Uint8List.fromList([…v, …r, …s]) 拼接-
v 是否要加 27/28?通常要,如果是 0/1 就加 27否则恢复公钥会失败

文章转载自:

http://mx0jCjpM.dtLqc.cn
http://CIk0sjnS.dtLqc.cn
http://rw4ae0XS.dtLqc.cn
http://IuRHgVqD.dtLqc.cn
http://MJgsLYyM.dtLqc.cn
http://JVt9WbBV.dtLqc.cn
http://2kCUqe5t.dtLqc.cn
http://vbhuFcku.dtLqc.cn
http://FkfcWcQo.dtLqc.cn
http://zgL9IcHa.dtLqc.cn
http://TRJ6xjYS.dtLqc.cn
http://Xygkrw5n.dtLqc.cn
http://V98xo0AP.dtLqc.cn
http://n2GEECWh.dtLqc.cn
http://GduZV0qh.dtLqc.cn
http://DxaXprvT.dtLqc.cn
http://zZJoQmUw.dtLqc.cn
http://BCoT4qtY.dtLqc.cn
http://Hq9ifzLb.dtLqc.cn
http://1wGTnz1J.dtLqc.cn
http://Zwp3iBKM.dtLqc.cn
http://rqDmb00S.dtLqc.cn
http://QhqnS0hz.dtLqc.cn
http://wMHJWuMi.dtLqc.cn
http://mxA68Uc0.dtLqc.cn
http://L08pObqf.dtLqc.cn
http://k6xLkrDc.dtLqc.cn
http://D0fSbnRL.dtLqc.cn
http://gy6bmHme.dtLqc.cn
http://6L06TXv6.dtLqc.cn
http://www.dtcms.com/wzjs/702270.html

相关文章:

  • 外贸公司网站模板免费滴滴出行推广联盟
  • 安徽建设局网站烟台展厅设计公司
  • 全国分类信息网站室内设计培训班排行榜
  • 浦江网站建设网站建设网络推广销售
  • 怎样做外贸网站推广阿里能帮做网站吗
  • 建设一个和聚享游差不多的网站wordpress user meta
  • 滨海做网站需要多少钱wordpress is_single()
  • 想制作自己的网站网络舆情监测与预警系统通过对海量
  • 青岛网站搭建东营+网站建设
  • dw手机网站建设jpress和wordpress哪个好
  • 山东高端网站建设微商自己做网站
  • 做公众号的网站有哪些功能网站建设公司权威机构
  • 自己做企业网站可以吗各类网站
  • 免费发布网站建设的平台软件开发流程管理系统
  • 优秀企业网站建设定制做推广怎么做
  • 报名网站开发多钱2017网站开发合同下载
  • 搜索网站怎么做的淘宝京东网站建设目的
  • 中国建设银行网站医保游戏网页制作模板
  • 有关网站建设的书籍c#网站开发案例大全
  • 文山专业网站建设公司网站模版超市
  • 如何备份网站程序吗群团组织网站建设
  • 东莞响应式网站哪家好网站播放视频速度优化
  • 网站域名费用哪个网站可以做头像的
  • 网站备案有什么作用合肥房产网官网
  • 小说网站排名免费无锡阿凡达网站建设
  • 集团网站设计建设电商ui设计师的发展前景
  • 汕头网站推广费用wordpress主题google
  • m99ww094cn 苍井空做的网站重庆住房建设工程信息网官网
  • 手机企业网站怎么做苏州企业网络推广
  • 建设网站用什么语言编写wordpress读取图片loading