T

Text Machine

शक्तिशाली टेक्स्ट टूल्स, आपके ब्राउज़र में

PII रिडैक्टर

कुछ भी पेस्ट कीजिए, कोई सपोर्ट टिकट, कोई लॉग, कोई चैट रिकॉर्ड, और साझा करने से पहले उसमें छिपी निजी जानकारी और गुप्त कुंजियाँ हटा दीजिए। सब कुछ ब्राउज़र में चलता है, इसलिए टेक्स्ट कभी आपकी मशीन से बाहर नहीं जाता।

आपका टेक्स्ट

पहचानें:

यह टूल केवल एक सामान्य क्लाइंट-साइड स्क्रिप्ट है। आपका टेक्स्ट इसी ब्राउज़र टैब में प्रोसेस होता है, कभी किसी सर्वर पर नहीं भेजा जाता, और कहीं भी सहेजा या लॉग नहीं किया जाता। टैब बंद कीजिए और वह ख़त्म।

PII रिडैक्टर का उपयोग कैसे करें

  1. 1

    अपना टेक्स्ट पेस्ट कीजिए

    वह टिकट, चैट लॉग, एरर डंप, स्प्रेडशीट की पंक्ति या दस्तावेज़ डालिए जिसे आप साझा करने वाले हैं। लंबाई की कोई सीमा नहीं है और कुछ भी अपलोड नहीं होता।

  2. 2

    बदलने का तरीक़ा चुनिए

    काली पट्टियाँ मूल टेक्स्ट का आकार बनाए रखती हैं, जो स्क्रीनशॉट के लिए उपयुक्त है। [REDACTED] सबसे परिचित दस्तावेज़ी रूप है। [EMAIL] जैसे प्रकार लेबल पाठक को बताते हैं कि क्या हटाया गया, और [EMAIL_1] जैसे क्रमांकित प्लेसहोल्डर एक ही मान की पुनरावृत्तियों को आपस में जोड़े रखते हैं।

  3. 3

    डिटेक्टर चालू या बंद कीजिए

    नौ में से हर डिटेक्टर डिफ़ॉल्ट रूप से चालू है। जिस श्रेणी को रखना सुरक्षित हो उसे बंद कर दीजिए, जैसे बग रिपोर्ट में URL रहने देना पर बग़ल में पड़ी API कुंजी हटा देना।

  4. 4

    गिनती जाँचिए, फिर कॉपी कीजिए

    पैनल में दिखता है कि हर प्रकार की कितनी चीज़ें हटाई गईं। जाँच लीजिए कि संख्या आपकी अपेक्षा से मेल खाती है, फिर साफ़ किया गया टेक्स्ट कॉपी कर लीजिए।

टेक्स्ट से निजी जानकारी और गुप्त कुंजियाँ हटाने के बारे में

टेक्स्ट जाँचे जाने से पहले ही साझा क्यों हो जाता है

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

इसका इलाज और ज़्यादा सावधानी नहीं है, बल्कि दो सेकंड का एक क़दम है। यह टूल उसी क़दम के लिए बना है: पेस्ट कीजिए, एक नज़र डालिए कि कितनी चीज़ें मिलीं, और साफ़ संस्करण कॉपी कर लीजिए। इसे जान-बूझकर इतना तेज़ रखा गया है कि इसका उपयोग किसी याद रखने लायक़ नियम जैसा न लगे।

यह टूल क्या ढूँढ़ता है

नौ श्रेणियाँ पहचानी जाती हैं। ईमेल पते और URL उनकी संरचना से पहचाने जाते हैं। IPv4 पतों की हर संख्या की सीमा जाँची जाती है, इसलिए 999.1.1.1 और पाँच हिस्सों वाली वर्ज़न स्ट्रिंग पते नहीं माने जाते। अमेरिकी सामाजिक सुरक्षा नंबर केवल हाइफ़न वाले रूप में पहचाने जाते हैं। फ़ोन नंबरों को अंतरराष्ट्रीय उपसर्ग या असली विभाजक चाहिए। कार्ड और IBAN चेकसम से मान्य किए जाते हैं। API कुंजियाँ वेंडर उपसर्ग से और JWT अपनी तीन-हिस्सों वाली base64 संरचना से पहचाने जाते हैं।

यह सूची उसी से चुनी गई है जो सचमुच पेस्ट किए गए टेक्स्ट में दिखती है। शास्त्रीय निजी जानकारी की श्रेणियाँ मनुष्य वाला पक्ष संभालती हैं और क्रेडेंशियल की श्रेणियाँ मशीन वाला, और व्यवहार में सबसे महँगी दुर्घटनाएँ वहीं होती हैं: एक लीक हुई क्लाउड कुंजी एक लीक हुए फ़ोन नंबर से कहीं ज़्यादा महँगी पड़ती है।

कवरेज से ज़्यादा सटीकता मायने रखती है

ऐसा टूल बनाने का लुभावना तरीक़ा है आक्रामक ढंग से मिलान करना: हर लंबी अंक-लड़ी को कार्ड और हाइफ़न वाले हर अंक को फ़ोन मान लेना। डेमो में नतीजा प्रभावशाली दिखता है और असली दस्तावेज़ चुपचाप बर्बाद होते हैं। ऑर्डर आईडी काली पट्टी बन जाती है। पंक्तियों की गिनती ग़ायब हो जाती है। वर्ज़न नंबर [PHONE] में बदल जाता है। इससे भी बुरा यह कि नुक़सान दिखता नहीं: आप आउटपुट कॉपी करके चिपका देते हैं और बाद में पता चलता है कि जो हिस्सा सामने वाले को चाहिए था वही चला गया।

इसलिए यहाँ हर डिटेक्टर या तो संरचना से पूरी तरह स्पष्ट है या चेकसम से जाँचा गया है। कार्ड को Luhn mod-10 जाँच पास करनी होती है जिसे हर कार्ड नेटवर्क इस्तेमाल करता है, यानी यूँ ही चुनी गई 16 अंकों की संख्या के स्वीकार होने की संभावना लगभग दस में एक है, निश्चितता नहीं। IBAN को ISO 13616 की mod-97 जाँच पास करनी होती है। केवल अंकों की लड़ी कभी फ़ोन नंबर नहीं होती। नतीजा थोड़ा कम पकड़ता है पर उस टेक्स्ट को लगभग कभी नहीं बिगाड़ता जिसे आप रखना चाहते थे, और जिस टूल का आउटपुट आप तुरंत कहीं भेजने वाले हैं उसके लिए यही सही सौदा है।

प्रतिस्थापन की शैली चुनना

काली पट्टियाँ मूल का दृश्य भार बनाए रखती हैं, जो स्क्रीनशॉट या ऐसे दस्तावेज़ के लिए ज़रूरी है जिसे दस्तावेज़ जैसा ही दिखना है। [REDACTED] क़ानूनी क्षेत्र और सूचना के अधिकार से जुड़ी परिचित परंपरा है और सादे टेक्स्ट में भी साफ़ पढ़ी जाती है। [EMAIL] और [CREDIT_CARD] जैसे प्रकार लेबल बताते हैं कि क्या हटाया गया, और यह तब मायने रखता है जब डेटा की क़िस्म ही व्याख्या का हिस्सा हो: [API_KEY] लिखी बग रिपोर्ट और गुमनाम काली पट्टी वाली बग रिपोर्ट बिलकुल अलग कहानी कहती हैं।

क्रमांकित प्लेसहोल्डर सबसे उपयोगी हैं और सबसे कम स्पष्ट भी। एक ही मान की बार-बार आने वाली उपस्थितियों को एक ही संख्या मिलती है, इसलिए जिस बातचीत में एक ग्राहक का चार बार ज़िक्र है वहाँ चार अभेद्य खाली जगहों की जगह चार [EMAIL_1] बनते हैं। दस्तावेज़ जुड़ा हुआ रहता है: कोई पाठक या कोई भाषा मॉडल तब भी देख सकता है कि पूरे दस्तावेज़ में वही व्यक्ति आता है, और यदि आपने मूल संभालकर रखा है तो बाद में असली मानों पर लौटा भी सकते हैं।

AI प्रॉम्प्ट से पहले टेक्स्ट साफ़ करना

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

पहले टेक्स्ट को रिडैक्टर से गुज़ारने पर काम की चीज़ बची रहती है और जोखिम वाली निकल जाती है। यहाँ क्रमांकित मोड सबसे उपयुक्त है: मॉडल यह समझता रहता है कि किसने क्या किया, क्योंकि पहचानें अलग-अलग और एकरूप बनी रहती हैं, जबकि असली मान प्रॉम्प्ट में एक बार भी नहीं आते। यदि उत्तर पर अमल करना हो तो प्लेसहोल्डर को अपनी ही मशीन पर वापस बदल लीजिए।

PDF और छवियों में रिडैक्शन क्यों विफल होता है

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

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

टूल जो नहीं जान सकता

संरचित पहचानकर्ता इसलिए पकड़े जाते हैं क्योंकि उनका एक आकार होता है। नाम, पदनाम, चिकित्सा विवरण, आंतरिक परियोजनाओं के कोड नाम और "वह क्लिनिक से दो घर आगे रहती है" जैसे वाक्य का कोई आकार नहीं होता, और कोई पैटर्न मिलान उन्हें नहीं ढूँढ़ पाएगा। रिडैक्टर संवेदनशील डेटा की यांत्रिक श्रेणी हटाता है; वह आपके लिए दस्तावेज़ पढ़ता नहीं।

आउटपुट को पहला चरण मानिए जो स्पष्ट सामग्री भरोसे के साथ हटा देता है, और भेजने से पहले उसे एक बार पढ़ लीजिए। हटाई गई चीज़ों की गिनती इसी में मदद के लिए दिखाई जाती है: अगर आपको दो ईमेल पतों की उम्मीद थी और एक ही मिला, तो वह अंतर दोबारा देखने लायक़ है।

अक्सर पूछे जाने वाले प्रश्न

यहाँ निजी जानकारी में क्या-क्या गिना जाता है?
नौ श्रेणियाँ: ईमेल पते, फ़ोन नंबर, क्रेडिट कार्ड नंबर, अमेरिकी सामाजिक सुरक्षा नंबर, IPv4 पते, URL, API कुंजियाँ और टोकन, JWT, और IBAN बैंक खाता संख्याएँ। पहली पाँच शास्त्रीय व्यक्तिगत पहचान योग्य जानकारी हैं; बाक़ी वे गुप्त चीज़ें हैं जिनका लीक होना उतना ही महँगा पड़ता है और जो अक्सर उसी पेस्ट के साथ चली आती हैं।
क्या मेरा टेक्स्ट कहीं भेजा जाता है?
नहीं। पहचान और प्रतिस्थापन का कोड एक JavaScript मॉड्यूल है जो आपके ब्राउज़र टैब में चलता है। न कोई अपलोड, न कोई API कॉल, न ही कोई एनालिटिक्स इवेंट जो आपकी सामग्री ले जाए। इस टूल का पूरा मक़सद यही है: अगर संवेदनशील टेक्स्ट को साफ़ कराने के लिए कहीं भेजना ही पड़े, तो वह पहले ही लीक हो चुका। आप ख़ुद जाँच सकते हैं, ब्राउज़र का नेटवर्क पैनल खोलिए और देखिए कि टाइप करते समय वह पूरी तरह ख़ामोश रहता है।
क्या यह मेरे टेक्स्ट के सामान्य अंक बिगाड़ देगा?
इसे ठीक इसी से बचने के लिए बनाया गया है। कार्ड को Luhn चेकसम और IBAN को ISO 13616 की mod-97 जाँच पास करनी पड़ती है, तभी उन्हें छुआ जाता है। इसलिए ऑर्डर नंबर, पोर्ट, पंक्तियों की गिनती या वर्ज़न स्ट्रिंग ज्यों की त्यों रहती है। केवल अंकों की लड़ी को कभी फ़ोन नंबर नहीं माना जाता; केवल वही नंबर गिने जाते हैं जिनमें देश कोड हो या असली विभाजक हों। यह टूल कवरेज से ज़्यादा सटीकता को प्राथमिकता देता है, क्योंकि एक ग़लत पहचान चुपचाप वह टेक्स्ट खा जाती है जिसे आप रखना चाहते थे, और शायद भेजने के बाद ही पता चले।
क्या मैं इसे ChatGPT या किसी और AI में पेस्ट करने से पहले इस्तेमाल कर सकता हूँ?
हाँ, यह मुख्य उपयोगों में से एक है। पहले टेक्स्ट को यहाँ से गुज़ार दीजिए, तो मॉडल को दस्तावेज़ की संरचना और अर्थ तो दिखते रहते हैं पर असली पते, कार्ड नंबर और कुंजियाँ ग़ायब हो जाती हैं। इसके लिए क्रमांकित मोड सबसे उपयुक्त है: एक ही व्यक्ति के बार-बार ज़िक्र वही [EMAIL_1] बन जाते हैं, इसलिए मॉडल यह समझता रहता है कि कौन कौन है, और बाद में आप प्लेसहोल्डर को वापस मिला सकते हैं।
यह कौन-सी API कुंजियाँ और टोकन पहचानता है?
स्पष्ट आकार वाले वेंडर उपसर्ग वाले क्रेडेंशियल: OpenAI की sk- कुंजियाँ, Stripe की लाइव और टेस्ट कुंजियाँ, GitHub के व्यक्तिगत एक्सेस टोकन, AWS एक्सेस की आईडी, Google API कुंजियाँ, Slack टोकन, GitLab PAT, npm टोकन और SendGrid कुंजियाँ, साथ ही हर JWT और Authorization: Bearer हेडर का टोकन। केवल उपसर्ग वाले प्रारूप ही पहचाने जाते हैं, इसलिए आपके टेक्स्ट का कोई सामान्य शब्द या यादृच्छिक हैश क्रेडेंशियल नहीं समझा जाता।
क्या PDF में काली पट्टी लगाने से टेक्स्ट सचमुच हट जाता है?
आम तौर पर नहीं। PDF व्यूअर में टेक्स्ट के ऊपर काला आयत बनाने से मूल अक्षर नीचे ज्यों के त्यों रहते हैं, उन्हें चुना और कॉपी किया जा सकता है। कई चर्चित रिडैक्शन विफलताएँ ठीक इसी तरह हुई थीं। सादे टेक्स्ट के साथ काम करने से यह पूरी समस्या ही नहीं रहती, क्योंकि अक्षर वाक़ई स्ट्रिंग में बदल दिए जाते हैं: आप जो कॉपी करते हैं वही सब कुछ है जो मौजूद है।
इसमें और काली पट्टी वाले टेक्स्ट जेनरेटर में क्या फ़र्क़ है?
काली पट्टी वाला जेनरेटर दिखावे के लिए है: वह शब्दों को यूँ ही ढक देता है ताकि पोस्ट और मीम के लिए गोपनीय दस्तावेज़ जैसा रूप बने। यह टूल इसका उल्टा करता है: यह उन्हीं हिस्सों को ढूँढ़ता है जो सचमुच संवेदनशील हैं और केवल उन्हें हटाता है, बाक़ी सब पढ़ने योग्य छोड़ देता है ताकि दस्तावेज़ अपना काम करता रहे।
क्या मूल मान वापस मिल सकते हैं?
आउटपुट से नहीं। प्रतिस्थापन एकतरफ़ा है और कोई मिलान तालिका कहीं सहेजी नहीं जाती, इसलिए ज़रूरत हो तो अपना मूल टेक्स्ट संभालकर रखिए। यदि आप बाद में प्लेसहोल्डर को हाथ से मानों से मिलाना चाहते हैं तो क्रमांकित मोड इस्तेमाल कीजिए, जो दस्तावेज़ के भीतर हर अलग मान को एक स्थिर संख्या देता है।

संबंधित टूल्स

इन उपयोगी टूल्स के साथ आगे बढ़ें

रिडैक्टेड टेक्स्ट जनरेटर

केस कनवर्टर

टेक्स्ट खोजें और बदलें

बायोनिक रीडिंग

पहला अक्षर कैपिटलाइ़ करें

प्रत्येक शब्द को कैपिटलाइज़ करें