首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用文档散列进行SendRawTransaction?

如何使用文档散列进行SendRawTransaction?
EN

Ethereum用户
提问于 2017-03-02 14:33:45
回答 3查看 1.2K关注 0票数 3

我是块连锁店的新手,一周前刚开始。我已经部署了一个私有Ethereum块链,并希望使用它来确保文档的完整性,这意味着我将在区块链上存储MD5校验和,以便在稍后的时间点进行检查。

现在我明白了,块链不是用来存储数据的,如果需要的话,应该使用OP_RETURN来存储这些信息。这就引出了我的问题,即如何创建这样的事务并在OP_RETURN中添加文档的散列:

  1. web3.eth对象

任何和所有的帮助都将不胜感激。

EN

回答 3

Ethereum用户

回答已采纳

发布于 2017-03-03 10:52:01

在ethereum中没有脚本操作码,因此没有op_return (就像比特币中的那样)。但是,您可以使用以下方法以类似的方式存储数据:

代码语言:javascript
复制
eth.sendTransaction({from:eth.accounts[0],to:eth.accounts[1],value:web3.toWei(1‌​00,'finney'),data:web3.toHex('My Message')})
票数 2
EN

Ethereum用户

发布于 2017-03-03 12:51:41

智能契约可以存储任何数据,包括文档散列。

代码语言:javascript
复制
contract MyHashRegistry {

    mapping (uint => uint) hashes:

    function storeHash(uint documentId, uint hash) {
        hashes[documentId] = hash;
    }
}

似乎你还没有相关的经验在以太建造你自己的东西,所以跳到结论,而不是理解所有的步骤在这两者之间是一个问题。我建议你走一条学习之路。你需要

  • 学习扎实的编程语言
  • 创建一个聪明的契约
  • 了解如何与计算机上的智能契约(web3.js、web3.py)进行交互
票数 2
EN

Ethereum用户

发布于 2017-03-06 09:38:50

我认为在这里添加代码可能会有帮助,以便使用using提交事务:

代码语言:javascript
复制
var txCount = await web3.Eth.Transactions.GetTransactionCount.SendRequestAsync(senderAddress);
var encoded = web3.OfflineTransactionSigning.SignTransaction(myPrivateKey, receiverAddress, 
                amount: 0, 
                nonce: txCount.Value, 
                gasPrice: 1,
                gasLimit: 100000,
                data: myHexData);

txId = await web3.Eth.Transactions.SendRawTransaction.SendRequestAsync(encoded);
票数 2
EN
页面原文内容由Ethereum提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://ethereum.stackexchange.com/questions/12672

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档