UPI पेमेंट लिंक, .भारत जैसे देवनागरी डोमेन और WhatsApp पर शेयर होने वाले हिंदी टेक्स्ट वाले लिंक — ये तीनों आम URL के मुक़ाबले अलग तरह से टूटते और एन्कोड होते हैं, और यही चीज़ इन्हें समझना ज़रूरी बनाती है।
URL के मुख्य हिस्से
- प्रोटोकॉल —
https://याupi://जैसी कस्टम स्कीम, जो बताती है कि रिसोर्स से कैसे जुड़ा जाए। - होस्ट —
example.com, या देवनागरी में रजिस्टर्ड डोमेन जैसेउदाहरण.भारत। - पोर्ट — वैकल्पिक, HTTPS के लिए डिफ़ॉल्ट 443।
- पाथ —
/लेख/नेटवर्क, देवनागरी कैरेक्टर ले सकता है। - क्वेरी स्ट्रिंग —
?के बाद, जैसे UPI लिंक में?pa=merchant@bank&am=500। - फ़्रैगमेंट —
#के बाद, सिर्फ़ ब्राउज़र इसे प्रोसेस करता है।
देवनागरी टेक्स्ट URL में इतना लंबा प्रतिशत-कोडेड क्यों दिखता है
देवनागरी के मात्रा-चिह्न और संयुक्ताक्षर हर कैरेक्टर के लिए कई UTF-8 बाइट्स लेते हैं, और हर बाइट आगे %E0%A4 जैसी सीक्वेंस में एन्कोड होता है। नतीजा यह होता है कि एक छोटा-सा हिंदी शब्द भी पाथ या क्वेरी स्ट्रिंग में एन्कोड होने पर 20-30 कैरेक्टर लंबी प्रतिशत-कोडेड स्ट्रिंग बन जाता है — जिससे WhatsApp पर शेयर किया गया लिंक असामान्य रूप से लंबा दिखता है।
UPI डीप लिंक भी एक तरह का URL ही है
upi://pay?pa=shop@upi&pn=Shop&am=250&cu=INR जैसा लिंक भी उसी scheme-host-query स्ट्रक्चर का पालन करता है, बस होस्ट की जगह पेमेंट ऐप डायरेक्ट रिक्वेस्ट को इंटरप्रेट करता है। पैरामीटर्स को अलग करके देखना — जैसे pa (पेयी एड्रेस), am (अमाउंट) — यह वेरिफ़ाई करने का सबसे तेज़ तरीक़ा है कि कोई पेमेंट लिंक असल में कहाँ पैसे भेज रहा है।
यह क्यों ज़रूरी है
- किसी लंबे प्रतिशत-कोडेड लिंक को पढ़ने लायक हिंदी टेक्स्ट में डिकोड करना।
- UPI या डीप लिंक में छिपे असली पेमेंट पैरामीटर की जाँच करना।
- .भारत जैसे IDN डोमेन को उसके असली punycode रूप में देखना।
userinfo वाला फ़िशिंग ट्रिक
https://accounts.google.com@evil.com/ जैसा URL देखने में accounts.google.com की ओर ले जाता लगता है, पर असल में ब्राउज़र evil.com खोलेगा — @ से पहले वाला हिस्सा सिर्फ़ यूज़रनेम (userinfo) है, होस्ट नहीं। हमलावर इस ट्रिक का इस्तेमाल फ़िशिंग लिंक को भरोसेमंद डोमेन जैसा दिखाने के लिए करते हैं, इसलिए आधुनिक ब्राउज़र असली होस्ट को विज़ुअली हाइलाइट करने की कोशिश करते हैं।