From 1ea507583dde1b88cfda0255e6f20ac2479c51a2 Mon Sep 17 00:00:00 2001 From: Methapon Metanipat Date: Wed, 2 Oct 2024 16:25:52 +0700 Subject: [PATCH] feat: check for valid input checksum --- src/utils/mrz.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/utils/mrz.ts b/src/utils/mrz.ts index 8de24031..7428eea6 100644 --- a/src/utils/mrz.ts +++ b/src/utils/mrz.ts @@ -140,7 +140,11 @@ function mrzCleanResult(obj: Record) { } export function checkSum(data: string) { + if (!/[0-9A-Z<]/.test(data)) return null; + const sum = data.split('').reduce((a, v, i) => { + if (v === '<') return a; + const num = Number(v); const weight = [7, 3, 1][i % 3];