public static Address recoverProposerAddress(
      final BlockHeader header, final IbftLegacyExtraData ibftExtraData) {
    final Hash proposerHash = calculateDataHashForProposerSeal(header, ibftExtraData);
    Address addr = Util.signatureToAddress(ibftExtraData.getProposerSeal(), proposerHash);
    return addr;
  }
Recovers the proposer's {@link Address} from the proposer seal.

@param header the block header that was signed by the proposer seal
@param ibftExtraData the parsed IBftExtraData from the header
@return the proposer address
consensus/ibftlegacy/src/main/java/org/hyperledger/besu/consensus/ibftlegacy/IbftBlockHashing.java