consensus是tendermint最核心的事情 在这里面主要实现的是tendermint的PBFT的算法,主要包括何时提出propose,以及该由谁累提出propose,然后通过p2p模块把当前的数据进行传输,通过go-crypto模块提供的功能对数据进行签名,然后调用evidence模块的数据进行验证,验证完成之后通过proxy模块将数据传递给app,然后经过app的处理之后,完成上链的工作。