我想验证一台计算机的内存容量,然后使用ethash
使用的ethereum
算法来完成工作。问题在于算法中的缓存和数据集对于合同而言太大。如何验证工作?
我认为,冻结号码和帐户地址以及现时应传递给合同,然后由合同进行验证。
或者还有其他方法可以基于内存的算法来证明一台计算机的内存吗?谢谢。
我想更改结构vm.Context,
type Context struct {
// CanTransfer returns whether the account contains
// sufficient ether to transfer the value
CanTransfer CanTransferFunc
// Transfer transfers ether from one account to the other
Transfer TransferFunc
// GetHash returns the hash corresponding to n
GetHash GetHashFunc
// VerifyMemoryDifficulty return true if the given nonce is valid
VerifyMemoryDifficulty VerifyMemoryDifficultyFunc
// .......
// Difficulty *big.Int // Provides information for DIFFICULTY
}
VerifyMemoryDifficultyFunc func(*big.Int)
但是,当我坚定地调用它时,它返回错误:
Error: Different number of arguments in return statement than in returns declaration.
return block.difficulty(99);
^-------------------------^
似乎编译器检查了完整性,我的问题是,如果我想使用传入的某些参数修改现有操作码,该怎么办?