QR কোড: দ্বিমাত্রিক জগতের চাবিকাঠি
কিউআর কোড নিয়ে আমার মনে নানা প্রশ্ন ছিল। যেমন, কিউআর কোড যদি শেষ হয়ে যায় তখন কি হবে? দুেইজন মানুষ যদি একই কিউআর কোড বানিয়ে ফেলে তখন কি হবে? কিউআর কোড দিয়ে কতটি কম্বিনেশন হবে এটা নিশ্চই অসীম নয়? কিউআর কোড শেষ হয়ে গেলে কোন প্রযুক্তি আসবে। কিভাবে কখন কোথায় এর ব্যবহার শুরু হয়। আমার ধারণা অনেকের মনে এই প্রশ্নগুলো আছে। চলুন জানা যাক এর বিস্তারিত-
বর্তমান ডিজিটাল যুগের একটি অত্যন্ত পরিচিত প্রতীক হলো QR কোড। রেস্টুরেন্টের মেনু থেকে শুরু করে পেমেন্ট সিস্টেম, পণ্যের লেবেল থেকে শুরু করে অফিসের উপস্থিতি নিয়ন্ত্রণ—সর্বত্রই এখন এই বর্গাকার, কালো-সাদা প্যাটার্নের উপস্থিতি। কিন্তু এই সহজ-সরল দেখতে প্রতীকটির পেছনে রয়েছে জটিল গাণিতিক কাঠামো, চমৎকার ইতিহাস এবং বিস্তারিত ব্যবহারের সম্ভাবনা। এই প্রবন্ধে QR কোডের আবিষ্কার থেকে শুরু করে এর অভ্যন্তরীণ গণিত, ব্যবহারের পদ্ধতি, যাচাইকরণের নিয়ম, এবং প্রতারণার ঝুঁকি—সব কিছু বিস্তারিত আলোচনা করা হবে।
QR কোড কী: সংজ্ঞা ও মৌলিক ধারণা
QR কোডের পূর্ণরূপ Quick Response Code। এটি এক ধরণের টু-ডাইমেনশনাল ম্যাট্রিক্স বারকোড । অর্থাৎ, একমাত্রিক (১D) সাধারণ বারকোড যেখানে শুধু অনুভূমিকভাবে তথ্য সাজানো থাকে, তার বিপরীতে QR কোড উল্লম্ব ও অনুভূমিক—উভয় দিকেই তথ্য ধারণ করে। এর ফলে এতে বিপুল পরিমাণ তথ্য সংরক্ষণ করা সম্ভব।
QR কোড দেখতে একটি বর্গাকার খোপের (গ্রিড) মতো, যেখানে নির্দিষ্ট নিয়মে সাজানো কালো ও সাদা বিন্দু (মডিউল) তথ্য উপস্থাপন করে। প্রতিটি কালো বা সাদা বিন্দু কম্পিউটারের ‘০’ ও ‘১’ -এর মতো কাজ করে, যা স্ক্যান করার সময় ডিভাইস পাঠ করতে পারে ।
আবিষ্কারের ইতিহাস: কেন ও কীভাবে এলো QR কোড
প্রেক্ষাপট: সীমাবদ্ধ বারকোডের বিপরীতে চাহিদা
১৯৬০-এর দশকে জাপানে সুপারমার্কেটের যাত্রা শুরু হলে পণ্যের তথ্য দ্রুত ইনপুটের প্রয়োজন দেখা দেয়। একমাত্রিক বারকোড (বারকোড) এই সমস্যার সমাধান করলেও এর ধারণক্ষমতা ছিল সীমিত—সর্বোচ্চ ২০টি ক্যারেক্টার । শুধু ইংরেজি সংখ্যা ও অক্ষর ধারণ করতে পারত, জাপানি কাঞ্জি বা হিরাগানা অক্ষরের জন্য এটি অকার্যকর ছিল।
উদ্ভাবন: ডেনসো ওয়েভ ও মাসাহিরো হারার দল
১৯৯৪ সালে জাপানের টয়োটা গ্রুপের একটি কোম্পানি ডেনসো ওয়েভ-এর গবেষক মাসাহিরো হারার (Masahiro Hara) নেতৃত্বে একটি দল QR কোড আবিষ্কার করে । মূল উদ্দেশ্য ছিল গাড়ি উৎপাদন কেন্দ্রে যন্ত্রাংশের ওপর দ্রুত ট্র্যাকিং তথ্য সংরক্ষণ করা।
গবেষক দলটি জাপানি বোর্ড গেম “গো” (Go) -এর কালো-সাদা প্যাটার্ন থেকে অনুপ্রাণিত হয়েছিলেন। গো-বোর্ডের প stones পোড়া পাথরের মতো করে দ্রুত স্ক্যানযোগ্য ও সহজে শনাক্তযোগ্য একটি প্যাটার্ন তৈরি করা সম্ভব হয় ।
পেটেন্ট ও উন্মুক্তকরণের সিদ্ধান্ত
আবিষ্কারের পর ডেনসো ওয়েভ QR কোডের পেটেন্ট নেয়। কিন্তু কোম্পানিটি এক যুগান্তকারী সিদ্ধান্ত নেয়: তারা পেটেন্ট ব্যবহারের অধিকার উন্মুক্ত করে দেয় । অর্থাৎ, কেউ লাইসেন্স ফি না দিয়েই QR কোড তৈরি ও ব্যবহার করতে পারে। এই উদার সিদ্ধান্তের কারণেই QR কোড বিশ্বব্যাপী এত দ্রুত জনপ্রিয় হয়ে ওঠে এবং আজ এটি একটি আন্তর্জাতিক মান (ISO/IEC 18004) ।
ব্যবহারের ইতিহাস ও বিবর্তন: ধীরে শুরু, দ্রুত ছড়িয়ে পড়া
প্রাথমিক ব্যবহার (১৯৯৪-২০১০)
আবিষ্কারের পর প্রথম দিকে QR কোড শুধুমাত্র অটোমোবাইল শিল্পে যন্ত্রাংশ ট্র্যাকিংয়ের কাজে ব্যবহৃত হতো । ধীরে ধীরে জাপানের ভিতরে এটি অন্যান্য শিল্পে ছড়িয়ে পড়ে—ইনভেন্টরি ম্যানেজমেন্ট, টিকিটিং ইত্যাদি।
স্মার্টফোনের উত্থান ও জনপ্রিয়তা বৃদ্ধি (২০১০-২০১৯)
স্মার্টফোনে ক্যামেরা ও QR কোড রিডিং সফটওয়্যার সহজলভ্য হওয়ার পর এর ব্যবহার দ্রুত বাড়তে থাকে। বিপণনকারীরা QR কোড ব্যবহার করে ওয়েবসাইটের লিংক, কুপন, বা প্রোডাক্টের তথ্য গ্রাহকের কাছে পৌঁছে দিতে শুরু করে ।
কোভিড-১৯: স্বর্ণযুগের সূচনা (২০২০-বর্তমান)
২০২০ সালে কোভিড-১৯ মহামারি QR কোডের ব্যবহারকে চূড়ান্ত পর্যায়ে নিয়ে যায়। স্পর্শবিহীন (contactless) লেনদেন ও তথ্য আদানের প্রয়োজনীয়তা বেড়ে যায় । রেস্তোরাঁর মেনু থেকে শুরু করে হাসপাতালের রোগী নিবন্ধন, কোভিড ভ্যাকসিন সার্টিফিকেট—সর্বত্র QR কোডের ব্যবহার চোখে পড়ার মতো বেড়ে যায়। একটি প্রতিবেদন অনুযায়ী, গত এক বছরে QR কোড তৈরির পরিমাণ বেড়েছে ২০০ শতাংশেরও বেশি । ২০৩০ সালের মধ্যে বিশ্বব্যাপী QR কোড পেমেন্ট বাজারের পরিমাণ ৩৫ বিলিয়ন ডলার ছাড়িয়ে যাবে বলে ধারণা করা হচ্ছে ।
ব্যবহারের ক্ষেত্র: যেখানে যেখানে QR কোড আছে
| ক্ষেত্র | ব্যবহারের উদাহরণ |
|---|---|
| খুচরা ও বিপণন | পণ্যের লেবেলে বিস্তারিত তথ্য, প্রচারপত্রে ওয়েবসাইট লিংক, ডিজিটাল কুপন ও লয়ালটি কার্ড |
| অর্থনীতি ও পেমেন্ট | মোবাইল ব্যাংকিং (বিকাশ, নগদ), মার্চেন্ট পেমেন্ট, ক্রিপ্টোকারেন্সি লেনদেন |
| স্বাস্থ্যসেবা | রোগীর ব্রেসলেটে তথ্য, প্রেসক্রিপশন, ভ্যাকসিন সার্টিফিকেট (যেমন: ইইউ ডিজিটাল কোভিড সার্টিফিকেট) |
| ভ্রমণ ও টিকিটিং | বিমান বোর্ডিং পাস, কনসার্ট ও সিনেমার টিকিট, হোটেল বুকিং |
| শিক্ষা | ক্লাসে উপস্থিতি নিবন্ধন, পাঠ্য উপকরণ ডাউনলোড লিংক |
| উৎপাদন ও শিল্প | যন্ত্রাংশ ট্র্যাকিং, ওয়ার্কফ্লো ম্যানেজমেন্ট, নকল পণ্য শনাক্তকরণ |
QR কোডের ভেতরের গণিত: কম্বিনেশন, সংখ্যা ও সম্ভাবনা
QR কোডের সবচেয়ে চমকপ্রদ দিক হলো এর গাণিতিক কাঠামো। এটি নিছক এলোমেলো বিন্দুর সমষ্টি নয়, বরং সুসংহত একটি তথ্য সিস্টেম।
সংস্করণ (Version) ও মডিউল সংখ্যা
QR কোডের আকারকে সংস্করণ (Version) দ্বারা প্রকাশ করা হয়। সংস্করণ ১ থেকে শুরু করে সংস্করণ ৪০ পর্যন্ত রয়েছে।
-
সংস্করণ ১: ২১×২১ মডিউল
-
সংস্করণ ২: ২৫×২৫ মডিউল
-
সংস্করণ ৪০: ১৭৭×১৭৭ মডিউল
প্রতিটি ধাপে পূর্বের সংস্করণের চেয়ে দিকপ্রতি ৪টি করে মডিউল বাড়ে ।
তথ্য ধারণের সীমা (কম্বিনেশন ও সংখ্যা)
একটি QR কোড কতটুকু তথ্য ধারণ করতে পারে, তা নির্ভর করে তিনটি বিষয়ের ওপর:
-
সংস্করণ (বড় সংস্করণে বেশি তথ্য ধরে)
-
এনকোডিং মোড (কী ধরনের তথ্য)
-
এরর কারেকশন লেভেল (নিচে বর্ণিত)
সংস্করণ ৪০-এ সর্বোচ্চ ধারণক্ষমতা নিচের ছকে দেখানো হলো:
| এনকোডিং মোড | সর্বোচ্চ ধারণক্ষমতা (প্রায়) |
|---|---|
| শুধু সংখ্যা (Numeric) | ৭,০৮৯টি অক্ষর |
| সংখ্যা+বড় হাতের ইংরেজি+চিহ্ন (Alphanumeric) | ৪,২৯৬টি অক্ষর |
| বাইনারি/বাইট (UTF-8 সহ) | ২,৯৫৩টি বাইট |
| জাপানি কাঞ্জি | ১,৮১৭টি অক্ষর |
তাত্ত্বিকভাবে, একটি QR কোডে সম্ভাব্য কম্বিনেশনের সংখ্যা এত বিশাল যে পৃথিবীর প্রতিটি পণ্যের জন্য আলাদা কোড বানানো সম্ভব।
এনকোডিং মোড ও গাণিতিক রূপান্তর
QR কোড তথ্য সংরক্ষণের জন্য বেশ কয়েকটি পদ্ধতি ব্যবহার করে। তথ্য পাঠানোর সময় প্রথমে বলে দিতে হয় কোন পদ্ধতি ব্যবহার করা হচ্ছে। এর জন্য ৪ বিটের একটি মোড ইন্ডিকেটর থাকে :
-
0001= সংখ্যা মোড -
0010= আলফানিউমেরিক মোড (A-Z, 0-9, স্পেস, $%*+-./: ইত্যাদি) -
0100= বাইট মোড (যেকোনো বাইনারি ডাটা, যেমন UTF-8 টেক্সট) -
1000= কাঞ্জি মোড
উদাহরণস্বরূপ, আলফানিউমেরিক মোডে “HELLO” শব্দটি এনকোড করতে:
প্রথমে প্রতিটি অক্ষরকে একটি করে সংখ্যায় রূপান্তর করা হয় (একটি নির্দিষ্ট সারণি অনুযায়ী) ।
তারপর অক্ষরগুলোকে জোড়ায় ভাগ করে প্রতিটি জোড়ার জন্য সূত্র প্রয়োগ করা হয়: (প্রথম সংখ্যা × 45) + দ্বিতীয় সংখ্যা। এরপর ফলাফলটিকে ১১ বিটের বাইনারি সংখ্যায় রূপান্তর করা হয়।
শেষ অক্ষরটি যদি একক থাকে, তবে তাকে ৬ বিটে রূপান্তর করা হয়।
সংখ্যা মোডে উদাহরণ: “৮৬৭৫৩০৯” সংখ্যাটি এনকোড করতে প্রথমে তিনটি তিনটি করে ভাগ করা হয়: ৮৬৭ ৫৩০ ৯। এরপর প্রতিটি তিন অঙ্কের সংখ্যাকে ১০ বিটের বাইনারিতে এবং শেষের এক অঙ্কের সংখ্যাটিকে ৪ বিটের বাইনারিতে রূপান্তর করা হয় ।
এরর কারেকশন (ভুল সংশোধন): রিড-সলোমন অ্যালগরিদম
এটি QR কোডের সবচেয়ে গুরুত্বপূর্ণ বৈশিষ্ট্য। আপনার QR কোডটি যদি একটু ছিঁড়ে যায় বা দাগ পড়ে, তবুও এটি স্ক্যান হবে—এর কারণ এই রিড-সলোমন এরর কারেকশন (Reed-Solomon Error Correction) ।
এটি একটি গাণিতিক অ্যালগরিদম যা তথ্যের সাথে কিছু অতিরিক্ত কোডওয়ার্ড যোগ করে। মূল তথ্য নষ্ট হলেও এই অতিরিক্ত তথ্য ব্যবহার করে আসল তথ্য পুনর্নির্মাণ করা যায়।
QR কোডে চারটি এরর কারেকশন লেভেল রয়েছে :
-
লেভেল L (Low): ৭% পর্যন্ত ডাটা নষ্ট হলে ঠিক করতে পারে।
-
লেভেল M (Medium): ১৫% পর্যন্ত (সাধারণত ডিফল্ট)
-
লেভেল Q (Quartile): ২৫% পর্যন্ত
-
লেভেল H (High): ৩০% পর্যন্ত
এরর কারেকশনের গাণিতিক ভিত্তি হলো গালোয়া ফিল্ড (Galois Field GF(256)) । এই ফিল্ডের নিয়ম অনুযায়ী জটিল বহুপদী (polynomial) ব্যবহার করে তথ্যের সঙ্গে এরর কারেকশন কোড যুক্ত করা হয়। যত বেশি এরর কারেকশন দরকার, তত বেশি অতিরিক্ত ডাটা যুক্ত হয়, ফলে QR কোডের সাইজ বড় হয়।
প্যারিটি ও চেকসাম: তথ্যের নির্ভুলতা যাচাই
QR কোডে শুধু এরর কারেকশন নয়, তথ্যের সঠিকতা নিশ্চিত করতে চেকসাম (Checksum) বা প্যারিটি বিটও ব্যবহৃত হয়। স্ক্যানার যখন কোড পড়ে, তখন এটি একটি নির্দিষ্ট গাণিতিক সূত্র (যেমন CRC – সাইক্লিক রিডানডেন্সি চেক) প্রয়োগ করে হিসাব করে যে তথ্যটি সঠিকভাবে পড়া হয়েছে কিনা। পেমেন্ট সংক্রান্ত QR কোডে (যেমন QRIS) বিশেষভাবে CRC16-CCITT চেকসাম স্ট্যান্ডার্ড ব্যবহার করা হয় । তথ্যের শেষ অংশে একটি নির্দিষ্ট মান (৬৩০৪ ট্যাগের ভ্যালু) থাকে, যা ডিকোড করার সময় যাচাই করা হয়।
সনাক্তকরণ ও যাচাইকরণ (Authentication & Verification)
কিভাবে নিশ্চিত হবেন যে আপনার স্ক্যান করা QR কোডটি নিরাপদ ও সঠিক?
চাক্ষুষ যাচাই
-
উৎস দেখুন: কোডটি কে পোস্ট করেছে? এটি কি বিশ্বস্ত প্রতিষ্ঠানের (ব্যাংক, সরকারি অফিস) অফিসিয়াল পোস্টার, নাকি রাস্তার খুঁটিতে এলোমেলো স্টিকার?
-
অবস্থান পর্যবেক্ষণ: আসল QR কোড সাধারণত সরাসরি প্রিন্ট করা হয়। যদি দেখেন একটি স্টিকার অন্য একটি প্রিন্টেড কোডের ওপর আটকানো, তবে সেটি সন্দেহজনক ।
-
ডিজাইন: অনেক সময় স্ক্যামাররা আসল কোডের মতো দেখতে কিন্তু ভিন্ন লিংকে নিয়ে যাওয়া কোড তৈরি করে।
ডিজিটাল যাচাই পদ্ধতি
-
ইউআরএল প্রিভিউ (URL Preview): বেশিরভাগ আধুনিক স্মার্টফোনের ক্যামেরা স্ক্যান করার আগে লিংকটি দেখিয়ে দেয়। সেখানে দেখে নিন লিংকটি প্রত্যাশিত ঠিকানা কিনা।
bit.lyবাtinyurl-এর মতো ছোট লিংক থাকলে সতর্ক হোন । -
কিউআর কোড ভ্যালিডেটর টুল: কিছু অনলাইন টুল ও অ্যাপ আছে যা স্ক্যান করার আগে কোডের মেটাডাটা ও নিরাপত্তা যাচাই করে।
-
হ্যাশ ও এনক্রিপশন: শিল্পকারখানায় বা গুরুত্বপূর্ণ ডকুমেন্টে QR কোড যাচাই করতে হ্যাশিং (SHA, MD5) বা ডিজিটাল সিগনেচার (RSA, ECDSA) ব্যবহার করা হয়। প্রেরক একটি এনক্রিপ্টেড চেকসাম তৈরি করে, গ্রহীতা তা ম্যাচ করে দেখে তথ্য অপরিবর্তিত আছে কিনা ।
নকল পণ্য শনাক্তকরণ
ব্র্যান্ডের পণ্যে QR কোড ব্যবহার করে ক্রেতারা যাচাই করতে পারেন পণ্যটি আসল কিনা। প্রযোজক একটি ইউনিক কোড প্রিন্ট করে, যা স্ক্যান করলে সার্ভার থেকে নিশ্চিত করে যে এটি প্রথমবার স্ক্যান হচ্ছে। দ্বিতীয়বার স্ক্যান করলে সতর্কতা দেখায়।
QR কোড নিয়ে প্রতারণা (Quishing ও অন্যান্য)
হ্যাঁ, QR কোড নিয়ে প্রতারণা সম্ভব এবং দিন দিন তা বেড়েই চলেছে। সাইবার অপরাধীরা এই প্রযুক্তির সুযোগ নিয়ে নতুন নতুন পদ্ধতি বের করছে।
প্রতারণার ধরন ও পদ্ধতি
ক. কোয়িশিং (Quishing – QR Code Phishing)
এটি সবচেয়ে প্রচলিত পদ্ধতি। অপরাধীরা একটি ভুইয়া QR কোড তৈরি করে, যা দেখতে আসল মতো। এই কোড স্ক্যান করলে ব্যবহারকারী একটি ভুয়া ওয়েবসাইটে চলে যায় যা দেখতে ব্যাংকের লগইন পেজ বা গুগল ড্রাইভের মতো । সেখানে ব্যবহারকারী তার ইউজারনেম, পাসওয়ার্ড, এমনকি ওটিপি (OTP) দিয়ে বসে, আর তা চলে যায় হ্যাকারের কাছে।
খ. ইমেইল ও ফিশিং লিংক
হ্যাকাররা চাকরির আবেদন, ইনভয়েস বা গুরুত্বপূর্ণ মিটিংয়ের আমন্ত্রণ জানিয়ে ইমেইল পাঠায়, যার ভেতরে একটি QR কোড থাকে। ইমেইল সিকিউরিটি সাধারণত লিংক চেক করে, কিন্তু ছবির ভেতরের QR কোড তারা চেক করতে পারে না ।
গ. ম্যালওয়্যার ইনস্টলেশন
কিছু QR কোড স্ক্যান করলেই ফোনে স্বয়ংক্রিয়ভাবে একটি ম্যালওয়্যার (দূষিত সফটওয়্যার) ডাউনলোড হয়ে যেতে পারে। এটি আপনার ফোনের ব্যাংকিং অ্যাপ, কন্টাক্ট, মেসেজ সব কিছু চুরি করতে পারে ।
ঘ. সেশন হাইজ্যাকিং (QRLjacking)
কিছু QR কোড লগইন প্রক্রিয়ার সাথে যুক্ত। স্ক্যান করলে হ্যাকার আপনার লগইন সেশন টোকেন চুরি করে নেয়, এবং পরে সেই টোকেন ব্যব
