提到Power Down,小伙伴们可能都不陌生,不就是撤回股份(withdraw_vesting)嘛,最终的结果是将锁仓的HP变成流动性HIVE。但是说到Power Down Route,可能新来的小伙伴就一头雾水了。
(图源 :pixabay)
好吧,其实单纯就CN而言,几乎没有几个新来的小伙伴了,都是些老油条,但是老油条们对Power Down Route可能也不太了解。
就连我这个超老的油条,都把相关内容忘得差不多一干二净了,所以决定重新学习一下,温故而知新嘛。
介绍
Power Down Route(也叫Withdraw route), 翻译成Power Down 路线,顾名思义,就是通过这个功能你可以将你的HIVE POWER直接Power Down到其它账户,而且可以选择Power Down到其它账户后是否直接Power UP成HP。
(注:现在代码以及API上都叫Withdraw route,但是我觉得这个名字容易产生歧义,毕竟这个route只针对power down的,所以还是Power Down Route/更贴切,或者叫全称withdraw vesting route)
举个例子,假设你有多个账户并且都持有一些股份(HP),现在你想把HP都归结到一个账户中,那么需要如何操作呢?
- 在多个账户发起Power Down
- 每周Power Down到账后选择Power UP到指定账户中
这里有两个问题:
第一,就是我们每周都要检查一下Power Down回来的Hive,虽然我们可以等13周后都Power Down完毕一起处理,但是那样相当于之前Power Down出来的HIVE白白地闲置了好几周。
第二问题就是除了Power Down操作,我们还要进行多次Power UP操作。
这只是一次 Power Down,如果你计划多次Power DOWN,那么上述流程无疑很是繁琐,白白增加了很多操作,浪费时间精力。
就算我们Power Down后不Power UP到其它账户,而只是转账到其它账户,那么同样也多浪费好多转账操作。
那么有没有什么办法,一劳永逸地解决Power Down后转账到其它账户或Power Down后Power UP到其它账户的问题呢?聪明读者看到这里想必已经知道答案了,那就是设置Power Down route(Withdraw route) 。
一旦对某个账户设置了Power Down route(Withdraw route) ,那么对这个账户Power Down操作,到账的HIVE会根据设定的比例自动到达指定账户,如果我们还设置了(auto_vest),那么就会自动Power UP到指定账户,省却了大量的手工操作。
设置
我们可以通过cli_wallet为指定账户设置Power Down route(Withdraw route),语法如下:
set_withdraw_vesting_route(string, string, uint16_t, bool, bool)
对应参数分别是:待设置账户,指定账户,比例,是否自动Power UP,是否广播。
实例:
set_withdraw_vesting_route oflyhigh.test oflyhigh 5000 true true
成功执行上述操作后,我们会在区块链浏览器上查询到如下信息:
其中数值5000,代表 oflyhigh.test Power Down 50%的份额到达指定账户(oflyhigh)。我们可以通过设置比例以及目标账户,将Power Down份额分给不同的目标账户。(可以设置N个Routes,并对其分配不同比例,总量不超过100%)
比如将剩余的50%份额分给oflyhigh.demo
set_withdraw_vesting_route oflyhigh.test oflyhigh.demo 5000 true true
取消Power Down route(Withdraw route)也很简单,仅需将对应的比例设置为0
,就会取消啦,比如:
set_withdraw_vesting_route oflyhigh.test oflyhigh.demo 0 true true
查询
目前区块链仅能查询是否设置了Power Down route(Withdraw route) 以及设置了几组,但是不支持查询具体情况,比如我的测试账户:
所以查询时我们需要借助于condenser_api.get_withdraw_routes这个API。
相关参数以及示例如下:
以我的测试账户为例,查询一下“outgoing”的Power Down route(Withdraw route):
curl -s --data '{"jsonrpc": "2.0", "method": "condenser_api.get_withdraw_routes", "params": ["oflyhigh.test", "outgoing"], "id": 1}' https://api.hive.blog
将会返回如下结果:
可见我的设置是成功而且合理的。
API用起来很不方便,而且因为伟大的墙,很多节点还用不了,真是愁人。
早些时候我还在微信公众号中集成过这个查询功能:
可惜HIVE分叉后微信公众号一直没有维护,或许是时候重新启动微信公众号的相关功能了。唉,感觉要干的事情太多了,自己又极度拖延,好焦虑。
额外话
虽然Power Down Route/Withdraw route是一个非常方便且有用的功能,但也是因为如此,这个功能常常被黑客利用,黑客盗取账户后第一时间就是修改私钥、转光余额以及设置Power Down Route且执行Power Down,然后你的钱就都到别人那里去啦。
所以检查是否被人设置了Power Down Route也是判断账户是否被盗的依据之一。同理,一个账户被设置为N多账户的Power Down Route目标账户,那么大概率这个账户是被黑客所拥有。
好了,今天就学习到这里,你学废了嘛?
@edicted, the same topic you wrote recently about - what a stunning coincidence!
Wow, this is really a coincidence.
o.O
报告O哥,学废了,真的废了😂
被黑客偷走,有点吓人
O神顶呱呱👍🏻👍🏻
要是有人学会了,他会把小号的HP倒到大号上。。。。
捂脸。。。
这要看怎么理解小号
只要不是立个不同的人设来骗点赞,我觉得问题不大
好教程,尽力消化。👍🏻
我好怕黑客来搞我 退退退🤺
学废了!
第一次听说有这功能,哈哈哈,不过,暂时决定在没手残之前,还是选择手动。😂😂,感谢O哥的分享。