软分叉:是指区块链网络系统版本或协议升级后,旧的节点并不会意识到比特币代码发生改变,并继续接受由新节点创造的区块,新老节点始终还是在同一条链上工作。
硬分叉:是指比特币区块格式或交易格式(共识机制)发生改变时,未升级的节点拒绝验证已经升级的节点产生的区块,然后大家各自延续自己认为正确的链,所以分成两条链。
软分叉和硬分叉都"向后兼容",这样才能保证新节点可以从头验证区块链。向后兼容是指新软件接受由旧软件所产生的数据或者代码,比如说Windows 10可以运行Windows XP的应用。而软分叉还可以"向前兼容"。向前兼容是指旧软件接受由新软件所产生的数据以及代码,比如你用Word 2013保存的文档,假如仍然可以用Word 2011打开,就是一种“向前兼容”。