Package google.security.safebrowsing.v4

इंडेक्स

SafeBrowsing

सुरक्षित ब्राउज़िंग एपीआई की मदद से क्लाइंट, Google की लगातार अपडेट होने वाली असुरक्षित वेब संसाधनों की सूची से, वेब पर मौजूद संसाधनों (आम तौर पर इस्तेमाल होने वाले यूआरएल) की जांच कर सकते हैं. सुरक्षित ब्राउज़िंग एपीआई (v4) में अपडेट एपीआई और lookup एपीआई की सुविधा है.

अपडेट API को हमारे बड़े क्लाइंट के लिए डिज़ाइन किया गया है और इसमें FindFullHashes और FetchTrustListUpdate विधियां शामिल हैं . अपडेट एपीआई के लिए यह ज़रूरी है कि क्लाइंट, डाउनलोड की गई खतरे की सूचियों को स्थानीय डेटाबेस में बनाए रखें.

पहला, क्लाइंट किसी दिए गए वेब रिसॉर्स की स्थिति (सुरक्षित या असुरक्षित) जानने के लिए, उसे अपनी लोकल सूचियों से मैच करते हैं. आम तौर पर, सूचियों में ब्लैकलिस्ट किए गए यूआरएल एक्सप्रेशन के हैश प्रीफ़िक्स शामिल होते हैं. किसी यूआरएल की जांच करने के लिए, क्लाइंट दिए गए यूआरएल के हैश जनरेट करते हैं और अपनी लोकल सूचियों में प्रीफ़िक्स से जुड़े टकरावों की जांच करते हैं. अगर प्रीफ़िक्स मैच मिलता है, तो क्लाइंट FindFullHashes तरीके से, मैच होने वाले हैश प्रीफ़िक्स से जुड़े पूरे हैश हासिल कर लेता है. इसके बाद, क्लाइंट लोकल फ़ुल हैश की तुलना, लौटाए गए पूरे हैश से करता है. मैच बताता है कि यूआरएल असुरक्षित है.

दूसरा विकल्प यह है कि क्लाइंट को उनके लोकल डेटाबेस में अपडेट मिलते हैं. इसके लिए, वह सनख़ोगा सूची अपडेट करता है. इस तरीके से , क्लाइंट की मौजूदा स्थिति पता चलती है और क्लाइंट की अपडेट की गई स्थिति के साथ-साथ उन बदलावों की जानकारी भी मिलती है जिन्हें क्लाइंट को खतरे की स्थानीय सूची पर लागू करना चाहिए.

lookup API हमारे छोटे क्लाइंट के लिए डिज़ाइन किया गया है. इसकी मदद से वे FindThreadMatches के तरीके से, सुरक्षित ब्राउज़िंग के लिए खतरे की सूची से सीधे तौर पर संसाधनों का मिलान कर सकते हैं.

Update API या lookup API का इस्तेमाल करने वाले क्लाइंट, ListStrikeLists तरीके से, डाउनलोड के लिए उपलब्ध सुरक्षित ब्राउज़िंग से जुड़े खतरों की सूचियों की सूची हासिल कर सकते हैं.

{-- TRUSTED_THREAT_REPORTER: भरोसेमंद खतरा क्लाइंट, सबमिट करने के ख़ज़ाने की रिपोर्ट के ज़रिए, विश्लेषण के लिए Google को रिपोर्ट सबमिट कर सकते हैं. --}

FetchThreatListUpdates

rpc FetchThreatListUpdates(FetchThreatListUpdatesRequest) returns (FetchThreatListUpdatesResponse)

खतरे की सूची से जुड़े सबसे नए अपडेट फ़ेच करता है. क्लाइंट एक साथ कई सूचियों के लिए अपडेट का अनुरोध कर सकता है.

FindFullHashes

rpc FindFullHashes(FindFullHashesRequest) returns (FindFullHashesResponse)

अनुरोध किए गए हैश प्रीफ़िक्स से मेल खाने वाले पूरे हैश ढूंढता है.

FindThreatMatches

rpc FindThreatMatches(FindThreatMatchesRequest) returns (FindThreatMatchesResponse)

उन खतरों को ढूंढता है जो सुरक्षित ब्राउज़िंग की सूचियों से मेल खाते हैं.

ListThreatLists

rpc ListThreatLists(Empty) returns (ListThreatListsResponse)

यह सुरक्षित ब्राउज़िंग से जुड़ी खतरे की सूचियों को डाउनलोड करने के लिए उपलब्ध होता है.

चेकसम

क्लाइंट के लोकल डेटाबेस की अनुमानित स्थिति.

फ़ील्ड
sha256

bytes

क्लाइंट स्टेट का SHA256 हैश; यानी, डेटाबेस में मौजूद सभी हैश की क्रम से लगाई गई सूची का हैश.

ClientInfo

सुरक्षित ब्राउज़िंग एपीआई अनुरोधों से जुड़ा क्लाइंट मेटाडेटा.

फ़ील्ड
client_id

string

ऐसा क्लाइंट आईडी जो (उम्मीद है कि) सुरक्षित ब्राउज़िंग एपीआई के क्लाइंट को लागू करने के तरीके की खास तौर पर पहचान करता है.

client_version

string

क्लाइंट को लागू करने का वर्शन.

CompressionType

वे तरीके जिनसे खतरे के एंट्री सेट को कंप्रेस किया जा सकता है.

Enums
COMPRESSION_TYPE_UNSPECIFIED अज्ञात.
RAW रॉ, बिना कंप्रेस किया हुआ डेटा.
RICE Rice-Golomb का एन्कोड किया गया डेटा.

FetchThreatListUpdatesRequest

सुरक्षित ब्राउज़िंग एपीआई को अपडेट करने के अनुरोध के बारे में बताता है. क्लाइंट एक ही अनुरोध में कई सूचियों को अपडेट करने का अनुरोध कर सकते हैं. अगर सर्वर में उस सूची के लिए कोई अपडेट नहीं है, तो हो सकता है कि सर्वर सभी अनुरोधों का जवाब न दे. ध्यान दें: फ़ील्ड इंडेक्स 2 का इस्तेमाल नहीं किया गया है. अगला: 5

फ़ील्ड
client

ClientInfo

क्लाइंट मेटाडेटा.

list_update_requests[]

ListUpdateRequest

अनुरोध की गई खतरे की सूची अपडेट हो जाती है.

ListUpdateRequest

सूची को अपडेट करने का एक ही अनुरोध.

फ़ील्ड
threat_type

ThreatType

सूची में मौजूद एंट्री से होने वाले खतरे का टाइप.

platform_type

PlatformType

सूची में मौजूद एंट्री से, जिस प्लैटफ़ॉर्म को खतरा है उसका टाइप.

threat_entry_type

ThreatEntryType

सूची में मौजूद एंट्री के टाइप.

state

bytes

अनुरोध की गई सूची के लिए क्लाइंट की मौजूदा स्थिति (एन्क्रिप्ट की गई क्लाइंट की स्थिति, जो सूची को आखिरी बार अपडेट करने के बाद मिली थी).

constraints

Constraints

इस अनुरोध से जुड़ी पाबंदियां.

कंस्ट्रेंट

इस अपडेट की सीमाएं.

फ़ील्ड
max_update_entries

int32

एंट्री की ज़्यादा से ज़्यादा संख्या. अपडेट में इस मान से ज़्यादा प्रविष्टियां नहीं होंगी. इसमें 2**10 और 2**20 के बीच 2 की पावर होनी चाहिए. अगर यह संख्या शून्य है, तो अपडेट के लिए साइज़ की कोई सीमा सेट नहीं की गई है.

max_database_entries

int32

यह नीति उन एंट्री की ज़्यादा से ज़्यादा संख्या सेट करती है जो क्लाइंट, दी गई सूची के लिए लोकल डेटाबेस में रखना चाहता है. इसमें 2**10 और 2**20 के बीच 2 की पावर होनी चाहिए. अगर शून्य है, तो डेटाबेस के साइज़ की कोई सीमा सेट नहीं है.

region

string

किसी खास भौगोलिक जगह के लिए सूची का अनुरोध करता है. अगर इस नीति को सेट नहीं किया जाता है, तो सर्वर उपयोगकर्ता के आईपी पते के आधार पर यह वैल्यू चुन सकता है. ISO 3166-1 alpha-2 फ़ॉर्मैट होना ज़रूरी है.

supported_compressions[]

CompressionType

कंप्रेस करने के तरीके, जो क्लाइंट के साथ काम करते हैं.

language

string

किसी खास भाषा के लिए सूचियों का अनुरोध करता है. ISO 639 alpha-2 फ़ॉर्मैट होना ज़रूरी है.

device_location

string

क्लाइंट की जगह की जानकारी, जिसे ISO 31166-1 ऐल्फ़ा-2 इलाके के कोड के तौर पर दिखाया जाता है.

FetchThreatListUpdatesResponse

फ़ील्ड
list_update_responses[]

ListUpdateResponse

क्लाइंट की ओर से अनुरोध की गई सूची अपडेट. यहां दिए गए जवाबों की संख्या, क्लाइंट के भेजे गए अनुरोधों की संख्या से कम हो सकती है. उदाहरण के लिए, अगर सर्वर में किसी खास सूची के लिए कोई अपडेट नहीं है, तो ऐसी स्थिति में हो सकते हैं.

minimum_wait_duration

Duration

वह कम से कम अवधि जिसे कोई भी अपडेट का अनुरोध जारी करने से पहले क्लाइंट को इंतज़ार करना चाहिए. अगर यह फ़ील्ड सेट नहीं किया गया है, तो क्लाइंट इसे जितनी जल्दी चाहे अपडेट कर सकते हैं.

ListUpdateResponse

हर सूची का अपडेट.

फ़ील्ड
threat_type

ThreatType

किस तरह का खतरा होता है, जिसके लिए डेटा दिखाया जाता है.

threat_entry_type

ThreatEntryType

खतरों का फ़ॉर्मैट.

platform_type

PlatformType

वह प्लैटफ़ॉर्म टाइप जिसके लिए डेटा दिखाया जाता है.

response_type

ResponseType

जवाब का टाइप. इससे यह पता चलता है कि जवाब मिलने पर क्लाइंट को कोई कार्रवाई करने की ज़रूरत है.

additions[]

ThreatEntrySet

स्थानीय खतरा प्रकार की सूची में जोड़ने के लिए एंट्री का सेट. इसे एक ही जवाब में, कंप्रेस किए गए और रॉ डेटा के कॉम्बिनेशन को भेजने की अनुमति देने के लिए दोहराया गया है.

removals[]

ThreatEntrySet

ऐसी एंट्री का सेट जिसे स्थानीय खतरे के टाइप की सूची से हटाया जाना है. व्यावहारिक तौर पर, यह फ़ील्ड खाली है या इसमें सिर्फ़ एक ThreadEntrySet है.

new_client_state

bytes

एन्क्रिप्ट (सुरक्षित) किए गए फ़ॉर्मैट में, क्लाइंट की नई स्थिति. क्लाइंट के लिए ओपेक.

checksum

Checksum

क्लाइंट स्टेटस का अनुमानित SHA256 हैश. इसका मतलब है कि दिए गए अपडेट को लागू करने के बाद, डेटाबेस में मौजूद सभी हैश की क्रम से लगाई गई सूची की सूची. अगर क्लाइंट की स्थिति उम्मीद के मुताबिक नहीं है, तो क्लाइंट को इस अपडेट को अनदेखा करना होगा और बाद में कोशिश करनी होगी.

ResponseType

क्लाइंट को भेजे गए जवाब का टाइप.

Enums
RESPONSE_TYPE_UNSPECIFIED अज्ञात.
PARTIAL_UPDATE कुछ हद तक अपडेट, क्लाइंट के मौजूदा लोकल डेटाबेस पर लागू होते हैं.
FULL_UPDATE पूरे अपडेट की मदद से, क्लाइंट का पूरा स्थानीय डेटाबेस बदल जाता है. इसका मतलब है कि या तो क्लाइंट काफ़ी पुराना था या माना जाता है कि वह क्लाइंट खराब है.

FindFullHashesRequest

दिए गए हैश प्रीफ़िक्स से मेल खाने वाले पूरे हैश लौटाने का अनुरोध करें.

फ़ील्ड
client

ClientInfo

क्लाइंट मेटाडेटा.

client_states[]

bytes

मौजूदा क्लाइंट, क्लाइंट की हर स्थानीय खतरे की सूची के बारे में बताता है.

threat_info

ThreatInfo

वे सूचियां और हैश जिनकी जांच करनी है.

api_client

ClientInfo

क्लाइंट के लागू करने के तरीके पर आधारित हाई-लेवल एपीआई के कॉलर से जुड़ा क्लाइंट मेटाडेटा.

FindFullHashesResponse

फ़ील्ड
matches[]

ThreatMatch

अनुरोध किए गए प्रीफ़िक्स से मेल खाने वाले पूरे हैश.

minimum_wait_duration

Duration

वह कम से कम अवधि जिसे क्लाइंट को ढूंढने के लिए हैश का अनुरोध जारी करने से पहले इंतज़ार करना चाहिए. अगर यह फ़ील्ड सेट नहीं है, तो क्लाइंट जल्द से जल्द अनुरोध जारी कर सकते हैं.

negative_cache_duration

Duration

अनुरोध की गई इकाइयां जो खतरे की सूची से मेल नहीं खातीं, जवाब को कितनी देर तक कैश मेमोरी में सेव करना होगा.

FindThreatMatchesRequest

सूचियों के साथ एंट्री की जांच करने का अनुरोध करना.

फ़ील्ड
client

ClientInfo

क्लाइंट मेटाडेटा.

threat_info

ThreatInfo

मेल खाने के लिए जाँची जाने वाली सूचियाँ और एंट्री.

FindThreatMatchesResponse

फ़ील्ड
matches[]

ThreatMatch

खतरे की सूची मेल खाती है.

ListThreatListsResponse

फ़ील्ड
threat_lists[]

ThreatListDescriptor

क्लाइंट इन सूचियों को डाउनलोड कर सकता है.

PlatformType

प्लैटफ़ॉर्म के टाइप.

Enums
PLATFORM_TYPE_UNSPECIFIED अज्ञात प्लैटफ़ॉर्म.
WINDOWS Windows को खतरा.
LINUX Linux को खतरा हो सकता है.
ANDROID Android को खतरा हो सकता है.
OSX OS X को खतरा.
IOS iOS को खतरा हो सकता है.
ANY_PLATFORM कम से कम किसी एक प्लैटफ़ॉर्म को खतरा हो.
ALL_PLATFORMS सभी तय प्लैटफ़ॉर्म पर खतरा.
CHROME Chrome को खतरा हो सकता है.

RawHashes

किसी खास प्रीफ़िक्स की लंबाई के हैश फ़ॉर्मैट में, बिना कंप्रेस की गई धमकी की एंट्री. हैश का साइज़ 4 से 32 बाइट तक हो सकता है. ज़्यादातर हैश 4 बाइट के होते हैं. हालांकि, कुछ हैश का साइज़ किसी लोकप्रिय यूआरएल के हैश से टकराने पर, वे लंबे हो जाते हैं.

इसका इस्तेमाल, कंप्रेशन की सुविधा न देने वाले या कंप्रेशन की सुविधा देने वाले क्लाइंट को नॉन-4-बाइट हैश भेजने के लिए किया जाता है.

फ़ील्ड
prefix_size

int32

नीचे एन्कोड किए गए हर प्रीफ़िक्स के लिए बाइट की संख्या. यह फ़ील्ड 4 (सबसे छोटा प्रीफ़िक्स) से लेकर 32 (फ़ुल SHA256 हैश) तक कहीं भी हो सकता है.

raw_hashes

bytes

बाइनरी फ़ॉर्मैट में, हैश को एक लंबी स्ट्रिंग में इकट्ठा किया जाता है. हैश, लेक्सोग्राफ़िक क्रम में लगाए जाते हैं. JSON API का इस्तेमाल करने वाले लोगों के लिए, हैश को base64 कोड में बदला जाता है.

RawIndices

स्थानीय सूची से हटाने के लिए, रॉ इंडेक्स का सेट.

फ़ील्ड
indices[]

int32

शब्दकोश के आधार पर क्रम से लगाई गई स्थानीय सूची से हटाने के लिए इंडेक्स.

RiceDeltaEncoding

Rice-Golomb का डेटा, कोड में बदला गया है. इसका इस्तेमाल, कंप्रेस किए गए 4-बाइट हैश या कंप्रेस किए गए रिमूवल इंडेक्स भेजने के लिए किया जाता है.

फ़ील्ड
first_value

int64

कोड में बदले गए डेटा में पहली एंट्री का ऑफ़सेट या सिर्फ़ एक पूर्णांक को कोड में बदलने पर, उस एक पूर्णांक की वैल्यू. अगर फ़ील्ड खाली है या उपलब्ध नहीं है, तो वैल्यू को शून्य मान लें.

rice_parameter

int32

Golomb-Rice पैरामीटर, जो 2 से 28 के बीच की कोई संख्या होती है. अगर num_entries शून्य है, तो यह फ़ील्ड मौजूद नहीं है (मतलब, यह शून्य है).

num_entries

int32

कोड में बदले गए डेटा में डेल्टा एंट्री की संख्या. अगर सिर्फ़ एक पूर्णांक को कोड में बदला गया है, तो यह शून्य होगा और सिंगल वैल्यू first_value में स्टोर होगी.

encoded_data

bytes

कोड में बदले गए डेल्टा, जिन्हें Golomb-Rice कोडर का इस्तेमाल करके कोड में बदला गया है.

ThreatEntry

व्यक्तिगत धमकी; उदाहरण के लिए, नुकसान पहुंचाने वाला यूआरएल या उसका हैश दिखाना. इनमें से सिर्फ़ एक फ़ील्ड सेट किया जाना चाहिए.

फ़ील्ड
hash

bytes

हैश प्रीफ़िक्स, जिसमें SHA256 हैश के सबसे अहम 4-32 बाइट होते हैं. यह फ़ील्ड बाइनरी फ़ॉर्मैट में है. JSON के अनुरोधों के लिए, हैश को base64 कोड में बदला जाता है.

url

string

यूआरएल.

digest

bytes

SHA256 फ़ॉर्मैट में एक्ज़ीक्यूटेबल का डाइजेस्ट. एपीआई, बाइनरी और हेक्स डाइजेस्ट, दोनों के साथ काम करता है. JSON अनुरोधों के लिए, डाइजेस्ट base64-एन्कोडेड होते हैं.

ThreatEntryMetadata

किसी खास तरह के खतरे की एंट्री से जुड़ा मेटाडेटा. क्लाइंट को हर तरह के खतरे से जुड़े मेटाडेटा के की/वैल्यू पेयर के बारे में जानकारी होनी चाहिए.

फ़ील्ड
entries[]

MetadataEntry

मेटाडेटा की एंट्री.

MetadataEntry

सिर्फ़ एक मेटाडेटा एंट्री.

फ़ील्ड
key

bytes

मेटाडेटा एंट्री पासकोड. JSON अनुरोधों के लिए, कुंजी को base64 कोड में बदला गया है.

value

bytes

मेटाडेटा की एंट्री वैल्यू. JSON अनुरोधों के लिए, वैल्यू को base64 कोड में बदला गया है.

ThreatEntrySet

खतरों का एक ऐसा सेट जिसे क्लाइंट के लोकल डेटाबेस में जोड़ा जाना चाहिए या उससे हटाया जाना चाहिए.

फ़ील्ड
compression_type

CompressionType

इस सेट में एंट्री के लिए कंप्रेशन टाइप.

raw_hashes

RawHashes

SHA256 के फ़ॉर्मैट वाली रॉ एंट्री.

raw_indices

RawIndices

स्थानीय सूची के लिए रॉ हटाए गए इंडेक्स.

rice_hashes

RiceDeltaEncoding

SHA256-फ़ॉर्मैट की एंट्री के कोड में बदले गए 4-बाइट प्रीफ़िक्स, जिसमें Golomb-Rice को कोड में बदलने का इस्तेमाल किया जाता है. हैश को uint32 में बदल दिया जाता है और बढ़ते क्रम में रखा जाता है. इसके बाद, डेल्टा को कोड में बदलकर, encoded_data के तौर पर स्टोर किया जाता है.

rice_indices

RiceDeltaEncoding

कोड में बदली गई स्थानीय, लेक्सीकोलॉजिकल तरीके से क्रम में लगाई गई सूची के इंडेक्स. इसमें, गोलमब-राइस कोड को कोड में बदलने का तरीका इस्तेमाल किया जाता है. इसका इस्तेमाल, कंप्रेस किए गए रिमूवल इंडेक्स भेजने के लिए किया जाता है. हटाए गए इंडेक्स (uint32) को बढ़ते क्रम में लगाया जाता है. इसके बाद, डेल्टा को कोड में बदलकर, encoded_data के तौर पर सेव किया जाता है.

ThreatEntryType

ऐसी एंट्री के टाइप जिनसे खतरा हो सकता है. खतरे की सूचियां, एक ही तरह की एंट्री का संग्रह होती हैं.

Enums
THREAT_ENTRY_TYPE_UNSPECIFIED नहीं बताया गया है
URL यूआरएल.
EXECUTABLE एक्ज़ीक्यूटेबल प्रोग्राम.

ThreatInfo

खतरे की सूची में मौजूद मिलते-जुलते वीडियो की जांच करते समय, क्लाइंट के सबमिट किए गए एक या एक से ज़्यादा खतरों की जानकारी.

फ़ील्ड
threat_types[]

ThreatType

किस तरह के खतरों की जांच की जानी चाहिए.

platform_types[]

PlatformType

जांच किए जाने वाले प्लैटफ़ॉर्म टाइप.

threat_entry_types[]

ThreatEntryType

एंट्री के वे टाइप जिनकी जांच करनी है.

threat_entries[]

ThreatEntry

जोखिम की एंट्री की जांच करना.

ThreatListDescriptor

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

फ़ील्ड
threat_type

ThreatType

सूची में दी गई एंट्री से खतरा किस तरह का है.

platform_type

PlatformType

सूची में दी गई एंट्री से टारगेट किया गया प्लैटफ़ॉर्म टाइप.

threat_entry_type

ThreatEntryType

सूची में शामिल एंट्री टाइप.

ThreatMatch

सुरक्षित ब्राउज़िंग की खतरे वाली सूची में मौजूद खतरे की एंट्री की जांच करते समय दिखने वाला मैच.

फ़ील्ड
threat_type

ThreatType

इस तरह का खतरा जो इस खतरे से मेल खाता है.

platform_type

PlatformType

वह प्लैटफ़ॉर्म टाइप जो इस खतरे से मेल खाता है.

threat_entry_type

ThreatEntryType

इस खतरे से मेल खाने वाले खतरे का प्रकार.

threat

ThreatEntry

वह खतरा जो इस खतरे से मेल खाता है.

threat_entry_metadata

ThreatEntryMetadata

इस खतरे से जुड़ा वैकल्पिक मेटाडेटा.

cache_duration

Duration

यह नतीजे में मिले मैच का कैश लाइफ़टाइम. क्लाइंट को यह रिस्पॉन्स, इस अवधि से ज़्यादा समय के लिए कैश मेमोरी में सेव नहीं करना चाहिए. ऐसा इसलिए ज़रूरी है, ताकि गलत नतीजे मिलने से बचा जा सके.

ThreatType

खतरों के टाइप.

Enums
THREAT_TYPE_UNSPECIFIED अज्ञात.
MALWARE मैलवेयर के खतरे का प्रकार.
SOCIAL_ENGINEERING सोशल इंजीनियरिंग के खतरे का प्रकार.
UNWANTED_SOFTWARE अनचाहे सॉफ़्टवेयर के खतरे का टाइप.
POTENTIALLY_HARMFUL_APPLICATION ऐसे ऐप्लिकेशन जो नुकसान पहुंचा सकते हैं और जिस तरह का खतरा हो सकता है.