Package google.security.safebrowsing.v5alpha1

색인

SafeBrowsing

Safe Browsing API를 사용하면 클라이언트가 웹 리소스 (가장 일반적인 URL)를 Google에서 지속적으로 업데이트하는 안전하지 않은 웹 리소스 목록과 대조할 수 있습니다.

BatchGetHashLists

rpc BatchGetHashLists(BatchGetHashListsRequest) returns (BatchGetHashListsResponse)

한 번에 여러 해시 목록을 가져옵니다.

클라이언트가 여러 해시 목록을 가져와야 하는 경우는 매우 흔합니다. 일반 Get 메서드를 여러 번 사용하는 것보다 이 메서드를 사용하는 것이 좋습니다.

https://google.aip.dev/231에 정의된 표준 일괄 Get 메서드이며 HTTP 메서드도 GET입니다.

GetHashList

rpc GetHashList(GetHashListRequest) returns (HashList)

해시 목록의 최신 콘텐츠를 가져옵니다. 해시 목록은 위협 목록 또는 글로벌 캐시와 같은 비위협 목록에 의해 결정됩니다.

https://google.aip.dev/131에 정의된 표준 Get 메서드이며 HTTP 메서드도 GET입니다.

ListHashLists

rpc ListHashLists(ListHashListsRequest) returns (ListHashListsResponse)

해시 목록을 나열합니다.

V5 API에서 Google은 이 메서드에 의해 반환된 적이 있는 해시 목록을 삭제하지 않습니다. 이렇게 하면 클라이언트가 이 방법을 건너뛰고 필요한 모든 해시 목록을 간단히 하드 코딩할 수 있습니다.

https://google.aip.dev/132에 정의된 표준 List 메서드이며 HTTP 메서드는 GET입니다.

SearchHashes

rpc SearchHashes(SearchHashesRequest) returns (SearchHashesResponse)

지정된 프리픽스와 일치하는 전체 해시를 검색합니다.

이는 https://google.aip.dev/136에 정의된 커스텀 메서드입니다. 커스텀 메서드는 커스텀 HTTP 메서드를 사용하는 것이 아니라 Google의 일반 API 개발 명명법 내에서 커스텀 이름을 갖는 메서드를 의미합니다.

BatchGetHashListsRequest

동시에 여러 해시 목록을 가져오기 위한 요청입니다.

입력란
names[]

string

필수 항목입니다. 특정 해시 목록의 이름입니다. 목록은 위협 목록이거나 글로벌 캐시일 수 있습니다(MAY). 이름에는 중복이 포함되어서는 안 됩니다. 중복되면 클라이언트에 오류가 발생합니다.

version[]

bytes

클라이언트에 이미 있는 해시 목록의 버전입니다. 클라이언트가 해시 목록을 처음 가져오는 경우 필드를 비워 두어야 합니다. 그렇지 않으면 클라이언트가 이전에 서버에서 수신한 버전을 제공해야 합니다. 클라이언트는 이러한 바이트를 조작하면 안 됩니다(MUST NOT).

클라이언트는 해당 목록 이름과 동일한 순서로 버전을 전송할 필요가 없습니다. 클라이언트는 요청에 이름보다 더 적거나 많은 버전을 보낼 수 있습니다. 하지만 클라이언트는 동일한 이름에 상응하는 여러 버전을 전송하면 안 됩니다(MUST NOT). 그러면 클라이언트에 오류가 발생합니다.

이전 참고사항: API V4에서는 states이라 불렸으나 이제 명확성을 위해 이름이 version로 변경되었습니다.

desired_hash_length

HashLength

반환된 해시의 원하는 해시 접두사 길이(바이트)입니다. 그러면 서버는 지정된 길이의 모든 해시 접두사를 반환합니다.

해시 목록마다 desired_hash_length 필드에 허용되는 값에 관한 요구사항이 다릅니다. HashListMetadatasupported_hash_lengths 필드에서 확인할 수 있습니다. desired_hash_lengthsupported_hash_lengths 내에 값을 지정하지 않으면 클라이언트에 오류가 반환됩니다.

특히 BatchGetHashListsRequest의 경우 클라이언트가 목록마다 다른 desired_hash_length를 지정할 수 없습니다. 그렇게 해야 하는 경우 클라이언트를 여러 BatchGetHashListsRequest로 분할해야 합니다.

size_constraints

SizeConstraints

각 목록의 크기 제약 조건 생략하면 제약 조건이 없습니다. 여기에 표시된 크기는 목록별로 계산되며 모든 목록에서 집계되는 것은 아닙니다.

BatchGetHashListsResponse

여러 해시 목록이 포함된 응답입니다.

입력란
hash_lists[]

HashList

요청에 지정된 순서와 동일한 해시 목록입니다.

FullHash

하나 이상의 일치 항목으로 식별된 전체 해시입니다.

입력란
full_hash

bytes

일치하는 전체 해시입니다. SHA256 해시입니다. 길이는 정확히 32바이트입니다.

full_hash_details[]

FullHashDetail

순서가 지정되지 않은 목록입니다. 이 전체 해시와 관련된 세부정보를 식별하는 반복 필드입니다.

FullHashDetail

일치하는 전체 해시에 관한 세부정보입니다.

이후 버전과의 호환성에 대한 중요 사항: 새로운 위협 유형과 위협 속성은 언제든지 서버에 의해 추가될 수 있습니다. 이러한 추가사항은 부 버전 변경으로 간주됩니다. API에서 부 버전 번호를 노출하지 않는 것이 Google의 정책이므로(버전 관리 정책은 https://cloud.google.com/apis/design/versioning 참고) 클라이언트는 클라이언트에서 유효하지 않은 것으로 간주하는 ThreatType enum 값 또는 ThreatAttribute enum 값을 포함하는 FullHashDetail 메시지를 수신할 준비가 되어 있어야 합니다(MUST). 따라서 모든 ThreatTypeThreatAttribute enum 값의 유효성을 확인하는 것은 클라이언트의 책임입니다. 유효하지 않은 것으로 간주되는 값이 있는 경우 클라이언트는 전체 FullHashDetail 메시지를 무시해야 합니다(MUST).

입력란
threat_type

ThreatType

위협의 유형입니다. 이 필드는 비어 있지 않습니다.

attributes[]

ThreatAttribute

순서가 지정되지 않은 목록입니다. 전체 해시에 대한 추가 속성입니다. 비어 있을 수 있습니다.

GetHashListRequest

해시 목록(위협 목록 또는 글로벌 캐시와 같은 비위협 목록일 수 있음) 입수 요청입니다.

V5의 새로운 기능: V4에서 이전에 states이라 했던 내용은 명확성을 위해 이름이 version로 변경되었습니다. 이제 목록에 이름이 지정되고 플랫폼 유형과 위협 항목 유형이 삭제됩니다. 이제 여러 목록에 동일한 위협 유형이 포함되거나 여러 위협 유형과 관련된 단일 목록이 가능합니다. 클라이언트는 원하는 해시 길이를 지정할 수 있는 새로운 기능이 있습니다. 이는 많은 클라이언트 구현에서 문제를 일으켰던 V4의 가변 길이 해시 접두사에 대한 답변의 일부입니다. 목록의 모든 해시가 이제 단일 길이를 가지므로 훨씬 더 효율적인 클라이언트 구현을 허용합니다. 제약 조건이 간소화되고 압축 유형이 삭제되었습니다 (압축은 항상 적용됨).

입력란
name

string

필수 항목입니다. 이 특정 해시 목록의 이름입니다. 이는 위협 목록일 수도 있고, 글로벌 캐시일 수도 있습니다.

version

bytes

클라이언트에 이미 있는 해시 목록의 버전입니다. 클라이언트가 해시 목록을 처음 가져오는 경우에는 이 필드를 비워 두어야 합니다(MUST). 그렇지 않으면 클라이언트는 이전에 서버에서 수신한 버전을 제공해야 합니다(SHOULD). 클라이언트는 이러한 바이트를 조작하면 안 됩니다(MUST NOT).

V5의 새로운 기능: API V4에서는 states이라 불렸으나 이제 명확성을 위해 이름이 version로 변경되었습니다.

desired_hash_length

HashLength

반환된 해시의 원하는 해시 접두사 길이(바이트)입니다. 그러면 서버는 지정된 길이의 모든 해시 접두사를 반환합니다.

해시 목록마다 desired_hash_length 필드에 허용되는 값에 관한 요구사항이 다릅니다. HashListMetadatasupported_hash_lengths 필드에서 확인할 수 있습니다. desired_hash_lengthsupported_hash_lengths 내에 값을 지정하지 않으면 오류가 반환됩니다.

size_constraints

SizeConstraints

목록의 크기 제약 조건 생략하면 제약 조건이 없습니다. 처리 성능, 대역폭 또는 저장용량이 제한된 모든 기기에 제약조건이 권장됩니다.

HashList

이름으로 식별된 해시 목록입니다.

입력란
name

string

해시 목록의 이름입니다. 전역 캐시도 해시 목록이며 여기서 참조할 수 있습니다.

version

bytes

해시 목록의 버전입니다. 클라이언트는 이러한 바이트를 조작하면 안 됩니다(MUST NOT).

partial_update

bool

true인 경우 클라이언트가 이미 보유한 항목을 기반으로 추가 및 삭제가 포함된 부분적인 차이입니다. false인 경우 전체 해시 목록입니다.

false인 경우 클라이언트는 이 해시 목록의 로컬에 저장된 버전을 삭제해야 합니다(MUST). 이는 고객이 소유한 버전이 매우 오래되었거나 고객 데이터가 손상된 것으로 여겨졌음을 의미합니다. compressed_removals 필드는 비어 있습니다.

true인 경우 클라이언트는 삭제 후 추가를 적용하여 증분 업데이트를 적용해야 합니다(MUST).

compressed_removals

RiceDeltaEncoded32Bit

삭제 색인의 Rice-delta 인코딩 버전입니다. 각 해시 목록에는 2^32개 미만의 항목이 있으므로 색인은 32비트 정수로 취급되어 인코딩됩니다.

minimum_wait_duration

Duration

해시 목록을 다시 가져오려면 클라이언트가 이 시간 이상 기다려야 합니다. 생략되거나 0이면 서버에 클라이언트에 전송할 추가 업데이트가 있지만 클라이언트가 지정한 제약조건으로 인해 그럴 수 없음을 나타내기 때문에 클라이언트는 즉시 가져와야 합니다(SHOULD).

metadata

HashListMetadata

해시 목록에 관한 메타데이터입니다. GetHashList 메서드에 의해 채워지지 않지만 ListHashLists 메서드에 의해 채워집니다.

통합 필드 compressed_additions. 덧셈의 Rice-delta 인코딩 버전입니다. 추가의 해시 접두사 길이는 목록에 있는 모든 추가 항목에서 균일합니다. 클라이언트가 전송한 desired_hash_length이거나 클라이언트가 해당 필드를 생략한 경우 서버에서 선택한 값입니다. compressed_additions은 다음 중 하나여야 합니다.
additions_four_bytes

RiceDeltaEncoded32Bit

4바이트 추가사항.

additions_eight_bytes

RiceDeltaEncoded64Bit

8바이트 추가.

additions_sixteen_bytes

RiceDeltaEncoded128Bit

16바이트 추가.

additions_thirty_two_bytes

RiceDeltaEncoded256Bit

32바이트 추가.

통합 필드 checksum. 이는 제공된 업데이트를 적용한 후 데이터베이스에 있는 모든 해시의 정렬된 목록의 체크섬입니다. 여러 해싱 알고리즘을 허용하는 'oneof' 필드입니다. 또한 업데이트가 제공되지 않은 경우 서버가 이 필드를 생략하여 클라이언트가 기존 체크섬을 사용해야 함을 나타낼 수도 있습니다. checksum는 다음 중 하나여야 합니다.
sha256_checksum

bytes

SHA256으로 다시 해싱된 모든 해시의 정렬된 목록입니다.

HashListMetadata

특정 해시 목록에 관한 메타데이터입니다.

입력란
threat_types[]

ThreatType

순서가 지정되지 않은 목록입니다. 비어 있지 않으면 해시 목록이 일종의 위협 목록임을 지정하고 이 해시 목록의 해시 또는 해시 접두사와 관련된 위협의 종류를 열거합니다. 항목이 위협을 나타내지 않는 경우(즉, 가능성이 안전한 유형을 나타내는 경우) 비어 있을 수 있습니다.

likely_safe_types[]

LikelySafeType

순서가 지정되지 않은 목록입니다. 비어 있지 않으면 해시 목록이 안전할 가능성이 높은 해시 목록을 나타내고 안전할 가능성이 높은 것으로 간주되는 방식을 열거합니다. 이 필드는 threat_types 필드와 상호 배타적입니다.

mobile_optimized

bool

이 목록이 휴대기기 (Android 및 iOS)에 최적화되어 있는지를 나타냅니다.

description

string

이 목록에 관한 사람이 읽을 수 있는 설명입니다. 영어로 작성됩니다.

supported_hash_lengths[]

HashLength

이 해시 목록에 지원되는 해시 길이입니다. 각 해시 목록은 하나 이상의 길이를 지원합니다. 따라서 이 필드는 비어 있지 않습니다.

HashLength

해시 목록의 해시 길이입니다.

열거형
HASH_LENGTH_UNSPECIFIED 길이가 지정되지 않았습니다. 서버는 클라이언트에 대한 응답으로 이 값을 supported_hash_lengths 필드에 반환하지 않지만 클라이언트는 이 값을 서버(desired_hash_length 필드)로 전송할 수 있습니다. 이 경우 서버는 자동으로 값을 선택합니다. 클라이언트는 서버가 값을 선택하도록 허용해야 합니다(SHOULD).
FOUR_BYTES 각 해시는 4바이트 접두사입니다.
EIGHT_BYTES 각 해시는 8바이트 접두사입니다.
SIXTEEN_BYTES 각 해시는 16바이트 접두사입니다.
THIRTY_TWO_BYTES 각 해시는 32바이트 전체 해시입니다.

LikelySafeType

안전할 가능성이 높은 사이트의 유형

SearchHashesResponse는 의도적으로 LikelySafeType를 포함하지 않습니다.

열거형
LIKELY_SAFE_TYPE_UNSPECIFIED 알 수 없는 작업입니다.
GENERAL_BROWSING 이 사이트는 일반 브라우징에 충분히 안전할 수 있습니다. 이를 전역 캐시라고도 합니다.
CSD 이 사이트는 클라이언트 측 감지 모델이나 비밀번호 보호 검사를 실행할 필요가 없을 정도로 안전할 가능성이 높습니다.
DOWNLOAD 이 사이트는 안전하므로 사이트에서 다운로드한 항목을 확인하지 않아도 됩니다.

ListHashListsRequest

사용 가능한 해시 목록을 나열하기 위한 요청입니다.

입력란
page_size

int32

반환할 해시 목록의 최대 개수입니다. 서비스가 이 값보다 더 적게 반환할 수 있습니다. 지정하지 않으면 서버에서 페이지 크기를 선택합니다. 페이지 크기는 해시 목록의 수보다 클 수 있으므로 페이지로 나눌 필요가 없습니다.

page_token

string

이전 ListHashLists 호출에서 받은 페이지 토큰입니다. 후속 페이지를 검색하려면 이를 입력합니다.

ListHashListsResponse

해시 목록에 대한 메타데이터가 포함된 응답입니다.

입력란
hash_lists[]

HashList

임의의 순서로 된 해시 목록입니다. 해시 목록에 관한 메타데이터만 포함되며 콘텐츠는 포함되지 않습니다.

next_page_token

string

다음 페이지를 검색하기 위해 page_token으로 전송할 수 있는 토큰입니다. 이 필드를 생략하면 후속 페이지가 표시되지 않습니다.

RiceDelta인코딩128비트

128비트 숫자를 인코딩한다는 점을 제외하면 RiceDeltaEncoded32Bit와 동일합니다.

입력란
first_value_hi

uint64

인코딩된 데이터 (해시)에서 첫 번째 항목의 상위 64비트입니다. 필드가 비어 있으면 상위 64비트는 모두 0입니다.

first_value_lo

fixed64

인코딩된 데이터 (해시)에서 첫 번째 항목의 하위 64비트입니다. 필드가 비어 있으면 하위 64비트는 모두 0입니다.

rice_parameter

int32

Golomb-Rice 매개변수 이 매개변수는 항상 99 이상 126 이하입니다.

entries_count

int32

인코딩된 데이터에서 델타 인코딩된 항목 수입니다. 하나의 정수만 인코딩된 경우 0이 되고 단일 값은 first_value에 저장됩니다.

encoded_data

bytes

Golomb-Rice 코더를 사용하여 인코딩된 인코딩된 델타입니다.

RiceDeltaEnencoded256비트

256비트 숫자를 인코딩한다는 점을 제외하면 RiceDeltaEncoded32Bit와 동일합니다.

입력란
first_value_first_part

uint64

인코딩된 데이터 (해시) 내 첫 번째 항목의 첫 64비트입니다. 필드가 비어 있으면 처음 64비트는 모두 0입니다.

first_value_second_part

fixed64

인코딩된 데이터 (해시)에서 첫 번째 항목의 65~128번째 비트입니다. 필드가 비어 있으면 65~128번째 비트는 모두 0입니다.

first_value_third_part

fixed64

인코딩된 데이터 (해시)에서 첫 번째 항목의 129~192번째 비트입니다. 필드가 비어 있으면 129~192번째 비트는 모두 0입니다.

first_value_fourth_part

fixed64

인코딩된 데이터 (해시)에서 첫 번째 항목의 마지막 64비트입니다. 필드가 비어 있으면 마지막 64비트가 모두 0입니다.

rice_parameter

int32

Golomb-Rice 매개변수 이 매개변수는 항상 227 이상 254 이하입니다.

entries_count

int32

인코딩된 데이터에서 델타 인코딩된 항목 수입니다. 하나의 정수만 인코딩된 경우 0이 되고 단일 값은 first_value에 저장됩니다.

encoded_data

bytes

Golomb-Rice 코더를 사용하여 인코딩된 인코딩된 델타입니다.

RiceDelta인코딩된32비트

Rice-Golomb 인코딩 데이터 해시 또는 삭제 색인에 사용됩니다. 여기서 모든 해시 또는 색인의 길이가 동일하고 이 길이는 정확히 32비트입니다.

일반적으로 모든 항목을 사전순으로 정렬하면 순서가 높은 비트가 하위 비트만큼 자주 변경되지 않는 경향이 있습니다. 즉, 입력 간의 인접 차이를 가져오면 상위 비트가 0이 될 가능성이 높습니다. 이는 기본적으로 특정 수의 비트를 선택하여 0의 높은 확률을 악용합니다. 이보다 더 중요한 비트는 모두 0일 가능성이 높으므로 단항 인코딩을 사용합니다. rice_parameter 필드를 참고하세요.

이전 참고사항: Rice-delta 인코딩은 이 API의 V4에서 처음 사용되었습니다. V5에서는 두 가지 중요한 개선사항이 적용되었습니다. 첫째, 이제 4바이트가 넘는 해시 접두사로 Rice-delta 인코딩을 사용할 수 있습니다. 두 번째로, 많은 비용이 드는 정렬 단계를 피할 수 있도록 인코딩된 데이터가 이제 big-endian으로 처리됩니다.

입력란
first_value

uint32

인코딩된 데이터의 첫 번째 항목 (해시 또는 색인) 또는 단일 해시 접두사 또는 색인만 인코딩된 경우 해당 항목의 값입니다. 필드가 비어 있으면 항목이 0입니다.

rice_parameter

int32

Golomb-Rice 매개변수 이 매개변수는 항상 3에서 30 사이(양 끝값 포함)입니다.

entries_count

int32

인코딩된 데이터에서 델타 인코딩된 항목 수입니다. 하나의 정수만 인코딩된 경우 0이 되고 단일 값은 first_value에 저장됩니다.

encoded_data

bytes

Golomb-Rice 코더를 사용하여 인코딩된 인코딩된 델타입니다.

RiceDelta인코딩64비트

64비트 숫자를 인코딩한다는 점을 제외하면 RiceDeltaEncoded32Bit와 동일합니다.

입력란
first_value

uint64

인코딩된 데이터의 첫 번째 항목 (해시) 또는 해시 접두사가 하나만 인코딩된 경우 해당 항목의 값입니다. 필드가 비어 있으면 항목이 0입니다.

rice_parameter

int32

Golomb-Rice 매개변수 이 매개변수는 항상 35 이상 62 이하입니다.

entries_count

int32

인코딩된 데이터에서 델타 인코딩된 항목 수입니다. 하나의 정수만 인코딩된 경우 0이 되고 단일 값은 first_value에 저장됩니다.

encoded_data

bytes

Golomb-Rice 코더를 사용하여 인코딩된 인코딩된 델타입니다.

SearchHashesRequest

특정 해시 프리픽스를 검색하기 위해 클라이언트에서 실행하는 요청입니다.

이는 위협 목록만 검색하도록 설계되었으며, 글로벌 캐시와 같은 비위협 목록은 검색하지 않습니다.

V5의 새로운 기능: 클라이언트는 로컬 데이터베이스에서 ClientInfo 또는 해시 목록의 상태를 지정할 필요가 없습니다. 이는 개인 정보 보호를 강화하기 위한 조치입니다. 게다가 클라이언트는 관심이 있는 위협 유형을 전송할 필요가 없습니다.

입력란
hash_prefixes[]

bytes

필수 항목입니다. 조회할 해시 접두사입니다. 클라이언트는 1,000개를 초과하는 해시 프리픽스를 전송하면 안 됩니다(MUST NOT). 그러나 URL 처리 절차에 따라 클라이언트는 30개를 초과하는 해시 프리픽스를 전송할 필요가 없습니다(SHOULD NOT).

현재 각 해시 접두사의 길이는 정확히 4바이트여야 합니다. 이는 향후 완화될 수 있습니다.

filter

string

선택사항입니다. 클라이언트가 특정 유형의 위협만 검색하는 등 필터링에 관심이 있는 경우 이를 지정할 수 있습니다. 생략하면 일치하는 모든 위협이 반환됩니다. 세이프 브라우징이 제공할 수 있는 가장 완벽한 보호 기능을 사용하려면 이를 생략하는 것이 좋습니다.

필터는 https://github.com/google/cel-spec에서 일반적인 예와 함께 Google Common Expression Language를 사용하여 지정합니다. 여기에서 사용할 수 있는 몇 가지 구체적인 예는 다음과 같습니다.

"threat_type == ThreatType.SOCIAL_ENGINEERING" 필터를 사용하려면 위협 유형이 FullHashDetail 내에서 SOCIAL_ENGINEERING여야 합니다. 식별자 "threat_type"는 현재의 위협 유형을 나타냅니다. 식별자 "ThreatType"는 가능한 모든 위협 유형의 모음을 나타냅니다.

"threat_type in [ ThreatType.UNWANTED_SOFTWARE, ThreatType.MALWARE ]" 필터를 사용하려면 위협 유형이 UNWANTED_SOFTWARE 또는 MALWARE여야 합니다.

SearchHashesResponse

위협 해시를 검색한 후 반환된 응답

아무것도 발견되지 않으면 서버는 NOT_FOUND 상태 (HTTP 상태 코드 404)를 반환하는 대신 full_hashes 필드가 비어 있는 OK 상태 (HTTP 상태 코드 200)를 반환합니다.

V5의 새로운 기능: FullHashFullHashDetail가 구분됩니다. 해시가 여러 위협이 있는 사이트 (예: MALWARE 및 SOCIAL_ENGINEERING)를 나타내는 경우 전체 해시를 V4에서와 같이 두 번 전송할 필요가 없습니다. 또한 캐시 기간이 단일 cache_duration 필드로 간소화되었습니다.

입력란
full_hashes[]

FullHash

순서가 지정되지 않은 목록입니다. 전체 해시의 순서가 지정되지 않은 목록을 찾았습니다.

cache_duration

Duration

클라이언트 측 캐시 기간입니다. 클라이언트는 이 기간을 현재 시간에 추가하여 만료 시간을 결정해야 합니다(MUST). 그러면 응답에 반환된 전체 해시 수에 관계없이 요청에서 클라이언트가 쿼리한 모든 해시 접두사에 만료 시간이 적용됩니다. 서버가 특정 해시 접두사에 대해 전체 해시를 반환하지 않는 경우에도 이 사실은 클라이언트에 의해 캐시되어야 합니다(MUST).

full_hashes 필드가 비어 있는 경우에만 클라이언트는 cache_duration를 늘려 서버에서 지정한 날짜보다 이후인 새 만료를 결정할 수 있습니다(MAY). 어떤 경우든 증가된 캐시 기간이 24시간을 초과하면 안 됩니다.

중요: 클라이언트는 서버가 모든 응답에 대해 동일한 캐시 기간을 반환한다고 가정해서는 안 됩니다(MUST NOT). 서버는 상황에 따라 다른 응답에 다른 캐시 기간을 선택할 수 있습니다(MAY).

SizeConstraints

해시 목록의 크기 제약 조건입니다.

입력란
max_update_entries

int32

항목 수의 최대 크기입니다. 업데이트에 이 값보다 더 많은 항목이 포함되지 않지만 업데이트에 이 값보다 적은 항목이 포함될 수 있습니다. 1024 이상이어야 합니다(MUST). 생략하거나 0이면 업데이트 크기 제한이 설정되지 않습니다.

max_database_entries

int32

클라이언트가 목록의 로컬 데이터베이스에 포함할 최대 항목 수를 설정합니다. (서버는 클라이언트가 이 개수보다 적은 항목을 저장하도록 할 수 있습니다(MAY).) 생략하거나 0이면 데이터베이스 크기 제한이 설정되지 않습니다.

ThreatAttribute

위협의 속성. 이러한 속성은 특정 위협에 추가적인 의미를 부여할 수 있지만 위협 유형에는 영향을 미치지 않습니다. 예를 들어 속성은 낮은 신뢰도를 지정하고 다른 속성은 더 높은 신뢰도를 지정할 수 있습니다. 향후 더 많은 속성이 추가될 수 있습니다.

열거형
THREAT_ATTRIBUTE_UNSPECIFIED 알 수 없는 속성입니다. 서버에서 이 값을 반환하면 클라이언트는 동봉한 FullHashDetail를 모두 무시해야 합니다.
CANARY 시행에 threat_type을 사용해서는 안 됨을 나타냅니다.
FRAME_ONLY threat_type을 프레임 시행에만 사용해야 함을 나타냅니다.

ThreatType

위협 유형.

열거형
THREAT_TYPE_UNSPECIFIED 알 수 없는 위협 유형입니다. 서버에서 이 값을 반환하면 클라이언트는 동봉한 FullHashDetail를 모두 무시해야 합니다.
MALWARE

멀웨어 위협 유형입니다. 멀웨어란 컴퓨터, 휴대기기, 실행 중인 소프트웨어 또는 사용자에게 해를 끼치기 위해 설계된 소프트웨어 또는 모바일 애플리케이션입니다. 멀웨어는 사용자의 동의 없이 소프트웨어를 설치하거나 바이러스와 같은 유해한 소프트웨어를 설치하는 등 악의적인 방식으로 작동합니다.

자세한 정보는 여기를 참조하세요.

SOCIAL_ENGINEERING

소셜 엔지니어링 위협 유형입니다. 소셜 엔지니어링 페이지는 시청자가 실제로 제3자의 대리인만 믿도록 하여 시청자를 현혹할 목적으로 제3자를 대신한다고 허위로 사칭합니다. 피싱은 사용자를 속여 로그인 사용자 인증 정보와 같은 정보를 제공하는 특정 작업을 수행하도록 하는 소셜 엔지니어링의 한 유형입니다.

자세한 정보는 여기를 참조하세요.

UNWANTED_SOFTWARE 원치 않는 소프트웨어 위협 유형입니다. 원치 않는 소프트웨어란 Google 소프트웨어 정책을 준수하지 않지만 멀웨어는 아닌 소프트웨어를 말합니다.
POTENTIALLY_HARMFUL_APPLICATION Play 스토어에 Google Play 프로텍트에서 사용할 수 있는 잠재적으로 위험한 애플리케이션 위협 유형입니다.