logo
मुखपृष्ठ>कैनवास फ़िंगरप्रिंट

कैनवस एपीआई को वेब ब्राउज़र में ग्राफिक्स खींचने के लिए डिज़ाइन किया गया है। इसका उपयोग एनीमेशन, गेम ग्राफिक्स, डेटा विज़ुअलाइज़ेशन, इमेज एडिटिंग, रियल-टाइम वीडियो प्रोसेसिंग आदि के लिए किया जा सकता है। इसका उपयोग ब्राउज़र फ़िंगरप्रिंटिंग के माध्यम से ऑनलाइन ट्रैकिंग के लिए भी किया जा सकता है। उपयोगकर्ता के ब्राउज़र का वैयक्तिकृत डिजिटल फ़िंगरप्रिंट बनाने के लिए तकनीक विभिन्न वेब ब्राउज़र और प्लेटफ़ॉर्म पर कैनवास छवि को प्रस्तुत करने के तरीके में बदलाव पर निर्भर करती है। लेकिन उसी उपकरण वातावरण में इसे दोहराना संभव है।

कैनवास फ़िंगरप्रिंट

कैनवास फ़ंक्शन का पता लगाना

  • Canvas 2D API
  • Text API for Canvas
  • Canvas toDataURL(आमतौर पर फिंगरप्रिंट पहचान के लिए उपयोग किया जाता है)
  • OffscreenCanvas API
  • Canvas native

    Canvas toDataURL फ़ंक्शन को ब्राउज़र प्लग-इन द्वारा भी संशोधित किया जा सकता है, लेकिन इसे आसानी से पहचाना जा सकता है

  • स्थिरता

    कैनवास एक ही डिवाइस और ब्राउज़र वातावरण पर स्थिर है

  • गैर-मानवीय शोर

    कुछ फ़िंगरप्रिंट ब्राउज़र या फ़िंगरप्रिंट प्लग-इन कैनवास शोर में पैरामीटर जोड़ सकते हैं, लेकिन उन्हें अभी भी पहचाना जा सकता है।

छवि विवरण

नमूना छवि
फ़ाइल का साइज़0 bytes
रंग की मात्रा0
पीएनजी कुंजी डेटा ब्लॉक
डेटा ब्लॉक नामलंबाईCRCवर्णन करना

कैनवास फ़िंगरप्रिंटिंग के कारण

जिस तरह से कैनवास छवि को कैनवास पर प्रस्तुत किया जाता है वह वेब ब्राउज़र, ऑपरेटिंग सिस्टम, ग्राफिक्स कार्ड और अन्य कारकों के आधार पर भिन्न हो सकता है, जिसके परिणामस्वरूप एक अनूठी छवि बनती है जिसका उपयोग फिंगरप्रिंट बनाने के लिए किया जा सकता है।

1. एंटी-अलियासिंग

एंटी-अलियासिंग एक प्रकार का सौंदर्य फ़िल्टर है, और इसका व्यापक रूप से उपयोग किया जाता है। यदि ऑपरेटिंग सिस्टम में फ़ॉन्ट स्मूथिंग सक्षम नहीं है, तो कुछ फ़ॉन्ट आपके कंप्यूटर मॉनिटर पर भयानक दिखेंगे। सामान्यतया, विंडोज़ ऑपरेटिंग सिस्टम डिफ़ॉल्ट रूप से फ़ॉन्ट और छवि स्मूथिंग चालू करते हैं। मैक ओएस एक्स में, एंटी-अलियासिंग केवल एक निश्चित आकार से नीचे के फ़ॉन्ट के लिए काम करता है। न केवल ऑपरेटिंग सिस्टम स्तर पर, कुछ ब्राउज़रों में अपनी स्वयं की एंटी-अलियासिंग तकनीक भी अंतर्निहित होती है। उदाहरण के लिए, सफ़ारी अपने स्वयं के अंतर्निहित फ़ॉन्ट रेंडरिंग इंजन का उपयोग करता है। और सबसे अच्छी बात यह है कि कैनवस पर फ़ॉन्ट और चित्र बनाते समय एंटी-अलियासिंग तकनीक भी काम करती है।

जैसा कि नीचे दिए गए चित्र में दिखाया गया है, बाईं ओर वह स्थिति दिखती है जहां फ़ॉन्ट स्मूथिंग सक्षम नहीं है, जबकि दाईं ओर यह दिखाता है कि यह सक्षम है:

एंटी-अलियासिंग तकनीक कुछ गैर-शुद्ध-रंग पिक्सेल उत्पन्न करेगी, और इन मध्यवर्ती राज्यों में पिक्सेल मान ग्राफिक्स कार्ड के रंग प्रोफ़ाइल से प्रभावित होते हैं, जिसके परिणामस्वरूप अलग-अलग रंग होते हैं। एक बड़े पर्याप्त कैनवास पर समान फ़ॉन्ट और छवियों को चित्रित करके, और फिर सभी पिक्सेल डेटा की गणना करके, अपेक्षाकृत अद्वितीय फिंगरप्रिंट डेटा प्राप्त किया जा सकता है।

एंटी-अलियासिंग तकनीक कुछ गैर-शुद्ध-रंग पिक्सेल उत्पन्न करेगी, और इन मध्यवर्ती राज्यों में पिक्सेल मान ग्राफिक्स कार्ड के रंग प्रोफ़ाइल से प्रभावित होते हैं, जिसके परिणामस्वरूप अलग-अलग रंग होते हैं। एक बड़े पर्याप्त कैनवास पर समान फ़ॉन्ट और छवियों को चित्रित करके, और फिर सभी पिक्सेल डेटा की गणना करके, अपेक्षाकृत अद्वितीय फिंगरप्रिंट डेटा प्राप्त किया जा सकता है।

2. फ़ॉन्ट संकेत

फाइन-ट्यूनिंग की एक विशेषता ग्रिड फिटिंग है, जिसका अर्थ है स्क्रीन पर प्रदर्शित सेट पिक्सेल ग्रिड के साथ संरेखित करने के लिए फ़ॉन्ट वर्णों की ऊंचाई और चौड़ाई को संशोधित करना। छवि को स्क्रीन पर छोटे वर्गों के ग्रिड के रूप में प्रदर्शित किया जाता है, यह सुनिश्चित करने के लिए कि वे ग्रिड पर सही ढंग से प्रदर्शित हैं, फ़ॉन्ट को बाएं और दाएं ले जाया जा सकता है, यह सुनिश्चित करने के लिए भी है कि फ़ॉन्ट आकार और लेआउट अलग-अलग पर लगभग समान दिखें स्क्रीन.

फाइन-ट्यूनिंग की एक विशेषता ग्रिड फिटिंग है, जिसका अर्थ है स्क्रीन पर प्रदर्शित सेट पिक्सेल ग्रिड के साथ संरेखित करने के लिए फ़ॉन्ट वर्णों की ऊंचाई और चौड़ाई को संशोधित करना। छवि को स्क्रीन पर छोटे वर्गों के ग्रिड के रूप में प्रदर्शित किया जाता है, यह सुनिश्चित करने के लिए कि वे ग्रिड पर सही ढंग से प्रदर्शित हैं, फ़ॉन्ट को बाएं और दाएं ले जाया जा सकता है, यह सुनिश्चित करने के लिए भी है कि फ़ॉन्ट आकार और लेआउट अलग-अलग पर लगभग समान दिखें स्क्रीन.

निम्नलिखित जीआईएफ छवि के माध्यम से, जो दर्जनों विभिन्न उपयोगकर्ताओं से कैनवास छवियों का संग्रह है, हम विभिन्न डिवाइस वातावरणों में एक ही कोड की प्रस्तुति में अंतर को सहजता से देख सकते हैं:

जैसा कि उपरोक्त छवि विवरण में दिखाया गया है, आम तौर पर बोलते हुए, हम कैनवास छवि का बेस 64 डेटा प्राप्त करने के लिए toDataURL फ़ंक्शन को कॉल कर सकते हैं, या हम कैनवास द्वारा उत्पन्न पीएनजी छवि के डेटा ब्लॉक से आईडीएटी ब्लॉक का सीआरसी चेकसम प्राप्त कर सकते हैं। फिर हम कैनवास फ़िंगरप्रिंट के रूप में उस स्ट्रिंग के हैश (बेस64 या सीआरसी चेकसम) (सटीक एल्गोरिदम साइट से साइट पर भिन्न होता है) की गणना कर सकते हैं।

जैसा कि उपरोक्त छवि विवरण में दिखाया गया है, आम तौर पर बोलते हुए, हम कैनवास छवि का बेस 64 डेटा प्राप्त करने के लिए toDataURL फ़ंक्शन को कॉल कर सकते हैं, या हम कैनवास द्वारा उत्पन्न पीएनजी छवि के डेटा ब्लॉक से आईडीएटी ब्लॉक का सीआरसी चेकसम प्राप्त कर सकते हैं। फिर हम कैनवास फ़िंगरप्रिंट के रूप में उस स्ट्रिंग के हैश (बेस64 या सीआरसी चेकसम) (सटीक एल्गोरिदम साइट से साइट पर भिन्न होता है) की गणना कर सकते हैं।

ध्यान दें: ऐसे कई कारण हैं जिनकी वजह से कैनवास फ़िंगरप्रिंट अलग-अलग वेबसाइटों पर अलग-अलग होते हैं। इस्तेमाल की गई अलग-अलग स्ट्रिंग्स (बेस64 या सीआरसी चेकसम), अलग-अलग हैशिंग एल्गोरिदम (एमडी5, एसएचए, मुमुहैश, आदि) कैनवास फ़िंगरप्रिंट को पूरी तरह से अलग बना देंगे कैनवास फ़िंगरप्रिंट स्थिर है, इसलिए समान ब्राउज़र और डिवाइस वातावरण के अंतर्गत, उसी वेबसाइट के अंतर्गत कैनवास फ़िंगरप्रिंट स्थिर है। यह उपयोगकर्ता-सहायता वाली पहचान के लिए उपयोग किए जाने वाले कैनवास फ़िंगरप्रिंट का सैद्धांतिक आधार भी है, जिसमें स्थिर गुण हैं।