【区块链】以太坊交易中的R、S、V字段

news/2025/3/6 21:33:23/

最近在做区块链钱包,想让自己的钱包适配小狐狸插件,在小狐狸插件中余额显示、私钥导入都正常,但是在交易发送时出现错误,交易详情如下

{"jsonrpc":"2.0","id":1,"result":{"blockHash":"0x949f40920a86f281daccbe8e30dd60a366b22ff270647815f6bfc0402ff38e42","blockNumber":"0xce3","from":"0x047347096a6dc73f8626afb520c383a02efda314","gas":"0x15f90","gasPrice":"0x4a817c800","hash":"0x70a7552c8ab8d2621c80c8a1c149012d10a823c4619cc82235cbdfad0553310b","input":"0x021df6f4000000000000000000000000000000000000000000000000000000000000000d48656c6c6f2c20776f726c642100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d48656c6c6f2c20776f726c642100000000000000000000000000000000000000","nonce":"0x178","to":"0xe2412bb63a0a25d7b8973fc6764fd246ebe62c7a","transactionIndex":"0x0","value":"0x0","v":"0x1b","r":"0xd693b532a80fed6392b428604171fb32fdbf953728a3a7ecc7d4062b1652c042","s":"0x24e9c602ac800b983b035700a14b23f78a253ab762deab5dc27e3555a750b354"}}

通过抓包,确定问题在发送sendRawTransaction请求时出现错误,问题可能出在对交易签名的过程中。R,S,V就是交易签名后的数值。在Ethereum JSON-RPC文档eth_getTransactionByHash接口中,有对R,S,V字段描述

v: QUANTITY - ECDSA recovery id
r: DATA, 32 Bytes - ECDSA signature r
s: DATA, 32 Bytes - ECDSA signature s

r,s,v是交易签名后的值,它们可以被用来生成签名者的公钥;R,S是ECDSA椭圆加密算法的输出值,V是用于恢复结果的ID;比特币RSV的作用描述也适用于以太坊,为了避免重放攻击,以太坊在EIP 155中做了更多的调整。

更详细信息请参考链接

https://cordate.github.io/2018/03/27/blockchain/关于以太坊的签名/

https://ethereum.stackexchange.com/questions/15766/what-does-v-r-s-in-eth-gettransactionbyhash-mean

文章来源:https://blog.csdn.net/little_stupid_child/article/details/89142074
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ppmy.cn/news/586211.html

相关文章

银河麒麟v10-arm离线部署k8s集群(v1.23.4)

目录 1.查看麒麟系统的内核 2. 环境初始化 3. 安装docker 4. 安装k8s组件 5. 准备镜像 6. 在master上操作 7. 在node1上操作 8. 在master上查看节点信息 9. 安装网络插件calico 10. 安装界面化管理工具 离线部署的前提(亲测成功,其他的不保证&am…

【云原生-K8s】kubeadm搭建安装k8s集群v1.25版本完整教程【docker、网络插件calico、中间层cri-docker】

前言 基础描述 从 k8s 1.24开始,dockershim已经从kubelet中移除,但因为历史问题docker却不支持kubernetes主推的CRI(容器运行时接口)标准,所以docker不能再作为k8s的容器运行时了,即从k8s v1.24开始不再使…

两片74161实现60进制_74LS161设计60进制计数器-数电课程设计

计数器是一个用以实现计数功能的时序部件,它不仅可用来及脉冲数,还常用作数子系统的定时、分频和执行数字运算以及其它特定的逻辑功能。 计数器种类很多。按构成计数器中的各触发器是否使用一个时钟脉冲源来分,有同步计数器和异步计数器。根据计数制的不同,分为二进制计数器…

S型速度规划

S型速度规划 摘要 梯形速度曲线出现加速度不连续的情形,这样会导致机械系统出现冲击或不可预料的振动效应。因此有必要定义一种更加平滑的运动曲线,例如采用连续的,线性的加速度曲线,如下图所示,速度曲线抛物线过渡的…

k8s使用deployment升级

概念 Deployment(中文意思为部署、调度)提供了一种更加简单的更新RC和Pod的机制,K8S版本1.2实现的。通过在Deployment中描述所期望的集群状态,Deployment Controller会将现在的集群状态在一个可控的速度下逐步更新成所期望的集群…

Cramér’s V的公式、例子、SPSS

Cramr’s V – What and Why? https://www.spss-tutorials.com/cramers-v-what-and-why/#ref20 Cramr’s V is a number between 0 and 1 that indicates how strongly two categorical variables are associated. Cramr’s V 是一个介于 0 和 1 之间的数字,表示…

(三)k8s资源清单

一、k8s中的资源 K8s中所有的内容都抽象为资源,资源实例化之后,叫做对象,那么这些资源不能在同一空间下重名 名称空间级别(namespace) 工作负载型资源( workload):Pod、 ReplicaSet、 Deployment、 StatefulSet、 DaemonSet、Job、CronJob( Replication…

impala远程连接失败排查

周一开发反馈在本地电脑上连接impala失败,怀疑是服务问题。测试后发现服务正常,故障也恢复了,就没追究,第二天又出现相似的故障。服务依然正常。怀疑是网络问题。联系网络同事排查。telnet通。网络负载也不是很高,搁置…