The checksum algorithm they used will only produce 73 different checksums (00000000-99999999: 0-72) - and all of them even. There is space for 9999 different values.
Tips to improve: f(x) = ( x * secret) mod 1000
- mod 10000 instead of mod 1000 (as mentioned in the article)
- make sure the 'x' varies between 0-9999 (e.g. by splitting the number in half and adding the parts 03001909 > 0300+1909 = 2209)
- make sure the 'secret' is larger than 10000 and non-divisible by factors of 10000 (2 and 5) (e.g.: 54321)
Pretty sure it wouldn't be so easy to hack then.