ดัชนี
SafeBrowsing
(อินเทอร์เฟซ)BatchGetHashListsRequest
(ข้อความ)BatchGetHashListsResponse
(ข้อความ)FullHash
(ข้อความ)FullHash.FullHashDetail
(ข้อความ)GetHashListRequest
(ข้อความ)HashList
(ข้อความ)HashListMetadata
(ข้อความ)HashListMetadata.HashLength
(enum)LikelySafeType
(enum)ListHashListsRequest
(ข้อความ)ListHashListsResponse
(ข้อความ)RiceDeltaEncoded128Bit
(ข้อความ)RiceDeltaEncoded256Bit
(ข้อความ)RiceDeltaEncoded32Bit
(ข้อความ)RiceDeltaEncoded64Bit
(ข้อความ)SearchHashesRequest
(ข้อความ)SearchHashesResponse
(ข้อความ)SizeConstraints
(ข้อความ)ThreatAttribute
(enum)ThreatType
(enum)
SafeBrowsing
Safe Browsing API ช่วยให้ไคลเอ็นต์ตรวจสอบทรัพยากรบนเว็บ (โดยปกติคือ URL) เทียบกับรายการทรัพยากรบนเว็บที่ไม่ปลอดภัยของ Google ซึ่งมีการอัปเดตอยู่เป็นประจำ
BatchGetHashLists |
---|
รับรายการแฮชหลายรายการพร้อมกัน ลูกค้าจําเป็นต้องได้รับรายการแฮชหลายรายการเป็นเรื่องปกติ เราขอแนะนำให้ใช้เมธอดนี้แทนการใช้เมธอด Get ปกติหลายครั้ง นี่เป็นเมธอด Get แบบเป็นกลุ่มมาตรฐานตามที่ระบุไว้ใน https://google.aip.dev/231 และเมธอด HTTP ก็เป็น GET ด้วย |
GetHashList |
---|
รับเนื้อหาล่าสุดของรายการแฮช รายการแฮชอาจเป็นรายการภัยคุกคามหรือรายการที่ไม่ใช่ภัยคุกคาม เช่น แคชส่วนกลาง นี่คือเมธอด Get มาตรฐานตามที่ระบุไว้ใน https://google.aip.dev/131 และเมธอด HTTP ก็เป็น GET ด้วย |
ListHashLists |
---|
แสดงรายการแฮช ใน V5 API ทาง Google จะไม่นํารายการแฮชที่แสดงผลโดยเมธอดนี้ออก ซึ่งจะช่วยให้ไคลเอ็นต์ข้ามการใช้วิธีการนี้และเพียงแค่เขียนรายการแฮชทั้งหมดที่ต้องการไว้ในโค้ด นี่คือเมธอดรายการมาตรฐานตามที่ระบุไว้ใน https://google.aip.dev/132 และเมธอด HTTP คือ GET |
SearchHashes |
---|
ค้นหาแฮชแบบเต็มซึ่งตรงกับคำนำหน้าที่ระบุ นี่เป็นเมธอดที่กำหนดเองตามที่ระบุไว้ใน https://google.aip.dev/136 (เมธอดที่กำหนดเองหมายถึงเมธอดนี้มีชื่อที่กำหนดเองภายในชื่อเรียกการพัฒนา API ทั่วไปของ Google ไม่ได้หมายถึงการใช้เมธอด HTTP ที่กําหนดเอง) |
BatchGetHashListsRequest
คำขอรับรายการแฮชหลายรายการพร้อมกัน
ช่อง | |
---|---|
names[] |
ต้องระบุ ชื่อของรายการแฮชที่เฉพาะเจาะจง รายการดังกล่าวอาจเป็นรายการภัยคุกคามหรืออาจเป็นแคชส่วนกลาง ชื่อต้องไม่ซ้ำกัน มิเช่นนั้นไคลเอ็นต์จะได้รับข้อผิดพลาด |
version[] |
เวอร์ชันของรายการแฮชที่ไคลเอ็นต์มีอยู่แล้ว หากเป็นครั้งที่ลูกค้าดึงข้อมูลรายการแฮชเป็นครั้งแรก ก็ควรปล่อยช่องนี้ว่างไว้ มิเช่นนั้น ไคลเอ็นต์ควรระบุเวอร์ชันที่ได้รับจากเซิร์ฟเวอร์ก่อนหน้านี้ ไคลเอ็นต์ต้องไม่ดัดแปลงไบต์เหล่านั้น ลูกค้าไม่จำเป็นต้องส่งเวอร์ชันตามลําดับเดียวกับชื่อรายการที่เกี่ยวข้อง ลูกค้าอาจส่งเวอร์ชันในคำขอน้อยกว่าหรือมากกว่าจำนวนชื่อ อย่างไรก็ตาม ลูกค้าต้องไม่ส่งหลายเวอร์ชันที่ตรงกับชื่อเดียวกัน หากส่ง ลูกค้าจะได้รับข้อผิดพลาด หมายเหตุเกี่ยวกับประวัติ: ใน API เวอร์ชัน 4 เรียก API นี้ว่า |
desired_hash_length |
ความยาวของคำนำหน้าแฮชที่ต้องการของแฮชที่แสดงผลเป็นไบต์ จากนั้นเซิร์ฟเวอร์จะแสดงผลคำนำหน้าแฮชทั้งหมดที่มีความยาวตามที่ระบุ รายการแฮชแต่ละรายการมีข้อกำหนดที่แตกต่างกันสำหรับค่าที่ยอมรับได้ของช่อง สำหรับ |
size_constraints |
ข้อจำกัดด้านขนาดของรายการแต่ละรายการ หากไม่ระบุ ระบบจะไม่มีข้อจำกัด โปรดทราบว่าขนาดที่นี่จะแสดงต่อรายการ ไม่ใช่รวมจากทุกรายการ |
BatchGetHashListsResponse
การตอบกลับที่มีรายการแฮชหลายรายการ
ช่อง | |
---|---|
hash_lists[] |
รายการแฮชตามลําดับเดียวกับที่ระบุไว้ในคําขอ |
FullHash
แฮชแบบเต็มที่มีการจับคู่อย่างน้อย 1 รายการ
ช่อง | |
---|---|
full_hash |
แฮชแบบเต็มที่ตรงกัน เงื่อนไขนี้คือแฮช SHA256 ความยาวจะเป็น 32 ไบต์ |
full_hash_details[] |
รายการที่ไม่เรียงลําดับ ช่องซ้ำที่ระบุรายละเอียดที่เกี่ยวข้องกับแฮชแบบเต็มนี้ |
FullHashDetail
รายละเอียดเกี่ยวกับแฮชแบบเต็มที่ตรงกัน
หมายเหตุสำคัญเกี่ยวกับการเข้ากันได้แบบย้อนหลัง: เซิร์ฟเวอร์อาจเพิ่มประเภทภัยคุกคามและแอตทริบิวต์ภัยคุกคามใหม่ได้ทุกเมื่อ ซึ่งถือว่าเป็นการเปลี่ยนแปลงเวอร์ชันเล็กน้อย นโยบายของ Google คือไม่แสดงหมายเลขเวอร์ชันย่อยใน API (ดูนโยบายการระบุเวอร์ชันได้ที่ https://cloud.google.com/apis/design/versioning) ดังนั้นไคลเอ็นต์จึงต้องเตรียมพร้อมที่จะรับข้อความ FullHashDetail
ที่มีค่า ThreatType
enum หรือค่า ThreatAttribute
enum ที่ไคลเอ็นต์ถือว่าไม่ถูกต้อง ดังนั้น ไคลเอ็นต์มีหน้าที่ตรวจสอบความถูกต้องของค่า ThreatType
และ ThreatAttribute
ทั้งหมด หากค่าใดถือว่าไม่ถูกต้อง ไคลเอ็นต์ต้องไม่สนใจข้อความ FullHashDetail
ทั้งหมด
ช่อง | |
---|---|
threat_type |
ประเภทของภัยคุกคาม ช่องนี้จะไม่มีวันว่างเปล่า |
attributes[] |
รายการที่ไม่เรียงลําดับ แอตทริบิวต์เพิ่มเติมเกี่ยวกับแฮชแบบเต็มเหล่านั้น ช่องนี้อาจว่างเปล่า |
GetHashListRequest
คำขอรับรายการแฮช ซึ่งอาจเป็นรายการภัยคุกคามหรือรายการที่ไม่ใช่ภัยคุกคาม เช่น แคชส่วนกลาง
มีอะไรใหม่ใน V5: เราได้เปลี่ยนชื่อฟีเจอร์ที่เคยเรียกว่า states
ใน V4 เป็น version
เพื่อให้ชัดเจน ตอนนี้รายการจะมีชื่อแล้ว ระบบจะนำประเภทแพลตฟอร์มและประเภทรายการภัยคุกคามออก ตอนนี้รายการหลายรายการอาจมีประเภทภัยคุกคามเดียวกัน หรือรายการเดียวอาจเกี่ยวข้องกับภัยคุกคามหลายประเภท ลูกค้าสามารถระบุความยาวแฮชที่ต้องการได้ การดำเนินการนี้เป็นส่วนหนึ่งของคำตอบสำหรับคำนำหน้าแฮชที่มีความยาวแปรผันของ V4 ซึ่งทำให้เกิดปัญหาในการใช้งานไคลเอ็นต์หลายรายการ ตอนนี้แฮชทั้งหมดในรายการมีความยาวเพียงแบบเดียว ซึ่งช่วยให้การใช้งานไคลเอ็นต์มีประสิทธิภาพมากขึ้น เราได้ลดความซับซ้อนของข้อจำกัดและนำประเภทการบีบอัดออก (ระบบจะใช้การบีบอัดเสมอ)
ช่อง | |
---|---|
name |
ต้องระบุ ชื่อของรายการแฮชนี้ ซึ่งอาจเป็นรายการภัยคุกคามหรือแคชส่วนกลางก็ได้ |
version |
เวอร์ชันของรายการแฮชที่ไคลเอ็นต์มีอยู่แล้ว หากเป็นครั้งที่ลูกค้าดึงข้อมูลรายการแฮชเป็นครั้งแรก ช่องนี้ต้องว่างเปล่า ไม่เช่นนั้นไคลเอ็นต์ควรระบุเวอร์ชันที่ได้รับจากเซิร์ฟเวอร์ก่อนหน้านี้ ไคลเอ็นต์ต้องไม่ดัดแปลงไบต์เหล่านั้น มีอะไรใหม่ในเวอร์ชัน 5: ใน API เวอร์ชัน 4 ฟีเจอร์นี้เรียกว่า |
desired_hash_length |
ความยาวของคำนำหน้าแฮชที่ต้องการของแฮชที่แสดงผลเป็นไบต์ จากนั้นเซิร์ฟเวอร์จะแสดงผลคำนำหน้าแฮชทั้งหมดที่มีความยาวตามที่ระบุ รายการแฮชแต่ละรายการมีข้อกำหนดที่แตกต่างกันสำหรับค่าที่ยอมรับได้ของช่อง |
size_constraints |
ข้อจำกัดด้านขนาดของรายการ หากไม่ระบุ ระบบจะไม่มีข้อจำกัด เราขอแนะนำให้ใช้ข้อจำกัดกับอุปกรณ์ทั้งหมดที่มีกำลังการประมวลผล แบนด์วิดท์ หรือพื้นที่เก็บข้อมูลจำกัด |
HashList
รายการแฮชที่ระบุด้วยชื่อ
ช่อง | |
---|---|
name |
ชื่อรายการแฮช โปรดทราบว่าแคชส่วนกลางก็เป็นเพียงรายการแฮชเช่นกันและสามารถอ้างอิงได้ที่นี่ |
version |
เวอร์ชันของรายการแฮช ไคลเอ็นต์ต้องไม่ดัดแปลงไบต์เหล่านั้น |
partial_update |
เมื่อเป็น "จริง" แสดงว่านี่คือความแตกต่างบางส่วนที่มีการเพิ่มและการนําออกโดยอิงตามสิ่งที่ไคลเอ็นต์มีอยู่แล้ว เมื่อเป็นเท็จ รายการนี้จะแสดงแฮชทั้งหมด เมื่อเป็นเท็จ ลูกค้าต้องลบเวอร์ชันที่เก็บไว้ในเครื่องสำหรับรายการแฮชนี้ ซึ่งหมายความว่าเวอร์ชันที่ไคลเอ็นต์มีนั้นล้าสมัยมาก หรือเชื่อว่าข้อมูลไคลเอ็นต์เสียหาย ฟิลด์ เมื่อเป็นจริง ไคลเอ็นต์ต้องใช้การอัปเดตแบบเพิ่มทีละรายการโดยนำออกก่อนแล้วจึงเพิ่ม |
compressed_removals |
ดัชนีการนําออกเวอร์ชันที่เข้ารหัส Rice-delta เนื่องจากรายการแฮชแต่ละรายการมีรายการน้อยกว่า 2^32 รายการ ระบบจึงถือว่าอินเด็กซ์เป็นจำนวนเต็ม 32 บิตและเข้ารหัส |
minimum_wait_duration |
ลูกค้าควรรออย่างน้อยเท่านี้เพื่อรับรายการแฮชอีกครั้ง หากละเว้นหรือเป็น 0 ไคลเอ็นต์ควรดึงข้อมูลทันที เนื่องจากบ่งบอกว่าเซิร์ฟเวอร์มีการอัปเดตเพิ่มเติมที่จะส่งไปยังไคลเอ็นต์ แต่ส่งไม่ได้เนื่องจากข้อจำกัดที่ไคลเอ็นต์ระบุ |
sha256_checksum |
รายการแฮชทั้งหมดที่จัดเรียงแล้ว ซึ่งแฮชอีกครั้งด้วย SHA256 นี่คือการตรวจสอบผลรวมสำหรับรายการแฮชทั้งหมดที่จัดเรียงอยู่ในฐานข้อมูลหลังจากใช้การอัปเดตที่ระบุ ในกรณีที่ไม่มีการอัปเดต เซิร์ฟเวอร์จะไม่ระบุช่องนี้เพื่อระบุว่าไคลเอ็นต์ควรใช้การตรวจสอบผลรวมที่มีอยู่ |
metadata |
ข้อมูลเมตาเกี่ยวกับรายการแฮช ข้อมูลนี้ไม่ได้สร้างขึ้นโดยวิธีการ |
ฟิลด์สหภาพ compressed_additions เวอร์ชันที่มีการเพิ่มที่โค้ดด้วย Rice-delta ความยาวของคำนำหน้าแฮชของรายการที่เพิ่มจะเหมือนกันสำหรับรายการที่เพิ่มทั้งหมดในรายการ โดยอาจเป็น desired_hash_length ที่ส่งโดยไคลเอ็นต์หรือค่าที่เซิร์ฟเวอร์เลือกไว้หากไคลเอ็นต์ละเว้นช่องนั้น compressed_additions ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น |
|
additions_four_bytes |
การเพิ่ม 4 ไบต์ |
additions_eight_bytes |
การเพิ่ม 8 ไบต์ |
additions_sixteen_bytes |
การเพิ่ม 16 ไบต์ |
additions_thirty_two_bytes |
การเพิ่ม 32 ไบต์ |
HashListMetadata
ข้อมูลเมตาเกี่ยวกับรายการแฮชที่เฉพาะเจาะจง
ช่อง | |
---|---|
threat_types[] |
รายการที่ไม่เรียงลําดับ หากไม่ใช่ค่าว่าง ข้อมูลนี้จะระบุว่ารายการแฮชเป็นรายการภัยคุกคามประเภทหนึ่ง และจะแสดงรายการภัยคุกคามประเภทต่างๆ ที่เชื่อมโยงกับแฮชหรือคำนำหน้าแฮชในรายการแฮชนี้ อาจเป็นค่าว่างได้หากรายการไม่ได้แสดงถึงภัยคุกคาม เช่น ในกรณีที่รายการแสดงถึงประเภทที่น่าจะปลอดภัย |
likely_safe_types[] |
รายการที่ไม่เรียงลําดับ หากไม่ว่างเปล่า รายการนี้จะระบุว่ารายการแฮชแสดงรายการแฮชที่น่าจะปลอดภัย และรายการนี้จะแสดงวิธีต่างๆ ที่ถือว่าแฮชดังกล่าวน่าจะปลอดภัย ช่องนี้ใช้ร่วมกับช่อง threat_types ไม่ได้ |
description |
คำอธิบายที่มนุษย์อ่านได้เกี่ยวกับรายการนี้ เขียนเป็นภาษาอังกฤษ |
supported_hash_lengths[] |
ความยาวแฮชที่รองรับสำหรับรายการแฮชนี้ รายการแฮชแต่ละรายการจะรองรับความยาวอย่างน้อย 1 รายการ ดังนั้นช่องนี้จึงจะไม่ว่างเปล่า |
hash_length |
ความยาวแฮชที่รองรับสำหรับรายการแฮชนี้ รายการแฮชแต่ละรายการจะรองรับความยาวเพียงรายการเดียว หากมีการเพิ่มความยาวแฮชที่ต่างกันสำหรับชุดประเภทภัยคุกคามหรือประเภทที่ปลอดภัยเดียวกัน ระบบจะแสดงเป็นรายการแยกต่างหากที่มีชื่อและชุดความยาวแฮชที่แตกต่างกัน |
HashLength
ความยาวของแฮชในรายการแฮช
Enum | |
---|---|
HASH_LENGTH_UNSPECIFIED |
ความยาวที่ไม่ได้ระบุ เซิร์ฟเวอร์จะไม่แสดงค่านี้ในการตอบกลับไคลเอ็นต์ (ในช่อง supported_hash_lengths ) แต่อนุญาตให้ไคลเอ็นต์ส่งค่านี้ไปยังเซิร์ฟเวอร์ (ในช่อง desired_hash_length ) ซึ่งในกรณีนี้เซิร์ฟเวอร์จะเลือกค่าให้โดยอัตโนมัติ ไคลเอ็นต์ควรปล่อยให้เซิร์ฟเวอร์เลือกค่า |
FOUR_BYTES |
แฮชแต่ละรายการคือคำนำหน้า 4 ไบต์ |
EIGHT_BYTES |
แฮชแต่ละรายการคือคำนำหน้า 8 ไบต์ |
SIXTEEN_BYTES |
แฮชแต่ละรายการคือคำนำหน้า 16 ไบต์ |
THIRTY_TWO_BYTES |
แฮชแต่ละรายการเป็นแฮชแบบเต็ม 32 ไบต์ |
LikelySafeType
ประเภทของเว็บไซต์ที่น่าจะปลอดภัย
โปรดทราบว่า SearchHashesResponse
ไม่มี LikelySafeType
โดยเจตนา
Enum | |
---|---|
LIKELY_SAFE_TYPE_UNSPECIFIED |
ไม่รู้จัก |
GENERAL_BROWSING |
เว็บไซต์นี้น่าจะปลอดภัยเพียงพอสำหรับการท่องเว็บทั่วไป หรือที่เรียกว่าแคชส่วนกลาง |
CSD |
เว็บไซต์นี้น่าจะปลอดภัยเพียงพอที่จะไม่ต้องเรียกใช้โมเดลการตรวจจับฝั่งไคลเอ็นต์หรือการตรวจสอบการป้องกันด้วยรหัสผ่าน |
DOWNLOAD |
เว็บไซต์นี้น่าจะปลอดภัยพอที่จะไม่ต้องตรวจสอบการดาวน์โหลดจากเว็บไซต์ |
ListHashListsRequest
คำขอแสดงรายการแฮชที่ใช้ได้
ช่อง | |
---|---|
page_size |
จำนวนรายการแฮชสูงสุดที่จะแสดง บริการอาจแสดงผลน้อยกว่าค่านี้ หากไม่ระบุ เซิร์ฟเวอร์จะเลือกขนาดหน้า ซึ่งอาจใหญ่กว่าจํานวนรายการแฮชเพื่อไม่ให้ต้องมีการแบ่งหน้า |
page_token |
โทเค็นหน้าเว็บที่ได้รับจากการเรียกใช้ |
ListHashListsResponse
การตอบกลับที่มีข้อมูลเมตาเกี่ยวกับรายการแฮช
ช่อง | |
---|---|
hash_lists[] |
รายการแฮชจะแสดงตามลำดับที่กำหนด ระบบจะรวมเฉพาะข้อมูลเมตาเกี่ยวกับรายการแฮชเท่านั้น โดยจะไม่รวมเนื้อหา |
next_page_token |
โทเค็น ซึ่งสามารถส่งเป็น |
RiceDeltaEncoded128Bit
เหมือนกับ RiceDeltaEncoded32Bit
ยกเว้นว่ารูปแบบนี้จะเข้ารหัสตัวเลข 128 บิต
ช่อง | |
---|---|
first_value_hi |
64 บิตบนของรายการแรกในข้อมูลที่เข้ารหัส (แฮช) หากช่องว่างเปล่า บิต 64 บิตบนจะเป็น 0 ทั้งหมด |
first_value_lo |
64 บิตล่างของรายการแรกในข้อมูลที่เข้ารหัส (แฮช) หากช่องว่างเปล่า 64 บิตที่ต่ำกว่าจะเป็น 0 ทั้งหมด |
rice_parameter |
พารามิเตอร์ Golomb-Rice พารามิเตอร์นี้ต้องอยู่ในช่วง 99 ถึง 126 โดยรวม |
entries_count |
จํานวนรายการที่เข้ารหัส Delta ในข้อมูลที่เข้ารหัส หากมีการเข้ารหัสจำนวนเต็มที่เดียว ค่านี้จะเท่ากับ 0 และระบบจะจัดเก็บค่าเดียวใน |
encoded_data |
เดลต้าที่เข้ารหัสซึ่งเข้ารหัสโดยใช้โปรแกรมเข้ารหัส Golomb-Rice |
RiceDeltaEncoded256Bit
เหมือนกับ RiceDeltaEncoded32Bit
ยกเว้นว่าค่านี้เข้ารหัสตัวเลข 256 บิต
ช่อง | |
---|---|
first_value_first_part |
64 บิตแรกของรายการแรกในข้อมูลที่เข้ารหัส (แฮช) หากช่องว่างเปล่า 64 บิตแรกจะเป็น 0 ทั้งหมด |
first_value_second_part |
บิตที่ 65 ถึง 128 ของรายการแรกในข้อมูลที่เข้ารหัส (แฮช) หากช่องว่างเปล่า บิตที่ 65 ถึง 128 จะเป็น 0 ทั้งหมด |
first_value_third_part |
บิตที่ 129 ถึง 192 ของรายการแรกในข้อมูลที่เข้ารหัส (แฮช) หากช่องว่างเปล่า บิตที่ 129 ถึง 192 จะเป็น 0 ทั้งหมด |
first_value_fourth_part |
64 บิตสุดท้ายของรายการแรกในข้อมูลที่เข้ารหัส (แฮช) หากช่องว่างเปล่า 64 บิตสุดท้ายจะเป็น 0 ทั้งหมด |
rice_parameter |
พารามิเตอร์ Golomb-Rice พารามิเตอร์นี้ต้องอยู่ระหว่าง 227 ถึง 254 (รวมค่าแรกและค่าสุดท้าย) |
entries_count |
จํานวนรายการที่เข้ารหัส Delta ในข้อมูลที่เข้ารหัส หากมีการเข้ารหัสจำนวนเต็มที่เดียว ค่านี้จะเท่ากับ 0 และระบบจะจัดเก็บค่าเดียวใน |
encoded_data |
เดลต้าที่เข้ารหัสซึ่งเข้ารหัสโดยใช้โปรแกรมเข้ารหัส Golomb-Rice |
RiceDeltaEncoded32Bit
ข้อมูลที่เข้ารหัสด้วย Rice-Golomb ใช้สำหรับแฮชหรือดัชนีการนำออก เรารับประกันว่าแฮชหรือดัชนีทุกรายการที่นี่จะมีความยาวเท่ากัน และความยาวนี้คือ 32 บิต
โดยทั่วไปแล้ว หากเราจัดเรียงรายการทั้งหมดตามลําดับอักขระ เราจะพบว่าบิตที่มีลําดับสูงกว่ามีแนวโน้มที่จะไม่เปลี่ยนแปลงบ่อยเท่ากับบิตที่มีลําดับต่ำกว่า ซึ่งหมายความว่าหากเรานำความแตกต่างที่อยู่ติดกันระหว่างรายการมาพิจารณาด้วย บิตลำดับที่สูงขึ้นก็มีโอกาสสูงที่จะมีค่าเป็น 0 ซึ่งใช้ประโยชน์จากแนวโน้มสูงที่จะเป็น 0 นี้โดยการเลือกจำนวนบิตที่แน่นอน โดยบิตที่มีนัยสำคัญมากกว่านี้ทั้งหมดมีแนวโน้มจะเป็น 0 เราจึงใช้การเข้ารหัสแบบยูนิตารี ดูที่ช่อง rice_parameter
หมายเหตุเกี่ยวกับประวัติ: การเข้ารหัส Rice-delta นี้เริ่มใช้ใน API เวอร์ชัน 4 ในเวอร์ชัน 5 มีการปรับปรุงที่สำคัญ 2 อย่าง ประการแรก ตอนนี้การเข้ารหัส Rice-delta พร้อมใช้งานกับคำนำหน้าแฮชที่ยาวกว่า 4 ไบต์แล้ว ประการที่ 2 ตอนนี้ระบบจะถือว่าข้อมูลที่เข้ารหัสเป็น Big-endian เพื่อหลีกเลี่ยงขั้นตอนการจัดเรียงที่เสียค่าใช้จ่าย
ช่อง | |
---|---|
first_value |
รายการแรกในข้อมูลที่เข้ารหัส (แฮชหรือดัชนี) หรือค่าของรายการนั้น หากมีการเข้ารหัสเฉพาะคำนำหน้าหรือดัชนีแฮชรายการเดียว หากช่องว่างเปล่า รายการจะเป็น 0 |
rice_parameter |
พารามิเตอร์ Golomb-Rice พารามิเตอร์นี้ต้องอยู่ระหว่าง 3 ถึง 30 |
entries_count |
จํานวนรายการที่เข้ารหัส Delta ในข้อมูลที่เข้ารหัส หากมีการเข้ารหัสจำนวนเต็มที่เดียว ค่านี้จะเท่ากับ 0 และระบบจะจัดเก็บค่าเดียวใน |
encoded_data |
เดลต้าที่เข้ารหัสซึ่งเข้ารหัสโดยใช้โปรแกรมเข้ารหัส Golomb-Rice |
RiceDeltaEncoded64Bit
เหมือนกับ RiceDeltaEncoded32Bit
ยกเว้นว่ารูปแบบนี้จะเข้ารหัสตัวเลข 64 บิต
ช่อง | |
---|---|
first_value |
รายการแรกในข้อมูลที่เข้ารหัส (แฮช) หรือค่าของรายการนั้นหากมีการเข้ารหัสเฉพาะคำนำหน้าแฮชรายการเดียว หากช่องว่างเปล่า รายการจะเป็น 0 |
rice_parameter |
พารามิเตอร์ Golomb-Rice พารามิเตอร์นี้ต้องอยู่ระหว่าง 35 ถึง 62 |
entries_count |
จํานวนรายการที่เข้ารหัส Delta ในข้อมูลที่เข้ารหัส หากมีการเข้ารหัสจำนวนเต็มที่เดียว ค่านี้จะเท่ากับ 0 และระบบจะจัดเก็บค่าเดียวใน |
encoded_data |
เดลต้าที่เข้ารหัสซึ่งเข้ารหัสโดยใช้โปรแกรมเข้ารหัส Golomb-Rice |
SearchHashesRequest
คำขอที่ไคลเอ็นต์ส่งเพื่อค้นหาคำนำหน้าแฮชที่เฉพาะเจาะจง
ซึ่งออกแบบมาเพื่อค้นหาเฉพาะรายการภัยคุกคาม และไม่ค้นหารายการที่ไม่ใช่ภัยคุกคาม เช่น แคชส่วนกลาง
สิ่งที่ใหม่ใน V5: ลูกค้าไม่จําเป็นต้องระบุ ClientInfo
หรือสถานะของรายการแฮชในฐานข้อมูลในเครื่อง การดำเนินการนี้มีไว้เพื่อความเป็นส่วนตัวที่ดียิ่งขึ้น นอกจากนี้ ลูกค้าไม่จําเป็นต้องส่งประเภทภัยคุกคามที่สนใจ
ช่อง | |
---|---|
hash_prefixes[] |
ต้องระบุ คำนำหน้าแฮชที่จะค้นหา ลูกค้าต้องไม่ส่งคำนำหน้าแฮชเกิน 1,000 รายการ อย่างไรก็ตาม ไคลเอ็นต์ไม่ควรส่งคำนำหน้าแฮชเกิน 30 รายการตามขั้นตอนการประมวลผล URL ปัจจุบันคำนำหน้าแฮชแต่ละรายการต้องมีความยาว 4 ไบต์พอดี ซึ่งอาจผ่อนปรนในอนาคต |
filter |
ไม่บังคับ หากลูกค้าสนใจการกรอง เช่น การดึงข้อมูลภัยคุกคามบางประเภทเท่านั้น ก็สามารถระบุได้ หากละเว้น ระบบจะแสดงภัยคุกคามทั้งหมดที่ตรงกัน เราขอแนะนำอย่างยิ่งให้ละเว้นการระบุค่านี้เพื่อให้ได้การปกป้องที่สมบูรณ์ที่สุดจาก Google Safe Browsing ตัวกรองจะระบุโดยใช้ Common Expression Language ของ Google ซึ่งมีอยู่ที่นี่ https://github.com/google/cel-spec พร้อมด้วยตัวอย่างทั่วไป ตัวอย่างที่เฉพาะเจาะจงบางส่วนที่ใช้ได้มีดังนี้ ตัวกรอง ตัวกรอง |
SearchHashesResponse
การตอบกลับที่แสดงหลังจากค้นหาแฮชของภัยคุกคาม
หากไม่พบรายการใดเลย เซิร์ฟเวอร์จะแสดงสถานะ "OK" (รหัสสถานะ HTTP 200) โดยที่ช่อง full_hashes
ว่างเปล่า แทนที่จะแสดงสถานะ NOT_FOUND (รหัสสถานะ HTTP 404)
มีอะไรใหม่ใน V5: มีเส้นแบ่งระหว่าง FullHash
กับ FullHashDetail
ในกรณีที่แฮชแสดงถึงเว็บไซต์ที่มีภัยคุกคามหลายรายการ (เช่น ทั้ง MALWARE และ SOCIAL_ENGINEERING) ก็ไม่จำเป็นต้องส่งแฮชแบบเต็ม 2 ครั้งเหมือนใน V4 นอกจากนี้ เราได้ลดความซับซ้อนของระยะเวลาแคชให้เหลือเพียงช่อง cache_duration
ช่องเดียว
ช่อง | |
---|---|
full_hashes[] |
รายการที่ไม่เรียงลําดับ รายการแฮชแบบไม่เรียงลำดับที่พบ |
cache_duration |
ระยะเวลาของแคชฝั่งไคลเอ็นต์ โดยลูกค้าต้องเพิ่มระยะเวลานี้ลงในเวลาปัจจุบันเพื่อระบุเวลาหมดอายุ จากนั้นเวลาหมดอายุจะมีผลกับคำนำหน้าแฮชทั้งหมดที่ไคลเอ็นต์ค้นหาในคำขอ ไม่ว่าจะมีการแสดงแฮชแบบเต็มกี่รายการในการตอบกลับ แม้ว่าเซิร์ฟเวอร์จะไม่แสดงแฮชแบบเต็มสําหรับคำนำหน้าแฮชที่เฉพาะเจาะจง แต่ไคลเอ็นต์ต้องแคชข้อมูลนี้ด้วย เฉพาะในกรณีที่ช่อง สำคัญ: ลูกค้าต้องไม่ถือว่าเซิร์ฟเวอร์จะแสดงระยะเวลาแคชเดียวกันสำหรับการตอบกลับทั้งหมด เซิร์ฟเวอร์อาจเลือกระยะเวลาแคชที่แตกต่างกันสำหรับการตอบกลับแต่ละรายการ ทั้งนี้ขึ้นอยู่กับสถานการณ์ |
SizeConstraints
ข้อจำกัดเกี่ยวกับขนาดของรายการแฮช
ช่อง | |
---|---|
max_update_entries |
จํานวนรายการสูงสุด การอัปเดตจะมีรายการไม่เกินค่านี้ แต่อาจมีการอัปเดตที่มีรายการน้อยกว่าค่านี้ ค่านี้ต้องมีอย่างน้อย 1,024 หากไม่ระบุหรือเป็น 0 ระบบจะไม่จำกัดขนาดการอัปเดต |
max_database_entries |
กำหนดจำนวนรายการสูงสุดที่ไคลเอ็นต์ต้องการให้มีในฐานข้อมูลในเครื่องสำหรับรายการ (เซิร์ฟเวอร์อาจทําให้ไคลเอ็นต์จัดเก็บรายการน้อยกว่าจํานวนนี้) หากไม่ระบุหรือเป็น 0 ระบบจะไม่จำกัดขนาดฐานข้อมูล |
ThreatAttribute
แอตทริบิวต์ของภัยคุกคาม แอตทริบิวต์เหล่านี้อาจให้ความหมายเพิ่มเติมแก่ภัยคุกคามหนึ่งๆ แต่ไม่ส่งผลต่อประเภทภัยคุกคาม เช่น แอตทริบิวต์หนึ่งอาจระบุความเชื่อมั่นที่ต่ำลง ขณะที่แอตทริบิวต์อื่นอาจระบุความเชื่อมั่นที่สูงกว่า ทั้งนี้อาจมีการเพิ่มแอตทริบิวต์อื่นๆ ในอนาคต
Enum | |
---|---|
THREAT_ATTRIBUTE_UNSPECIFIED |
แอตทริบิวต์ที่ไม่รู้จัก หากเซิร์ฟเวอร์แสดงผลค่านี้ ไคลเอ็นต์จะไม่สนใจ FullHashDetail ที่แนบมาโดยสิ้นเชิง |
CANARY |
ระบุว่าไม่ควรใช้ threat_type เพื่อบังคับใช้ |
FRAME_ONLY |
ระบุว่าควรใช้ threat_type กับการบังคับใช้ในเฟรมเท่านั้น |
ThreatType
ประเภทของภัยคุกคาม
Enum | |
---|---|
THREAT_TYPE_UNSPECIFIED |
ประเภทภัยคุกคามที่ไม่รู้จัก หากเซิร์ฟเวอร์แสดงผลค่านี้ ไคลเอ็นต์จะไม่สนใจ FullHashDetail ที่แนบมาโดยสิ้นเชิง |
MALWARE |
ประเภทภัยคุกคามจากมัลแวร์ มัลแวร์คือซอฟต์แวร์หรือแอปพลิเคชันบนอุปกรณ์เคลื่อนที่ใดๆ ก็ตามที่ออกแบบมาเพื่อสร้างความเสียหายแก่คอมพิวเตอร์ อุปกรณ์เคลื่อนที่ ซอฟต์แวร์ที่ทำงานอยู่ หรือผู้ใช้ซอฟต์แวร์นั้นๆ มัลแวร์มีลักษณะการทำงานที่เป็นอันตราย ซึ่งอาจรวมถึงการติดตั้งซอฟต์แวร์โดยไม่ได้รับคำยินยอมจากผู้ใช้ และการติดตั้งซอฟต์แวร์ที่เป็นอันตรายอย่างเช่น ไวรัส ดูข้อมูลเพิ่มเติมได้ที่นี่ |
SOCIAL_ENGINEERING |
ประเภทภัยคุกคามจากวิศวกรรมสังคม หน้าวิศวกรรมสังคมแอบอ้างว่าดำเนินการในนามของบุคคลที่สาม โดยมีเจตนาทำให้ผู้ชมสับสนและดำเนินการในลักษณะที่ผู้ชมจะไว้วางใจเฉพาะตัวแทนที่แท้จริงของบุคคลที่สามรายนั้น ฟิชชิงเป็นวิศวกรรมสังคมประเภทหนึ่งที่หลอกลวงผู้ชมให้ดำเนินการบางอย่าง เช่น การให้ข้อมูล เช่น ข้อมูลเข้าสู่ระบบ ดูข้อมูลเพิ่มเติมได้ที่นี่ |
UNWANTED_SOFTWARE |
ประเภทภัยคุกคามซอฟต์แวร์ไม่พึงประสงค์ ซอฟต์แวร์ไม่พึงประสงค์คือซอฟต์แวร์ที่ไม่เป็นไปตามหลักเกณฑ์ด้านซอฟต์แวร์ของ Google แต่ไม่ใช่มัลแวร์ |
POTENTIALLY_HARMFUL_APPLICATION |
ประเภทภัยคุกคามแอปพลิเคชันที่อาจเป็นอันตราย ตามที่ Google Play Protect ใช้สำหรับ Play Store |