Package google.security.safebrowsing.v5alpha1

সূচক

নিরাপদ ব্রাউজিং

নিরাপদ ব্রাউজিং এপিআইগুলি ক্লায়েন্টদেরকে Google-এর অনিরাপদ ওয়েব সংস্থানগুলির ক্রমাগত আপডেট করা তালিকাগুলির বিরুদ্ধে ওয়েব সংস্থানগুলি (সবচেয়ে বেশি ইউআরএল) পরীক্ষা করতে সক্ষম করে৷

ব্যাচগেটহ্যাশলিস্ট

rpc BatchGetHashLists( BatchGetHashListsRequest ) returns ( BatchGetHashListsResponse )

একবারে একাধিক হ্যাশ তালিকা পান।

একটি ক্লায়েন্টের জন্য একাধিক হ্যাশ তালিকা পেতে খুব সাধারণ। নিয়মিত Get পদ্ধতি একাধিকবার ব্যবহার করার চেয়ে এই পদ্ধতিটি ব্যবহার করা পছন্দনীয়।

এটি https://google.aip.dev/231 দ্বারা সংজ্ঞায়িত একটি স্ট্যান্ডার্ড ব্যাচ প্রাপ্ত পদ্ধতি এবং HTTP পদ্ধতিটিও GET।

GetHashList

rpc GetHashList( GetHashListRequest ) returns ( HashList )

একটি হ্যাশ তালিকার সর্বশেষ বিষয়বস্তু পান. একটি হ্যাশ তালিকা হয় হুমকি তালিকা বা অ-হুমকি তালিকা যেমন গ্লোবাল ক্যাশে দ্বারা।

এটি https://google.aip.dev/131 দ্বারা সংজ্ঞায়িত একটি আদর্শ Get পদ্ধতি এবং HTTP পদ্ধতিটিও GET।

লিস্টহ্যাশলিস্ট

rpc ListHashLists( ListHashListsRequest ) returns ( ListHashListsResponse )

তালিকা হ্যাশ তালিকা.

V5 API-এ, Google কখনই এই পদ্ধতির দ্বারা ফেরত দেওয়া হ্যাশ তালিকাকে সরিয়ে দেবে না। এটি ক্লায়েন্টদের এই পদ্ধতিটি ব্যবহার এড়িয়ে যেতে এবং তাদের প্রয়োজনীয় সমস্ত হ্যাশ তালিকাকে হার্ড-কোড করতে সক্ষম করে।

এটি https://google.aip.dev/132 দ্বারা সংজ্ঞায়িত একটি আদর্শ তালিকা পদ্ধতি এবং HTTP পদ্ধতি হল GET৷

সার্চ হ্যাশ

rpc SearchHashes( SearchHashesRequest ) returns ( SearchHashesResponse )

নির্দিষ্ট উপসর্গের সাথে মিলে যাওয়া সম্পূর্ণ হ্যাশের জন্য অনুসন্ধান করুন।

এটি একটি কাস্টম পদ্ধতি যা https://google.aip.dev/136 দ্বারা সংজ্ঞায়িত করা হয়েছে (কাস্টম পদ্ধতিটি এই পদ্ধতিকে বোঝায় যেটি Google এর সাধারণ API বিকাশ নামকরণের মধ্যে একটি কাস্টম নাম রয়েছে; এটি একটি কাস্টম HTTP পদ্ধতি ব্যবহার করার উল্লেখ করে না)।

BatchGetHashListsRequest

একই সময়ে একাধিক হ্যাশ তালিকা পেতে অনুরোধ.

ক্ষেত্র
names[]

string

প্রয়োজন। নির্দিষ্ট হ্যাশ তালিকার নাম. তালিকাটি একটি হুমকি তালিকা হতে পারে, অথবা এটি গ্লোবাল ক্যাশে হতে পারে৷ নামগুলিতে সদৃশ থাকা উচিত নয়; যদি তারা করে, ক্লায়েন্ট একটি ত্রুটি পাবেন।

version[]

bytes

হ্যাশ তালিকার সংস্করণ যা ক্লায়েন্ট ইতিমধ্যেই আছে। যদি এই প্রথমবার ক্লায়েন্ট হ্যাশ তালিকা নিয়ে আসে, তাহলে ক্ষেত্রটি খালি রাখা উচিত। অন্যথায়, ক্লায়েন্টকে পূর্বে সার্ভার থেকে প্রাপ্ত সংস্করণ সরবরাহ করতে হবে। ক্লায়েন্ট অবশ্যই সেই বাইটগুলিকে ম্যানিপুলেট করবে না।

ক্লায়েন্টকে সংশ্লিষ্ট তালিকার নামের মতো একই ক্রমে সংস্করণ পাঠাতে হবে না। ক্লায়েন্ট নামের চেয়ে একটি অনুরোধে কম বা বেশি সংস্করণ পাঠাতে পারে। যাইহোক, ক্লায়েন্টকে একই নামের সাথে সঙ্গতিপূর্ণ একাধিক সংস্করণ পাঠাতে হবে না; যদি এটি করে থাকে, ক্লায়েন্ট একটি ত্রুটি পাবে।

ঐতিহাসিক দ্রষ্টব্য: API-এর V4-এ, একে বলা হত states ; স্বচ্ছতার জন্য এটি এখন version নামকরণ করা হয়েছে।

desired_hash_length

HashLength

বাইটে ফিরে আসা হ্যাশের পছন্দসই হ্যাশ উপসর্গের দৈর্ঘ্য। সার্ভার তারপর এই নির্দিষ্ট দৈর্ঘ্যের সমস্ত হ্যাশ উপসর্গ ফিরিয়ে দেবে।

desired_hash_length ক্ষেত্রের গ্রহণযোগ্য মানগুলির জন্য বিভিন্ন হ্যাশ তালিকার বিভিন্ন প্রয়োজনীয়তা রয়েছে। এটি HashListMetadatasupported_hash_lengths hash_lengths ক্ষেত্রে পাওয়া যাবে। যদি desired_hash_length supported_hash_lengths মধ্যে একটি মান নির্দিষ্ট না করে তবে ক্লায়েন্টদের কাছে একটি ত্রুটি ফেরত দেওয়া হবে।

বিশেষ করে BatchGetHashListsRequest এর জন্য, ক্লায়েন্টদের জন্য বিভিন্ন তালিকার জন্য একটি ভিন্ন desired_hash_length নির্দিষ্ট করা সম্ভব নয়। যদি এটি করার প্রয়োজন হয়, ক্লায়েন্টকে একাধিক BatchGetHashListsRequest s-এ বিভক্ত করা উচিত।

size_constraints

SizeConstraints

প্রতিটি তালিকার আকারের সীমাবদ্ধতা। যদি বাদ দেওয়া হয়, কোন বাধা নেই। মনে রাখবেন যে এখানে আকারগুলি প্রতি-তালিকা, সমস্ত তালিকা জুড়ে একত্রিত নয়।

BatchGetHashListsResponse

একাধিক হ্যাশ তালিকা ধারণকারী প্রতিক্রিয়া.

ক্ষেত্র
hash_lists[]

HashList

অনুরোধে দেওয়া একই ক্রমে হ্যাশ তালিকা।

ফুলহ্যাশ

এক বা একাধিক মিলের সাথে চিহ্নিত সম্পূর্ণ হ্যাশ।

ক্ষেত্র
full_hash

bytes

ম্যাচিং পূর্ণ হ্যাশ. এটি SHA256 হ্যাশ। দৈর্ঘ্য হবে ঠিক 32 বাইট।

full_hash_details[]

FullHashDetail

Unordered তালিকা. একটি পুনরাবৃত্ত ক্ষেত্র এই সম্পূর্ণ হ্যাশের সাথে প্রাসঙ্গিক বিবরণ সনাক্ত করে।

ফুলহ্যাশ ডিটেইল

একটি ম্যাচিং পূর্ণ হ্যাশ সম্পর্কে বিশদ বিবরণ.

ফরোয়ার্ড সামঞ্জস্য সম্পর্কে একটি গুরুত্বপূর্ণ নোট: নতুন হুমকির ধরন এবং হুমকির বৈশিষ্ট্যগুলি যে কোনো সময় সার্ভার দ্বারা যোগ করা হতে পারে; এই সংযোজনগুলিকে ছোট সংস্করণ পরিবর্তন হিসাবে বিবেচনা করা হয়। এপিআই-এ ক্ষুদ্র সংস্করণ নম্বর প্রকাশ না করা Google-এর নীতি (সংস্করণ নীতির জন্য https://cloud.google.com/apis/design/versioning দেখুন), তাই ক্লায়েন্টদের অবশ্যই ThreatType enum মান বা ThreatAttribute সম্বলিত FullHashDetail বার্তা পাওয়ার জন্য প্রস্তুত থাকতে হবে enum মান যা ক্লায়েন্ট দ্বারা অবৈধ বলে বিবেচিত হয়। অতএব, সমস্ত ThreatType এবং ThreatAttribute enum মানগুলির বৈধতা পরীক্ষা করা ক্লায়েন্টের দায়িত্ব; যদি কোনো মান অবৈধ বলে বিবেচিত হয়, ক্লায়েন্টকে অবশ্যই সম্পূর্ণ FullHashDetail বার্তাটি উপেক্ষা করতে হবে।

ক্ষেত্র
threat_type

ThreatType

হুমকির ধরন। এই মাঠ কখনই খালি হবে না।

attributes[]

ThreatAttribute

Unordered তালিকা. সেই সম্পূর্ণ হ্যাশ সম্পর্কে অতিরিক্ত বৈশিষ্ট্য। এই খালি হতে পারে.

GetHashListRequest

একটি হ্যাশ তালিকা পাওয়ার জন্য একটি অনুরোধ, যা একটি হুমকি তালিকা বা একটি অ-হুমকি তালিকা যেমন গ্লোবাল ক্যাশে হতে পারে।

V5-এ নতুন কী আছে : V4-এ যাকে আগে states বলা হত তা স্বচ্ছতার জন্য version নামকরণ করা হয়েছে। তালিকাগুলি এখন নাম দেওয়া হয়েছে, প্ল্যাটফর্মের ধরন এবং হুমকি এন্ট্রি প্রকারগুলি সরানো হয়েছে৷ এখন একাধিক তালিকার জন্য একই হুমকির ধরন বা একাধিক হুমকি প্রকারের সাথে সম্পর্কিত একটি একক তালিকা থাকা সম্ভব। ক্লায়েন্টদের একটি পছন্দসই হ্যাশ দৈর্ঘ্য নির্দিষ্ট করার নতুন ক্ষমতা রয়েছে। এটি V4-এর পরিবর্তনশীল-দৈর্ঘ্যের হ্যাশ উপসর্গগুলির উত্তরের অংশ যা অনেক ক্লায়েন্ট বাস্তবায়নে সমস্যা সৃষ্টি করেছে: একটি তালিকার সমস্ত হ্যাশের এখন একক দৈর্ঘ্য রয়েছে, যা অনেক বেশি দক্ষ ক্লায়েন্ট বাস্তবায়নের অনুমতি দেয়। সীমাবদ্ধতা সরলীকৃত করা হয়েছে, এবং কম্প্রেশন টাইপ সরানো হয়েছে (সংকোচন সর্বদা প্রয়োগ করা হয়)।

ক্ষেত্র
name

string

প্রয়োজন। এই বিশেষ হ্যাশ তালিকার নাম. এটি একটি হুমকি তালিকা হতে পারে, অথবা এটি গ্লোবাল ক্যাশে হতে পারে।

version

bytes

হ্যাশ তালিকার সংস্করণ যা ক্লায়েন্ট ইতিমধ্যেই আছে। যদি এই প্রথমবার ক্লায়েন্ট হ্যাশ তালিকা আনয়ন করে, তাহলে এই ক্ষেত্রটি খালি রাখতে হবে। অন্যথায়, ক্লায়েন্টকে সার্ভার থেকে পূর্বে প্রাপ্ত সংস্করণ সরবরাহ করতে হবে। ক্লায়েন্ট অবশ্যই সেই বাইটগুলিকে ম্যানিপুলেট করবে না।

V5-এ নতুন কি : API-এর V4-এ, একে বলা হতো states ; স্বচ্ছতার জন্য এটি এখন version নামকরণ করা হয়েছে।

desired_hash_length

HashLength

বাইটে ফিরে আসা হ্যাশের পছন্দসই হ্যাশ উপসর্গের দৈর্ঘ্য। সার্ভার তারপর এই নির্দিষ্ট দৈর্ঘ্যের সমস্ত হ্যাশ উপসর্গ ফিরিয়ে দেবে।

desired_hash_length ক্ষেত্রের গ্রহণযোগ্য মানগুলির জন্য বিভিন্ন হ্যাশ তালিকার বিভিন্ন প্রয়োজনীয়তা রয়েছে। এটি HashListMetadatasupported_hash_lengths hash_lengths ক্ষেত্রে পাওয়া যাবে। যদি desired_hash_length supported_hash_lengths মধ্যে একটি মান নির্দিষ্ট না করে তবে একটি ত্রুটি ফেরত দেওয়া হবে।

size_constraints

SizeConstraints

তালিকায় আকারের সীমাবদ্ধতা। যদি বাদ দেওয়া হয়, কোন বাধা নেই। সীমিত প্রক্রিয়াকরণ শক্তি, ব্যান্ডউইথ বা স্টোরেজ সহ সমস্ত ডিভাইসে সীমাবদ্ধতার সুপারিশ করা হয়।

হ্যাশলিস্ট

এর নামের দ্বারা চিহ্নিত হ্যাশের একটি তালিকা।

ক্ষেত্র
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 নিম্নলিখিতগুলির মধ্যে একটি হতে পারে:
sha256_checksum

bytes

সব হ্যাশের সাজানো তালিকা, আবার SHA256 দিয়ে হ্যাশ করা হয়েছে।

হ্যাশলিস্ট মেটাডেটা

একটি নির্দিষ্ট হ্যাশ তালিকা সম্পর্কে মেটাডেটা।

ক্ষেত্র
threat_types[]

ThreatType

Unordered তালিকা. খালি না থাকলে, এটি নির্দিষ্ট করে যে হ্যাশ তালিকাটি এক ধরনের হুমকি তালিকা, এবং এটি এই হ্যাশ তালিকায় হ্যাশ বা হ্যাশ উপসর্গের সাথে যুক্ত হুমকির ধরন গণনা করে। খালি হতে পারে যদি এন্ট্রি কোনো হুমকির প্রতিনিধিত্ব না করে, যেমন ক্ষেত্রে এটি একটি সম্ভাব্য নিরাপদ প্রকারের প্রতিনিধিত্ব করে।

likely_safe_types[]

LikelySafeType

Unordered তালিকা. খালি না থাকলে, এটি নির্দিষ্ট করে যে হ্যাশ তালিকা সম্ভাব্য নিরাপদ হ্যাশগুলির একটি তালিকা উপস্থাপন করে এবং এটি সম্ভাব্য নিরাপদ হিসাবে বিবেচিত উপায়গুলি গণনা করে। হুমকি_টাইপস ক্ষেত্রের সাথে এই ক্ষেত্রটি পারস্পরিকভাবে একচেটিয়া।

mobile_optimized

bool

এই তালিকাটি মোবাইল ডিভাইসের (Android এবং iOS) জন্য অপ্টিমাইজ করা হয়েছে কিনা।

description

string

এই তালিকা সম্পর্কে একটি মানব-পাঠযোগ্য বর্ণনা। ইংরেজিতে লেখা।

supported_hash_lengths[]

HashLength

এই হ্যাশ তালিকার জন্য সমর্থিত হ্যাশ দৈর্ঘ্য। প্রতিটি হ্যাশ তালিকা অন্তত একটি দৈর্ঘ্য সমর্থন করবে. তাই এই ক্ষেত্রটি খালি থাকবে না।

হ্যাশলেংথ

হ্যাশ তালিকায় হ্যাশের দৈর্ঘ্য।

Enums
HASH_LENGTH_UNSPECIFIED অনির্দিষ্ট দৈর্ঘ্য। সার্ভার ক্লায়েন্টের প্রতিক্রিয়াতে এই মানটি ফেরত দেবে না ( supported_hash_lengths ফিল্ডে), তবে ক্লায়েন্টকে এই মানটি সার্ভারে পাঠানোর অনুমতি দেওয়া হয় ( desired_hash_length ক্ষেত্রে), এই ক্ষেত্রে সার্ভার স্বয়ংক্রিয়ভাবে একটি মান বেছে নেবে। ক্লায়েন্টদের সার্ভারকে একটি মান বাছাই করতে দেওয়া উচিত।
FOUR_BYTES প্রতিটি হ্যাশ একটি চার-বাইট উপসর্গ।
EIGHT_BYTES প্রতিটি হ্যাশ একটি আট-বাইট উপসর্গ।
SIXTEEN_BYTES প্রতিটি হ্যাশ একটি ষোল বাইট উপসর্গ।
THIRTY_TWO_BYTES প্রতিটি হ্যাশ একটি বত্রিশ-বাইট পূর্ণ হ্যাশ।

লাইকলিসেফ টাইপ

সম্ভাব্য-নিরাপদ সাইটের প্রকার।

মনে রাখবেন যে 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 হিসাবে পাঠানো যেতে পারে। যদি এই ক্ষেত্রটি বাদ দেওয়া হয়, তাহলে পরবর্তী পৃষ্ঠা থাকবে না।

রাইসডেল্টা এনকোডেড 128 বিট

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 কোডার ব্যবহার করে এনকোড করা ডেল্টা।

রাইসডেল্টা এনকোডেড 256 বিট

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 কোডার ব্যবহার করে এনকোড করা ডেল্টা।

রাইসডেল্টা এনকোডেড 32 বিট

রাইস-গোলম্ব এনকোডেড ডেটা। হ্যাশ বা অপসারণ সূচকের জন্য ব্যবহৃত হয়। এটা নিশ্চিত যে এখানে প্রতিটি হ্যাশ বা সূচকের দৈর্ঘ্য একই, এবং এই দৈর্ঘ্য ঠিক 32 বিট।

সাধারণভাবে বলতে গেলে, আমরা যদি সমস্ত এন্ট্রিকে অভিধানিকভাবে সাজাই, আমরা দেখতে পাব যে উচ্চ ক্রম বিটগুলি নিম্ন ক্রম বিটের মতো ঘন ঘন পরিবর্তন হয় না। এর মানে হল যে যদি আমরা এন্ট্রিগুলির মধ্যে সংলগ্ন পার্থক্যটিও গ্রহণ করি, তবে উচ্চ ক্রম বিটগুলির শূন্য হওয়ার উচ্চ সম্ভাবনা রয়েছে। এটি মূলত একটি নির্দিষ্ট সংখ্যক বিট নির্বাচন করে শূন্যের এই উচ্চ সম্ভাবনাকে কাজে লাগায়; এর চেয়ে বেশি তাৎপর্যপূর্ণ সব বিট শূন্য হতে পারে তাই আমরা unary এনকোডিং ব্যবহার করি। rice_parameter ক্ষেত্র দেখুন।

ঐতিহাসিক নোট: রাইস-ডেল্টা এনকোডিং প্রথম এই API-এর V4-এ ব্যবহার করা হয়েছিল। V5-এ, দুটি উল্লেখযোগ্য উন্নতি করা হয়েছিল: প্রথমত, রাইস-ডেল্টা এনকোডিং এখন 4 বাইটের বেশি হ্যাশ উপসর্গ সহ উপলব্ধ; দ্বিতীয়ত, এনকোড করা ডেটা এখন বিগ-এন্ডিয়ান হিসাবে বিবেচিত হয় যাতে একটি ব্যয়বহুল বাছাই পদক্ষেপ এড়ানো যায়।

ক্ষেত্র
first_value

uint32

এনকোড করা ডেটার প্রথম এন্ট্রি (হ্যাশ বা সূচক), অথবা, যদি শুধুমাত্র একটি হ্যাশ উপসর্গ বা সূচক এনকোড করা হয়, সেই এন্ট্রির মান। যদি ক্ষেত্রটি খালি থাকে তবে এন্ট্রি শূন্য হয়।

rice_parameter

int32

Golomb-Rice প্যারামিটার। এই পরামিতিটি 3 থেকে 30 এর মধ্যে হবে নিশ্চিত, অন্তর্ভুক্ত।

entries_count

int32

এনকোড করা ডেটাতে ডেল্টা এনকোড করা এন্ট্রির সংখ্যা। যদি শুধুমাত্র একটি একক পূর্ণসংখ্যা এনকোড করা হয় তবে এটি শূন্য হবে এবং একক মান first_value এ সংরক্ষণ করা হবে।

encoded_data

bytes

Golomb-Rice কোডার ব্যবহার করে এনকোড করা ডেল্টা।

রাইসডেল্টা এনকোডেড 64 বিট

RiceDeltaEncoded32Bit এর মতই এটি 64-বিট নম্বর এনকোড করে।

ক্ষেত্র
first_value

uint64

এনকোড করা ডেটার প্রথম এন্ট্রি (হ্যাশ), অথবা, যদি শুধুমাত্র একটি হ্যাশ উপসর্গ এনকোড করা হয়, তাহলে সেই এন্ট্রির মান। যদি ক্ষেত্রটি খালি থাকে তবে এন্ট্রি শূন্য হয়।

rice_parameter

int32

Golomb-Rice প্যারামিটার। এই প্যারামিটারটি 35 এবং 62 এর মধ্যে থাকা নিশ্চিত, অন্তর্ভুক্ত।

entries_count

int32

এনকোড করা ডেটাতে ডেল্টা এনকোড করা এন্ট্রির সংখ্যা। যদি শুধুমাত্র একটি একক পূর্ণসংখ্যা এনকোড করা হয় তবে এটি শূন্য হবে এবং একক মান first_value এ সংরক্ষণ করা হবে।

encoded_data

bytes

Golomb-Rice কোডার ব্যবহার করে এনকোড করা ডেল্টা।

সার্চ হ্যাশ রিকোয়েস্ট

একটি অনুরোধ যা ক্লায়েন্ট নির্দিষ্ট হ্যাশ উপসর্গ অনুসন্ধান করতে সমস্যা করে।

এটি শুধুমাত্র হুমকি তালিকা অনুসন্ধান করার জন্য ডিজাইন করা হয়েছে এবং গ্লোবাল ক্যাশের মতো অ-হুমকি তালিকা অনুসন্ধান করে না।

V5-এ নতুন কি : ক্লায়েন্টদের তাদের স্থানীয় ডাটাবেসে একটি ClientInfo বা হ্যাশ তালিকার অবস্থা নির্দিষ্ট করার প্রয়োজন নেই। এটি উন্নত গোপনীয়তার জন্য। তদ্ব্যতীত, ক্লায়েন্টদের কোন ধরনের হুমকির বিষয়ে তারা আগ্রহী তা পাঠাতে হবে না।

ক্ষেত্র
hash_prefixes[]

bytes

প্রয়োজন। হ্যাশ উপসর্গগুলি দেখতে হবে। ক্লায়েন্টদের 1000টির বেশি হ্যাশ প্রিফিক্স পাঠাতে হবে না। যাইহোক, URL প্রক্রিয়াকরণ পদ্ধতি অনুসরণ করে, ক্লায়েন্টদের 30টির বেশি হ্যাশ উপসর্গ পাঠাতে হবে না।

বর্তমানে প্রতিটি হ্যাশ প্রিফিক্স ঠিক 4 বাইট লম্বা হওয়া প্রয়োজন। এটি ভবিষ্যতে শিথিল হতে পারে।

filter

string

ঐচ্ছিক। যদি ক্লায়েন্ট ফিল্টারিং করতে আগ্রহী হয়, যেমন শুধুমাত্র নির্দিষ্ট ধরণের হুমকি পুনরুদ্ধার করা, এটি নির্দিষ্ট করা যেতে পারে। বাদ দেওয়া হলে, সমস্ত মিলে যাওয়া হুমকি ফেরত দেওয়া হয়। নিরাপদ ব্রাউজিং অফার করতে পারে এমন সবচেয়ে সম্পূর্ণ সুরক্ষা পেতে এটি বাদ দেওয়ার জন্য অত্যন্ত সুপারিশ করা হয়।

ফিল্টারটি Google কমন এক্সপ্রেশন ল্যাঙ্গুয়েজ ব্যবহার করে নির্দিষ্ট করা হয়েছে, যা 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 হতে হবে।

সার্চ হ্যাশ রেসপন্স

হুমকি হ্যাশ অনুসন্ধান করার পরে প্রতিক্রিয়া ফিরে.

যদি কিছু না পাওয়া যায়, সার্ভার একটি NOT_FOUND স্ট্যাটাস (HTTP স্ট্যাটাস কোড 404) ফেরত দেওয়ার পরিবর্তে, full_hashes ক্ষেত্র খালি সহ একটি OK স্থিতি (HTTP স্ট্যাটাস কোড 200) ফেরত দেবে।

V5-এ নতুন কি : FullHash এবং FullHashDetail এর মধ্যে একটি বিচ্ছেদ রয়েছে। সেক্ষেত্রে যখন একটি হ্যাশ এমন একটি সাইটের প্রতিনিধিত্ব করে যেখানে একাধিক হুমকি রয়েছে (যেমন MALWARE এবং SOCIAL_ENGINEERING উভয়ই), সম্পূর্ণ হ্যাশ V4-এর মতো দুবার পাঠানোর প্রয়োজন নেই। অধিকন্তু, ক্যাশে সময়কালকে একটি একক cache_duration ক্ষেত্রে সরলীকৃত করা হয়েছে।

ক্ষেত্র
full_hashes[]

FullHash

Unordered তালিকা. সম্পূর্ণ হ্যাশের অবিন্যস্ত তালিকা পাওয়া গেছে।

cache_duration

Duration

ক্লায়েন্ট-সাইড ক্যাশে সময়কাল। মেয়াদ শেষ হওয়ার সময় নির্ধারণ করতে ক্লায়েন্টকে অবশ্যই বর্তমান সময়ের সাথে এই সময়কাল যোগ করতে হবে। মেয়াদ শেষ হওয়ার সময়টি অনুরোধে ক্লায়েন্ট দ্বারা জিজ্ঞাসা করা প্রতিটি হ্যাশ উপসর্গের জন্য প্রযোজ্য, প্রতিক্রিয়াতে কতগুলি হ্যাশ ফেরত দেওয়া হোক না কেন। এমনকি যদি সার্ভার একটি নির্দিষ্ট হ্যাশ উপসর্গের জন্য কোনও সম্পূর্ণ হ্যাশ না দেয়, তবে এই সত্যটিও ক্লায়েন্টের দ্বারা ক্যাশে করা আবশ্যক।

যদি এবং শুধুমাত্র যদি ক্ষেত্র full_hashes খালি থাকে, তাহলে ক্লায়েন্ট একটি নতুন মেয়াদ নির্ণয় করতে cache_duration বাড়াতে পারে যা সার্ভার দ্বারা নির্দিষ্ট করা সময়ের পরে। যে কোনো ক্ষেত্রে, বর্ধিত ক্যাশে সময়কাল 24 ঘন্টার বেশি হওয়া উচিত নয়।

গুরুত্বপূর্ণ: ক্লায়েন্টকে অনুমান করা উচিত নয় যে সার্ভারটি সমস্ত প্রতিক্রিয়ার জন্য একই ক্যাশে সময়কাল ফিরিয়ে দেবে। সার্ভার পরিস্থিতির উপর নির্ভর করে বিভিন্ন প্রতিক্রিয়ার জন্য বিভিন্ন ক্যাশে সময়কাল বেছে নিতে পারে।

আকারের সীমাবদ্ধতা

হ্যাশ তালিকার আকারের সীমাবদ্ধতা।

ক্ষেত্র
max_update_entries

int32

এন্ট্রি সংখ্যা সর্বোচ্চ আকার. আপডেটে এই মানের চেয়ে বেশি এন্ট্রি থাকবে না, তবে এটা সম্ভব যে আপডেটে এই মানের থেকে কম এন্ট্রি থাকবে। এটি অবশ্যই কমপক্ষে 1024 হতে হবে৷ যদি বাদ দেওয়া হয় বা শূন্য হয়, কোন আপডেট আকারের সীমা সেট করা নেই৷

max_database_entries

int32

তালিকার জন্য স্থানীয় ডাটাবেসে ক্লায়েন্ট যে সর্বোচ্চ সংখ্যক এন্ট্রি রাখতে ইচ্ছুক তা সেট করে। (সার্ভারটি ক্লায়েন্টকে এই সংখ্যার চেয়ে কম এন্ট্রি সঞ্চয় করতে পারে।) যদি বাদ দেওয়া হয় বা শূন্য হয়, কোন ডাটাবেসের আকার সীমা সেট করা হয় না।

থ্রেট অ্যাট্রিবিউট

হুমকির বৈশিষ্ট্য। এই বৈশিষ্ট্যগুলি একটি নির্দিষ্ট হুমকিকে অতিরিক্ত অর্থ প্রদান করতে পারে তবে হুমকির ধরণকে প্রভাবিত করবে না। উদাহরণস্বরূপ, একটি বৈশিষ্ট্য একটি নিম্ন আত্মবিশ্বাস নির্দিষ্ট করতে পারে যখন একটি ভিন্ন বৈশিষ্ট্য উচ্চ আত্মবিশ্বাস নির্দিষ্ট করতে পারে। ভবিষ্যতে আরো বৈশিষ্ট্য যোগ করা হতে পারে.

Enums
THREAT_ATTRIBUTE_UNSPECIFIED অজানা বৈশিষ্ট্য. যদি এটি সার্ভার দ্বারা ফেরত দেওয়া হয়, তাহলে ক্লায়েন্ট সম্পূর্ণরূপে পরিবেষ্টিত FullHashDetail উপেক্ষা করবে।
CANARY নির্দেশ করে যে হুমকি_টাইপ প্রয়োগের জন্য ব্যবহার করা উচিত নয়।
FRAME_ONLY নির্দেশ করে যে হুমকি_টাইপ শুধুমাত্র ফ্রেমে প্রয়োগের জন্য ব্যবহার করা উচিত।

থ্রেট টাইপ

হুমকির ধরন।

Enums
THREAT_TYPE_UNSPECIFIED অজানা হুমকি প্রকার। যদি এটি সার্ভার দ্বারা ফেরত দেওয়া হয়, তাহলে ক্লায়েন্ট সম্পূর্ণরূপে পরিবেষ্টিত FullHashDetail উপেক্ষা করবে।
MALWARE

ম্যালওয়্যার হুমকি প্রকার। ম্যালওয়্যার হল কোনো সফ্টওয়্যার বা মোবাইল অ্যাপ্লিকেশন যা বিশেষভাবে একটি কম্পিউটার, একটি মোবাইল ডিভাইস, এটি চলমান সফ্টওয়্যার বা এর ব্যবহারকারীদের ক্ষতি করার জন্য ডিজাইন করা হয়েছে৷ ম্যালওয়্যার দূষিত আচরণ প্রদর্শন করে যার মধ্যে ব্যবহারকারীর সম্মতি ছাড়া সফ্টওয়্যার ইনস্টল করা এবং ভাইরাসের মতো ক্ষতিকারক সফ্টওয়্যার ইনস্টল করা অন্তর্ভুক্ত থাকতে পারে৷

আরো তথ্য পাওয়া যাবে এখানে .

SOCIAL_ENGINEERING

সামাজিক প্রকৌশল হুমকি টাইপ. সোশ্যাল ইঞ্জিনিয়ারিং পৃষ্ঠাগুলি মিথ্যাভাবে একটি তৃতীয় পক্ষের পক্ষে কাজ করার উদ্দেশ্য নিয়ে দর্শকদের বিভ্রান্ত করার উদ্দেশ্যে এমন একটি ক্রিয়া সম্পাদন করে যার মাধ্যমে দর্শক শুধুমাত্র সেই তৃতীয় পক্ষের একজন সত্যিকারের এজেন্টকে বিশ্বাস করবে৷ ফিশিং হল এক ধরনের সোশ্যাল ইঞ্জিনিয়ারিং যা দর্শককে তথ্য প্রদানের সুনির্দিষ্ট ক্রিয়া সম্পাদনে প্ররোচিত করে, যেমন লগইন শংসাপত্র।

আরো তথ্য পাওয়া যাবে এখানে .

UNWANTED_SOFTWARE অবাঞ্ছিত সফ্টওয়্যার হুমকি টাইপ. অবাঞ্ছিত সফ্টওয়্যার হল এমন কোনও সফ্টওয়্যার যা Google-এর সফ্টওয়্যার নীতিগুলি মেনে চলে না কিন্তু ম্যালওয়্যার নয়৷
POTENTIALLY_HARMFUL_APPLICATION প্লে স্টোরের জন্য Google Play Protect ব্যবহার করে সম্ভাব্য ক্ষতিকারক অ্যাপ্লিকেশন হুমকির ধরন।