Package google.security.safebrowsing.v5alpha1

فهرست مطالب

مرور ایمن

APIهای مرور ایمن به مشتریان این امکان را می‌دهند که منابع وب (معمولاً URLها) را در برابر فهرست‌های دائماً به‌روز شده منابع وب ناامن Google بررسی کنند.

BatchGetHashLists

rpc BatchGetHashLists( BatchGetHashListsRequest ) returns ( BatchGetHashListsResponse )

چندین لیست هش را به طور همزمان دریافت کنید.

بسیار معمول است که یک مشتری نیاز به دریافت لیست های هش متعدد داشته باشد. استفاده از این روش بر استفاده از روش دریافت معمولی در چندین بار ارجحیت دارد.

این یک روش استاندارد دسته ای دریافت است که توسط https://google.aip.dev/231 تعریف شده است و روش HTTP نیز GET است.

GetHashList

rpc GetHashList( GetHashListRequest ) returns ( HashList )

آخرین محتویات یک لیست هش را دریافت کنید. یک لیست هش ممکن است با یک لیست تهدید یا یک لیست غیرتهدید مانند کش جهانی باشد.

این یک متد Get استاندارد است که توسط https://google.aip.dev/131 تعریف شده است و روش HTTP نیز GET است.

ListHashLists

rpc ListHashLists( ListHashListsRequest ) returns ( ListHashListsResponse )

لیست های هش را فهرست کنید.

در V5 API، گوگل هرگز فهرست هش را که تا به حال با این روش برگردانده شده است حذف نمی کند. این به مشتریان امکان می دهد از این روش صرف نظر کنند و به سادگی همه لیست های هش مورد نیاز خود را کد سخت کنند.

این یک روش فهرست استاندارد است که توسط https://google.aip.dev/132 تعریف شده است و روش HTTP GET است.

SearchHash

rpc SearchHashes( SearchHashesRequest ) returns ( SearchHashesResponse )

هش کامل مطابق با پیشوندهای مشخص شده را جستجو کنید.

این یک روش سفارشی است که توسط https://google.aip.dev/136 تعریف شده است (روش سفارشی به این روش اشاره دارد که یک نام سفارشی در نام‌گذاری توسعه API عمومی Google دارد؛ به استفاده از روش HTTP سفارشی اشاره نمی‌کند).

درخواست BatchGetHashLists

درخواست برای دریافت چندین لیست هش به طور همزمان.

زمینه های
names[]

string

ضروری. نام لیست های هش خاص. لیست ممکن است یک لیست تهدید باشد یا ممکن است کش جهانی باشد. نام ها نباید دارای موارد تکراری باشند. اگر آنها این کار را انجام دهند، مشتری یک خطا دریافت می کند.

version[]

bytes

نسخه هایی از لیست هش که مشتری از قبل دارد. اگر این اولین بار است که مشتری لیست های هش را واکشی می کند، فیلد باید خالی بماند. در غیر این صورت، کلاینت باید نسخه هایی را که قبلاً از سرور دریافت کرده است، ارائه کند. کلاینت نباید آن بایت ها را دستکاری کند.

مشتری نیازی به ارسال نسخه ها به همان ترتیب نام لیست مربوطه ندارد. مشتری ممکن است نسخه های کمتر یا بیشتر از نام های موجود را در یک درخواست ارسال کند. با این حال مشتری نباید چندین نسخه را که با یک نام مطابقت دارند ارسال کند. اگر این کار را کرد، مشتری یک خطا دریافت می کند.

یادداشت تاریخی: در V4 از API، این states نامیده می شد. اکنون برای وضوح به version تغییر نام داده شده است.

desired_hash_length

HashLength

طول پیشوند هش مورد نظر هش های برگشتی بر حسب بایت. سپس سرور تمام پیشوندهای هش را در این طول مشخص شده برمی گرداند.

لیست‌های درهم‌سازی مختلف نیازمندی‌های متفاوتی در مقادیر قابل قبول فیلد desired_hash_length دارند. این را می توان در قسمت supported_hash_lengths در HashListMetadata یافت. اگر desired_hash_length مقداری را در supported_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

جزئیات مربوط به یک هش کامل منطبق.

یک نکته مهم در مورد سازگاری رو به جلو: انواع تهدیدات و ویژگی های تهدید جدید ممکن است در هر زمان توسط سرور اضافه شود. این اضافات تغییرات جزئی نسخه در نظر گرفته می شوند. این خط‌مشی Google است که شماره‌های نسخه جزئی را در APIها در معرض نمایش قرار ندهد (برای خط‌مشی نسخه‌سازی به https://cloud.google.com/apis/design/versioning مراجعه کنید)، بنابراین مشتریان باید برای دریافت پیام‌های FullHashDetail حاوی مقادیر ThreatType enum یا ThreatAttribute آماده باشند. مقادیر enum که توسط مشتری نامعتبر در نظر گرفته می شوند. بنابراین، این مسئولیت مشتری است که اعتبار تمام مقادیر ThreatType و ThreatAttribute enum را بررسی کند. اگر مقداری نامعتبر در نظر گرفته شود، مشتری باید کل پیام FullHashDetail را نادیده بگیرد.

زمینه های
threat_type

ThreatType

نوع تهدید. این فیلد هرگز خالی نخواهد بود.

attributes[]

ThreatAttribute

لیست نامرتب. ویژگی‌های اضافی درباره آن هش‌های کامل. این ممکن است خالی باشد.

GetHashListRequest

درخواستی برای به دست آوردن یک لیست هش، که ممکن است یک لیست تهدید یا یک لیست غیرتهدید مانند کش جهانی باشد.

موارد جدید در V5 : آنچه قبلاً در V4 states نامیده می شد برای وضوح به version تغییر نام داده است. لیست ها اکنون نامگذاری شده اند، انواع پلت فرم و انواع ورودی تهدید حذف شده اند. اکنون این امکان برای چندین لیست وجود دارد که نوع تهدید یکسانی داشته باشند یا یک لیست واحد مربوط به چندین نوع تهدید باشد. مشتریان توانایی جدیدی برای تعیین طول هش مورد نظر دارند. این بخشی از پاسخ به پیشوندهای هش با طول متغیر V4 است که در بسیاری از پیاده‌سازی‌های کلاینت مشکل ایجاد کرده است: همه هش‌های موجود در یک لیست اکنون دارای یک طول واحد هستند که امکان اجرای بسیار کارآمدتر کلاینت را فراهم می‌کند. محدودیت ها ساده شده اند و نوع فشرده سازی حذف شده است (فشرده سازی همیشه اعمال می شود).

زمینه های
name

string

ضروری. نام این لیست هش خاص. ممکن است یک لیست تهدید باشد یا ممکن است کش جهانی باشد.

version

bytes

نسخه هش لیستی که مشتری از قبل دارد. اگر این اولین بار است که مشتری لیست هش را واکشی می کند، این قسمت باید خالی بماند. در غیر این صورت، کلاینت باید نسخه ای را که قبلاً از سرور دریافت کرده است، ارائه دهد. کلاینت نباید آن بایت ها را دستکاری کند.

چه چیزی در V5 جدید است : در V4 از API، این states نامیده می شد. اکنون برای وضوح به version تغییر نام داده شده است.

desired_hash_length

HashLength

طول پیشوند هش مورد نظر هش های برگشتی بر حسب بایت. سپس سرور تمام پیشوندهای هش را در این طول مشخص شده برمی گرداند.

لیست‌های درهم‌سازی مختلف نیازمندی‌های متفاوتی در مقادیر قابل قبول فیلد desired_hash_length دارند. این را می توان در قسمت supported_hash_lengths در HashListMetadata یافت. اگر desired_hash_length مقداری را در supported_hash_lengths مشخص نکند، یک خطا برگردانده خواهد شد.

size_constraints

SizeConstraints

محدودیت اندازه در لیست اگر حذف شود، هیچ محدودیتی وجود ندارد. محدودیت ها برای همه دستگاه هایی با قدرت پردازش، پهنای باند یا ذخیره سازی محدود توصیه می شود.

HashList

لیستی از هش ها که با نام آن مشخص شده است.

زمینه های
name

string

نام لیست هش. توجه داشته باشید که کش جهانی نیز فقط یک لیست هش است و می توان به اینجا مراجعه کرد.

version

bytes

نسخه هش لیست. کلاینت نباید آن بایت ها را دستکاری کند.

partial_update

bool

هنگامی که درست است، این یک تفاوت جزئی است که شامل اضافات و حذف هایی است که بر اساس آنچه مشتری از قبل داشته است. وقتی نادرست است، این لیست هش کامل است.

وقتی نادرست است، مشتری باید هر نسخه ذخیره شده محلی را برای این لیست هش حذف کند. این بدان معنی است که یا نسخه ای که مشتری در اختیار دارد به طور جدی قدیمی است یا اینکه داده های سرویس گیرنده فاسد هستند. فیلد compressed_removals خالی خواهد بود.

وقتی درست است، مشتری باید با اعمال حذف‌ها و سپس اضافات، به‌روزرسانی افزایشی را اعمال کند.

compressed_removals

RiceDeltaEncoded32Bit

نسخه کدگذاری شده برنج دلتا از شاخص های حذف. از آنجایی که هر لیست هش قطعا کمتر از 2^32 ورودی دارد، شاخص ها به عنوان اعداد صحیح 32 بیتی در نظر گرفته می شوند و کدگذاری می شوند.

minimum_wait_duration

Duration

مشتریان باید حداقل این مدت صبر کنند تا دوباره لیست هش را دریافت کنند. اگر حذف یا صفر شود، کلاینت‌ها باید فوراً واکشی شوند زیرا نشان می‌دهد که سرور یک به‌روزرسانی اضافی برای ارسال به مشتری دارد، اما به دلیل محدودیت‌های مشخص‌شده توسط کلاینت نمی‌تواند.

metadata

HashListMetadata

فراداده درباره فهرست هش. این با متد GetHashList پر نمی شود، اما با متد ListHashLists پر می شود.

فیلد اتحادیه compressed_additions . نسخه کدگذاری شده برنج دلتا از اضافات. طول پیشوند هش اضافات در همه اضافات موجود در لیست یکنواخت است. در صورتی که کلاینت آن فیلد را حذف کرده باشد، یا مقدار 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 فیلد اتحادیه این چک جمع لیست مرتب شده همه هش های موجود در پایگاه داده پس از اعمال به روز رسانی ارائه شده است. این یک فیلد "یکی" است که به چندین الگوریتم هش اجازه می دهد. همچنین ممکن است سرور این فیلد را حذف کند (در صورتی که به روز رسانی ارائه نشده باشد) تا نشان دهد که کلاینت باید از checksum موجود استفاده کند. checksum می‌تواند تنها یکی از موارد زیر باشد:
sha256_checksum

bytes

لیست مرتب شده همه هش ها، دوباره با SHA256 هش شده است.

HashListMetadata

فراداده در مورد یک لیست هش خاص.

زمینه های
threat_types[]

ThreatType

لیست نامرتب. اگر خالی نباشد، مشخص می کند که لیست هش نوعی لیست تهدید است، و این نوع تهدیدات مرتبط با هش یا پیشوندهای هش را در این لیست هش برمی شمارد. اگر ورودی نشان دهنده تهدید نباشد، یعنی در صورتی که نشان دهنده یک نوع احتمالی امن باشد، ممکن است خالی باشد.

likely_safe_types[]

LikelySafeType

لیست نامرتب. اگر خالی نباشد، مشخص می‌کند که فهرست هش فهرستی از هش‌های احتمالی ایمن را نشان می‌دهد و راه‌هایی را که احتمالاً ایمن در نظر گرفته می‌شوند را برمی‌شمارد. این فیلد با فیلد gef_types متقابل است.

mobile_optimized

bool

آیا این لیست برای دستگاه های تلفن همراه (اندروید و iOS) بهینه شده است یا خیر.

description

string

توضیحاتی قابل خواندن برای انسان در مورد این لیست. به زبان انگلیسی نوشته شده است.

supported_hash_lengths[]

HashLength

طول هش پشتیبانی شده برای این لیست هش. هر لیست هش حداقل یک طول را پشتیبانی می کند. بنابراین این فیلد خالی نخواهد بود.

HashLength

طول هش ها در لیست هش.

Enums
HASH_LENGTH_UNSPECIFIED طول نامشخص سرور این مقدار را در پاسخ به کلاینت (در قسمت supported_hash_lengths ) برنمی‌گرداند، اما کلاینت مجاز است این مقدار را به سرور ارسال کند (در قسمت desired_hash_length )، در این صورت سرور به طور خودکار یک مقدار را انتخاب می‌کند. کلاینت ها باید به سرور اجازه دهند مقداری را انتخاب کند.
FOUR_BYTES هر هش یک پیشوند چهار بایتی است.
EIGHT_BYTES هر هش یک پیشوند هشت بایتی است.
SIXTEEN_BYTES هر هش یک پیشوند شانزده بایتی است.
THIRTY_TWO_BYTES هر هش یک هش کامل سی و دو بایتی است.

LikelySafeType

انواع سایت های احتمالی ایمن

توجه داشته باشید که SearchHashesResponse عمدا حاوی LikelySafeType نیست.

Enums
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 برای بازیابی صفحه بعدی ارسال شود. اگر این قسمت حذف شود، هیچ صفحه بعدی وجود ندارد.

RiceDeltaEncoded128Bit

مانند RiceDeltaEncoded32Bit با این تفاوت که اعداد 128 بیتی را کد می کند.

زمینه های
first_value_hi

uint64

64 بیت بالای اولین ورودی در داده های رمزگذاری شده (هش). اگر فیلد خالی باشد، 64 بیت بالایی همه صفر هستند.

first_value_lo

fixed64

64 بیت پایینی اولین ورودی در داده های رمزگذاری شده (هش). اگر فیلد خالی باشد، 64 بیت پایین همه صفر هستند.

rice_parameter

int32

پارامتر Golomb-Rice این پارامتر شامل 99 تا 126 تضمین شده است.

entries_count

int32

تعداد ورودی هایی که در داده های کدگذاری شده دلتا کدگذاری می شوند. اگر فقط یک عدد صحیح رمزگذاری شده باشد، این عدد صفر خواهد بود و مقدار واحد در first_value ذخیره می شود.

encoded_data

bytes

دلتاهای کدگذاری شده که با استفاده از رمزگذار Golomb-Rice کدگذاری می شوند.

RiceDeltaEncoded256Bit

مانند RiceDeltaEncoded32Bit با این تفاوت که اعداد 256 بیتی را رمزگذاری می کند.

زمینه های
first_value_first_part

uint64

64 بیت اول اولین ورودی در داده های رمزگذاری شده (هش). اگر فیلد خالی باشد، 64 بیت اول همه صفر هستند.

first_value_second_part

fixed64

بیت های 65 تا 128 اولین ورودی در داده های رمزگذاری شده (هش). اگر فیلد خالی باشد، بیت های 65 تا 128 همگی صفر هستند.

first_value_third_part

fixed64

بیت های 129 تا 192 اولین ورودی در داده های رمزگذاری شده (هش). اگر فیلد خالی باشد، بیت های 129 تا 192 همه صفر هستند.

first_value_fourth_part

fixed64

64 بیت آخر اولین ورودی در داده های رمزگذاری شده (هش). اگر فیلد خالی باشد، 64 بیت آخر همگی صفر هستند.

rice_parameter

int32

پارامتر Golomb-Rice این پارامتر شامل 227 تا 254 تضمین شده است.

entries_count

int32

تعداد ورودی هایی که در داده های کدگذاری شده دلتا کدگذاری می شوند. اگر فقط یک عدد صحیح رمزگذاری شده باشد، این عدد صفر خواهد بود و مقدار واحد در first_value ذخیره می شود.

encoded_data

bytes

دلتاهای کدگذاری شده که با استفاده از رمزگذار Golomb-Rice کدگذاری می شوند.

RiceDeltaEncoded32Bit

داده های رایس-گلومب رمزگذاری شده است. برای هش یا حذف شاخص ها استفاده می شود. تضمین شده است که هر هش یا ایندکس در اینجا دارای طول یکسانی است و این طول دقیقاً 32 بیت است.

به طور کلی، اگر همه مدخل ها را به صورت واژگانی مرتب کنیم، متوجه خواهیم شد که بیت های مرتبه بالاتر به اندازه بیت های مرتبه پایین تر تغییر نمی کنند. این بدان معنی است که اگر اختلاف مجاور بین ورودی ها را نیز در نظر بگیریم، بیت های مرتبه بالاتر احتمال بالایی دارند که صفر باشند. این از این احتمال بالای صفر با انتخاب تعداد معینی از بیت ها استفاده می کند. همه بیت‌های مهم‌تر از این احتمالاً صفر هستند، بنابراین ما از رمزگذاری unary استفاده می‌کنیم. قسمت rice_parameter را ببینید.

یادداشت تاریخی: رمزگذاری Rice-delta برای اولین بار در V4 این API استفاده شد. در V5، دو پیشرفت قابل توجه ایجاد شد: اول، رمزگذاری Rice-delta اکنون با پیشوندهای هش بیش از 4 بایت در دسترس است. ثانیاً، داده‌های کدگذاری‌شده اکنون به‌عنوان بزرگ‌اندیان در نظر گرفته می‌شوند تا از یک مرحله مرتب‌سازی پرهزینه جلوگیری شود.

زمینه های
first_value

uint32

اولین ورودی در داده‌های رمزگذاری‌شده (هش‌ها یا شاخص‌ها)، یا اگر فقط یک پیشوند یا شاخص درهم کدگذاری شده باشد، مقدار آن ورودی. اگر فیلد خالی باشد، ورودی صفر است.

rice_parameter

int32

پارامتر Golomb-Rice. این پارامتر شامل 3 تا 30 تضمین شده است.

entries_count

int32

تعداد ورودی هایی که در داده های کدگذاری شده دلتا کدگذاری می شوند. اگر فقط یک عدد صحیح رمزگذاری شده باشد، این عدد صفر خواهد بود و مقدار واحد در first_value ذخیره می شود.

encoded_data

bytes

دلتاهای کدگذاری شده که با استفاده از رمزگذار Golomb-Rice کدگذاری می شوند.

RiceDeltaEncoded64Bit

مانند RiceDeltaEncoded32Bit با این تفاوت که اعداد 64 بیتی را کد می کند.

زمینه های
first_value

uint64

اولین ورودی در داده های رمزگذاری شده (هش)، یا اگر فقط یک پیشوند هش کدگذاری شده باشد، مقدار آن ورودی. اگر فیلد خالی باشد، ورودی صفر است.

rice_parameter

int32

پارامتر Golomb-Rice این پارامتر شامل 35 تا 62 تضمین شده است.

entries_count

int32

تعداد ورودی هایی که در داده های کدگذاری شده دلتا کدگذاری می شوند. اگر فقط یک عدد صحیح رمزگذاری شده باشد، این عدد صفر خواهد بود و مقدار واحد در first_value ذخیره می شود.

encoded_data

bytes

دلتاهای کدگذاری شده که با استفاده از رمزگذار Golomb-Rice کدگذاری می شوند.

SearchHashesRequest

درخواستی که مشتری برای جستجوی پیشوندهای هش خاص صادر می کند.

این فقط برای جستجوی لیست های تهدید طراحی شده است و لیست های غیرتهدید مانند کش جهانی را جستجو نمی کند.

چه چیزی در V5 جدید است : مشتریان نیازی به تعیین ClientInfo یا وضعیت لیست های هش در پایگاه داده محلی خود ندارند. این برای بهبود حریم خصوصی است. علاوه بر این، مشتریان نیازی به ارسال انواع تهدیدات مورد نظر خود ندارند.

زمینه های
hash_prefixes[]

bytes

ضروری. پیشوندهای هش که باید جستجو شوند. مشتریان نباید بیش از 1000 پیشوند هش ارسال کنند. با این حال، به دنبال روش پردازش URL، مشتریان نباید بیش از 30 پیشوند هش ارسال کنند.

در حال حاضر هر پیشوند هش باید دقیقاً 4 بایت باشد. این ممکن است در آینده آرام شود.

filter

string

اختیاری. اگر مشتری علاقه مند به فیلتر کردن باشد، مانند بازیابی انواع خاصی از تهدیدات، می توان آن را مشخص کرد. در صورت حذف، تمام تهدیدات منطبق برگردانده می شوند. برای دریافت کاملترین حفاظتی که Safe Browsing می تواند ارائه دهد، به شدت توصیه می شود که این مورد را حذف کنید.

فیلتر با استفاده از زبان عبارت رایج گوگل مشخص شده است، که می‌توانید آن را در https://github.com/google/cel-spec به همراه مثال‌های کلی پیدا کنید. در اینجا چند نمونه خاص وجود دارد که می توان از آنها در اینجا استفاده کرد:

فیلتر "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) وضعیت OK (کد وضعیت HTTP 200) را با فیلد full_hashes خالی برمی گرداند.

چیزهای جدید در V5 : یک جدایی بین FullHash و FullHashDetail وجود دارد. در صورتی که یک هش نشان دهنده سایتی باشد که چندین تهدید دارد (مانند MALWARE و SOCIAL_ENGINEERING)، نیازی نیست هش کامل دو برابر نسخه 4 ارسال شود. علاوه بر این، مدت زمان کش به یک فیلد cache_duration ساده شده است.

زمینه های
full_hashes[]

FullHash

لیست نامرتب. لیست نامرتب هش کامل پیدا شد.

cache_duration

Duration

مدت زمان کش سمت مشتری. مشتری باید این مدت زمان را به زمان فعلی اضافه کند تا زمان انقضا مشخص شود. زمان انقضا پس از آن برای هر پیشوند هش درخواست شده توسط مشتری در درخواست اعمال می شود، صرف نظر از اینکه چه تعداد هش کامل در پاسخ بازگردانده شده است. حتی اگر سرور هیچ هش کاملی را برای یک پیشوند هش خاص برنگرداند، این واقعیت نیز باید توسط مشتری ذخیره شود.

اگر و فقط اگر فیلد full_hashes خالی باشد، مشتری ممکن است cache_duration را افزایش دهد تا انقضای جدیدی را تعیین کند که دیرتر از زمان تعیین شده توسط سرور باشد. در هر صورت، افزایش مدت زمان کش نباید بیشتر از 24 ساعت باشد.

مهم: کلاینت نباید فرض کند که سرور مدت زمان کش یکسانی را برای همه پاسخ ها برمی گرداند. سرور ممکن است بسته به موقعیت، مدت زمان کش متفاوتی را برای پاسخ های مختلف انتخاب کند.

محدودیت های اندازه

محدودیت در اندازه لیست های هش.

زمینه های
max_update_entries

int32

حداکثر اندازه در تعداد ورودی ها. این به روز رسانی شامل ورودی های بیشتر از این مقدار نخواهد بود، اما ممکن است به روز رسانی ورودی های کمتری از این مقدار داشته باشد. این باید حداقل 1024 باشد. اگر حذف شود یا صفر باشد، هیچ محدودیتی برای اندازه به‌روزرسانی تنظیم نمی‌شود.

max_database_entries

int32

حداکثر تعداد ورودی هایی را که مشتری مایل است در پایگاه داده محلی لیست داشته باشد را تنظیم می کند. (سرور ممکن است باعث شود مشتری کمتر از این تعداد ورودی را ذخیره کند.) اگر حذف شود یا صفر باشد، هیچ محدودیتی برای اندازه پایگاه داده تعیین نمی شود.

ThreatAttribute

ویژگی های تهدید این ویژگی ها ممکن است معنای بیشتری به یک تهدید خاص بدهد اما بر نوع تهدید تأثیری نخواهد گذاشت. به عنوان مثال، یک ویژگی ممکن است اطمینان کمتری را مشخص کند در حالی که یک ویژگی دیگر ممکن است اطمینان بالاتری را مشخص کند. ممکن است در آینده ویژگی های بیشتری اضافه شود.

Enums
THREAT_ATTRIBUTE_UNSPECIFIED ویژگی نامشخص. اگر این مورد توسط سرور برگردانده شود، کلاینت باید FullHashDetail را به طور کامل نادیده بگیرد.
CANARY نشان می دهد که type_type نباید برای اجرا استفاده شود.
FRAME_ONLY نشان می دهد که type_type فقط باید برای اجرا در فریم ها استفاده شود.

ThreatType

انواع تهدید.

Enums
THREAT_TYPE_UNSPECIFIED نوع تهدید ناشناخته اگر این مورد توسط سرور برگردانده شود، کلاینت باید FullHashDetail را به طور کامل نادیده بگیرد.
MALWARE

نوع تهدید بدافزار بدافزار به هر نرم افزار یا برنامه تلفن همراهی گفته می شود که به طور خاص برای آسیب رساندن به رایانه، دستگاه تلفن همراه، نرم افزاری که در حال اجراست یا کاربران آن طراحی شده است. بدافزار رفتار مخربی از خود نشان می دهد که می تواند شامل نصب نرم افزار بدون رضایت کاربر و نصب نرم افزارهای مضر مانند ویروس ها باشد.

اطلاعات بیشتر را می توان در اینجا یافت .

SOCIAL_ENGINEERING

نوع تهدید مهندسی اجتماعی صفحات مهندسی اجتماعی به دروغ ادعا می کنند که از طرف شخص ثالث عمل می کنند و قصد دارند بینندگان را برای انجام کاری گیج کنند که بیننده فقط به یک عامل واقعی آن شخص ثالث اعتماد کند. فیشینگ نوعی مهندسی اجتماعی است که بیننده را فریب می دهد تا اقدام خاصی برای ارائه اطلاعات مانند اعتبار ورود به سیستم انجام دهد.

اطلاعات بیشتر را می توان در اینجا یافت .

UNWANTED_SOFTWARE نوع تهدید نرم افزار ناخواسته نرم افزار ناخواسته هر نرم افزاری است که به اصول نرم افزار گوگل پایبند نیست اما بدافزار نیست.
POTENTIALLY_HARMFUL_APPLICATION نوع تهدید برنامه بالقوه مضر همانطور که Google Play Protect برای فروشگاه Play استفاده می کند .