Package google.security.safebrowsing.v5alpha1

Chỉ mục

SafeBrowsing

API Duyệt web an toàn cho phép khách hàng kiểm tra tài nguyên web (thường là các URL) theo danh sách các tài nguyên web không an toàn được cập nhật liên tục của Google.

BatchGetHashLists

rpc BatchGetHashLists(BatchGetHashListsRequest) returns (BatchGetHashListsResponse)

Nhận nhiều danh sách băm cùng lúc.

Việc khách hàng cần có nhiều danh sách băm là điều rất phổ biến. Phương thức này được ưu tiên hơn việc sử dụng phương thức Get thông thường nhiều lần.

Đây là phương thức Lấy hàng loạt thông thường do https://google.aip.dev/231 xác định và phương thức HTTP cũng là GET.

GetHashList

rpc GetHashList(GetHashListRequest) returns (HashList)

Nhận nội dung mới nhất của danh sách băm. Danh sách băm có thể theo một danh sách mối đe doạ hoặc danh sách không phải mối đe doạ, chẳng hạn như Bộ nhớ đệm chung.

Đây là phương thức Get tiêu chuẩn theo quy định của https://google.aip.dev/131 và phương thức HTTP cũng là GET.

ListHashLists

rpc ListHashLists(ListHashListsRequest) returns (ListHashListsResponse)

Liệt kê danh sách băm.

Trong API V5, Google sẽ không bao giờ xoá danh sách băm từng được phương thức này trả về. Điều này cho phép ứng dụng bỏ qua bằng phương thức này và chỉ cần mã hoá cứng tất cả danh sách băm cần thiết.

Đây là phương thức List (Danh sách) tiêu chuẩn do https://google.aip.dev/132 xác định và phương thức HTTP là GET.

SearchHashes

rpc SearchHashes(SearchHashesRequest) returns (SearchHashesResponse)

Tìm kiếm toàn bộ hàm băm khớp với các tiền tố đã chỉ định.

Đây là một phương thức tuỳ chỉnh theo quy định của https://google.aip.dev/136 (phương thức tuỳ chỉnh là phương thức này có tên tuỳ chỉnh theo thuật ngữ phát triển API chung của Google; không phải việc sử dụng một phương thức HTTP tuỳ chỉnh).

BatchGetHashListsRequest

Yêu cầu nhận nhiều danh sách băm cùng một lúc.

Trường
names[]

string

Bắt buộc. Tên của danh sách băm cụ thể. Danh sách này CÓ THỂ là một danh sách mối đe doạ hoặc có thể là Bộ nhớ đệm chung. Tên KHÔNG ĐƯỢC chứa nội dung trùng lặp; nếu có, ứng dụng sẽ gặp lỗi.

version[]

bytes

Các phiên bản của danh sách băm mà ứng dụng đã có. Nếu đây là lần đầu tiên ứng dụng tìm nạp danh sách băm, bạn nên để trống trường này. Nếu không, ứng dụng phải cung cấp các phiên bản đã nhận được trước đó từ máy chủ. Ứng dụng KHÔNG ĐƯỢC thao tác với các byte đó.

Ứng dụng không cần gửi các phiên bản theo cùng thứ tự với tên danh sách tương ứng. Ứng dụng có thể gửi ít hoặc nhiều phiên bản hơn trong một yêu cầu so với tên. Tuy nhiên, ứng dụng KHÔNG ĐƯỢC gửi nhiều phiên bản tương ứng với cùng một tên; nếu đã gửi, ứng dụng sẽ gặp lỗi.

Lưu ý trước đây: trong phiên bản 4 của API, API này được gọi là states; giờ đây, API này được đổi tên thành version để cho rõ ràng hơn.

desired_hash_length

HashLength

Độ dài tiền tố hàm băm mong muốn của hàm băm được trả về tính bằng byte. Sau đó, máy chủ sẽ trả về tất cả các tiền tố băm trong độ dài đã chỉ định này.

Các danh sách băm khác nhau có các yêu cầu khác nhau về các giá trị được chấp nhận của trường desired_hash_length. Bạn có thể tìm thấy thông tin này ở trường supported_hash_lengths trên HashListMetadata. Nếu desired_hash_length không chỉ định giá trị trong supported_hash_lengths, hệ thống sẽ trả về lỗi cho ứng dụng.

Cụ thể, đối với BatchGetHashListsRequest, ứng dụng không thể chỉ định một desired_hash_length khác cho các danh sách khác nhau. Nếu cần thực hiện việc đó, ứng dụng nên chia thành nhiều BatchGetHashListsRequest.

size_constraints

SizeConstraints

Các giới hạn về kích thước trong mỗi danh sách. Nếu bỏ qua thì sẽ không có hạn chế nào. Xin lưu ý rằng kích thước ở đây là theo từng danh sách, không được tổng hợp trên tất cả các danh sách.

BatchGetHashListsResponse

Phản hồi chứa nhiều danh sách hàm băm.

Trường
hash_lists[]

HashList

Danh sách hàm băm theo cùng thứ tự nêu trong yêu cầu.

FullHash

Hàm băm đầy đủ được xác định có một hoặc nhiều kết quả trùng khớp.

Trường
full_hash

bytes

Hàm băm đầy đủ trùng khớp. Đây là hàm băm SHA256. Độ dài sẽ là 32 byte.

full_hash_details[]

FullHashDetail

Danh sách không theo thứ tự. Một trường lặp lại xác định các chi tiết liên quan đến hàm băm đầy đủ này.

FullHashDetail

Thông tin chi tiết về một hàm băm đầy đủ trùng khớp.

Lưu ý quan trọng về khả năng tương thích chuyển tiếp: các kiểu mối đe doạ và thuộc tính mối đe doạ mới có thể được máy chủ thêm vào bất cứ lúc nào; những phần bổ sung đó được coi là các thay đổi nhỏ về phiên bản. Theo chính sách của Google, Google không tiết lộ số phiên bản nhỏ trong API (xem https://cloud.google.com/apis/design/versioning để biết chính sách về phiên bản). Vì vậy, ứng dụng PHẢI chuẩn bị để nhận các thông báo FullHashDetail chứa giá trị enum ThreatType hoặc giá trị enum ThreatAttribute bị ứng dụng coi là không hợp lệ. Do đó, ứng dụng có trách nhiệm kiểm tra tính hợp lệ của tất cả các giá trị enum ThreatTypeThreatAttribute; nếu có bất kỳ giá trị nào được coi là không hợp lệ, ứng dụng PHẢI bỏ qua toàn bộ thông báo FullHashDetail.

Trường
threat_type

ThreatType

Kiểu đe doạ. Trường này sẽ không bao giờ để trống.

attributes[]

ThreatAttribute

Danh sách không theo thứ tự. Các thuộc tính bổ sung về hàm băm đầy đủ đó. Có thể trống.

GetHashListRequest

Yêu cầu lấy danh sách băm, có thể là danh sách mối đe doạ hoặc danh sách không phải mối đe doạ, chẳng hạn như Bộ nhớ đệm chung.

Tính năng mới trong phiên bản 5: Tính năng trước đây được gọi là states trong phiên bản 4 sẽ được đổi tên thành version để đảm bảo sự rõ ràng. Danh sách nay được đặt tên, các loại nền tảng và loại mục nhập mối đe doạ sẽ bị xoá. Hiện tại, nhiều danh sách có thể có cùng kiểu mối đe doạ hoặc có một danh sách duy nhất liên quan đến nhiều kiểu mối đe doạ. Ứng dụng có thể mới chỉ định độ dài hàm băm mong muốn. Đây là một phần của câu trả lời cho các tiền tố băm có độ dài thay đổi của V4, điều này đã gây ra rắc rối trong nhiều triển khai ứng dụng: tất cả hàm băm trong danh sách hiện có độ dài duy nhất, cho phép triển khai ứng dụng hiệu quả hơn nhiều. Các quy tắc ràng buộc được đơn giản hoá và loại bỏ kiểu nén (luôn áp dụng nén).

Trường
name

string

Bắt buộc. Tên của danh sách băm cụ thể này. Đây có thể là một danh sách mối đe doạ hoặc có thể là Bộ nhớ đệm chung.

version

bytes

Phiên bản danh sách băm mà ứng dụng đã có. Nếu đây là lần đầu tiên ứng dụng tìm nạp danh sách băm, thì trường này PHẢI để trống. Nếu không, ứng dụng PHẢI cung cấp phiên bản trước đó đã nhận được từ máy chủ. Ứng dụng KHÔNG ĐƯỢC thao tác với các byte đó.

Có gì mới trong V5: trong phiên bản 4 của API, API này được gọi là states; hiện được đổi tên thành version để cho rõ ràng hơn.

desired_hash_length

HashLength

Độ dài tiền tố hàm băm mong muốn của hàm băm được trả về tính bằng byte. Sau đó, máy chủ sẽ trả về tất cả các tiền tố băm trong độ dài đã chỉ định này.

Các danh sách băm khác nhau có các yêu cầu khác nhau về các giá trị được chấp nhận của trường desired_hash_length. Bạn có thể tìm thấy thông tin này ở trường supported_hash_lengths trên HashListMetadata. Nếu desired_hash_length không chỉ định giá trị trong supported_hash_lengths, hệ thống sẽ trả về lỗi.

size_constraints

SizeConstraints

Các điều kiện ràng buộc về kích thước trong danh sách. Nếu bỏ qua thì sẽ không có hạn chế nào. Bạn nên sử dụng các quy tắc ràng buộc trên tất cả các thiết bị có công suất xử lý, băng thông hoặc bộ nhớ hạn chế.

HashList

Danh sách hàm băm được xác định theo tên.

Trường
name

string

Tên của danh sách băm. Xin lưu ý rằng Bộ nhớ đệm chung cũng chỉ là một danh sách băm và có thể tham khảo tại đây.

version

bytes

Phiên bản của danh sách băm. Ứng dụng KHÔNG ĐƯỢC thao tác với các byte đó.

partial_update

bool

Khi đúng, đây là điểm khác biệt một phần, trong đó có nội dung bổ sung và xoá dựa trên những dữ liệu mà ứng dụng đã có. Nếu giá trị là sai, thì đây là danh sách băm hoàn chỉnh.

Khi giá trị là sai, ứng dụng PHẢI xoá mọi phiên bản được lưu trữ cục bộ đối với danh sách băm này. Điều này có nghĩa là phiên bản mà ứng dụng sở hữu đã bị lỗi thời nghiêm trọng hoặc dữ liệu của ứng dụng được cho là bị hỏng. Trường compressed_removals sẽ trống.

Nếu đúng, ứng dụng PHẢI áp dụng bản cập nhật gia tăng bằng cách áp dụng các lượt xoá rồi bổ sung.

compressed_removals

RiceDeltaEncoded32Bit

Phiên bản chỉ mục xoá được mã hoá Tea-delta. Vì mỗi danh sách băm chắc chắn có ít hơn 2^32 mục nhập, nên các chỉ mục được coi là số nguyên 32 bit và được mã hóa.

minimum_wait_duration

Duration

Ứng dụng phải đợi ít nhất bằng khoảng thời gian này để tải lại danh sách băm. Nếu bỏ qua hoặc không, máy khách NÊN tìm nạp ngay lập tức vì nó chỉ ra rằng máy chủ có bản cập nhật bổ sung sẽ được gửi đến máy khách, nhưng không thể do những ràng buộc do máy khách chỉ định.

metadata

HashListMetadata

Siêu dữ liệu về danh sách băm. Trường này không được điền bằng phương thức GetHashList mà được điền bằng phương thức ListHashLists.

Trường hợp compressed_additions. Phiên bản bổ sung được mã hoá Tea-delta. Độ dài tiền tố băm của các lượt bổ sung là thống nhất trên tất cả các mục bổ sung trong danh sách. Đó có thể là desired_hash_length do ứng dụng gửi hoặc giá trị do máy chủ chọn nếu ứng dụng bỏ qua trường đó. compressed_additions chỉ có thể là một trong những trạng thái sau:
additions_four_bytes

RiceDeltaEncoded32Bit

Các dữ liệu bổ sung 4 byte.

additions_eight_bytes

RiceDeltaEncoded64Bit

Các dữ liệu bổ sung 8 byte.

additions_sixteen_bytes

RiceDeltaEncoded128Bit

Các dữ liệu bổ sung 16 byte.

additions_thirty_two_bytes

RiceDeltaEncoded256Bit

Các dữ liệu bổ sung 32 byte.

Trường hợp checksum. Đây là giá trị tổng kiểm của danh sách đã sắp xếp gồm tất cả hàm băm có trong cơ sở dữ liệu sau khi áp dụng nội dung cập nhật được cung cấp. Đây là trường "một trong" cho phép nhiều thuật toán băm. Máy chủ cũng có thể bỏ qua trường này (trong trường hợp không có nội dung cập nhật nào được cung cấp) để cho biết rằng ứng dụng nên sử dụng giá trị tổng kiểm hiện có. checksum chỉ có thể là một trong những trạng thái sau:
sha256_checksum

bytes

Danh sách đã sắp xếp tất cả các hàm băm, được băm lại bằng SHA256.

HashListMetadata

Siêu dữ liệu về một danh sách băm cụ thể.

Trường
threat_types[]

ThreatType

Danh sách không theo thứ tự. Nếu không để trống, giá trị này sẽ cho biết danh sách băm thuộc một loại danh sách mối đe doạ, đồng thời liệt kê các loại mối đe doạ liên quan đến tiền tố hàm băm hoặc tiền tố hàm băm trong danh sách băm này. Có thể để trống nếu mục nhập không đại diện cho mối đe doạ, chẳng hạn như trong trường hợp mục nhập đó đại diện cho một loại có khả năng an toàn.

likely_safe_types[]

LikelySafeType

Danh sách không theo thứ tự. Nếu không để trống, thì giá trị này sẽ cho biết rằng danh sách hàm băm đại diện cho danh sách các hàm băm có khả năng an toàn, đồng thời liệt kê những cách các hàm băm được coi là an toàn. Trường này loại trừ lẫn nhau với trường Explore_types (loại mối đe doạ).

mobile_optimized

bool

Liệu danh sách này có được tối ưu hóa cho thiết bị di động (Android và iOS) hay không.

description

string

Nội dung mô tả mà con người có thể đọc được về danh sách này. Viết bằng tiếng Anh.

supported_hash_lengths[]

HashLength

Độ dài hàm băm được hỗ trợ cho danh sách hàm băm này. Mỗi danh sách băm sẽ hỗ trợ ít nhất một độ dài. Do đó, trường này sẽ không để trống.

HashLength

Độ dài của hàm băm trong danh sách băm.

Enum
HASH_LENGTH_UNSPECIFIED Thời lượng chưa chỉ định. Máy chủ sẽ không trả về giá trị này trong các phản hồi cho ứng dụng khách (trong trường supported_hash_lengths), nhưng ứng dụng được phép gửi giá trị này đến máy chủ (trong trường desired_hash_length). Trong trường hợp đó, máy chủ sẽ tự động chọn một giá trị. Ứng dụng PHẢI cho phép máy chủ chọn một giá trị.
FOUR_BYTES Mỗi hàm băm là một tiền tố 4 byte.
EIGHT_BYTES Mỗi hàm băm là một tiền tố 8 byte.
SIXTEEN_BYTES Mỗi hàm băm là một tiền tố 16 byte.
THIRTY_TWO_BYTES Mỗi hàm băm là một hàm băm đầy đủ 32 byte.

LikelySafeType

Các loại trang web có khả năng an toàn.

Xin lưu ý rằng SearchHashesResponse cố ý không chứa LikelySafeType.

Enum
LIKELY_SAFE_TYPE_UNSPECIFIED Không xác định.
GENERAL_BROWSING Trang web này có thể đủ an toàn để duyệt web chung. Bộ nhớ đệm này còn gọi là bộ nhớ đệm chung.
CSD Trang web này có khả năng đủ an toàn để không cần chạy mô hình Phát hiện phía máy khách hoặc kiểm tra bảo vệ bằng mật khẩu.
DOWNLOAD Trang web này có khả năng đủ an toàn để bạn không cần phải kiểm tra tệp tải xuống từ trang web.

ListHashListsRequest

Yêu cầu liệt kê danh sách băm hiện có.

Trường
page_size

int32

Số lượng danh sách băm tối đa cần trả về. Dịch vụ có thể trả về ít hơn giá trị này. Nếu không chỉ định, máy chủ sẽ chọn kích thước trang có thể lớn hơn số lượng danh sách băm để không cần phải phân trang.

page_token

string

Mã thông báo trang, nhận được từ lệnh gọi ListHashLists trước đó. Cung cấp URL này để truy xuất trang tiếp theo.

ListHashListsResponse

Phản hồi chứa siêu dữ liệu về danh sách băm.

Trường
hash_lists[]

HashList

Danh sách hàm băm theo thứ tự tuỳ ý. Chỉ siêu dữ liệu về danh sách băm sẽ được đưa vào, chứ không phải nội dung.

next_page_token

string

Mã thông báo này có thể được gửi dưới dạng page_token để truy xuất trang tiếp theo. Nếu trường này bị bỏ qua, thì không có trang tiếp theo nào.

gạo được mã hóa 128 bit

Giống như RiceDeltaEncoded32Bit, ngoại trừ mã này mã hoá các số 128 bit.

Trường
first_value_hi

uint64

64 bit trên của mục đầu tiên trong dữ liệu được mã hoá (hàm băm). Nếu trường này trống, thì 64 bit phía trên đều bằng 0.

first_value_lo

fixed64

64 bit dưới của mục đầu tiên trong dữ liệu được mã hoá (hàm băm). Nếu trường này trống, thì 64 bit thấp hơn đều bằng 0.

rice_parameter

int32

Thông số Golomb-Rice. Tham số này được đảm bảo nằm trong khoảng từ 99 đến 126.

entries_count

int32

Số mục nhập được mã hoá delta bằng dữ liệu được mã hoá. Nếu chỉ có một số nguyên được mã hoá, thì giá trị này sẽ bằng 0 và giá trị duy nhất sẽ được lưu trữ trong first_value.

encoded_data

bytes

Các delta đã mã hoá được mã hoá bằng trình lập trình Golomb-Rice.

Mã hoá 256Bit

Giống như RiceDeltaEncoded32Bit, ngoại trừ mã này mã hoá các số 256 bit.

Trường
first_value_first_part

uint64

64 bit đầu tiên của mục nhập đầu tiên trong dữ liệu được mã hoá (hàm băm). Nếu trường này trống, 64 bit đầu tiên đều bằng 0.

first_value_second_part

fixed64

Từ 65 đến 128 bit của mục nhập đầu tiên trong dữ liệu được mã hóa (hàm băm). Nếu trường này trống, các bit từ 65 đến 128 đều bằng 0.

first_value_third_part

fixed64

Từ 129 đến 192 bit của mục đầu tiên trong dữ liệu mã hóa (băm). Nếu trường này trống, các bit từ 129 đến 192 đều bằng 0.

first_value_fourth_part

fixed64

64 bit cuối cùng của mục nhập đầu tiên trong dữ liệu được mã hoá (hàm băm). Nếu trường này trống, 64 bit cuối cùng đều bằng 0.

rice_parameter

int32

Thông số Golomb-Rice. Tham số này được đảm bảo nằm trong khoảng từ 227 đến 254.

entries_count

int32

Số mục nhập được mã hoá delta bằng dữ liệu được mã hoá. Nếu chỉ có một số nguyên được mã hoá, thì giá trị này sẽ bằng 0 và giá trị duy nhất sẽ được lưu trữ trong first_value.

encoded_data

bytes

Các delta đã mã hoá được mã hoá bằng trình lập trình Golomb-Rice.

Mã hóa 32Bit

Dữ liệu mã hoá gạo-Golomb. Dùng cho hàm băm hoặc chỉ mục xoá. Chúng tôi đảm bảo rằng mọi hàm băm hoặc chỉ mục ở đây đều có cùng độ dài và độ dài này chính xác là 32 bit.

Nói chung, nếu chúng tôi sắp xếp tất cả các mục nhập theo từ điển, chúng tôi sẽ thấy rằng các bit thứ tự cao hơn có xu hướng không thường xuyên thay đổi như các bit thứ tự thấp hơn. Điều này có nghĩa là nếu chúng ta lấy mức chênh lệch liền kề giữa các mục nhập, thì các bit có thứ tự cao hơn sẽ có xác suất bằng 0 cao hơn. Phương pháp này khai thác xác suất cao bằng 0 này bằng cách về cơ bản là chọn một số lượng bit nhất định; tất cả các bit có ý nghĩa hơn số này đều có khả năng bằng 0, vì vậy chúng tôi sử dụng phương thức mã hoá đơn. Xem trường rice_parameter.

Lưu ý trước đây: mã hoá Tea-delta được sử dụng lần đầu trong phiên bản 4 của API này. Trong phiên bản 5, hai cải tiến đáng kể đã được thực hiện: thứ nhất, phương thức mã hoá Tea-delta hiện đã có sẵn với các tiền tố băm dài hơn 4 byte; thứ hai, dữ liệu được mã hoá hiện được xử lý dưới dạng Big-endian để tránh phải thực hiện bước sắp xếp tốn kém.

Trường
first_value

uint32

Mục nhập đầu tiên trong dữ liệu được mã hoá (hàm băm hoặc chỉ mục) hoặc giá trị của mục nhập đó nếu chỉ có một tiền tố hoặc chỉ mục băm duy nhất được mã hoá. Nếu trường trống thì mục nhập sẽ bằng 0.

rice_parameter

int32

Thông số Golomb-Rice. Tham số này được đảm bảo nằm trong khoảng từ 3 đến 30.

entries_count

int32

Số mục nhập được mã hoá delta bằng dữ liệu được mã hoá. Nếu chỉ có một số nguyên được mã hoá, thì giá trị này sẽ bằng 0 và giá trị duy nhất sẽ được lưu trữ trong first_value.

encoded_data

bytes

Các delta đã mã hoá được mã hoá bằng trình lập trình Golomb-Rice.

Mã hóa 64 bit

Giống như RiceDeltaEncoded32Bit, ngoại trừ mã này mã hoá các số 64 bit.

Trường
first_value

uint64

Mục đầu tiên trong dữ liệu được mã hoá (hàm băm) hoặc giá trị của mục đó nếu chỉ có một tiền tố băm duy nhất được mã hoá. Nếu trường trống thì mục nhập sẽ bằng 0.

rice_parameter

int32

Thông số Golomb-Rice. Tham số này được đảm bảo nằm trong khoảng từ 35 đến 62.

entries_count

int32

Số mục nhập được mã hoá delta bằng dữ liệu được mã hoá. Nếu chỉ có một số nguyên được mã hoá, thì giá trị này sẽ bằng 0 và giá trị duy nhất sẽ được lưu trữ trong first_value.

encoded_data

bytes

Các delta đã mã hoá được mã hoá bằng trình lập trình Golomb-Rice.

SearchHashesRequest

Yêu cầu mà ứng dụng đưa ra để tìm kiếm các tiền tố băm cụ thể.

Tính năng này được thiết kế để chỉ tìm kiếm danh sách các mối đe doạ và không tìm kiếm các danh sách không đe doạ như Bộ nhớ đệm chung.

Tính năng mới trong phiên bản 5: Ứng dụng không cần chỉ định ClientInfo hoặc trạng thái của danh sách băm trong cơ sở dữ liệu cục bộ. Điều này là để cải thiện quyền riêng tư. Hơn nữa, khách hàng không cần gửi những mối đe doạ mà họ quan tâm.

Trường
hash_prefixes[]

bytes

Bắt buộc. Các tiền tố hàm băm cần tra cứu. Ứng dụng KHÔNG ĐƯỢC gửi hơn 1.000 tiền tố băm. Tuy nhiên, theo quy trình xử lý URL, ứng dụng KHÔNG cần gửi hơn 30 tiền tố băm.

Hiện tại, mỗi tiền tố hàm băm bắt buộc phải dài chính xác 4 byte. Điều này CÓ THỂ được nới lỏng trong tương lai.

filter

string

Không bắt buộc. Nếu khách hàng muốn lọc (chẳng hạn như chỉ truy xuất các loại mối đe doạ cụ thể), thì bạn có thể chỉ định chế độ này. Nếu bỏ qua, tất cả các mối đe doạ trùng khớp sẽ được trả về. Bạn nên bỏ qua bước này để được bảo vệ toàn diện nhất mà tính năng Duyệt web an toàn có thể mang lại.

Bộ lọc này được chỉ định bằng Ngôn ngữ diễn đạt thông thường của Google (có tại https://github.com/google/cel-spec cùng với các ví dụ chung. Sau đây là một số ví dụ cụ thể mà bạn có thể sử dụng tại đây:

Bộ lọc "threat_type == ThreatType.SOCIAL_ENGINEERING" yêu cầu bên trong FullHashDetail phải có kiểu mối đe doạ là SOCIAL_ENGINEERING. Giá trị nhận dạng "threat_type" cho biết kiểu mối đe doạ hiện tại. Giá trị nhận dạng "ThreatType" đề cập đến tập hợp tất cả các kiểu mối đe doạ có thể xảy ra.

Bộ lọc "threat_type in [ ThreatType.UNWANTED_SOFTWARE, ThreatType.MALWARE ]" yêu cầu kiểu mối đe doạ phải là UNWANTED_SOFTWARE hoặc MALWARE.

SearchHashesResponse

Phản hồi được trả về sau khi tìm kiếm hàm băm về mối đe doạ.

Nếu không tìm thấy gì, máy chủ sẽ trả về trạng thái OK (mã trạng thái HTTP 200) với trường full_hashes trống, thay vì trả về trạng thái NOT_FOUND (mã trạng thái HTTP 404).

Tính năng mới trong phiên bản 5: Có sự tách biệt giữa FullHashFullHashDetail. Trong trường hợp một hàm băm biểu thị một trang web có nhiều mối đe doạ (ví dụ: cả MALWARE và SOCIAL_EngineERING), thì bạn không cần gửi hàm băm đầy đủ như trong phiên bản 4. Hơn nữa, thời lượng bộ nhớ đệm đã được đơn giản hoá thành một trường cache_duration duy nhất.

Trường
full_hashes[]

FullHash

Danh sách không theo thứ tự. Đã tìm thấy danh sách hàm băm đầy đủ không theo thứ tự.

cache_duration

Duration

Thời lượng bộ nhớ đệm phía máy khách. Ứng dụng PHẢI thêm thời lượng này vào thời gian hiện tại để xác định thời gian hết hạn. Sau đó, thời gian hết hạn sẽ áp dụng cho mọi tiền tố hàm băm được ứng dụng truy vấn trong yêu cầu, bất kể phản hồi trả về bao nhiêu hàm băm đầy đủ. Ngay cả khi máy chủ không trả về hàm băm đầy đủ cho một tiền tố hàm băm cụ thể, máy khách cũng PHẢI lưu vào bộ nhớ đệm trên thực tế này.

Nếu và chỉ khi trường full_hashes trống, máy khách CÓ THỂ tăng cache_duration để xác định một thời gian hết hạn mới muộn hơn thời gian hết hạn do máy chủ chỉ định. Trong mọi trường hợp, thời lượng bộ nhớ đệm tăng lên không được dài hơn 24 giờ.

Lưu ý quan trọng: ứng dụng KHÔNG ĐƯỢC giả định rằng máy chủ sẽ trả về cùng thời lượng bộ nhớ đệm cho tất cả phản hồi. Máy chủ CÓ THỂ chọn thời lượng bộ nhớ đệm khác nhau cho các phản hồi khác nhau tuỳ theo tình huống.

SizeConstraints

Các quy tắc ràng buộc về kích thước của danh sách băm.

Trường
max_update_entries

int32

Kích thước tối đa của số mục nhập. Nội dung cập nhật sẽ không chứa nhiều mục nhập hơn giá trị này, nhưng có thể nội dung cập nhật sẽ chứa ít mục nhập hơn giá trị này. Giá trị này tối thiểu phải là 1024. Nếu bạn bỏ qua hoặc bằng 0 thì sẽ không có giới hạn nào về kích thước cập nhật.

max_database_entries

int32

Đặt số mục tối đa mà ứng dụng muốn thêm trong cơ sở dữ liệu cục bộ cho danh sách. (Máy chủ CÓ THỂ khiến ứng dụng lưu trữ ít hơn số mục nhập này.) Nếu bạn bỏ qua hoặc bằng 0 thì sẽ không có giới hạn kích thước cơ sở dữ liệu nào được đặt.

ThreatAttribute

Thuộc tính của mối đe doạ. Những thuộc tính này có thể mang ý nghĩa bổ sung cho một mối đe doạ cụ thể nhưng sẽ không ảnh hưởng đến kiểu mối đe doạ đó. Ví dụ: một thuộc tính có thể chỉ định độ tin cậy thấp hơn, trong khi một thuộc tính khác có thể chỉ định độ tin cậy cao hơn. Các thuộc tính khác có thể được thêm vào trong tương lai.

Enum
THREAT_ATTRIBUTE_UNSPECIFIED Thuộc tính không xác định. Nếu máy chủ trả về mã này, thì ứng dụng sẽ bỏ qua hoàn toàn FullHashDetail đi kèm.
CANARY Cho biết rằng không nên dùng kiểu mối đe doạ để thực thi.
FRAME_ONLY Cho biết chỉ nên dùng kiểu mối đe doạ để thực thi trên các khung hình.

ThreatType

Các loại hành vi đe doạ.

Enum
THREAT_TYPE_UNSPECIFIED Kiểu mối đe doạ không xác định. Nếu máy chủ trả về mã này, thì ứng dụng sẽ bỏ qua hoàn toàn FullHashDetail đi kèm.
MALWARE

Kiểu mối đe doạ phần mềm độc hại. Phần mềm độc hại là những phần mềm hay ứng dụng dành cho thiết bị di động được thiết kế riêng biệt nhằm gây hại cho máy tính, thiết bị di động, phần mềm mà máy tính/thiết bị di động đang chạy hoặc người dùng. Phần mềm độc hại thực hiện những hành vi độc hại, chẳng hạn như cài đặt phần mềm khi người dùng chưa đồng ý và cài đặt những phần mềm có hại như vi-rút.

Bạn có thể tìm thêm thông tin tại đây.

SOCIAL_ENGINEERING

Kiểu đe doạ tấn công phi kỹ thuật. Các trang tấn công phi kỹ thuật ngụ ý sai sự thật cho hành động thay mặt cho một bên thứ ba nhằm làm người xem bối rối khi thực hiện một hành động mà người xem sẽ chỉ tin tưởng một đại diện thực sự của bên thứ ba đó. Tấn công giả mạo là một loại hành vi tấn công phi kỹ thuật nhằm lừa người xem thực hiện một hành động cụ thể là cung cấp thông tin, chẳng hạn như thông tin đăng nhập.

Bạn có thể tìm thêm thông tin tại đây.

UNWANTED_SOFTWARE Kiểu mối đe doạ phần mềm không mong muốn. Phần mềm không mong muốn là bất kỳ phần mềm nào không tuân thủ Nguyên tắc về phần mềm của Google nhưng không phải là phần mềm độc hại.
POTENTIALLY_HARMFUL_APPLICATION Kiểu mối đe doạ đối với ứng dụng có khả năng gây hại như Google Play Protect sử dụng cho Cửa hàng Play.