REST Resource: hashList

সম্পদ: হ্যাশলিস্ট

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

JSON প্রতিনিধিত্ব
{
  "name": string,
  "version": string,
  "partialUpdate": boolean,
  "compressedRemovals": {
    object (RiceDeltaEncoded32Bit)
  },
  "minimumWaitDuration": string,
  "metadata": {
    object (HashListMetadata)
  },

  // Union field compressed_additions can be only one of the following:
  "additionsFourBytes": {
    object (RiceDeltaEncoded32Bit)
  },
  "additionsEightBytes": {
    object (RiceDeltaEncoded64Bit)
  },
  "additionsSixteenBytes": {
    object (RiceDeltaEncoded128Bit)
  },
  "additionsThirtyTwoBytes": {
    object (RiceDeltaEncoded256Bit)
  }
  // End of list of possible types for union field compressed_additions.

  // Union field checksum can be only one of the following:
  "sha256Checksum": string
  // End of list of possible types for union field checksum.
}
ক্ষেত্র
name

string

হ্যাশ তালিকার নাম। উল্লেখ্য যে গ্লোবাল ক্যাশে শুধুমাত্র একটি হ্যাশ তালিকা এবং এখানে উল্লেখ করা যেতে পারে।

version

string ( bytes format)

হ্যাশ তালিকার সংস্করণ। ক্লায়েন্ট অবশ্যই সেই বাইটগুলিকে ম্যানিপুলেট করবে না।

একটি base64-এনকোডেড স্ট্রিং।

partialUpdate

boolean

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

মিথ্যা হলে, ক্লায়েন্টকে অবশ্যই এই হ্যাশ তালিকার জন্য স্থানীয়ভাবে সংরক্ষিত সংস্করণ মুছে ফেলতে হবে। এর মানে হল ক্লায়েন্টের কাছে থাকা সংস্করণটি গুরুতরভাবে পুরানো বা ক্লায়েন্টের ডেটা দুর্নীতিগ্রস্ত বলে বিশ্বাস করা হয়। compressedRemovals ক্ষেত্রটি খালি থাকবে।

সত্য হলে, ক্লায়েন্টকে অবশ্যই অপসারণ এবং তারপর সংযোজন প্রয়োগ করে একটি ক্রমবর্ধমান আপডেট প্রয়োগ করতে হবে।

compressedRemovals

object ( RiceDeltaEncoded32Bit )

রাইস-ডেল্টা অপসারণ সূচকের এনকোডেড সংস্করণ। যেহেতু প্রতিটি হ্যাশ তালিকায় অবশ্যই 2^32 এর কম এন্ট্রি রয়েছে, তাই সূচকগুলিকে 32-বিট পূর্ণসংখ্যা হিসাবে বিবেচনা করা হয় এবং এনকোড করা হয়।

minimumWaitDuration

string ( Duration format)

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

নয়টি পর্যন্ত ভগ্নাংশের সংখ্যা সহ সেকেন্ডে একটি সময়কাল, ' s ' দিয়ে শেষ হয়৷ উদাহরণ: "3.5s"

metadata

object ( HashListMetadata )

হ্যাশ তালিকা সম্পর্কে মেটাডেটা. এটি hashList.get পদ্ধতি দ্বারা জনবহুল নয়, তবে এটি ListHashLists পদ্ধতি দ্বারা জনবহুল।

ইউনিয়ন ক্ষেত্র compressed_additions । রাইস-ডেল্টা সংযোজনের এনকোডেড সংস্করণ। সংযোজনের হ্যাশ উপসর্গ দৈর্ঘ্য তালিকার সমস্ত সংযোজন জুড়ে অভিন্ন। এটি হয় ক্লায়েন্টের দ্বারা প্রেরিত desired_hash_length অথবা ক্লায়েন্ট সেই ক্ষেত্রটি বাদ দিলে সার্ভার দ্বারা নির্বাচিত একটি মান। compressed_additions নিম্নলিখিতগুলির মধ্যে একটি হতে পারে:
additionsFourBytes

object ( RiceDeltaEncoded32Bit )

4-বাইট সংযোজন।

additionsEightBytes

object ( RiceDeltaEncoded64Bit )

8-বাইট সংযোজন।

additionsSixteenBytes

object ( RiceDeltaEncoded128Bit )

16-বাইট সংযোজন।

additionsThirtyTwoBytes

object ( RiceDeltaEncoded256Bit )

32-বাইট সংযোজন।

ইউনিয়ন ফিল্ড checksum । প্রদত্ত আপডেট প্রয়োগ করার পরে ডাটাবেসে উপস্থিত সমস্ত হ্যাশের সাজানো তালিকার জন্য এটি হল চেকসাম। একাধিক হ্যাশিং অ্যালগরিদমকে অনুমতি দেওয়ার জন্য এটি একটি "একটি" ক্ষেত্র। ক্লায়েন্টের বিদ্যমান চেকসাম ব্যবহার করা উচিত তা নির্দেশ করার জন্য সার্ভারের পক্ষে এই ক্ষেত্রটি বাদ দেওয়াও সম্ভব (যে ক্ষেত্রে কোনও আপডেট দেওয়া হয়নি)। checksum নিম্নলিখিতগুলির মধ্যে একটি হতে পারে:
sha256Checksum

string ( bytes format)

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

একটি base64-এনকোডেড স্ট্রিং।

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

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

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

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

JSON প্রতিনিধিত্ব
{
  "firstValue": integer,
  "riceParameter": integer,
  "entriesCount": integer,
  "encodedData": string
}
ক্ষেত্র
firstValue

integer ( uint32 format)

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

riceParameter

integer

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

entriesCount

integer

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

encodedData

string ( bytes format)

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

একটি base64-এনকোডেড স্ট্রিং।

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

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

JSON প্রতিনিধিত্ব
{
  "firstValue": string,
  "riceParameter": integer,
  "entriesCount": integer,
  "encodedData": string
}
ক্ষেত্র
firstValue

string

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

riceParameter

integer

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

entriesCount

integer

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

encodedData

string ( bytes format)

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

একটি base64-এনকোডেড স্ট্রিং।

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

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

JSON প্রতিনিধিত্ব
{
  "firstValueHi": string,
  "firstValueLo": string,
  "riceParameter": integer,
  "entriesCount": integer,
  "encodedData": string
}
ক্ষেত্র
firstValueHi

string

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

firstValueLo

string ( uint64 format)

এনকোড করা ডেটাতে প্রথম এন্ট্রির নিম্ন 64 বিট (হ্যাশ)। ক্ষেত্রটি খালি থাকলে, নিচের 64 বিট সব শূন্য।

riceParameter

integer

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

entriesCount

integer

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

encodedData

string ( bytes format)

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

একটি base64-এনকোডেড স্ট্রিং।

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

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

JSON প্রতিনিধিত্ব
{
  "firstValueFirstPart": string,
  "firstValueSecondPart": string,
  "firstValueThirdPart": string,
  "firstValueFourthPart": string,
  "riceParameter": integer,
  "entriesCount": integer,
  "encodedData": string
}
ক্ষেত্র
firstValueFirstPart

string

এনকোড করা ডেটাতে প্রথম এন্ট্রির প্রথম 64 বিট (হ্যাশ)। ক্ষেত্রটি খালি থাকলে, প্রথম 64 বিট সব শূন্য।

firstValueSecondPart

string ( uint64 format)

এনকোড করা ডেটাতে প্রথম এন্ট্রির 65 থেকে 128 তম বিট (হ্যাশ)। যদি ক্ষেত্রটি খালি থাকে, 65 থেকে 128 তম বিট সবই শূন্য।

firstValueThirdPart

string ( uint64 format)

এনকোড করা ডেটাতে প্রথম এন্ট্রির 129 থেকে 192 তম বিট (হ্যাশ)। ক্ষেত্রটি খালি থাকলে, 129 থেকে 192 তম বিট সবই শূন্য।

firstValueFourthPart

string ( uint64 format)

এনকোড করা ডেটাতে প্রথম এন্ট্রির শেষ 64 বিট (হ্যাশ)। ক্ষেত্রটি খালি থাকলে, শেষ 64 বিট সব শূন্য।

riceParameter

integer

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

entriesCount

integer

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

encodedData

string ( bytes format)

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

একটি base64-এনকোডেড স্ট্রিং।

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

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

JSON প্রতিনিধিত্ব
{
  "threatTypes": [
    enum (ThreatType)
  ],
  "likelySafeTypes": [
    enum (LikelySafeType)
  ],
  "mobileOptimized": boolean,
  "description": string,
  "supportedHashLengths": [
    enum (HashLength)
  ]
}
ক্ষেত্র
threatTypes[]

enum ( ThreatType )

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

likelySafeTypes[]

enum ( LikelySafeType )

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

mobileOptimized

boolean

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

description

string

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

supportedHashLengths[]

enum ( HashLength )

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

থ্রেট টাইপ

হুমকির ধরন।

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

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

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

SOCIAL_ENGINEERING

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

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

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

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

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

মনে রাখবেন যে SearchHashesResponse ইচ্ছাকৃতভাবে LikelySafeType ধারণ করে না।

Enums
LIKELY_SAFE_TYPE_UNSPECIFIED অজানা।
GENERAL_BROWSING এই সাইটটি সম্ভবত সাধারণ ব্রাউজিংয়ের জন্য যথেষ্ট নিরাপদ। এটি গ্লোবাল ক্যাশে নামেও পরিচিত।
CSD এই সাইটটি সম্ভবত যথেষ্ট নিরাপদ যে ক্লায়েন্ট-সাইড ডিটেকশন মডেল বা পাসওয়ার্ড সুরক্ষা চেক চালানোর প্রয়োজন নেই।
DOWNLOAD এই সাইটটি সম্ভবত যথেষ্ট নিরাপদ যে সাইট থেকে ডাউনলোডগুলি চেক করার প্রয়োজন নেই৷

হ্যাশলেংথ

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

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

পদ্ধতি

get

একটি হ্যাশ তালিকার সর্বশেষ বিষয়বস্তু পান.