QR স্ক্যানের লগ: ডেটা পায় তারা, দায় বহন করেন আপনি
স্ক্যান অ্যানালিটিক্স কোনো অতিরিক্ত সুবিধা নয়। রিডাইরেক্ট থাকার কারণই এটি—আর আইনি ঝুঁকি বহন করে যে পক্ষ, ডেটা থাকে তার কাছে নয়।
QR কোড ব্যবহারকারী প্রায় কেউই এই অসমতার কথা জানেন না, অথচ এ কারণেই বিষয়টি নিছক কৌতূহল নয়, কমপ্লায়েন্সের প্রশ্ন। কোনো প্রোভাইডার যখন “স্ক্যান অ্যানালিটিক্স” প্রচার করে, তখন বিষয়টি উল্টোভাবে দেখুন: প্রতিটি স্ক্যানকে তাদের অবকাঠামোর মধ্য দিয়ে পাঠানো হয় বলেই অ্যানালিটিক্স সম্ভব। ট্র্যাকিং রিডাইরেক্টের ওপর পরে জোড়া হয়নি—ট্র্যাকিং সম্ভব করার জন্যই রিডাইরেক্টটি আছে।
কেউ স্ট্যাটিক কোড স্ক্যান করলে কী ঘটে?
তৃতীয় পক্ষের দিক থেকে দেখলে কিছুই নয়। এটাই মূল অবস্থা, আর এর সঙ্গে তুলনা করলেই পার্থক্যটি স্পষ্ট হয়।
একটি স্ট্যাটিক QR কোড তার গন্তব্যকে প্যাটার্নের মধ্যে সরাসরি বাইট হিসেবে সংরক্ষণ করে। ক্যামেরা ফোনেই স্থানীয়ভাবে সেটি ডিকোড করে এবং URL-টি ব্রাউজারে দেয়। এরপর ব্রাউজার আপনার সার্ভারে যুক্ত হয়। কোনো মধ্যবর্তী ধাপ নেই, তৃতীয় পক্ষ নেই, আর স্ক্যান হয়েছে—এ কথা আপনি ছাড়া অন্য কারও জানার উপায়ও নেই।
এটি কেউ পরিকল্পনা করে বানানো গোপনীয়তা-সুবিধা নয়। ফরম্যাটটি যা করার দাবি করে, শুধু তা-ই করে—দেখুন স্ট্যাটিক বনাম ডায়নামিক।
অতিরিক্ত কোনো প্রচেষ্টা ছাড়াই প্রক্সির কাছে কী পৌঁছায়?
একটি ডায়নামিক কোডে এমন কিছু সংরক্ষিত থাকে: https://qr-short.example/a1B2c3। ফোনটি প্রথমে ওই হোস্টে যুক্ত হয়; প্রোভাইডার উত্তর দেওয়ার পরেই ব্রাউজার তার আসল গন্তব্য জানতে পারে। সেই সংযোগ একটি সাধারণ ওয়েব অনুরোধ, তাই সাধারণ ওয়েব অনুরোধে যা যা থাকে, প্রোভাইডার তা-ই পায়—কোনো সম্মতি ব্যানারের আগে, কোনো গোপনীয়তা নীতির আগে, এমনকি স্ক্যানকারী কার সার্ভারে যোগাযোগ করেছে তা জানার আগেও।
| ক্ষেত্র | এতে যা জানা যায় |
|---|---|
| IP ঠিকানা | আনুমানিক অবস্থান, ISP এবং কর্পোরেট বা ক্যাম্পাস নেটওয়ার্ক হলে প্রতিষ্ঠানটির পরিচয় |
| সময় | মিলিসেকেন্ড পর্যন্ত দিনের সময় ও সপ্তাহের দিন |
| User-agent | অপারেটিং সিস্টেম, OS সংস্করণ, ব্রাউজার, ব্রাউজার সংস্করণ, প্রায়ই ডিভাইসের মডেলও—নিজেই বাস্তব ফিঙ্গারপ্রিন্টিংয়ের সুযোগ |
| Accept-Language | ডিভাইসে কনফিগার করা ভাষাগুলো |
| Referrer | ক্যামেরা দিয়ে স্ক্যান করলে সাধারণত খালি থাকে—এটিই স্ক্যানকে লিংকে ক্লিক করা থেকে আলাদা করে |
| ছোট পাথ | কোন নির্দিষ্ট পোস্টার, টেবিল, ক্যাম্পেইন বা পণ্যের ইউনিট স্ক্যান হয়েছে, এবং ফলে ব্যক্তি শারীরিকভাবে কোথায় আছেন |
রিডাইরেক্ট ধাপটি এর সঙ্গে আর কী যোগ করে?
প্রোভাইডার উত্তরটি নিয়ন্ত্রণ করে বলে তারা শুধু নিষ্ক্রিয়ভাবে লগ রাখতেই সীমাবদ্ধ নয়। একটি রিডাইরেক্ট ধাপ হলো *কাজ করার* জায়গা:
- ফরোয়ার্ড করার আগে নিজেদের ডোমেনে কুকি সেট করা। এখন সেই প্রোভাইডারের যেকোনো কোড—যেকোনো পোস্টারে, যেকোনো ব্যবসার—একই ডিভাইসের সঙ্গে যুক্ত করা যায়।
- গন্তব্য URL-এ ট্র্যাকিং প্যারামিটার যোগ করা, যাতে তাদের শনাক্তকারী আপনার অ্যানালিটিক্সে চলে যায়।
- তাৎক্ষণিক রিডাইরেক্টের বদলে একটি ইন্টারস্টিশিয়াল দেখানো। এতে JavaScript চলে, যা ক্যানভাস ও ফন্ট ফিঙ্গারপ্রিন্টিং, স্ক্রিনের মাপ, টাইমজোন এবং হার্ডওয়্যার-সংক্রান্ত ইঙ্গিত সংগ্রহ করতে পারে।
- আরও ধাপের মধ্য দিয়ে পাঠানো, যার মধ্যে বিজ্ঞাপন বা অ্যাট্রিবিউশন পার্টনারও থাকতে পারে; প্রতিটি ধাপে পুরো সংগ্রহ প্রক্রিয়াটি আবার ঘটে।
শেষের বিষয়টিই সবচেয়ে কম দৃশ্যমান এবং সবচেয়ে গুরুত্বপূর্ণ। কোনো QR শর্ট লিংক থেকে রিডাইরেক্ট চেইন অনুসরণ করলে কখনও স্ক্যান ও গন্তব্যের মাঝখানে একাধিক হোস্ট দেখা যায়—QR কোড আসলে কোথায় নিয়ে যায় তা কীভাবে পরীক্ষা করবেন-এ একটি চেইন অনুসরণ করার পদ্ধতি দেখানো হয়েছে।
চেইনে আসলে কতগুলো পক্ষ থাকে?
প্রায়ই একের বেশি। প্রোভাইডার প্রথম ধাপ, কিন্তু তাদের পাঠানো উত্তর আপনার সাইটে যাওয়ার আগে অন্য কোনো হোস্টে পাঠাতে পারে, আর সেই হোস্ট আবার তৃতীয় কোনো হোস্টে পাঠাতে পারে।
এটি কল্পিত নয়। Palo Alto-র Unit 42 QR-শর্টেনার সেবার মধ্য দিয়ে চলাচলকারী ট্রাফিক ২০২৩ সালের প্রথমার্ধ থেকে ২০২৪ সালের প্রথমার্ধে ৫৫% এবং ২০২৫ সালের প্রথমার্ধে আরও ৪৪% বেড়েছে বলে ট্র্যাক করেছে—পুরোনো QR-বিহীন ওয়েবে যে সম্পূর্ণ রিডাইরেক্ট স্তর ছিল না, সেটিই এখন ভৌত বস্তু ও সেগুলোতে প্রচারিত সাইটের মাঝখানে বসে আছে। প্রতিটি ধাপ হলো স্বাধীন একটি পক্ষ, যে পূর্ণ HTTP অনুরোধ পায়।
নিজের ঝুঁকি মাপতে পারেন। আপনার ছাপানো কোডের শর্ট লিংকের বিরুদ্ধে curl -sIL "https://short.example/abc" | grep -i "^location:" চালান; প্রতিটি Location লাইন হলো এমন একটি প্রতিষ্ঠান, যে প্রতিটি স্ক্যান দেখতে পায়। সংখ্যা একের বেশি হলে, আপনার স্ক্যানের ডেটা এমন পক্ষগুলোর সঙ্গে ভাগ হচ্ছে, যাদের সঙ্গে আপনার কখনও চুক্তি হয়নি এবং যাদের নামও বলতে পারবেন না। QR কোড আসলে কোথায় নিয়ে যায় তা কীভাবে পরীক্ষা করবেন-এ আউটপুট পড়ার পদ্ধতি দেখানো হয়েছে।
ব্যক্তিগত রেকর্ড কীভাবে একটি প্রোফাইলে পরিণত হয়?
আলাদাভাবে দেখলে প্রতিটি ক্ষেত্রই সাধারণ। কিন্তু হাজারো ব্যবসার কোড পরিচালনাকারী কোনো প্রোভাইডারের কাছে এগুলো একত্র হলে সম্পূর্ণ ভিন্ন কিছু তৈরি হয়।
যে প্রোভাইডারের কোড রেস্তোরাঁর টেবিল, খুচরা দোকানের তাক, ইভেন্ট ব্যাজ এবং পার্কিং মিটারে দেখা যায়, সে একই ডিভাইস ফিঙ্গারপ্রিন্টের ক্ষেত্রে দেখতে পারে: ডিভাইসটি কোথায় এবং কত ঘন ঘন যায়, কারণ প্রতিটি কোড একটি ভৌত স্থানের সঙ্গে যুক্ত; ওই যাতায়াতের ক্রম ও সময়, যা রুটিন ও যাতায়াতের পথ প্রকাশ করে; নির্দিষ্ট সময়ে এক জায়গায় বারবার জমায়েত হওয়া থেকে আনুমানিক বাড়ি ও কর্মস্থলের এলাকা; এবং কোন কোন ব্যবসার সঙ্গে ডিভাইসটি যোগাযোগ করে, এমন কোম্পানিগুলোর মধ্যেও যাদের নিজেদের মধ্যে কোনো সম্পর্ক নেই।
কোনো একক ব্যবসা লোকেশন-ট্র্যাকিং নেটওয়ার্ক স্থাপন করেনি। প্রোভাইডার সবার ছাপানো উপকরণ দিয়ে একটি নেটওয়ার্ক বানিয়েছে—আর প্রতিটি ব্যবসা সেন্সর গ্রিডের নিজের অংশটি ছাপানোর খরচ দিয়েছে।
আইনগতভাবে দায়ী কে—আপনি, না প্রোভাইডার?
কেউ মেনুর কোড স্ক্যান করলে মেনু দেখার সম্মতি দিচ্ছেন। তিনি জেনে-শুনে তৃতীয় পক্ষের কোনো অ্যানালিটিক্স কোম্পানির সঙ্গে যোগাযোগে সম্মতি দিচ্ছেন না, আর তা জানার উপায়ও নেই: ছাপানো বর্গক্ষেত্রটি কোন হোস্টে নিয়ে যায়, তার কোনো ইঙ্গিত দেয় না।
এটি শুধু স্ক্যানকারীর নয়, কোড ব্যবহারকারী ব্যবসারও সমস্যা। *Breyer* (C-582/14) মামলায় Court of Justice বলেছে, কোনো সাইট অপারেটরের লগ করা ডায়নামিক IP ঠিকানা ব্যক্তিগত ডেটা হতে পারে, কারণ কাউকে আলাদা করে শনাক্ত করতে পারাই যথেষ্ট—তার নাম জানা জরুরি নয়। GDPR অনুযায়ী, আপনি যদি এমন কোড ছাপান যা আপনার গ্রাহকদের কোনো প্রসেসরের মধ্য দিয়ে পাঠায়, তাহলে সাধারণত আইনসম্মত ভিত্তি, তথ্য প্রকাশ এবং বেশির ভাগ ক্ষেত্রে ডেটা প্রসেসিং চুক্তির ব্যবস্থা করার দায় আপনার।
এটি আইনি পরামর্শ নয়, সাধারণ তথ্য; বিচারব্যবস্থা এবং প্রোভাইডার আসলে কী করে তার ওপর বিস্তারিত বদলাতে পারে। তবে কাঠামোটি লক্ষ করুন: প্রোভাইডার ডেটা পায়, আর কোড ছাপানো ব্যবসা ঝুঁকি বহন করে। “ফ্রি” সেবার খরচগুলোর মধ্যে এই অসমতা সবচেয়ে কম আলোচিত।
ডেটা শেষ পর্যন্ত কোথায় যায়?
- অধিগ্রহণ। স্ক্যানের লগ একটি সম্পদ। প্রোভাইডার কিনে নেওয়া হলে, ক্রেতার নতুন নীতিমালা অনুযায়ী লগও স্থানান্তরিত হয়।
- দেউলিয়াত্ব। প্রোভাইডার ব্যর্থ হলে, তার ডেটা সম্পত্তির অংশ হয়ে যায়—এবং একই সময়ে আপনার ছাপানো কোড কাজ করা বন্ধ করে। দেখুন QR কোড কেন কাজ করা বন্ধ করে।
- ডেটা ফাঁস। ডিভাইস ফিঙ্গারপ্রিন্টের সঙ্গে যুক্ত অবস্থান ও সময়ের রেকর্ড আক্রমণকারীদের কাছে আকর্ষণীয়, আর প্রকাশ হয়ে গেলে সেগুলোকে কার্যকরভাবে নিরীহ করা প্রায় অসম্ভব।
আজ কেউ খারাপ আচরণ না করলেও এসব ঘটতে পারে। সময়ের সঙ্গে কোনো ডেটাসেটের যা হয়, এগুলো শুধু তারই ফল।
মধ্যস্বত্বভোগী ছাড়া ক্যাম্পেইনের ফল কীভাবে মাপবেন?
কোনো ক্যাম্পেইন কাজ করেছে কি না জানতে চাওয়া একেবারেই যুক্তিসঙ্গত। তা জানতে আপনার তৃতীয় পক্ষের দরকার নেই।
নিজের ডোমেনে নিজের ক্যাম্পেইন প্যারামিটারসহ একটি URL-এ এনকোড করা স্ট্যাটিক QR কোড ছাপুন: https://yourcompany.com/menu?src=table-tent। আপনার সার্ভার হিটটি লগ করবে। আপনার অ্যানালিটিক্স সেটি গুনবে। পথের মধ্যে আর কেউ থাকবে না, স্ক্যানকারী শুধু যে ব্যবসার সাইটে যেতে চেয়েছিলেন সেখানেই যোগাযোগ করবেন, আর কারও বিলিং স্ট্যাটাসের ওপর নির্ভর না করেই কোডটি কাজ করতে থাকবে।
প্রতিটি স্থাপনার জন্য আলাদা পাথ বা প্যারামিটার ব্যবহার করলে পোস্টারভিত্তিক অ্যাট্রিবিউশন পাবেন—ড্যাশবোর্ড যে মাত্রার তথ্য বিক্রি করত, গ্রাহকদের অপরিচিত কারও হাতে তুলে না দিয়েই একই মাত্রা। সেটআপের জন্য দেখুন চিরদিন নিজের QR কোডের মালিক থাকুন।
প্রায়শই জিজ্ঞাসিত প্রশ্ন
- স্ট্যাটিক QR কোড কি আমাকে ট্র্যাক করতে পারে?
- নিজে থেকে নয়। এতে কোনো শনাক্তকারী নেই এবং এটি কোনো তৃতীয় পক্ষের সঙ্গে যোগাযোগ করে না। গন্তব্য সাইট যা করে—নিজস্ব অ্যানালিটিক্স, নিজস্ব কুকি—তা আলাদা বিষয়, আর সেটিই সেই সাইট যেখানে আপনি যেতে চেয়েছিলেন।
- QR কোড কি জানে আমি কে?
- কোড কিছুই জানে না; এটি কেবল কালি। ডায়নামিক কোড হলে প্রোভাইডারের সার্ভার আপনার IP, ডিভাইস এবং সময় দেখতে পায়, যা আপনাকে আনুমানিকভাবে অবস্থান নির্ধারণ ও ফিঙ্গারপ্রিন্ট করার এবং তাদের অন্য কোডে একই ডিভাইস শনাক্ত করার জন্য যথেষ্ট।
- স্ক্যান ট্র্যাক করা কি আইনসম্মত?
- আইনসম্মত ভিত্তি ও যথাযথ তথ্য প্রকাশ থাকলে হতে পারে। বারবার যে সমস্যা দেখা যায় তা হলো, স্ক্যানকারীকে কখনও জানানো হয় না যে তৃতীয় পক্ষ জড়িত, আর কোড ছাপানো ব্যবসাটিও প্রায়ই তা জানে না। GDPR অনুযায়ী সেই ঝুঁকি সাধারণত প্রোভাইডারের নয়, ব্যবসার ওপর পড়ে।
- QR কোড স্ক্যানের জন্য কি কুকি ব্যানার দরকার?
- স্ট্যাটিক কোডের জন্য অতিরিক্ত কিছু দরকার নেই: স্ক্যানটি আপনার সাইটে একটি সাধারণ ভিজিট, যা আপনার সাইটে আগে থেকেই ব্যবহৃত সম্মতি ব্যবস্থার অধীন। ডায়নামিক কোড আলাদা, কারণ আপনার পেজ—এবং ফলে আপনার কোনো ব্যানার—দেখানোর আগেই প্রোভাইডারের সঙ্গে যোগাযোগ হয় এবং সে ভিজিটরকে লগ করে। যেখানে আইনসম্মত ভিত্তি দরকার, তা সাধারণত আপনাকেই প্রতিষ্ঠা করতে হবে, প্রোভাইডারকে নয়।
- আমি আগে ছাপানো কোনো কোড স্ক্যান ট্র্যাক করছে কি না তা কি বুঝতে পারি?
- হ্যাঁ। আমাদের রিডার দিয়ে ডিকোড করুন। পে-লোডটি আপনার মালিকানাধীন নয় এমন কোনো ডোমেনের শর্ট লিংক হলে, প্রতিটি স্ক্যান ওই হোস্টের মধ্য দিয়ে যায় এবং লগ হয়।
আপনি এখানে যা তৈরি করেন, তার কিছুই কোনো সার্ভারে যায় না—কোড আপনার ব্রাউজারেই তৈরি হয়, আর আমরা কোনো স্ক্যান লগ করি না, কারণ আমরা কখনও পথের মধ্যে থাকি না। URL QR কোড দিয়ে শুরু করুন, অথবা সম্পূর্ণ চিত্রের জন্য পড়ুন QR কোড প্রতারণার সত্যতা।
স্ট্যাটিক QR কোডের জন্য প্রস্তুত?
আপনার ব্রাউজারে এটি তৈরি করুন — কোনো অ্যাকাউন্ট নেই, কোনো ট্র্যাকিং নেই, কোনো সাবস্ক্রিপশন নেই। আপনি যা তৈরি করেন তা আপনার।
সম্পর্কিত পঠন
QR কোড রিডাইরেক্ট হাইজ্যাকিং: অদৃশ্য মধ্যস্থতাকারী
যখন আপনার QR কোড কাজ করে, মধ্যস্থতাকারী অদৃশ্য। যখন এটি ভেঙে যায়, খুব দেরি হয়ে যায়। রিডাইরেক্ট মডেল বোঝা এটি এড়ানোর প্রথম পদক্ষেপ।
স্ট্যাটিক বনাম ডায়নামিক QR কোড: প্রতিটি ব্যবহারকারীর যা জানা উচিত
একটি আপনার সামগ্রী এনকোড করে; অন্যটি একটি রিডাইরেক্ট এনকোড করে। এই একটি পার্থক্য নির্ধারণ করে যে আপনার QR কোড পাঁচ বছরে এখনও কাজ করবে কিনা।
রেস্তোরাঁর মেনুতে স্ট্যাটিক QR কোডই কেন যথেষ্ট
আপনাকে বলা হয়, সম্পাদনাযোগ্য কোড দরকার। আসলে প্রতিদিন বদলায় মেনু পাতার বিষয়বস্তু, ঠিকানা নয়—আর স্ট্যাটিক কোডে তা বিনা খরচে করা যায়।
কুইশিং: সবচেয়ে অপব্যবহৃত ফিশিং ডোমেইন QR জেনারেটর
সাধারণ ছাপা উপকরণে “বিনামূল্যের” QR জেনারেটর যে রিডাইরেক্ট স্তর ঢোকায়, হামলাকারীরাও সেটিই ব্যবহার করে—ফলে স্ক্যানারের শেষ প্রতিরোধটিও আর থাকে না।
নিজস্ব ডোমেনে সাবস্ক্রিপশন ছাড়াই QR কোড সম্পাদনা
“কিন্তু পরে গন্তব্য বদলাতে হবে”—এর উত্তর সাবস্ক্রিপশন নয়। উত্তর হলো আপনার মালিকানাধীন ডোমেনের একটি রিডাইরেক্ট পথ।