Skip to content

Project Goal: Create a website that generates barcodes for Singapore NRICs. Project Admin: Bryan. Give me 1 ⭐ if it’s cool.

License

Notifications You must be signed in to change notification settings

bryanseah234/sgNRIC2020

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

42 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Singapore NRIC Barcode Generator

code to create a website that generates NRIC barcodes.

Disclaimer:

  1. USE AT OWN DISCRETION
  2. FOR EDUCATIONAL PURPOSES ONLY

Demo:

https://sg-nric2020.herokuapp.com/

Frequently asked questions:

What’s a NRIC/FIN number?

NRIC (National Registration Identity Card) is the identity document in use in Singapore. The NRIC number is a unique alpha-numeric serial number assigned to the document.

What are NRIC/FIN numbers used for?

Many online voting, contests, giveaways, lucky draws, and account registrations on Singaporean websites require a NRIC number to participate. For example, game account registrations like AsiaSoft MapleStory, Audition; Online club memberships like NikonClub, ActiveSG, Shaw, Golden Village, etc. Do note that if you create an online account, you have to remember the NRIC number that you use, in case you need to reset the password or claim a prize.

How is the barcode generated?

The barcode is generated by using the python barcode module. However to make it valid, the checksum (last character) when saving the image file is removed to prevent interference with the actual barcode. If a different NRIC is keyed in, the algorithm changes accordingly.

Is this legal?

The generation of NRIC numbers itself is legal, as the algorithm is made public. This page serves to demonstrate that it is possible to do so. However, you should not use the NRIC numbers to impersonate anyone as it is an offence. By using this page to generate/copy NRIC/FIN numbers, you hereby agree to be responsible for your actions for use of the numbers, and waive all your rights to hold me liable to any problems arising from your actions.