verifyEmvQr function

bool verifyEmvQr(
  1. String value
)

verify emvqr

check if emv data is true

Implementation

bool verifyEmvQr(String value) {
  final emqrForChecksum = value.substring(0, value.length - 4);
  final emqrForCheckEmv = value.substring(value.length - 4, value.length);
  final checksum = CRC16().checkSum(utf8.encode(emqrForChecksum));

  if (checksum.err != null) {
    return false;
  }
  var checkSumValue = checksum.value.toRadixString(16);

  for (var i = checkSumValue.length; i < 4; i++) {
    checkSumValue = "0$checkSumValue";
  }
  return emqrForCheckEmv == checkSumValue.toUpperCase();
}