首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >实心加密

实心加密
EN

Ethereum用户
提问于 2018-05-04 14:10:59
回答 2查看 6.4K关注 0票数 6

我正试图找到一种可靠的加密方法,我有一个字符串,我想用一些密钥来加密它。我们能稳扎稳打地做吗?

EN

回答 2

Ethereum用户

发布于 2018-05-04 14:15:17

如果您发送数据并对其进行可靠的加密,数据将在最初用于将数据发送到契约的事务中显示。而且,据我所知,solidity没有加密的功能。

您可以使用web3加密数据并将其发送到您的合同中。

票数 4
EN

Ethereum用户

发布于 2018-07-23 14:32:27

一般来说,答案是否定的。如果您想加密数据,您应该在数据被发送到契约之前对其进行加密,使用参数/salt/等等,这些参数对公众是不可见的(客户端代码)。

以下是您目前无法安全可靠地加密数据的一些原因。例如:

  1. 您可以使用Solidity的散列函数之一,即keccak256来散列字符串。但是,任何使用web3的人都可以通过将哈希和输入参数类型输入到函数中来使用web3.eth.abi.decodeParameters(typesArray, hexString)函数来解码该哈希。
  2. 您可以编写自己的加密函数,但是您编写的任何函数都对公众是可见的,因此任何恶意参与者都能够为您编写的内容实现解密函数。此外,如果要将salt作为变量添加到加密函数中,则在通过事务或合同部署设置变量时,用户也可以看到它。
票数 3
EN
页面原文内容由Ethereum提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

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

复制
相关文章

相似问题

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