Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Currency 在智能合约中销毁代币/硬币_Currency_Bitcoin_Blockchain_Ethereum_Smartcontracts - Fatal编程技术网

Currency 在智能合约中销毁代币/硬币

Currency 在智能合约中销毁代币/硬币,currency,bitcoin,blockchain,ethereum,smartcontracts,Currency,Bitcoin,Blockchain,Ethereum,Smartcontracts,我目前正在做一个项目,试图为P2P能源交易开发一种货币和模型,在这个项目中,每千瓦时的可再生能源产生一枚硬币给生产者。我的问题是关于在智能合约中销毁硬币 所有与我的项目类似的当前实现都没有一个合适的销毁硬币的协议,该协议的目的是防止货币价值的过度紧缩。一些项目通过交易成本和钱包损失破坏了他们提出的能源货币,但我认为这还不够。这是因为,如果越来越多的人开始采用该项目,并使用太阳能电池板和风力发电厂铸造大量硬币,那么能源硬币可以以指数级的速度铸造。硬币将继续流通,代表过去几天/几周/几个月前产生(和

我目前正在做一个项目,试图为P2P能源交易开发一种货币和模型,在这个项目中,每千瓦时的可再生能源产生一枚硬币给生产者。我的问题是关于在智能合约中销毁硬币

所有与我的项目类似的当前实现都没有一个合适的销毁硬币的协议,该协议的目的是防止货币价值的过度紧缩。一些项目通过交易成本和钱包损失破坏了他们提出的能源货币,但我认为这还不够。这是因为,如果越来越多的人开始采用该项目,并使用太阳能电池板和风力发电厂铸造大量硬币,那么能源硬币可以以指数级的速度铸造。硬币将继续流通,代表过去几天/几周/几个月前产生(和使用)的能量

我想建议您可以使用这些硬币支付公用事业公司的能源消耗,这将最终摧毁这些硬币,这些硬币写在消费者和能源公司将达成一致的不可变智能合同中

我是计算机编码新手,我不想假设一个人可以轻易地在智能合约中写下销毁()指定数量的硬币。有没有可能做到这一点,让它发挥作用?我想我只需要第二个意见

谢谢

约翰

我不想假设一个人可以很容易地在智能合约中写下销毁()指定数量的硬币。有没有可能做到这一点,让它发挥作用

是的,您可以为合同编写销毁代币的方法。一种方法是从地址计数中移除X数量的令牌,然后从总令牌供应中移除X数量的令牌


通过这种方法,您可以以一种优雅的方式有效地销毁代币。向“丢失的帐户”发送代币不是一个好主意,因为您永远无法保证或证明没有人控制该帐户的私钥

你也可以在合约中保留所有当前不代表能量的代币,如果你不能发行它们,就用[this]

减去它们来销毁它们。虽然Samuel解决方案显然有效,但你永远无法知道有多少代币被销毁。 我会取而代之的是将用户使用过的令牌“烧掉”,这意味着将它们发送到一个永久锁定它们的0x地址。
这样,只要查看0x地址的余额,就可以立即看到智能合约的历史中有多少令牌被烧掉

可能是天真的问题:有没有办法证明您发送要烧掉的令牌的0x地址实际上不是由任何人控制的?或者,如果您只需在Samuel的解决方案的合同中记录被销毁的代币的数量,该怎么办?这不是同样的目的吗?