我有一个javascript的前端和一个Java的后端。我让用户在web3js的前端用他的私钥签署一个原始事务。然后,签名的事务被返回到Java后端,并且后端通过奇偶校验实例广播该事务。
我的问题是:我害怕黑客,他们可以在签署交易之前,用javascript在浏览器中操纵原始交易。通过这种方式,他们可以改变发送的数量。有没有一种方法可以从使用web3j签名的交易中提取发送的金额?如果是,我可以在广播签名事务之前再次检查该值。
顺便说一句:如果它很重要,那就是令牌交易,而不是ETH交易。
谢谢!
发布于 2019-07-04 16:29:48
这需要对密码学有一定的了解。
在私钥/公钥对密码术中,“签名”基本上是使用私钥加密和使用公钥解密的唯一情况。如果你设法解密,这意味着签名是有效的,因为无论发布密钥属于谁,它肯定是谁签署了内容。
因此,如果您有pub密钥,就可以解密“签名”事务。
现在,如果您担心黑客和安全性,那么在客户端和内存中保存密钥不是一种好的做法。因此,如果这是一个严肃的项目,您可能需要重新考虑您的方法。
https://stackoverflow.com/questions/56854508
复制相似问题