码迷,mamicode.com
首页 > 其他好文 > 详细

如果往错误的NEO地址转账会发生什么

时间:2018-01-15 13:29:21      阅读:615      评论:0      收藏:0      [点我收藏+]

标签:试验   功能   一个   不同   ase   div   color   说明   就是   

昨天聊天有人用NEO往错误地址转账丢钱了

我的第一反应是这不可能

?

Neo使用的地址带有验证功能

技术分享图片

最下面ARPP….G6ce这一串是个base58编码

把他解开就是17….151f7b5f这一串

红色部分才是真正使用的地址(scripthash),蓝色部分是验证值。

?

从理论上来说,你是无法随便敲一个地址就转账的,基本都是无效地址,验证值肯定是错的。

那么让我们先来试验一下

技术分享图片

首先是NEOGUI

我往Aeyx……723v这个地址转账

我故意把中间输错一点

技术分享图片

技术分享图片

确定按钮灰掉了,说明neogui做了这个验证,没有问题

?

然后是蓝鲸涛,我在蓝鲸涛故意输入了个错地址

技术分享图片

居然还是打勾的,

我的一个NEO没了

(此BUG已经通知蓝鲸涛方面,很快就会修复,这个界面如果输入了错误地址,将会有提示,无法确认)

?

让我们去看看究竟发生了什么

根据理论这个不合法地址根本不可能在链上找到

我在链上找到了这笔交易

技术分享图片

和我预计的一样,地址其实变了

?

我转到的错误地址是

ARPPoLhqsEuEAEeMUXsULEYm6qHys1G6cd

实际转到的地址是

ARPPoLhqsEuEAEeMUXsULEYm6qHys1G6ce

?

注意尾部,是不一样的

技术分享图片

让我们再拿出这张图来分析,因为尾部数据是验证码。

如果不顾验证码暴力取出地址script_hash,再次生成地址字符串的时候,尾部验证码会不同.

?

也就是说:

如果你使用一个未验证过地址字符串的客户端,转向一个错误地址。

其实是不可能的。

是因为客户端的bug,实际上把你带到了一个另一个地址。

?

比如你向ARPPoLhqsEuEAEeMUXsULEYm6qHys1G6cd(无效地址)转账

实际会转到ARPPoLhqsEuEAEeMUXsULEYm6qHys1G6ce(有效地址)

?

这属于钱包客户端bug,我没有去测试所有的客户端,大家有兴趣可以去测试。

放心,一旦坐实这个bug,你找他们把你的NEO退回来就有理有据有节了。

最应该关注地址的尾巴,因为你不可能转向一个错误地址,他会把你带到一个相似地址。

如果往错误的NEO地址转账会发生什么

标签:试验   功能   一个   不同   ase   div   color   说明   就是   

原文地址:https://www.cnblogs.com/crazylights/p/8287558.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!