Fault-Tolerant Distributed Transactions on Blockchain