- Yêu cầu HTTP
- Tham số truy vấn
- Nội dung yêu cầu
- Nội dung phản hồi
- FullHash
- FullHashDetail
- ThreatType
- ThreatAttribute
Tìm kiếm hàm băm đầy đủ khớp với các tiền tố đã chỉ định.
Đây là một phương thức tuỳ chỉnh do https://google.aip.dev/136 xác định (phương thức tuỳ chỉnh dùng để chỉ phương thức này có tên tuỳ chỉnh trong thuật ngữ phát triển API chung của Google; phương thức này không đề cập đến việc sử dụng phương thức HTTP tuỳ chỉnh).
Yêu cầu HTTP
GET https://safebrowsing.googleapis.com/v5/hashes:search
URL sử dụng cú pháp Chuyển mã gRPC.
Tham số truy vấn
Tham số | |
---|---|
hashPrefixes[] |
Bắt buộc. Các tiền tố hàm băm cần được tra cứu. Ứng dụng KHÔNG ĐƯỢC gửi nhiều hơn 1.000 tiền tố băm. Tuy nhiên, theo quy trình xử lý URL, ứng dụng KHÔNG NÊN gửi nhiều 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. Có thể sau này bạn sẽ thấy thoải mái hơn. Chuỗi được mã hoá base64. |
Nội dung yêu cầu
Nội dung yêu cầu phải trống.
Nội dung phản hồi
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 kết quả nào, máy chủ sẽ trả về trạng thái OK (mã trạng thái HTTP 200) với trường fullHashes
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ự khác biệt giữa FullHash
và FullHashDetail
. Trong trường hợp hàm băm đại diện cho 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 đủ hai lần như trong phiên bản 4. Ngoài ra, thời lượng bộ nhớ đệm đã được đơn giản hoá thành một trường cacheDuration
duy nhất.
Nếu thành công, phần nội dung phản hồi sẽ chứa dữ liệu có cấu trúc sau:
Biểu diễn dưới dạng JSON |
---|
{
"fullHashes": [
{
object ( |
Trường | |
---|---|
fullHashes[] |
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ự. |
cacheDuration |
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 mà ứng dụng truy vấn trong yêu cầu, bất kể có bao nhiêu hàm băm đầy đủ được trả về trong phản hồi. Ngay cả khi máy chủ không trả về toàn bộ hàm băm cho một tiền tố hàm băm cụ thể, thì thông tin này cũng PHẢI được ứng dụng lưu vào bộ nhớ đệm. Nếu và chỉ khi trường Quan trọng: ứng dụng KHÔNG ĐƯỢC giả định rằng máy chủ sẽ trả về cùng một thời lượng bộ nhớ đệm cho tất cả phản hồi. Tuỳ vào tình huống, 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. Thời lượng tính bằng giây với tối đa 9 chữ số phân số, kết thúc bằng " |
FullHash
Giá trị băm đầy đủ được xác định bằng một hoặc nhiều kết quả trùng khớp.
Biểu diễn dưới dạng JSON |
---|
{
"fullHash": string,
"fullHashDetails": [
{
object ( |
Trường | |
---|---|
fullHash |
Hàm băm đầy đủ phù hợp. Đây là hàm băm SHA256. Độ dài sẽ chính xác là 32 byte. Chuỗi được mã hoá base64. |
fullHashDetails[] |
Danh sách không theo thứ tự. Một trường lặp lại để xác định thông tin liên quan đến toàn bộ hàm băm này. |
FullHashDetail
Thông tin chi tiết về 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: máy chủ có thể thêm các kiểu mối đe doạ và mối đe doạ mới bất cứ lúc nào; những nội dung bổ sung đó được coi là thay đổi nhỏ về phiên bản. Google có chính sách 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 thông báo FullHashDetail
chứa giá trị enum ThreatType
hoặc giá trị enum ThreatAttribute
mà ứ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ả giá trị enum ThreatType
và ThreatAttribute
; nếu có bất kỳ giá trị nào bị coi là không hợp lệ, thì ứng dụng PHẢI bỏ qua toàn bộ thông báo FullHashDetail
.
Biểu diễn dưới dạng JSON |
---|
{ "threatType": enum ( |
Trường | |
---|---|
threatType |
Loại mối đe doạ. Trường này sẽ không bao giờ trống. |
attributes[] |
Danh sách không theo thứ tự. Các thuộc tính bổ sung cho các hàm băm đầy đủ đó. Bạn có thể để trống trường này. |
ThreatType
Các loại mối đe doạ.
Enum | |
---|---|
THREAT_TYPE_UNSPECIFIED |
Kiểu mối đe doạ không xác định. Nếu được máy chủ trả về, ứng dụng phải bỏ qua FullHashDetail đi kèm. |
MALWARE |
Kiểu đ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 mối đe doạ tấn công phi kỹ thuật. Các trang tấn công phi kỹ thuật dùng thông tin sai sự thật để thay mặt cho bên thứ ba hoạt động nhằm khiến người xem nhầm lẫn khi thực hiện một hành động mà người xem chỉ tin tưởng một nhân viên thực sự của bên thứ ba đó. Tấn công giả mạo là một loại thủ đoạn 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ạ từ 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ủ các 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 |
Dạng mối đe doạ đối với ứng dụng có khả năng gây hại mà Google Play Protect sử dụng cho Cửa hàng Play. |
ThreatAttribute
Đặc điểm của các mối đe doạ. Những thuộc tính này có thể mang lại ý nghĩa bổ sung cho một mối đe doạ cụ thể nhưng không ảnh hưởng đến loại 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 trong tương lai.
Enum | |
---|---|
THREAT_ATTRIBUTE_UNSPECIFIED |
Thuộc tính không xác định. Nếu được máy chủ trả về, ứng dụng phải bỏ qua FullHashDetail đi kèm. |
CANARY |
Cho biết không nên sử dụng loại mối đe doạ để thực thi. |
FRAME_ONLY |
Cho biết rằng chỉ nên dùng mối đe doạ để thực thi đối với khung. |