如果往错误的NEO地址转账会发生什么
昨天聊天有人用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地址转账会发生什么的更多相关文章
- 通过AWS的DHCP自动获取的IP地址是否会发生改变?
针对您的问题,分析如下:1.在一个VPC内,通过AWS的DHCP自动获取的IP地址,在如何情况下会发生改变?例如我把vpc的内所有100个ec2实例全部关闭,再全部重新打开,是否会发生IP地址变化的情 ...
- VS2015编译FFMPEG,修改FFmpeg缓冲区大小解决实时流解码丢包问题,FFmpeg错误rtsp流地址卡死的问题,设置超时
之前尝试过很多网上利用Windows编译FFmpeg的文章,都没有办法编译X64位的FFmpeg,有些教程中有专门提到编译64位的FFmpeg需要下载mingw-w64-install,但是编译的过程 ...
- ATM-JAVA程序 //程序有5处相同错误,找不出原因 转账功能没有实现,修改密码来不及实现了
package JCC;//信1705-3 20173681 靳晨晨import java.io.BufferedReader;import java.io.File;import java.io.F ...
- 虚拟机的ip地址为什么会发生变化
因为虚拟机在NAT模式下由Vmware8虚拟网卡提供虚拟机的IP分配,网桥模式下由Vmware1来提供IP分配.它们都相当于 一个小型的DHCP服务器,除非改动虚拟机的网络连接方式,或动了虚拟网卡服务 ...
- aspcms逻辑错误导致后台地址泄露
访问即可跳转后台地址: URL:http://www.xxx.org.cn/plug/oem/AspCms_OEMFun.asp 注入:plug/comment/commentList.asp?id= ...
- yii2:Url::toRoute 和 ActiveForm::begin action在二级目录生成地址错误
yii2:Url::toRoute 和 ActiveForm::begin action在二级目录下生成地址错误. 正确地址: /www/super/web/wxreplay/edit-text?id ...
- IP地址与Mac地址绑定错误
有个application,有时候可以正常访问,有时候又返回404错误,百思不得其解.刚开始以为是文件夹权限问题,折腾了好久. 后来没在服务器上monitor到包,所以猜想是到了错误的mac地址,用a ...
- jsp_设置错误页
在各个常用的web站点中,当一个页面出错后,会自动跳转到一个页面上进行错误信息的显示.下面我们说说这个操作是怎么实现的. 要想完成错误页的操作,在jsp页面必须满足两个条件: (1)指定错误出现时的跳 ...
- wget在linux中安装出现错误解决办法
在使用wget命令报错 certificate common name 'xxx' doesn't match requestde host name,我们一般的解决办法是查找下载地址,但是有时候更换 ...
随机推荐
- elasticsearch5之Elastalert 安装使用 配置邮件报警和微信报警
简介 Elastalert是用python2写的一个报警框架(目前支持python2.6和2.7,不支持3.x),github地址为 https://github.com/Yelp/elastaler ...
- Java EE 开发环境搭建
1 Windows 1.1 JDK 下载: 下载地址:https://developer.oracle.com/java 安装文件:jdk-8u201-windows-x64.exe JDK 并不是越 ...
- centos中编译安装nginx+mysql +php(未完)
参考地址:http://www.cnblogs.com/htian/p/5728599.html 去官网找到PCRE,并下载http://www.pcre.org/wget ftp://ftp.csx ...
- Hadoop基础-Hadoop的集群管理之服役和退役
Hadoop基础-Hadoop的集群管理之服役和退役 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 在实际生产环境中,如果是上千万规模的集群,难免一个一个月会有那么几台服务器出点故 ...
- Hadoop基础-镜像文件(fsimage)和编辑日志(edits)
Hadoop基础-镜像文件(fsimage)和编辑日志(edits) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.查看日志镜像文件(如:fsimage_00000000000 ...
- goroutine 和 线程的区别
我们在使用Go语言进行开发时,一般会使用goroutine来处理并发任务.那么大家有没有考虑过goroutine的实现机制是什么样的?很多同学会把goroutine与线程等同起来,但是实际上并不是这样 ...
- luogu P5288 [HNOI2019]多边形
传送门 这是什么神仙操作... 首先要注意一些性质.首先每一个\((x,n)\)的边可以把当前多边形分成两半,这两半的操作是独立的.然后对于某一个没有\((x,n)\)的边的多边形,最优操作是唯一的. ...
- Executors的四种线程池
Executors.newCachedThreadPool(); Executors.newFixedThreadPool(2); Executors.newScheduledThreadPool(2 ...
- A Boring Problem UVALive - 7676 (二项式定理+前缀和)
题目链接: I - A Boring Problem UVALive - 7676 题目大意:就是求给定的式子. 学习的网址:https://blog.csdn.net/weixin_37517391 ...
- 401 experience
AM: 块元素与内联元素 : div与span的区别 span只能设置水平的margin(左右内外边距) 在span里面加 display:block; 内联转块(相当于给span加了上下的边距)反 ...