BTC-问答
约 1067 字大约 4 分钟
2021-09-26
Question
Q:转账交易时候,如果接受者不在线怎么办?
Answer
这个时候不需要接受者在线,转账交易只不过是在区块链上记录一下,把我账户的比特币转到他的账户。他在不在线是没有关系的。
Question
Q:假设某个全节点收到了某个转账交易,有没有可能转账交易中接收者的收款地址是这个节点以前从来没有听说过的?
Answer
这是可能的。比特币账户的创建是不需要通知其他人的,在本地产生一个公私钥对就可以了。只有在以后第一次收到钱的时候,其他节点才知道这个账户的存在。
Question
Q:如果你账户的私钥丢失了,该怎么办?
Answer
无解,没有办法,账户上的钱永远取不出来了。在比特币系统这种去中心化的系统里,是没有人可以给你重置密码的。
另外,有些加密货币的交易所,一般来说这些交易所是中心化的机构。在交易所开户时候一般来说是需要提供身份证明的,类似银行开户的。如果把比特币保存在交易所,私钥实际是由交易所保管的。这种情况下是可以联系交易所通过身份验证后重置密码。有些加密钱包也提供保管私钥的功能,但是并不是说这些交易所或钱包比自己保管私钥更安全,其实加密货币这种交易所是处于缺乏监管的状态的,跟股票交易所是很不一样的,历史上发生过很多次,加密货币交易所被黑的情况。黑客从里面偷走了大量的加密货币。其中最著名的一个例子,Mt. Gox(门头沟)交易所,占全球比特币交易量的70%,在日本的。后来被偷走大量比特币,破产了,CEO也被判刑了。而且这不是个例,交易所出现问题的情况还是挺多的。还有监守自盗的、卷款跑路的高级管理层都是发生过。相比这下,冷钱包、硬件钱包是比较安全的。
Question
Q:如果你账户的私钥泄露了怎么办?比如账户上出现了可疑的交易。
Answer
这个时候应该把账户的钱尽快的转移到另外的安全的账户上。 不像现实中,发现银行卡有问题,可以通知银行,冻结卡片,这在比特币系统中是做不到的。公私钥对一旦生成是没法改的。
Question
Q:如果转账的时候写错了地址,该怎么办?写错地址,转错人了。
Answer
无解,没有办法。
Question
Q:别人挖到块之后,可以用他的nonce么,可以偷答案么?
Answer
发布的区块里有一个coinbase tx
,里面有一个收款人地址,是这个挖到矿的人的地址。比如A。如要要偷打答案的话,那么要把这个收款地址换成自己的地址。而这个地址如果一变的话,那么这个Coinbase
的内容就发生了改变,这样会导致merkle tree
的根hash
值发生变化。而nonce
是在block header
里面的,根hash
值也是在块头里面,block header
内容发生了变化后原来找到的nonce
就作废了。所以不可能偷答案,因为每个矿工挖到的nonce
是和他自己的收款地址绑定在一起的。
Question
Q:交易费怎么事先知道是给谁的?
Answer
交易费事先是不需要知道要给谁的。只要是total inputs > total outputs,一个交易里面可以有很多的输入输出,总输入减去总输出的差额就是交易费。给谁是不需要事先知道的,那个矿工挖到矿了,就可以把这个差额给这个矿工,作为交易费即可。