- एचटीटीपी अनुरोध
- क्वेरी पैरामीटर
- अनुरोध का मुख्य हिस्सा
- जवाब का मुख्य हिस्सा
- FullHash
- FullHashDetail
- ThreatType
- ThreatAttribute
बताए गए प्रीफ़िक्स से मेल खाने वाले पूरे हैश खोजें.
यह पसंद के मुताबिक बनाया गया तरीका है, जैसा कि https://google.aip.dev/136 ने बताया है. कस्टम तरीके का मतलब है कि Google के सामान्य एपीआई डेवलपमेंट नाम में, कस्टम नाम मौजूद है. इसका मतलब यह नहीं है कि कस्टम एचटीटीपी तरीके का इस्तेमाल किया जा सकता है.
एचटीटीपी अनुरोध
GET https://safebrowsing.googleapis.com/v5/hashes:search
यह यूआरएल gRPC ट्रांसकोडिंग सिंटैक्स का इस्तेमाल करता है.
क्वेरी पैरामीटर
पैरामीटर | |
---|---|
hashPrefixes[] |
ज़रूरी है. खोजने के लिए हैश प्रीफ़िक्स. क्लाइंट को 1,000 से ज़्यादा हैश प्रीफ़िक्स नहीं भेजने चाहिए. हालांकि, यूआरएल प्रोसेस करने की प्रोसेस का पालन करने पर, क्लाइंट को 30 से ज़्यादा हैश प्रीफ़िक्स भेजने की ज़रूरत नहीं होनी चाहिए. फ़िलहाल, हर हैश प्रीफ़िक्स ठीक 4 बाइट होना ज़रूरी है. आने वाले समय में इससे राहत मिल सकती है. base64 कोड में बदली गई स्ट्रिंग. |
अनुरोध का मुख्य भाग
अनुरोध का मुख्य हिस्सा खाली होना चाहिए.
जवाब का मुख्य भाग
थ्रेट हैश को खोजने से मिलने वाला रिस्पॉन्स.
अगर कुछ भी नहीं मिलता है, तो सर्वर, NOT_FOUND स्थिति (एचटीटीपी स्टेटस कोड 404) के बजाय, fullHashes
फ़ील्ड को खाली छोड़कर, 'OK' स्टेटस (एचटीटीपी स्टेटस कोड 200) दिखाएगा.
V5 में नया क्या है: FullHash
और FullHashDetail
के बीच फ़र्क़ है. इस मामले में, जब हैश एक से ज़्यादा खतरों वाली साइट को दिखाता है (जैसे, MALWARE और SOCIAL_engineERING दोनों), तो पूरे हैश को V4 के मुकाबले दो बार भेजने की ज़रूरत नहीं है. इसके अलावा, कैश मेमोरी की अवधि को एक cacheDuration
फ़ील्ड में सरल कर दिया गया है.
अगर एपीआई सही से जुड़ जाता है, ताे जवाब के मुख्य भाग में नीचे दिए गए स्ट्रक्चर शामिल होता है.
JSON के काेड में दिखाना |
---|
{
"fullHashes": [
{
object ( |
फ़ील्ड | |
---|---|
fullHashes[] |
बिना क्रम वाली सूची. पूरे हैश की बिना क्रम वाली सूची मिली. |
cacheDuration |
क्लाइंट-साइड कैश मेमोरी की अवधि. समयसीमा खत्म होने का समय तय करने के लिए, क्लाइंट को मौजूदा समय में इस अवधि को जोड़ना होगा. इसके बाद, अनुरोध करते समय क्लाइंट की क्वेरी के बाद मिले हर हैश प्रीफ़िक्स पर समयसीमा खत्म हो जाती है. भले ही, रिस्पॉन्स में कितने पूरे हैश दिए गए हों. अगर सर्वर किसी खास हैश प्रीफ़िक्स के लिए पूरे हैश नहीं दिखाता है, तब भी क्लाइंट को इस जानकारी को कैश मेमोरी में सेव करना होगा. अगर अहम जानकारी: क्लाइंट को यह नहीं मानना चाहिए कि सभी रिस्पॉन्स के लिए सर्वर, कैश मेमोरी की एक ही अवधि दिखाएगा. सर्वर, स्थिति के हिसाब से अलग-अलग रिस्पॉन्स के लिए कैश मेमोरी की अलग-अलग अवधि चुन सकता है. सेकंड में कुल नौ दशमलव अंक, जो ' |
FullHash
पूरे हैश की पहचान एक या उससे ज़्यादा मैच से की गई.
JSON के काेड में दिखाना |
---|
{
"fullHash": string,
"fullHashDetails": [
{
object ( |
फ़ील्ड | |
---|---|
fullHash |
मैच करने वाला पूरा हैश. यह SHA256 हैश है. लंबाई ठीक 32 बाइट होगी. base64 कोड में बदली गई स्ट्रिंग. |
fullHashDetails[] |
बिना क्रम वाली सूची. दोहराया गया फ़ील्ड, जो इस पूरे हैश से जुड़ी जानकारी की पहचान करता है. |
FullHashDetail
मैच करने वाले पूरे हैश के बारे में जानकारी.
फ़ॉरवर्ड किए जाने वाले काम के साथ काम करने के बारे में ज़रूरी जानकारी: सर्वर किसी भी समय नए तरह के खतरों और एट्रिब्यूट को जोड़ सकता है; उन जोड़ी गई फ़ाइलों को वर्शन में किए गए छोटे बदलाव माना जाता है. Google की नीति है कि एपीआई में माइनर वर्शन नंबर न दिखाएं (वर्शन नीति के लिए https://cloud.google.com/apis/design/versioning देखें). इसलिए, क्लाइंट को ThreatType
ईनम वैल्यू या ThreatAttribute
ईनम वैल्यू वाले FullHashDetail
ऐसे मैसेज पाने के लिए तैयार रहना चाहिए जिन्हें क्लाइंट अमान्य माने. इसलिए, ThreatType
और ThreatAttribute
के सभी ईनम मानों की मान्यता की जांच करना क्लाइंट की ज़िम्मेदारी है; अगर कोई वैल्यू अमान्य लगती है, तो क्लाइंट को पूरे FullHashDetail
मैसेज को अनदेखा करना होगा.
JSON के काेड में दिखाना |
---|
{ "threatType": enum ( |
फ़ील्ड | |
---|---|
threatType |
खतरे का टाइप. यह फ़ील्ड कभी भी खाली नहीं होगी. |
attributes[] |
बिना क्रम वाली सूची. उन पूरे हैश के बारे में अतिरिक्त एट्रिब्यूट. यह खाली हो सकता है. |
ThreatType
खतरों के टाइप.
Enums | |
---|---|
THREAT_TYPE_UNSPECIFIED |
खतरे के टाइप की जानकारी नहीं है. अगर सर्वर इसे दिखाता है, तो क्लाइंट FullHashDetail को पूरी तरह से अनदेखा कर देगा. |
MALWARE |
मैलवेयर का खतरा. मैलवेयर एक तरह का सॉफ़्टवेयर या मोबाइल ऐप्लिकेशन होता है. इसे खास तौर पर किसी कंप्यूटर, मोबाइल डिवाइस, उन पर इस्तेमाल किए जा रहे सॉफ़्टवेयर या उनके उपयोगकर्ताओं को नुकसान पहुंचाने के लिए बनाया जाता है. मैलवेयर से उपयोगकर्ता को नुकसान पहुंचाने वाली गतिविधियां की जाती हैं. इसमें उपयोगकर्ता की सहमति के बिना सॉफ़्टवेयर इंस्टॉल करने और वायरस जैसे नुकसान पहुंचाने वाले सॉफ़्टवेयर इंस्टॉल करने जैसी गतिविधियां शामिल हो सकती हैं. इस बारे में ज़्यादा जानकारी यहां मिल सकती है. |
SOCIAL_ENGINEERING |
सोशल इंजीनियरिंग से जुड़े खतरे का टाइप. सोशल इंजीनियरिंग वाले पेजों को झूठा दावा करके, किसी तीसरे पक्ष की ओर से ऐसा करने का झूठा दावा करना चाहिए. ये ऐसे पेज होते हैं जिनका मकसद दर्शकों को ऐसी कार्रवाई करने के लिए बहकाना होता है जिससे दर्शक तीसरे पक्ष के किसी सही एजेंट पर ही भरोसा कर सकें. फ़िशिंग, सोशल इंजीनियरिंग का एक ऐसा टाइप है जो दर्शकों से धोखे से लॉगिन क्रेडेंशियल जैसी जानकारी देने का काम करता है. इस बारे में ज़्यादा जानकारी यहां मिल सकती है. |
UNWANTED_SOFTWARE |
अनचाहा सॉफ़्टवेयर से जुड़ा खतरा. अनचाहा सॉफ़्टवेयर, ऐसा सॉफ़्टवेयर होता है जो Google के सॉफ़्टवेयर सिद्धांतों का पालन नहीं करता, लेकिन मैलवेयर नहीं होता. |
POTENTIALLY_HARMFUL_APPLICATION |
Play Store के लिए Google Play Protect में इस्तेमाल किया गया, नुकसान पहुंचा सकने वाले ऐप्लिकेशन का खतरा. |
ThreatAttribute
खतरों के एट्रिब्यूट. इन एट्रिब्यूट का मतलब, किसी खास खतरे को और बढ़ सकता है. हालांकि, इनसे खतरे के टाइप पर कोई असर नहीं पड़ेगा. उदाहरण के लिए, कोई एट्रिब्यूट कम कॉन्फ़िडेंस को बता सकता है, जबकि कोई दूसरा एट्रिब्यूट, ज़्यादा कॉन्फ़िडेंस के बारे में बता सकता है. आने वाले समय में और एट्रिब्यूट जोड़े जा सकते हैं.
Enums | |
---|---|
THREAT_ATTRIBUTE_UNSPECIFIED |
अज्ञात विशेषता. अगर सर्वर इसे दिखाता है, तो क्लाइंट FullHashDetail को पूरी तरह से अनदेखा कर देगा. |
CANARY |
इससे पता चलता है कि खतरे की कैटगरी का इस्तेमाल नीति उल्लंघन ठीक करने के तरीके (एनफ़ोर्समेंट) के लिए नहीं किया जाना चाहिए. |
FRAME_ONLY |
इससे पता चलता है कि खतरे के टाइप का इस्तेमाल, सिर्फ़ फ़्रेम पर नीति उल्लंघन ठीक करने के तरीके (एनफ़ोर्समेंट) के लिए किया जाना चाहिए. |