A method for adding a block to a permissioned blockchain using an efficient consensus mechanism, comprising: electronically transmitting, by a processing server, a prepare message to a plurality of auditing nodes associated with a blockchain, wherein the prepare message includes at least a confirmation hash value and a proposal number, wherein the proposal number is a numeric value of a digital signature for a proposed block header that includes a previous hash value and a Merkle root generated for a plurality of transaction messages; receiving, by the processing server, a prepare response message from at least a majority of the plurality of auditing nodes, wherein each prepare response message includes at least the confirmation hash value and an accepted proposal number; identifying, by the processing server, an agreed proposal number based on the numeric value of the generated proposal number and a numeric value of the accepted proposal number included in each prepare response message, and a predetermined criteria; electronically transmitting, by the processing server, an accept message to the plurality of auditing nodes, wherein the accept message includes at least the confirmation hash value and the identified agreed proposal number; electronically transmitting, by the processing server, a confirm message to a plurality of consensus nodes associated with the blockchain, wherein the confirm message includes at least the confirmation hash value and the identified agreed proposal number; and executing, by the processing server, a query on the memory to add a new block to the blockchain, the new block including at least the transaction value included in each of the plurality of transaction messages and a new block header including at least the previous hash value, the generated Merkle root, and the agreed proposal number. electronically transmitting, by a processing server, a prepare message to a plurality of auditing nodes associated with a blockchain, wherein the prepare message includes at least a confirmation hash value and a proposal number, wherein the proposal number is a numeric value of a digital signature for a proposed block header that includes a previous hash value and a Merkle root generated for a plurality of transaction messages; receiving, by the processing server, a prepare response message from at least a majority of the plurality of auditing nodes, wherein each prepare response message includes at least the confirmation hash value and an accepted proposal number; identifying, by the processing server, an agreed proposal number based on the numeric value of the generated proposal number and a numeric value of the accepted proposal number included in each prepare response message, and a predetermined criteria; electronically transmitting, by the processing server, an accept message to the plurality of auditing nodes, wherein the accept message includes at least the confirmation hash value and the identified agreed proposal number; electronically transmitting, by the processing server, a confirm message to a plurality of consensus nodes associated with the blockchain, wherein the confirm message includes at least the confirmation hash value and the identified agreed proposal number; and executing, by the processing server, a query on the memory to add a new block to the blockchain, the new block including at least the transaction value included in each of the plurality of transaction messages and a new block header including at least the previous hash value, the generated Merkle root, and the agreed proposal number. <EOS>