- एचटीटीपी अनुरोध
- अनुरोध का मुख्य हिस्सा
- जवाब का मुख्य हिस्सा
- ListUpdateRequest
- सीमाएं
- CompressionType
- ListUpdateResponse
- ResponseType
- ThreatEntrySet
- RawHashes
- RawIndices
- RiceDeltaEncoding
- चेकसम
खतरे की सूची के सबसे हाल के अपडेट फ़ेच करता है. कोई क्लाइंट एक साथ कई सूचियों के अपडेट का अनुरोध कर सकता है.
एचटीटीपी अनुरोध
POST https://safebrowsing.googleapis.com/v4/threatListUpdates:fetch
यूआरएल, gRPC ट्रांसकोडिंग सिंटैक्स का इस्तेमाल करता है.
अनुरोध का मुख्य भाग
अनुरोध के मुख्य हिस्से में इस तरह का डेटा शामिल होता है:
जेएसओएन के काेड में दिखाना | |
---|---|
{ "client": { object ( |
फ़ील्ड | |
---|---|
client |
क्लाइंट मेटाडेटा. |
listUpdateRequests[] |
अनुरोध किए गए खतरे की सूची अपडेट हो जाती है. |
जवाब का मुख्य भाग
अगर एपीआई सही से जुड़ जाता है, ताे जवाब के मुख्य भाग में नीचे दिए गए स्ट्रक्चर शामिल होता है.
जेएसओएन के काेड में दिखाना | |
---|---|
{
"listUpdateResponses": [
{
object ( |
फ़ील्ड | |
---|---|
listUpdateResponses[] |
क्लाइंट के अनुरोध पर सूची को अपडेट किया जाता है. यहां जवाबों की संख्या, क्लाइंट के भेजे गए अनुरोधों की संख्या से कम हो सकती है. उदाहरण के लिए, सर्वर के पास किसी खास सूची के लिए कोई अपडेट नहीं होने पर, ऐसा होता है. |
minimumWaitDuration |
वह कम से कम अवधि जो क्लाइंट को अपडेट का कोई अनुरोध करने से पहले इंतज़ार करना चाहिए. अगर यह फ़ील्ड सेट नहीं है, तो क्लाइंट जल्द से जल्द अपडेट कर सकते हैं. सेकंड में नौ भिन्नात्मक अंकों वाली अवधि, जिसे ' |
ListUpdateRequest
सूची को अपडेट करने के लिए एक बार अनुरोध.
जेएसओएन के काेड में दिखाना | |
---|---|
{ "threatType": enum ( |
फ़ील्ड | |
---|---|
threatType |
सूची में मौजूद एंट्री से होने वाली धमकी. |
platformType |
सूची में मौजूद एंट्री की वजह से किस तरह का प्लैटफ़ॉर्म खतरे में है. |
threatEntryType |
सूची में मौजूद एंट्री. |
state |
अनुरोध की गई सूची के लिए क्लाइंट की मौजूदा स्थिति (एन्क्रिप्ट की गई क्लाइंट की वह स्थिति जो पिछली बार सूची अपडेट होने पर मिली थी). Base64 कोड में बदली गई स्ट्रिंग. |
constraints |
इस अनुरोध से जुड़ी पाबंदियां. |
कंस्ट्रेंट
इस अपडेट की शर्तें.
जेएसओएन के काेड में दिखाना | |
---|---|
{
"maxUpdateEntries": integer,
"maxDatabaseEntries": integer,
"region": string,
"supportedCompressions": [
enum ( |
फ़ील्ड | |
---|---|
maxUpdateEntries |
एंट्री की ज़्यादा से ज़्यादा संख्या. अपडेट में इस वैल्यू से ज़्यादा एंट्री नहीं होंगी. इसकी पावर 2**10 और 2**20 के बीच होनी चाहिए. अगर वैल्यू शून्य है, तो अपडेट के साइज़ की कोई सीमा सेट नहीं की गई है. |
maxDatabaseEntries |
यह नीति, ऐसी एंट्री की ज़्यादा से ज़्यादा संख्या सेट करती है जो क्लाइंट किसी खास सूची के लिए लोकल डेटाबेस में रख सकता है. इसकी पावर 2**10 और 2**20 के बीच होनी चाहिए. अगर यह संख्या शून्य है, तो डेटाबेस के साइज़ की कोई सीमा सेट नहीं की गई है. |
region |
किसी खास भौगोलिक जगह के लिए सूची का अनुरोध करता है. अगर सेट नहीं किया जाता है, तो सर्वर उपयोगकर्ता के आईपी पते के आधार पर उस वैल्यू को चुन सकता है. ISO 3166-1 alpha-2 फ़ॉर्मैट होना ज़रूरी है. |
supportedCompressions[] |
क्लाइंट के साथ काम करने वाले कंप्रेशन टाइप. |
language |
किसी खास भाषा के लिए सूचियों का अनुरोध करता है. ISO 639 alpha-2 फ़ॉर्मैट ज़रूरी. |
deviceLocation |
क्लाइंट की जगह की जानकारी, जिसे ISO 31166-1 ऐल्फ़ा-2 रीजन कोड के तौर पर दिखाया जाता है. |
CompressionType
वे तरीके जिनसे खतरे के एंट्री सेट को कंप्रेस किया जा सकता है.
Enums | |
---|---|
COMPRESSION_TYPE_UNSPECIFIED |
अज्ञात. |
RAW |
रॉ, बिना कंप्रेस किया गया डेटा. |
RICE |
Rice-Golomb का एन्कोड किया गया डेटा. |
ListUpdateResponse
हर सूची के लिए अपडेट.
जेएसओएन के काेड में दिखाना | |
---|---|
{ "threatType": enum ( |
फ़ील्ड | |
---|---|
threatType |
वह खतरा किस तरह का है जिसके लिए डेटा दिया जाता है. |
threatEntryType |
खतरों का फ़ॉर्मैट. |
platformType |
वह प्लैटफ़ॉर्म टाइप जिसके लिए डेटा दिखाया जाता है. |
responseType |
जवाब किस तरह का है. इसका मतलब है कि जवाब मिलने पर, क्लाइंट को कार्रवाई करनी होगी. |
additions[] |
स्थानीय खतरे के प्रकार की सूची में जोड़ने के लिए एंट्री का सेट. एक ही जवाब में, कंप्रेस किए गए और रॉ डेटा के कॉम्बिनेशन को भेजने की अनुमति देने के लिए इस प्रक्रिया को दोहराया जाता है. |
removals[] |
स्थानीय खतरे के टाइप की सूची से हटाने के लिए एंट्री का सेट. व्यावहारिक तौर पर, यह फ़ील्ड खाली है या इसमें सिर्फ़ एक ख़तरनाक सेट है. |
newClientState |
एन्क्रिप्ट (सुरक्षित) किए गए फ़ॉर्मैट में, क्लाइंट की नई स्थिति. क्लाइंट के लिए ओपेक. Base64 कोड में बदली गई स्ट्रिंग. |
checksum |
क्लाइंट की स्थिति के लिए सही SHA256 हैश. इसका मतलब है कि दिए गए अपडेट को लागू करने के बाद, डेटाबेस में मौजूद सभी हैश की क्रम से लगाई गई सूची की सूची का हैश किया जाना. अगर क्लाइंट की स्थिति, सही स्थिति से मैच नहीं होती, तो क्लाइंट को इस अपडेट को अनदेखा करना होगा और बाद में कोशिश करनी होगी. |
ResponseType
क्लाइंट को भेजा गया जवाब किस तरह का है.
Enums | |
---|---|
RESPONSE_TYPE_UNSPECIFIED |
अज्ञात. |
PARTIAL_UPDATE |
कुछ हद तक अपडेट, क्लाइंट के मौजूदा लोकल डेटाबेस पर लागू होते हैं. |
FULL_UPDATE |
सभी अपडेट क्लाइंट के पूरे लोकल डेटाबेस की जगह ले लेते हैं. इसका मतलब है कि या तो क्लाइंट का समय बहुत पुराना था या क्लाइंट को खराब माना जाता है. |
ThreatEntrySet
खतरों का एक ऐसा सेट जिसे क्लाइंट के लोकल डेटाबेस में जोड़ा या हटाया जाना चाहिए.
जेएसओएन के काेड में दिखाना | |
---|---|
{ "compressionType": enum ( |
फ़ील्ड | |
---|---|
compressionType |
इस सेट में एंट्री के लिए कंप्रेशन टाइप. |
rawHashes |
SHA256 के फ़ॉर्मैट वाली रॉ एंट्री. |
rawIndices |
किसी स्थानीय सूची के लिए रॉ डेटा हटाने वाले इंडेक्स. |
riceHashes |
SHA256 फ़ॉर्मैट वाली एंट्री के कोड में बदले गए 4-बाइट वाले प्रीफ़िक्स, जिसमें Golomb-Rice को कोड में बदलने का इस्तेमाल किया गया है. हैश को uint32 में बदल दिया जाता है और उन्हें बढ़ते क्रम में रखा जाता है. इसके बाद, डेल्टा को कोड में बदलकर, कोड में किए गए डेटा के तौर पर सेव किया जाता है. |
riceIndices |
कोड में बदली गई लोकल, लेक्सिकोग्राफ़िक तरीके से क्रम में लगाई गई सूची के इंडेक्स. इसमें गोलोम्ब-राइस एन्कोडिंग का इस्तेमाल किया गया है. इसका इस्तेमाल, कंप्रेस किए गए हटाने वाले इंडेक्स भेजने के लिए किया जाता है. यूआरएल हटाने के इंडेक्स (uint32) को बढ़ते हुए क्रम में लगाया जाता है. इसके बाद, डेल्टा को कोड में बदलकर, कोड में बदले गए डेटा के तौर पर सेव किया जाता है. |
RawHashes
किसी खास प्रीफ़िक्स की लंबाई के हैश फ़ॉर्मैट में, खतरे की बिना कंप्रेस की एंट्री. हैश का साइज़ 4 से 32 बाइट तक हो सकता है. ज़्यादातर हैश 4 बाइट के होते हैं. हालांकि, अगर कुछ हैश किसी लोकप्रिय यूआरएल के हैश से टकराते हैं, तो वे लंबे हो जाते हैं.
इसका इस्तेमाल, उन क्लाइंट को ChromebookEntrySet भेजने के लिए किया जाता है जो कंप्रेस करने की सुविधा का इस्तेमाल नहीं करते हैं या जब कंप्रेस करने की सुविधा वाले क्लाइंट को नॉन-4-बाइट वाले हैश भेजे जाते हैं.
जेएसओएन के काेड में दिखाना | |
---|---|
{ "prefixSize": integer, "rawHashes": string } |
फ़ील्ड | |
---|---|
prefixSize |
नीचे एन्कोड किए गए हर प्रीफ़िक्स के लिए बाइट की संख्या. यह फ़ील्ड 4 (सबसे छोटा प्रीफ़िक्स) से लेकर 32 (फ़ुल SHA256 हैश) तक कुछ भी हो सकता है. |
rawHashes |
बाइनरी फ़ॉर्मैट में, हैश को एक लंबी स्ट्रिंग में जोड़कर. हैश, लेक्सिकोग्राफ़िक क्रम में लगाए जाते हैं. JSON API का इस्तेमाल करने वाले लोगों के लिए, हैश को base64 कोड में बदला गया होता है. Base64 कोड में बदली गई स्ट्रिंग. |
RawIndices
स्थानीय सूची से हटाने के लिए, रॉ इंडेक्स का सेट.
जेएसओएन के काेड में दिखाना | |
---|---|
{ "indices": [ integer ] } |
फ़ील्ड | |
---|---|
indices[] |
शब्दकोश के हिसाब से क्रम में लगाई गई स्थानीय सूची में से हटाए जाने वाले इंडेक्स. |
RiceDeltaEncoding
Rice-Golomb एन्कोड किया गया डेटा. इसका इस्तेमाल, कंप्रेस किए गए 4-बाइट हैश या हटाए गए इंडेक्स को भेजने के लिए किया जाता है.
जेएसओएन के काेड में दिखाना | |
---|---|
{ "firstValue": string, "riceParameter": integer, "numEntries": integer, "encodedData": string } |
फ़ील्ड | |
---|---|
firstValue |
कोड में बदले गए डेटा में पहली एंट्री का ऑफ़सेट या अगर सिर्फ़ एक पूर्णांक को कोड में बदला गया है, तो उस एक पूर्णांक की वैल्यू. अगर फ़ील्ड खाली है या मौजूद नहीं है, तो वैल्यू को शून्य मान लें. |
riceParameter |
Golomb-Rice पैरामीटर, जो 2 से 28 के बीच की कोई संख्या होती है. अगर |
numEntries |
कोड में बदले गए डेटा में डेल्टा को एन्कोड करने वाली एंट्री की संख्या. अगर सिर्फ़ एक पूर्णांक को कोड में बदला गया है, तो यह शून्य होगा और सिंगल वैल्यू को |
encodedData |
कोड में बदले गए डेल्टा, जिन्हें गोलोम्ब-राइस कोडर का इस्तेमाल करके कोड में बदला गया है. Base64 कोड में बदली गई स्ट्रिंग. |
चेकसम
क्लाइंट के लोकल डेटाबेस की अनुमानित स्थिति.
जेएसओएन के काेड में दिखाना | |
---|---|
{ "sha256": string } |
फ़ील्ड | |
---|---|
sha256 |
क्लाइंट की स्थिति का SHA256 हैश. इसका मतलब है कि डेटाबेस में मौजूद हैश की क्रम से लगाई गई सूची की सूची. Base64 कोड में बदली गई स्ट्रिंग. |