nl:: বুনা:: প্রোফাইল:: নিরাপত্তা:: CertProvisioning:: WeaveCertProvEngine

#include <src/lib/profiles/security/WeaveCertProvisioning.h>

ওয়েভ সার্টিফিকেট প্রভিশনিং প্রোটোকল অবজেক্টের মূল যুক্তি প্রয়োগ করে।

সারাংশ

কনস্ট্রাক্টর এবং ডেস্ট্রাক্টর

WeaveCertProvEngine (void)

পাবলিক প্রকার

@246 {
kReqType_GetInitialOpDeviceCert = 0,
kReqType_RotateOpDeviceCert = 1
}
enum
EventCallback )(void *appState, EventType eventType, const InEventParam &inParam, OutEventParam &outParam) typedef
void(*
এই ফাংশনটি হল অ্যাপ্লিকেশন কলব্যাক যা সার্টিফিকেট প্রভিশনিং ইঞ্জিন API ইভেন্টগুলিতে আহ্বান করা হয়।
EventType {
kEvent_PrepareAuthorizeInfo = 1,
kEvent_ResponseReceived = 2,
kEvent_CommunicationError = 3
}
enum
State {
kState_NotInitialized = 0,
kState_Idle = 1,
kState_PreparingBinding = 2,
kState_RequestInProgress = 3
}
enum

পাবলিক বৈশিষ্ট্য

AppState
void *
অ্যাপ্লিকেশন-নির্দিষ্ট ডেটার জন্য একটি পয়েন্টার।

পাবলিক ফাংশন

AbortCertificateProvisioning (void)
void
প্রগতিতে থাকা যেকোনো GetCertificate বিনিময় বন্ধ করে।
GenerateGetCertificateRequest ( PacketBuffer *msgBuf, uint8_t reqType, bool doMfrAttest)
GetCertificateRequest বার্তা তৈরি করুন।
GetBinding (void) const
WeaveCertProvEngine এর সাথে যুক্ত বাইন্ডিং অবজেক্টে একটি পয়েন্টার ফেরত দেয়।
GetEventCallback (void) const
WeaveCertProvEngine অবজেক্টে বর্তমানে কনফিগার করা API ইভেন্ট কলব্যাক ফাংশনে একটি পয়েন্টার প্রদান করে।
GetMfrAttestDelegate (void) const
WeaveCertProvEngine অবজেক্টে বর্তমানে কনফিগার করা প্রস্তুতকারকের প্রত্যয়ন প্রতিনিধি বস্তুতে একটি পয়েন্টার ফেরত দেয়।
GetOpAuthDelegate (void) const
WeaveCertProvEngine অবজেক্টে বর্তমানে কনফিগার করা অপারেশনাল প্রমাণীকরণ প্রতিনিধি বস্তুতে একটি পয়েন্টার ফেরত দেয়।
GetReqType (void) const
uint8_t
বর্তমান অনুরোধের ধরন পুনরুদ্ধার করুন।
GetState (void) const
WeaveCertProvEngine অবজেক্টের বর্তমান অবস্থা পুনরুদ্ধার করুন।
Init ( Binding *binding, WeaveNodeOpAuthDelegate *opAuthDelegate, WeaveNodeMfrAttestDelegate *mfrAttestDelegate, EventCallback eventCallback, void *appState)
শংসাপত্রের অনুরোধ বার্তা পাঠানোর প্রস্তুতির জন্য একটি WeaveCertProvEngine অবজেক্ট শুরু করুন।
ProcessGetCertificateResponse ( PacketBuffer *msgBuf)
GetCertificateResponse বার্তা প্রক্রিয়া করুন।
SetBinding ( Binding *binding)
void
WeaveCertProvEngine অবজেক্টে বাইন্ডিং অবজেক্ট সেট করে।
SetEventCallback ( EventCallback eventCallback)
void
WeaveCertProvEngine অবজেক্টে API ইভেন্ট কলব্যাক ফাংশন সেট করে।
SetMfrAttestDelegate ( WeaveNodeMfrAttestDelegate *mfrAttestDelegate)
void
WeaveCertProvEngine অবজেক্টে প্রস্তুতকারকের প্রত্যয়ন প্রতিনিধি বস্তু সেট করে।
SetOpAuthDelegate ( WeaveNodeOpAuthDelegate *opAuthDelegate)
void
WeaveCertProvEngine অবজেক্টে অপারেশনাল প্রমাণীকরণ প্রতিনিধি অবজেক্ট সেট করে।
Shutdown (void)
void
একটি পূর্বে শুরু করা WeaveCertProvEngine অবজেক্ট বন্ধ করুন।
StartCertificateProvisioning (uint8_t reqType, bool doMfrAttest)
শংসাপত্র প্রভিশনিং প্রোটোকল শুরু করুন।

কাঠামো

nl:: বুনন:: প্রোফাইল:: নিরাপত্তা:: শংসাপত্র প্রভিশনিং:: ওয়েভ সার্টপ্রোভ ইঞ্জিন:: ইন ইভেন্টপারম

ওয়েভ সার্টিফিকেট প্রভিশনিং API ইভেন্টে ইনপুট প্যারামিটার।

nl:: বুনা:: প্রোফাইল:: নিরাপত্তা:: শংসাপত্র প্রভিশনিং:: ওয়েভ সার্টপ্রোভ ইঞ্জিন:: আউটইভেন্টপারম

ওয়েভ সার্টিফিকেট প্রভিশনিং API ইভেন্টে আউটপুট প্যারামিটার।

পাবলিক প্রকার

@246

 @246
বৈশিষ্ট্য
kReqType_GetInitialOpDeviceCert

শংসাপত্রের অনুরোধের ধরন হল প্রাথমিক অপারেশনাল সার্টিফিকেট প্রাপ্ত করার জন্য।

kReqType_RotateOpDeviceCert

প্রাপ্ত শংসাপত্র অনুরোধের ধরন হল বর্তমান অপারেশনাল সার্টিফিকেট ঘোরানোর জন্য।

ইভেন্ট কলব্যাক

void(* EventCallback)(void *appState, EventType eventType, const InEventParam &inParam, OutEventParam &outParam)

এই ফাংশনটি হল অ্যাপ্লিকেশন কলব্যাক যা সার্টিফিকেট প্রভিশনিং ইঞ্জিন API ইভেন্টগুলিতে আহ্বান করা হয়।

বিস্তারিত
পরামিতি
[in] appState
ইঞ্জিন অবজেক্টের সাথে যুক্ত অ্যাপ্লিকেশান-সংজ্ঞায়িত রাষ্ট্র তথ্যের একটি পয়েন্টার।
[in] eventType
ইভেন্ট কলব্যাকের মাধ্যমে ইভেন্ট আইডি পাস করা হয়েছে।
[in] inParam
ইভেন্ট কলব্যাক দ্বারা পাস করা ইনপুট ইভেন্ট প্যারামিটারের রেফারেন্স।
[in] outParam
ইভেন্ট কলব্যাক দ্বারা পাস করা আউটপুট ইভেন্ট প্যারামিটারের রেফারেন্স।

ইভেন্ট টাইপ

 EventType
বৈশিষ্ট্য
kEvent_CommunicationError

একটি GetCertificateRequest পাঠানোর সময় বা একটি প্রতিক্রিয়ার জন্য অপেক্ষা করার সময় একটি যোগাযোগ ত্রুটি ঘটেছে৷

kEvent_PrepareAuthorizeInfo

GetCertificateRequest এর জন্য পেলোড প্রস্তুত করার জন্য আবেদনকে অনুরোধ করা হয়েছে।

kEvent_ResponseReceived

একটি GetCertificateResponse বার্তা সহকর্মীর কাছ থেকে প্রাপ্ত হয়েছে৷

রাজ্য

 State
বৈশিষ্ট্য
kState_Idle

ইঞ্জিন অবজেক্টটি নিষ্ক্রিয়।

kState_NotInitialized

ইঞ্জিন অবজেক্ট আরম্ভ করা হয় না।

kState_PreparingBinding

ইঞ্জিন অবজেক্টটি বাইন্ডিং প্রস্তুত হওয়ার জন্য অপেক্ষা করছে।

kState_RequestInProgress

একটি GetCertificateRequest বার্তা পাঠানো হয়েছে এবং ইঞ্জিন অবজেক্ট একটি প্রতিক্রিয়ার জন্য অপেক্ষা করছে৷

পাবলিক বৈশিষ্ট্য

অ্যাপস্টেট

void * AppState

অ্যাপ্লিকেশন-নির্দিষ্ট ডেটার জন্য একটি পয়েন্টার।

পাবলিক ফাংশন

AbortCertificateProvisioning

void AbortCertificateProvisioning(
  void
)

প্রগতিতে থাকা যেকোনো GetCertificate বিনিময় বন্ধ করে।

গেট সার্টিফিকেট অনুরোধ তৈরি করুন

WEAVE_ERROR GenerateGetCertificateRequest(
  PacketBuffer *msgBuf,
  uint8_t reqType,
  bool doMfrAttest
)

GetCertificateRequest বার্তা তৈরি করুন।

এই পদ্ধতিটি Weave TLV ফর্ম্যাটে এনকোড করা Weave GetCertificateRequest গঠন তৈরি করে।

GetCertificateRequest বার্তা তৈরি করার সময়, পদ্ধতিটি বার্তাটির পেলোড প্রস্তুত করতে WeaveNodeOpAuthDelegate এবং WeaveNodeMfrAttestDelegate ফাংশন এবং PrepareAuthorizeInfo API ইভেন্টের মাধ্যমে অ্যাপ্লিকেশনের কাছে একটি অনুরোধ করে।

বিস্তারিত
পরামিতি
[in] msgBuf
GetCertificateRequest বার্তা ধারণ করে PacketBuffer অবজেক্টের একটি পয়েন্টার।
[in] reqType
সার্টিফিকেট অনুরোধের ধরন পান।
[in] doMfrAttest
একটি বুলিয়ান পতাকা যা নির্দেশ করে যে অনুরোধে প্রস্তুতকারকের প্রত্যয়ন ডেটা অন্তর্ভুক্ত করা উচিত কিনা।
রিটার্ন মান
WEAVE_NO_ERROR
যদি GetCertificateRequest সফলভাবে তৈরি করা হয়।

GetBinding

Binding * GetBinding(
  void
) const 

WeaveCertProvEngine এর সাথে যুক্ত বাইন্ডিং অবজেক্টে একটি পয়েন্টার ফেরত দেয়।

GetEventCallback

EventCallback GetEventCallback(
  void
) const 

WeaveCertProvEngine অবজেক্টে বর্তমানে কনফিগার করা API ইভেন্ট কলব্যাক ফাংশনে একটি পয়েন্টার প্রদান করে।

GetMfrAttestDelegate

WeaveNodeMfrAttestDelegate * GetMfrAttestDelegate(
  void
) const 

WeaveCertProvEngine অবজেক্টে বর্তমানে কনফিগার করা প্রস্তুতকারকের প্রত্যয়ন প্রতিনিধি বস্তুতে একটি পয়েন্টার ফেরত দেয়।

GetOpAuthDelegate

WeaveNodeOpAuthDelegate * GetOpAuthDelegate(
  void
) const 

WeaveCertProvEngine অবজেক্টে বর্তমানে কনফিগার করা অপারেশনাল প্রমাণীকরণ প্রতিনিধি বস্তুতে একটি পয়েন্টার ফেরত দেয়।

GetReqType

uint8_t GetReqType(
  void
) const 

বর্তমান অনুরোধের ধরন পুনরুদ্ধার করুন।

GetState

State GetState(
  void
) const 

WeaveCertProvEngine অবজেক্টের বর্তমান অবস্থা পুনরুদ্ধার করুন।

ইনিট

WEAVE_ERROR Init(
  Binding *binding,
  WeaveNodeOpAuthDelegate *opAuthDelegate,
  WeaveNodeMfrAttestDelegate *mfrAttestDelegate,
  EventCallback eventCallback,
  void *appState
)

শংসাপত্রের অনুরোধ বার্তা পাঠানোর প্রস্তুতির জন্য একটি WeaveCertProvEngine অবজেক্ট শুরু করুন।

বিস্তারিত
পরামিতি
[in] binding
একটি বাইন্ডিং অবজেক্ট যা পিয়ার নোডের সাথে যোগাযোগ স্থাপন করতে ব্যবহার করা হবে।
[in] opAuthDelegate
একটি অপারেশনাল প্রমাণীকরণ প্রতিনিধি অবজেক্টের একটি পয়েন্টার যা নোডের অপারেশনাল শংসাপত্র ব্যবহার করে নির্মাণ এবং সাইন করতে ব্যবহার করা হবে।
[in] mfrAttestDelegate
একটি প্রস্তুতকারকের প্রত্যয়ন প্রতিনিধি বস্তুর একটি পয়েন্টার যা নোডের প্রস্তুতকারকের প্রভিশনড শংসাপত্র ব্যবহার করে অনুরোধ তৈরি এবং স্বাক্ষর করতে ব্যবহার করা হবে।
[in] eventCallback
অ্যাপ্লিকেশনটিতে API ইভেন্টগুলি সরবরাহ করতে WeaveCertProvEngine অবজেক্ট দ্বারা কল করা হবে এমন একটি ফাংশনের একটি পয়েন্টার৷
[in] appState
একটি অ্যাপ্লিকেশন-সংজ্ঞায়িত বস্তুর একটি পয়েন্টার যা যখনই একটি API ইভেন্ট ঘটবে তখনই অ্যাপ্লিকেশনটিতে ফেরত পাঠানো হবে।

ProcessGetCertificateResponse

WEAVE_ERROR ProcessGetCertificateResponse(
  PacketBuffer *msgBuf
)

GetCertificateResponse বার্তা প্রক্রিয়া করুন।

এই পদ্ধতিটি Weave TLV ফর্ম্যাটে এনকোড করা Weave GetCertificateResponse গঠন প্রক্রিয়া করে।

GetCertificateResponse বার্তার প্রক্রিয়াকরণ সফলভাবে সম্পন্ন হলে, পদ্ধতিটি ফলাফল প্রদানের জন্য ResponseReceived API ইভেন্টের মাধ্যমে অ্যাপ্লিকেশনটিতে একটি কল করে।

GetCertificateResponse বার্তার প্রক্রিয়াকরণ ব্যর্থ হলে, পদ্ধতিটি ত্রুটির প্রতিবেদন করতে CommunicationError API ইভেন্টের মাধ্যমে অ্যাপ্লিকেশনটিতে একটি কল করে।

বিস্তারিত
পরামিতি
[in] msgBuf
GetCertificateResponse বার্তা ধারণ করে PacketBuffer অবজেক্টের একটি পয়েন্টার।
রিটার্ন মান
WEAVE_NO_ERROR
GetCertificateResponse বার্তা সফলভাবে প্রক্রিয়া করা হলে।

সেট বাইন্ডিং

void SetBinding(
  Binding *binding
)

WeaveCertProvEngine অবজেক্টে বাইন্ডিং অবজেক্ট সেট করে।

সেট ইভেন্ট কলব্যাক

void SetEventCallback(
  EventCallback eventCallback
)

WeaveCertProvEngine অবজেক্টে API ইভেন্ট কলব্যাক ফাংশন সেট করে।

SetMfrAttestDelegate

void SetMfrAttestDelegate(
  WeaveNodeMfrAttestDelegate *mfrAttestDelegate
)

WeaveCertProvEngine অবজেক্টে প্রস্তুতকারকের প্রত্যয়ন প্রতিনিধি বস্তু সেট করে।

SetOpAuthDelegate

void SetOpAuthDelegate(
  WeaveNodeOpAuthDelegate *opAuthDelegate
)

WeaveCertProvEngine অবজেক্টে অপারেশনাল প্রমাণীকরণ প্রতিনিধি অবজেক্ট সেট করে।

শাটডাউন

void Shutdown(
  void
)

একটি পূর্বে শুরু করা WeaveCertProvEngine অবজেক্ট বন্ধ করুন।

মনে রাখবেন যে এই পদ্ধতিটি শুধুমাত্র তখনই বলা যেতে পারে যদি Init() পদ্ধতিটি আগে কল করা হয়ে থাকে।

স্টার্ট সার্টিফিকেট প্রভিশনিং

WEAVE_ERROR StartCertificateProvisioning(
  uint8_t reqType,
  bool doMfrAttest
)

শংসাপত্র প্রভিশনিং প্রোটোকল শুরু করুন।

এই পদ্ধতিটি CA পরিষেবাতে একটি GetCertificateRequest বার্তা পাঠানোর প্রক্রিয়া শুরু করে। যদি এবং যখন একটি সংশ্লিষ্ট GetCertificateResponse বার্তাটি প্রাপ্ত হয় তখন এটি ResponseReceived API ইভেন্টের মাধ্যমে অ্যাপ্লিকেশনে বিতরণ করা হবে।

এই পদ্ধতিটি কল করার সময় যদি বাইন্ডিং অবজেক্টটি প্রস্তুত অবস্থায় না থাকে, তবে চাহিদা অনুযায়ী প্রস্তুতি শুরু করার জন্য Binding::RequestPrepare() পদ্ধতিতে একটি অনুরোধ করা হবে। অনুরোধ অপারেশন তারপর এই প্রক্রিয়া সম্পূর্ণ না হওয়া পর্যন্ত অপেক্ষা করা হবে. স্টার্টCertificateProvisioning() এ যেকোনও কল করা হলে প্রসেস চলাকালীন পূর্ববর্তী অনুরোধ উপেক্ষা করা হবে।

বিস্তারিত
পরামিতি
[in] reqType
সার্টিফিকেট অনুরোধের ধরন পান।
[in] doMfrAttest
একটি বুলিয়ান পতাকা যা নির্দেশ করে যে প্রোটোকল প্রস্তুতকারকের প্রত্যয়ন ডেটা অন্তর্ভুক্ত করা উচিত কিনা।
রিটার্ন মান
WEAVE_NO_ERROR
যদি StartCertificateProvisioning() সফলভাবে প্রক্রিয়া করা হয়।

WeaveCertProvEngine

 WeaveCertProvEngine(
  void
)