- संसाधन: HashList
- RiceDeltaEn Code32 बिट
- RiceDeltaEn Code64 बिट
- RiceDeltaEn Code128 बिट
- RiceDeltaEn स्थान256 बिट
- HashListMetadata
- ThreatType
- LikelySafeType
- HashLength
- तरीके
संसाधन: हैशलिस्ट
हैश की सूची, जिसके नाम से पहचान की जाती है.
JSON के काेड में दिखाना |
---|
{ "name": string, "version": string, "partialUpdate": boolean, "compressedRemovals": { object ( |
फ़ील्ड | |
---|---|
name |
हैश सूची का नाम. ध्यान दें कि ग्लोबल कैश भी सिर्फ़ एक हैश सूची है. इसका रेफ़रंस यहां दिया जा सकता है. |
version |
हैश सूची का वर्शन. क्लाइंट को इन बाइट में हेर-फेर नहीं करनी चाहिए. base64 कोड में बदली गई स्ट्रिंग. |
partialUpdate |
सही होने पर, यह एक आंशिक अंतर होता है. इसमें क्लाइंट की पहले से मिली जानकारी के आधार पर कुछ नई चीज़ें जोड़ी और हटाई जाती हैं. गलत होने पर, यह पूरी हैश सूची होती है. गलत होने पर, क्लाइंट को इस हैश सूची के लिए स्थानीय तौर पर सेव किए गए किसी भी वर्शन को मिटाना होगा. इसका मतलब है कि क्लाइंट के पास मौजूद वर्शन पुराना है या क्लाइंट के डेटा को खराब माना जाता है. सही होने पर, क्लाइंट को इंक्रीमेंटल अपडेट लागू करने के लिए पहले हटाना होगा और उसके बाद कुछ जोड़ना होगा. |
compressedRemovals |
हटाने वाले इंडेक्स का राइस-डेल्टा कोड में बदला गया वर्शन. दरअसल, हर हैश सूची में 2^32 से कम एंट्री होती हैं. इसलिए, इंडेक्स को 32-बिट वाले पूर्णांक के तौर पर माना जाता है और कोड में बदला जाता है. |
minimumWaitDuration |
हैश सूची फिर से पाने के लिए क्लाइंट को कम से कम इतने समय तक इंतज़ार करना चाहिए. अगर इसे हटाया जाता है या इसकी वैल्यू शून्य होती है, तो क्लाइंट को तुरंत फ़ेच करना चाहिए, क्योंकि इससे पता चलता है कि क्लाइंट को भेजे जाने के लिए सर्वर का एक और अपडेट है. हालांकि, क्लाइंट के लिए तय की गई शर्तों की वजह से ऐसा नहीं हो सका. सेकंड में कुल नौ दशमलव अंक, जो ' |
metadata |
हैश सूची के बारे में मेटाडेटा. इसे |
यूनियन फ़ील्ड compressed_additions . ऐड-ऑन का राइस-डेल्टा कोड में बदला गया वर्शन. सूची में जोड़े गए सभी जोड़ में हैश प्रीफ़िक्स की लंबाई एक जैसी होती है. यह क्लाइंट की तरफ़ से भेजा गया desired_hash_length होता है या अगर क्लाइंट इस फ़ील्ड को छोड़ देता है, तो सर्वर की चुनी गई वैल्यू होती है. compressed_additions इनमें से सिर्फ़ एक हो सकता है: |
|
additionsFourBytes |
4-बाइट जोड़ना. |
additionsEightBytes |
8-बाइट जोड़ना. |
additionsSixteenBytes |
16-बाइट जोड़ना. |
additionsThirtyTwoBytes |
32-बाइट जोड़ना. |
यूनियन फ़ील्ड checksum . यह दिए गए अपडेट को लागू करने के बाद डेटाबेस में मौजूद सभी हैश की क्रम से लगाई गई सूची का चेकसम है. यह एक "एक" है फ़ील्ड का इस्तेमाल करके, हैशिंग एल्गोरिदम को मंज़ूरी दें. अगर सर्वर के लिए कोई अपडेट नहीं दिया गया है, तो इस फ़ील्ड को छोड़ दें. इससे यह पता चलेगा कि क्लाइंट को मौजूदा चेकसम का इस्तेमाल करना है. checksum इनमें से सिर्फ़ एक हो सकता है: |
|
sha256Checksum |
सभी हैश की क्रम से लगाई गई सूची, SHA256 के साथ फिर से हैश की गई है. base64 कोड में बदली गई स्ट्रिंग. |
राइसडेल्टाएन्कोडेड32बिट
राइस-गोलोम कोड में बदला गया डेटा. इसका इस्तेमाल हैश या हटाए जाने वाले इंडेक्स के लिए किया जाता है. इस बात की गारंटी है कि यहां मौजूद हर हैश या इंडेक्स की लंबाई एक जैसी है. साथ ही, यह लंबाई ठीक 32 बिट है.
आम तौर पर, अगर हम सभी एंट्री को लेक्सिकोग्राफ़िक तरीके से क्रम से लगाते हैं, तो हम पाएंगे कि ज़्यादा ऑर्डर बिट के मुकाबले कम ऑर्डर बिट में बार-बार बदलाव नहीं होता. इसका मतलब है कि अगर हम एंट्री के बीच के अंतर को भी शामिल करते हैं, तो ज़्यादा ऑर्डर बिट के शून्य होने की संभावना ज़्यादा होती है. यह सुविधा, बिट की एक तय संख्या चुनकर, शून्य की इस संभावना का इस्तेमाल करती है; इससे ज़्यादा अहम सभी बिट की संभावना शून्य हो सकती है, इसलिए हम यूनरी एन्कोडिंग का इस्तेमाल करते हैं. riceParameter
फ़ील्ड देखें.
पुराना नोट: राइस-डेल्टा एन्कोडिंग का इस्तेमाल सबसे पहले इस एपीआई के वर्शन 4 में किया गया था. V5 में, दो अहम सुधार किए गए हैं: पहला, राइस-डेल्टा एन्कोडिंग अब चार बाइट से लंबे हैश प्रीफ़िक्स के साथ उपलब्ध है; दूसरी वजह, कोड में बदले गए डेटा को अब बिग-एंडियन माना जाता है, ताकि क्रम से लगाने के महंगे चरण से बचा जा सके.
JSON के काेड में दिखाना |
---|
{ "firstValue": integer, "riceParameter": integer, "entriesCount": integer, "encodedData": string } |
फ़ील्ड | |
---|---|
firstValue |
कोड में बदले गए डेटा (हैश या इंडेक्स) में पहली एंट्री या अगर सिर्फ़ एक हैश प्रीफ़िक्स या इंडेक्स को कोड में बदला गया था, तो उस एंट्री की वैल्यू. अगर यह फ़ील्ड खाली है, तो एंट्री शून्य होती है. |
riceParameter |
गोलोंब-राइस पैरामीटर. इस पैरामीटर के 3 से 30 के बीच होने की गारंटी है. |
entriesCount |
कोड में बदले गए डेटा में डेल्टा के कोड में बदली गई एंट्री की संख्या. अगर सिर्फ़ एक पूर्णांक को कोड में बदला गया था, तो यह शून्य होगा और एक वैल्यू |
encodedData |
कोड में बदले गए डेल्टा, जिन्हें गोलोंब-राइस कोडर की मदद से कोड में बदला जाता है. base64 कोड में बदली गई स्ट्रिंग. |
राइसडेल्टाएन्कोडेड64बिट
RiceDeltaEncoded32Bit
के जैसा ही होता है. हालांकि, इसमें 64-बिट नंबर को कोड में बदलने का विकल्प मौजूद होता है.
JSON के काेड में दिखाना |
---|
{ "firstValue": string, "riceParameter": integer, "entriesCount": integer, "encodedData": string } |
फ़ील्ड | |
---|---|
firstValue |
कोड में बदले गए डेटा (हैश) में पहली एंट्री या अगर सिर्फ़ एक हैश प्रीफ़िक्स को कोड में बदला गया था, तो उस एंट्री की वैल्यू. अगर यह फ़ील्ड खाली है, तो एंट्री शून्य होती है. |
riceParameter |
गोलोंब-राइस पैरामीटर. इस पैरामीटर के 35 से 62 के बीच होने की गारंटी है. |
entriesCount |
कोड में बदले गए डेटा में डेल्टा के कोड में बदली गई एंट्री की संख्या. अगर सिर्फ़ एक पूर्णांक को कोड में बदला गया था, तो यह शून्य होगा और एक वैल्यू |
encodedData |
कोड में बदले गए डेल्टा, जिन्हें गोलोंब-राइस कोडर की मदद से कोड में बदला जाता है. base64 कोड में बदली गई स्ट्रिंग. |
राइसडेल्टेएनकोड किया गया128बिट
RiceDeltaEncoded32Bit
के जैसा ही होता है. हालांकि, इसमें 128-बिट नंबर को कोड में बदलने का विकल्प मौजूद होता है.
JSON के काेड में दिखाना |
---|
{ "firstValueHi": string, "firstValueLo": string, "riceParameter": integer, "entriesCount": integer, "encodedData": string } |
फ़ील्ड | |
---|---|
firstValueHi |
कोड में बदले गए डेटा (हैश) में पहली एंट्री के ऊपरी 64 बिट. अगर फ़ील्ड खाली है, तो ऊपरी 64 बिट वाले सभी फ़ील्ड शून्य होते हैं. |
firstValueLo |
एन्कोड किए गए डेटा (हैश) में पहली एंट्री के निचले 64 बिट. अगर फ़ील्ड खाली है, तो निचले 64 बिट सभी शून्य होते हैं. |
riceParameter |
गोलोंब-राइस पैरामीटर. इस पैरामीटर के 99 से 126 के बीच होने की गारंटी है. इसमें ये भी शामिल हैं. |
entriesCount |
कोड में बदले गए डेटा में डेल्टा के कोड में बदली गई एंट्री की संख्या. अगर सिर्फ़ एक पूर्णांक को कोड में बदला गया था, तो यह शून्य होगा और एक वैल्यू |
encodedData |
कोड में बदले गए डेल्टा, जिन्हें गोलोंब-राइस कोडर की मदद से कोड में बदला जाता है. base64 कोड में बदली गई स्ट्रिंग. |
RiceDeltaEncode256 बिट
RiceDeltaEncoded32Bit
के जैसा ही होता है. हालांकि, इसमें 256-बिट नंबर को कोड में बदलने का विकल्प मौजूद होता है.
JSON के काेड में दिखाना |
---|
{ "firstValueFirstPart": string, "firstValueSecondPart": string, "firstValueThirdPart": string, "firstValueFourthPart": string, "riceParameter": integer, "entriesCount": integer, "encodedData": string } |
फ़ील्ड | |
---|---|
firstValueFirstPart |
कोड में बदले गए डेटा (हैश) में पहली एंट्री के पहले 64 बिट. अगर फ़ील्ड खाली है, तो पहले 64 बिट सभी शून्य होते हैं. |
firstValueSecondPart |
एन्कोड किए गए डेटा (हैश) में पहली एंट्री के 65 से लेकर 128वें बिट. अगर फ़ील्ड खाली है, तो 65 से 128वें बिट तक सभी शून्य होते हैं. |
firstValueThirdPart |
कोड में बदले गए डेटा (हैश) की पहली एंट्री के 129 से लेकर 192वें बिट. अगर फ़ील्ड खाली है, तो 129 से 192वें बिट तक सभी शून्य होते हैं. |
firstValueFourthPart |
कोड में बदले गए डेटा (हैश) में पहली एंट्री के आखिरी 64 बिट. अगर फ़ील्ड खाली है, तो आखिरी 64 बिट की संख्या शून्य होती है. |
riceParameter |
गोलोंब-राइस पैरामीटर. इस पैरामीटर के 227 और 254 के बीच होने की गारंटी है. |
entriesCount |
कोड में बदले गए डेटा में डेल्टा के कोड में बदली गई एंट्री की संख्या. अगर सिर्फ़ एक पूर्णांक को कोड में बदला गया था, तो यह शून्य होगा और एक वैल्यू |
encodedData |
कोड में बदले गए डेल्टा, जिन्हें गोलोंब-राइस कोडर की मदद से कोड में बदला जाता है. base64 कोड में बदली गई स्ट्रिंग. |
HashListMetadata
किसी हैश सूची का मेटाडेटा.
JSON के काेड में दिखाना |
---|
{ "threatTypes": [ enum ( |
फ़ील्ड | |
---|---|
threatTypes[] |
बिना क्रम वाली सूची. अगर यह सूची खाली नहीं है, तो इससे पता चलता है कि हैश सूची एक तरह की खतरे की सूची है. साथ ही, यह हैश सूची में हैश या हैश प्रीफ़िक्स से जुड़े खतरों की गिनती करती है. अगर एंट्री से किसी को कोई खतरा न हो, तो खाली हो सकता है. जैसे, इस मामले में यह जानकारी सुरक्षित हो सकती है. |
likelySafeTypes[] |
बिना क्रम वाली सूची. अगर यह खाली नहीं है, तो इससे पता चलता है कि हैश सूची संभावित सुरक्षित हैश की सूची दिखाती है. साथ ही, यह उन तरीकों की गिनती करता है जिन्हें सुरक्षित माना जाता है. यह फ़ील्ड, accountTypes फ़ील्ड के साथ म्यूचुअली एक्सक्लूसिव है. |
mobileOptimized |
यह सूची मोबाइल डिवाइसों (Android और iOS) के लिए ऑप्टिमाइज़ की गई है या नहीं. |
description |
इस सूची के बारे में ऐसा ब्यौरा जिसे कोई भी व्यक्ति आसानी से पढ़ सके. यह अंग्रेज़ी में लिखा गया है. |
supportedHashLengths[] |
इस हैश सूची के लिए इस्तेमाल की जा सकने वाली हैश की लंबाई. हर हैश सूची कम से कम एक लंबाई के साथ काम करेगी. इसलिए, यह फ़ील्ड खाली नहीं होगा. |
ThreatType
खतरों के टाइप.
Enums | |
---|---|
THREAT_TYPE_UNSPECIFIED |
खतरे के टाइप की जानकारी नहीं है. अगर सर्वर इसे दिखाता है, तो क्लाइंट FullHashDetail को पूरी तरह से अनदेखा कर देगा. |
MALWARE |
मैलवेयर का खतरा. मैलवेयर एक तरह का सॉफ़्टवेयर या मोबाइल ऐप्लिकेशन होता है. इसे खास तौर पर किसी कंप्यूटर, मोबाइल डिवाइस, उन पर इस्तेमाल किए जा रहे सॉफ़्टवेयर या उनके उपयोगकर्ताओं को नुकसान पहुंचाने के लिए बनाया जाता है. मैलवेयर से उपयोगकर्ता को नुकसान पहुंचाने वाली गतिविधियां की जाती हैं. इसमें उपयोगकर्ता की सहमति के बिना सॉफ़्टवेयर इंस्टॉल करने और वायरस जैसे नुकसान पहुंचाने वाले सॉफ़्टवेयर इंस्टॉल करने जैसी गतिविधियां शामिल हो सकती हैं. इस बारे में ज़्यादा जानकारी यहां मिल सकती है. |
SOCIAL_ENGINEERING |
सोशल इंजीनियरिंग से जुड़े खतरे का टाइप. सोशल इंजीनियरिंग वाले पेजों को झूठा दावा करके, किसी तीसरे पक्ष की ओर से ऐसा करने का झूठा दावा करना चाहिए. ये ऐसे पेज होते हैं जिनका मकसद दर्शकों को ऐसी कार्रवाई करने के लिए बहकाना होता है जिससे दर्शक तीसरे पक्ष के किसी सही एजेंट पर ही भरोसा कर सकें. फ़िशिंग, सोशल इंजीनियरिंग का एक ऐसा टाइप है जो दर्शकों से धोखे से लॉगिन क्रेडेंशियल जैसी जानकारी देने का काम करता है. इस बारे में ज़्यादा जानकारी यहां मिल सकती है. |
UNWANTED_SOFTWARE |
अनचाहा सॉफ़्टवेयर से जुड़ा खतरा. अनचाहा सॉफ़्टवेयर, ऐसा सॉफ़्टवेयर होता है जो Google के सॉफ़्टवेयर सिद्धांतों का पालन नहीं करता, लेकिन मैलवेयर नहीं होता. |
POTENTIALLY_HARMFUL_APPLICATION |
Play Store के लिए Google Play Protect में इस्तेमाल किया गया, नुकसान पहुंचा सकने वाले ऐप्लिकेशन का खतरा. |
LikelySafeType
वे साइटें जो शायद सुरक्षित न हों.
ध्यान दें कि SearchHashesResponse
में जान-बूझकर LikelySafeType
शामिल नहीं किया गया है.
Enums | |
---|---|
LIKELY_SAFE_TYPE_UNSPECIFIED |
अज्ञात. |
GENERAL_BROWSING |
यह साइट सामान्य ब्राउज़िंग के लिए शायद सुरक्षित है. इसे ग्लोबल कैश मेमोरी के नाम से भी जाना जाता है. |
CSD |
यह साइट पूरी तरह से सुरक्षित है. इसलिए, इसे क्लाइंट-साइड डिटेक्शन मॉडल या पासवर्ड की सुरक्षा से जुड़ी जांच करने की ज़रूरत नहीं पड़ती. |
DOWNLOAD |
यह साइट पूरी तरह से सुरक्षित है. इसलिए, इस साइट से डाउनलोड किए गए कॉन्टेंट की जांच करने की ज़रूरत नहीं है. |
HashLength
हैश सूची में हैश की लंबाई.
Enums | |
---|---|
HASH_LENGTH_UNSPECIFIED |
लंबाई की जानकारी नहीं है. सर्वर, क्लाइंट के दिए गए जवाबों में (supportedHashLengths फ़ील्ड में) इस वैल्यू को नहीं दिखाएगा. हालांकि, क्लाइंट को सर्वर पर (desiredHashLength फ़ील्ड में) यह वैल्यू भेजने की अनुमति है. इस स्थिति में सर्वर अपने-आप कोई वैल्यू चुनेगा. क्लाइंट को सर्वर को कोई वैल्यू चुनने की अनुमति देनी चाहिए. |
FOUR_BYTES |
हर हैश एक चार बाइट प्रीफ़िक्स होता है. |
EIGHT_BYTES |
हर हैश आठ-बाइट वाला प्रीफ़िक्स होता है. |
SIXTEEN_BYTES |
हर हैश सोलह-बाइट प्रीफ़िक्स होता है. |
THIRTY_TWO_BYTES |
हर हैश बत्तीस बाइट वाला पूरा हैश होता है. |
तरीके |
|
---|---|
|
हैश सूची का नया कॉन्टेंट पाएं. |