http://www.serfdom.io/docs/internals/security.html
(If you're confused about how this relates to Consul, see this: http://www.consul.io/docs/internals/security.html)
Worse, their justification for using this instead of standard schemes like (D)TLS seems to be that they don't need the sorts of features transport encryption normally needs because they lean on the protocol's state machine to provide some of the features transport encryption would normally provide for free, like replay attack avoidance.
Not only does homebrewing encryption almost always carry with it design and implementation mistakes, but someone auditing the protocol not only needs to understand the cryptographic design, but how it interacts with the rest of the protocol's state machine.
My advice would be to scrap their homebrew encryption and use (D)TLS