SVG के ज़रिए ईमेल पता सुरक्षित करने का तरीका, JavaScript की जगह उपयोग
(rouninmedia.github.io)-
SVG का उपयोग करने वाली ईमेल पता सुरक्षा तकनीक
- वास्तविक डेमो के लिए SVG-based Email Protection लिंक देखें
- वेब पेज पर सार्वजनिक ईमेल पते को आमतौर पर ईमेल संग्रह करने वाले बॉट्स से सुरक्षा की आवश्यकता होती है
- पहले HTML, CSS, JS के संयोजन का उपयोग करने वाली तकनीकें इस्तेमाल होती रही हैं, लेकिन हर एक के अपने फायदे और सीमाएँ हैं
- JS का उपयोग करने वाला तरीका HTML/CSS-आधारित विकल्पों से अधिक परिष्कृत है, लेकिन इसकी कमी यह है कि JS उस पेज का अनिवार्य हिस्सा बन जाता है
- JS पेज को बेहतर बना सकता है, लेकिन आदर्श रूप से JS बंद होने पर भी पेज की सभी आवश्यक सुविधाएँ काम करनी चाहिए
- इस पेज में परिचित कराई गई तकनीक CSS, JS, CSS+JS जैसी मौजूदा ईमेल सुरक्षा तकनीकों से बिल्कुल अलग SVG-आधारित अप्रोच का उपयोग करती है
-
SVG-आधारित ईमेल पता सुरक्षा तकनीक के 3 फायदे
- JavaScript बंद होने पर भी काम करता है
- SVG-आधारित अप्रोच का सबसे बड़ा फायदा यह है कि इसमें JS की बिल्कुल आवश्यकता नहीं होती
- भले ही विज़िटर JS बंद कर दे, पेज पर दिखाया गया ईमेल पता उपयोग योग्य, सुलभ और सुरक्षित रहता है, साथ ही स्पैम बॉट्स से छिपा रहता है
- मानक
mailto:लिंक का उपयोग संभव- JS की आवश्यकता न रखने वाले अन्य तरीकों (HTML comments डालना, elements छिपाना आदि) के विपरीत, SVG-आधारित तरीका मानक
mailto:लिंक के उपयोग की अनुमति देता है - हालांकि
mailto:लिंक संदर्भित HTML document के अंदर नहीं, बल्कि बाहरी SVG document के अंदर मौजूद होता है
- JS की आवश्यकता न रखने वाले अन्य तरीकों (HTML comments डालना, elements छिपाना आदि) के विपरीत, SVG-आधारित तरीका मानक
- इमेज की तरह सामग्री छिपाते हुए भी टेक्स्ट की तरह कॉपी किया जा सकता है
- embedded SVG इमेज जैसा दिखता है, लेकिन वास्तव में इमेज नहीं है
- hypertext document में embedded replacement element के रूप में SVG, ईमेल पते को स्पैम बॉट्स से छिपाने में इमेज जितना प्रभावी हो सकता है
- लेकिन तकनीकी रूप से SVG वास्तविक इमेज नहीं, बल्कि एक graphic document है
- इसलिए इमेज के विपरीत, embedded SVG के `` element पर right-click करके ईमेल पता कॉपी किया जा सकता है
- JavaScript बंद होने पर भी काम करता है
-
कोड इम्प्लीमेंटेशन
- उदाहरण 2 files से बना है
- SVG graphic document को HTML hypertext document में `` टैग का उपयोग करके embed किया जाता है
- उसी SVG graphic document को hypertext में एक या कई बार embed किया जा सकता है
- HTML file और SVG file के code examples शामिल हैं
-
accessibility से जुड़ी बातें
- यह महत्वपूर्ण है कि यह सेटअप जितना संभव हो उतना accessible बना रहे
- इसके लिए SVG graphic document में निम्न बातों का ध्यान रखा गया है:
- पूरा SVG document, SVG document के `` द्वारा
aria-labelledbyहोकर action prompt को दर्शाता है - SVG के अंदर anchor element `` में उसी action prompt के लिए
aria-labelमौजूद है - SVG को इस तरह style किया गया है कि जब anchor element
पर tab focus हो, तो उसके child elementsऔर `` दोनों highlight हों
- पूरा SVG document, SVG document के `` द्वारा
GN⁺ की राय
- HTML document में SVG embed करके JS dependency के बिना स्पैम बॉट्स से ईमेल पता छिपाने का यह एक अनोखा तरीका है। accessibility और usability दोनों को ध्यान में रखने वाली यह दिलचस्प तकनीक लगती है.
- लेकिन यह ध्यान रखना चाहिए कि चाहे कितनी भी परिष्कृत frontend तकनीकें इस्तेमाल की जाएँ, सबसे उन्नत स्पैम बॉट्स को पूरी तरह रोकना संभव नहीं है। यह किसी भी security solution की एक सामान्य सीमा है.
- इस तकनीक को प्रोडक्शन में अपनाने से पहले SEO पर प्रभाव, अलग-अलग browsers/devices compatibility, performance आदि का अतिरिक्त सत्यापन आवश्यक होगा.
- ईमेल सुरक्षा के लिए backend solutions जैसे reCAPTCHA, Honeypot तकनीक आदि पर भी साथ में विचार किया जा सकता है.
- CSS और SVG की advanced features का उपयोग करने वाला यह एक रोचक तरीका है, लेकिन व्यावहारिक उपयोग में अभी भी कुछ सीमाएँ दिखती हैं। फिर भी frontend developers के लिए यह कम से कम एक बार टेस्ट करने लायक दिलचस्प आइडिया है.
1 टिप्पणियां
Hacker News राय
संक्षेप में, वेब पेज पर सार्वजनिक ईमेल पते को स्पैम बॉट्स से बचाने की ज़रूरत है या नहीं, इस पर राय इस प्रकार थीं:
Purelymailकी वजह से यह कोई बड़ी समस्या नहीं बनती<object>टैग render नहीं होता, इसलिए यह तकनीक काम नहीं करती1920x1080@60Hzको[email protected]के रूप में दिखाए जाने की समस्या है