QR Code คืออะไร? ทำงานอย่างไร และทำไมถึงอยู่ทุกที่
ตั้งแต่เมนูร้านอาหารไปจนถึงการชำระเงินผ่านมือถือ QR Code กลายเป็นเทคโนโลยีประจำวันที่แทบทุกคนเคยใช้ แต่ตารางสี่เหลี่ยมขาวดำนี้เก็บ URL เบอร์โทรศัพท์ หรือรหัส Wi-Fi ได้อย่างไร มาดูวิศวกรรมเบื้องหลังกัน
สารบัญ
QR Code คืออะไร?
QR Code หรือ Quick Response code คือบาร์โค้ดแบบเมทริกซ์สองมิติที่เก็บข้อมูลในตารางสี่เหลี่ยมเล็ก ๆ เรียกว่า modules แตกต่างจากบาร์โค้ดเส้นแนวตั้งที่อ่านข้อมูลเพียงทิศทางเดียว QR Code เข้ารหัสได้ทั้งแนวนอนและแนวตั้ง จึงเก็บข้อมูลได้มากกว่าในพื้นที่ใกล้เคียงกัน
QR Code หนึ่งภาพสามารถเก็บตัวเลขได้สูงสุด 7,089 ตัว ตัวอักษรผสมตัวเลข 4,296 ตัว หรือข้อมูล binary 2,953 bytes จึงใช้เก็บ URL ข้อมูลติดต่อ รหัส Wi-Fi รายละเอียดการชำระเงิน และข้อมูลอื่น ๆ ได้ในภาพสี่เหลี่ยมเล็ก ๆ ที่กล้องมือถืออ่านได้ภายในไม่ถึงวินาที
ชื่อ Quick Response มาจากเป้าหมายดั้งเดิมที่ต้องการให้เครื่องอ่านถอดรหัสได้เร็ว QR Code ยังสแกนได้จากแทบทุกมุม เพราะมีตัวบอกตำแหน่งและทิศทางอยู่ในโครงสร้างของรหัสเอง
ประวัติโดยย่อ
QR Code ถูกคิดค้นในปี 1994 โดย Masahiro Hara และทีมที่ Denso Wave บริษัทในเครือ Toyota อุตสาหกรรมยานยนต์ต้องการระบบที่ติดตามชิ้นส่วนในการผลิตได้ดีกว่าบาร์โค้ดเดิม ซึ่งมักเก็บข้อมูลได้เพียงประมาณ 20 ตัวอักษรและต้องสแกนหลายรหัสต่อชิ้นงาน
| ปี | เหตุการณ์สำคัญ |
|---|---|
| 1994 | Masahiro Hara และ Denso Wave คิดค้น QR Code |
| 2000 | ได้รับการรับรองเป็นมาตรฐานสากล ISO/IEC 18004 |
| 2002 | โทรศัพท์มือถือที่อ่าน QR Code ได้เริ่มออกสู่ตลาดในญี่ปุ่น |
| 2020+ | เติบโตอย่างรวดเร็วจากเมนูไร้สัมผัส การเช็กอิน และเอกสารสุขภาพช่วง COVID-19 |
มาตรฐานเปิด
Denso Wave ถือสิทธิบัตร QR Code แต่เลือกไม่บังคับใช้สิทธิเพื่อเปิดให้ทุกคนใช้งานได้อย่างเสรี วิธีคิดแบบเปิดนี้เป็นเหตุผลสำคัญที่ QR Code กลายเป็นมาตรฐานระดับโลก
โครงสร้างของ QR Code
QR Code อาจดูเหมือนจุดสุ่ม แต่ทุกส่วนมีหน้าที่ชัดเจนในการช่วยให้กล้องหา อ่าน และถอดรหัสข้อมูลได้แม่นยำ
Finder Patterns
สี่เหลี่ยมใหญ่สามมุมที่ช่วยให้กล้องหารหัส เจอตำแหน่ง และรู้ทิศทาง จึงสแกนได้แม้หมุน QR Code อยู่
Alignment Patterns
สี่เหลี่ยมเล็กใน QR Code ขนาดใหญ่ ช่วยแก้ความเอียงหรือการบิดเบี้ยวจากมุมกล้องและพื้นผิวโค้ง
Timing Patterns
เส้นสลับดำขาวระหว่าง finder patterns เพื่อบอกพิกัดของช่องตารางแต่ละช่อง
Format Information
ข้อมูล 15 บิตที่บอกระดับ error correction และ mask pattern ที่ใช้กระจายจุดดำขาวให้สแกนง่าย
Version Information
มีในเวอร์ชัน 7 ขึ้นไป ใช้บอกขนาดตารางและวิธีตีความพื้นที่ข้อมูล
Data & Error Correction Area
พื้นที่ที่เก็บข้อมูลจริงและ Reed-Solomon error correction codewords
Quiet Zone
ขอบว่างรอบ QR Code อย่างน้อย 4 modules เพื่อแยกรหัสออกจากพื้นหลัง
การเข้ารหัสข้อมูลทำงานอย่างไร
QR Code รองรับโหมดการเข้ารหัสหลายแบบ เพื่อใช้จำนวนบิตให้น้อยที่สุดตามชนิดข้อมูล
| โหมด | ชุดอักขระ | บิตต่อตัว | ความจุสูงสุด |
|---|---|---|---|
| Numeric | 0-9 | 3.33 | 7,089 ตัวอักษร |
| Alphanumeric | 0-9, A-Z, เว้นวรรค, $%*+-./: | 5.5 | 4,296 ตัวอักษร |
| Byte | ข้อมูล byte ใด ๆ เช่น UTF-8 | 8 | 2,953 bytes |
| Kanji | ตัวอักษร Shift JIS | 13 | 1,817 ตัวอักษร |
ตัวเข้ารหัสจะเลือกโหมดที่มีประสิทธิภาพที่สุดให้อัตโนมัติ เช่น หมายเลขล้วนใช้ Numeric mode ส่วน URL ที่มีตัวพิมพ์เล็กมักใช้ Byte mode โปรแกรมสร้าง QR Code ที่ดีสามารถสลับโหมดระหว่างข้อมูลเพื่อทำให้รหัสเล็กและสแกนง่ายขึ้น
Error Correction คือพลังสำคัญ
QR Code ใช้ Reed-Solomon error correction เพื่อให้ยังอ่านได้แม้บางส่วนเสียหาย ถูกปิดทับ หรือพิมพ์ไม่สมบูรณ์ ยิ่งเลือกระดับสูง รหัสจะทนต่อความเสียหายมากขึ้น แต่จะเก็บข้อมูลได้น้อยลงและภาพหนาแน่นขึ้น
| ระดับ | กู้ข้อมูลได้ประมาณ | เหมาะกับ |
|---|---|---|
| L | ประมาณ 7% | จอดิจิทัลที่ควบคุมสภาพแวดล้อมได้ |
| M | ประมาณ 15% | การใช้งานทั่วไปและงานพิมพ์ปกติ |
| Q | ประมาณ 25% | งานพิมพ์ที่อาจมีรอยหรือสภาพแสงไม่ดี |
| H | ประมาณ 30% | QR Code ที่มีโลโก้กลางภาพหรือใช้งานกลางแจ้ง |
เวอร์ชันและความจุข้อมูล
QR Code มีตั้งแต่เวอร์ชัน 1 ถึง 40 เวอร์ชัน 1 มีขนาด 21 x 21 modules และแต่ละเวอร์ชันเพิ่มด้านละ 4 modules ยิ่งเวอร์ชันสูงยิ่งเก็บข้อมูลได้มาก แต่ช่องแต่ละช่องจะเล็กลงเมื่อพิมพ์ในขนาดเท่าเดิม
| เวอร์ชัน | ขนาด | จำนวน modules | ความจุ byte โดยประมาณ |
|---|---|---|---|
| 1 | 21 x 21 | 441 | 25 ตัวอักษร |
| 10 | 57 x 57 | 3,249 | 174 ตัวอักษร |
| 20 | 97 x 97 | 9,409 | 1,249 ตัวอักษร |
| 40 | 177 x 177 | 31,329 | 3,391 ตัวอักษร |
ยิ่งเล็กยิ่งดี
ในการใช้งานจริงควรใช้ QR Code ที่เล็กที่สุดแต่ยังเก็บข้อมูลครบ เพราะรหัสที่หนาแน่นเกินไปจะสแกนยากขึ้น โดยเฉพาะเมื่อสแกนจากระยะไกลหรือกล้องคุณภาพต่ำ
QR Code vs บาร์โค้ดแบบเดิม
| คุณสมบัติ | QR Code | 1D Barcode |
|---|---|---|
| ทิศทางข้อมูล | 2D แนวนอนและแนวตั้ง | 1D แนวนอนเท่านั้น |
| ความจุ | สูงสุด 7,089 ตัวเลข | ประมาณ 20-25 ตัวอักษร |
| ชนิดข้อมูล | ตัวเลข ตัวอักษร binary และ kanji | มักเป็นตัวเลขหรือรหัสสั้น ๆ |
| การแก้ข้อผิดพลาด | กู้ข้อมูลได้ประมาณ 7-30% | ไม่มี หรือมีเพียง check digit |
| มุมสแกน | สแกนได้ 360 องศา | ต้องจัดแนวให้เหมาะสม |
| อุปกรณ์อ่าน | กล้องมือถือทั่วไป | เครื่องสแกน laser/CCD โดยเฉพาะ |
อย่างไรก็ตาม บาร์โค้ด 1D ยังไม่หายไป เพราะเหมาะกับสินค้า retail และ logistics ที่ต้องการเพียงรหัสสั้น ๆ ส่วน QR Code เหมาะเมื่ออยากเก็บข้อมูลมากขึ้นหรือให้ผู้ใช้สแกนด้วยมือถือ
QR Code เก็บอะไรได้บ้าง
QR Code เก็บข้อมูลดิบได้ แต่รูปแบบข้อความบางชนิดทำให้มือถือเปิดแอปที่เหมาะสมโดยอัตโนมัติ เช่น URL เปิดเบราว์เซอร์, mailto: เปิดอีเมล, tel: เปิดโทรศัพท์, WIFI: เชื่อมต่อ Wi-Fi, vCard บันทึกผู้ติดต่อ และ geo เปิดแผนที่
QR Code สำหรับ Wi-Fi มีประโยชน์มาก
พิมพ์ QR Code สำหรับ Wi-Fi ไว้ที่บ้าน ออฟฟิศ หรือร้านกาแฟ ผู้ใช้สแกนครั้งเดียวก็เชื่อมต่อได้ทันที ไม่ต้องพิมพ์รหัสผ่านยาว ๆ ทั้ง iOS และ Android รองรับรูปแบบ WIFI: โดยตรง
Static vs Dynamic QR Code
ความแตกต่างนี้สำคัญมากเมื่อจะใช้ QR Code กับงานพิมพ์หรือแคมเปญระยะยาว
| หัวข้อ | Static QR Code | Dynamic QR Code |
|---|---|---|
| การเก็บข้อมูล | ข้อมูลอยู่ในภาพโดยตรง | ชี้ไปยัง redirect URL |
| แก้ไขปลายทางได้ไหม | ไม่ได้ เมื่อสร้างแล้วข้อมูลถาวร | ได้ เปลี่ยนปลายทางบน server |
| ติดตามสถิติ | โดยตัว QR เองทำไม่ได้ | ติดตามจำนวนสแกน พื้นที่ และอุปกรณ์ได้ |
| วันหมดอายุ | ไม่มีวันหมดอายุ | ขึ้นกับผู้ให้บริการ |
| ต้องใช้อินเทอร์เน็ตไหม | เฉพาะเมื่อข้อมูลเป็น URL | ต้องใช้เสมอเพราะต้องผ่าน redirect server |
| ต้นทุน | ฟรีและไม่พึ่ง third party | มักต้องสมัครบริการแบบเสียเงิน |
Static QR Code เรียบง่ายและไม่พึ่ง server ภายนอก ส่วน Dynamic QR Code เพิ่มการแก้ไขปลายทางและ analytics แต่ผูกกับผู้ให้บริการ หากบริการล่มหรือหยุดจ่ายเงิน QR Code อาจใช้งานไม่ได้
การใช้งานจริง
Mobile payments: ระบบจ่ายเงินจำนวนมากใช้ QR Code เพื่อโอนหรือรับเงินได้รวดเร็ว
เมนูร้านอาหาร: สแกนที่โต๊ะเพื่อเปิดเมนูบนมือถือ ลดการใช้เมนูกระดาษร่วมกัน
ตั๋วและ boarding pass: ใช้เป็นตั๋วดิจิทัล ตรวจสิทธิ์เร็วและลดการปลอมแปลง
Authentication และ 2FA: แอปยืนยันตัวตนใช้ QR Code เพื่อส่ง secret key สำหรับสร้างรหัส TOTP
บรรจุภัณฑ์สินค้า: เชื่อมไปยังรายละเอียดสินค้า โภชนาการ คู่มือ หรือการลงทะเบียนประกัน
นามบัตร: vCard QR Code ช่วยบันทึกชื่อ เบอร์ อีเมล และบริษัทได้ในครั้งเดียว
การผลิตและคลังสินค้า: ใช้ติดตามชิ้นส่วน สินค้าคงคลัง และ traceability ใน supply chain
ข้อควรระวังด้านความปลอดภัย
QR Code เป็นเพียงภาชนะเก็บข้อมูล แต่ถูกใช้หลอกให้ผู้ใช้เปิดเว็บปลอม ดาวน์โหลดไฟล์ หรือส่งข้อมูลส่วนตัวได้ จึงควรตรวจ URL ก่อนเปิดเสมอ
QR Phishing หรือ Quishing
ผู้โจมตีวาง QR Code ปลอมทับของจริงเพื่อพาไปยังเว็บ phishing เช่น บนโต๊ะร้านอาหารหรือมิเตอร์จอดรถ
Sticker swaps
หาก QR Code ดูเหมือนสติกเกอร์แปะทับของเดิมในพื้นที่สาธารณะ ควรระวังเป็นพิเศษ
Malicious downloads
อย่าติดตั้งแอปหรือดาวน์โหลดไฟล์จาก QR Code ที่ไม่รู้แหล่งที่มา
เคล็ดลับความปลอดภัย
ใช้กล้องหรือ scanner ที่แสดง preview ของ URL ก่อนเปิด ระวัง QR Code ในที่ที่ไม่คาดคิด และถ้ารหัสนำไปยังฟอร์มขอข้อมูลส่วนตัว ให้ตรวจสอบแหล่งที่มาก่อนกรอกทุกครั้ง
แนวทางสร้าง QR Code ที่สแกนง่าย
- ใช้ contrast สูง: จุดเข้มบนพื้นอ่อนดีที่สุด หลีกเลี่ยงสีหน้าที่อ่อนเกินไป
- เว้น quiet zone: ให้มีพื้นที่ว่างรอบรหัสอย่างน้อย 4 modules
- เก็บข้อมูลให้สั้น: ยิ่งข้อมูลน้อย QR Code ยิ่งโล่งและสแกนจากระยะไกลได้ดี
- เลือกระดับ error correction ให้เหมาะ: ใช้ M สำหรับทั่วไป และ H เมื่อต้องใส่โลโก้หรือพิมพ์กลางแจ้ง
- ทดสอบก่อนพิมพ์: ลองสแกนด้วยมือถือหลายรุ่น หลายแอป และแสงตามสภาพใช้งานจริง
- ขนาดต้องพอ: กฎคร่าว ๆ คือความกว้าง QR Code ควรประมาณ 1/10 ของระยะสแกน
- อย่ายืดหรือเอียง: QR Code ต้องเป็นสี่เหลี่ยมจัตุรัสและไม่เสียอัตราส่วน
- ใช้ SVG สำหรับงานพิมพ์: SVG ขยายได้คมทุกขนาด ส่วน PNG เหมาะกับเว็บ อีเมล และโซเชียล
สร้าง QR Code ได้ทันที
ใช้ QR Code Generator ฟรีเพื่อสร้างรหัสสำหรับ URL, ข้อความ, Wi-Fi, ข้อมูลติดต่อ และอื่น ๆ ปรับสี เลือกระดับ error correction แล้วดาวน์โหลดเป็น PNG หรือ SVG ได้ในเบราว์เซอร์
เปิด QR Code Generator →แหล่งอ้างอิง
- ISO/IEC. ISO/IEC 18004:2015 QR Code bar code symbology specification.
- Denso Wave. History of QR Code.
- Reed, I. S. & Solomon, G. (1960). Polynomial Codes over Certain Finite Fields.
- Thonky.com. QR Code Tutorial.