nl:: বুনা:: প্রোফাইল:: নিরাপত্তা
এই নেমস্পেসটি উইভ সিকিউরিটি প্রোফাইলের জন্য উইভের মধ্যে সমস্ত ইন্টারফেস অন্তর্ভুক্ত করে।
সারাংশ
গণনা | |
---|---|
@235 | enum X.509 সার্টিফিকেট মূল উদ্দেশ্য পতাকা। |
@236 | enum X.509 সার্টিফিকেট কী ইউসেজ ফ্ল্যাগ। |
@237 | enum শংসাপত্রের পতাকা বুনন। |
@238 | enum বুনা শংসাপত্র ডিকোড পতাকা. |
@239 | enum বুনা শংসাপত্র বৈধ পতাকা. |
@240 | enum |
@280 | enum |
@281 | enum |
@282 | enum |
@283 | enum |
@284 | enum |
@285 | enum |
@286 | enum |
@287 | enum |
@288 | enum |
@289 | enum |
Typedefs | |
---|---|
GenerateECDSASignatureFunct )(const uint8_t *hash, uint8_t hashLen, EncodedECDSASignature &ecdsaSig) | typedefWEAVE_ERROR (* স্থানীয় উইভ নোডের ব্যক্তিগত কী ব্যবহার করে একটি ECDSA স্বাক্ষর তৈরি করুন। |
ভেরিয়েবল | |
---|---|
gProvisioningBundleKDFSalt = "Weave Provisioning Bundle v1"[] | const char |
ফাংশন | |
---|---|
CASECertInfoFromAccessToken (const uint8_t *accessToken, uint32_t accessTokenLen, uint8_t *certInfoBuf, uint16_t certInfoBufSize, uint16_t & certInfoLen) | |
CASECertInfoFromAccessToken ( TLVReader & reader, TLVWriter & writer) | |
ConvertAuthorityKeyIdentifierExtension ( ASN1Reader & reader, TLVWriter & writer) | |
ConvertCertificate ( ASN1Reader & reader, TLVWriter & writer) | |
ConvertDistinguishedName ( ASN1Reader & reader, TLVWriter & writer, uint64_t tag) | |
ConvertECDSASignature_DERToWeave (const uint8_t *sigBuf, uint8_t sigLen, TLVWriter & writer, uint64_t tag) | |
ConvertExtension ( ASN1Reader & reader, TLVWriter & writer) | |
ConvertExtensions ( ASN1Reader & reader, TLVWriter & writer) | |
ConvertSubjectPublicKeyInfo ( ASN1Reader & reader, TLVWriter & writer) | |
ConvertValidity ( ASN1Reader & reader, TLVWriter & writer) | |
ConvertWeaveCertToX509Cert (const uint8_t *weaveCert, uint32_t weaveCertLen, uint8_t *x509CertBuf, uint32_t x509CertBufSize, uint32_t & x509CertLen) | |
ConvertX509CertToWeaveCert (const uint8_t *x509Cert, uint32_t x509CertLen, uint8_t *weaveCertBuf, uint32_t weaveCertBufSize, uint32_t & weaveCertLen) | |
DecodeConvertAuthorityKeyIdentifierExtension ( TLVReader & reader, ASN1Writer & writer, WeaveCertificateData & certData) | |
DecodeConvertBasicConstraintsExtension ( TLVReader & reader, ASN1Writer & writer, WeaveCertificateData & certData) | |
DecodeConvertCert ( TLVReader & reader, ASN1Writer & writer, WeaveCertificateData & certData) | |
DecodeConvertDN ( TLVReader & reader, ASN1Writer & writer, WeaveDN & dn) | |
DecodeConvertECDSASignature ( TLVReader & reader, ASN1Writer & writer, WeaveCertificateData & certData) | |
DecodeConvertExtendedKeyUsageExtension ( TLVReader & reader, ASN1Writer & writer, WeaveCertificateData & certData) | |
DecodeConvertExtension ( TLVReader & reader, ASN1Writer & writer, WeaveCertificateData & certData) | |
DecodeConvertExtensions ( TLVReader & reader, ASN1Writer & writer, WeaveCertificateData & certData) | |
DecodeConvertKeyUsageExtension ( TLVReader & reader, ASN1Writer & writer, WeaveCertificateData & certData) | |
DecodeConvertRSASignature ( TLVReader & reader, ASN1Writer & writer, WeaveCertificateData & certData) | |
DecodeConvertSubjectKeyIdentifierExtension ( TLVReader & reader, ASN1Writer & writer, WeaveCertificateData & certData) | |
DecodeConvertSubjectPublicKeyInfo ( TLVReader & reader, ASN1Writer & writer, WeaveCertificateData & certData) | |
DecodeConvertTBSCert ( TLVReader & reader, ASN1Writer & writer, WeaveCertificateData & certData) | |
DecodeConvertValidity ( TLVReader & reader, ASN1Writer & writer, WeaveCertificateData & certData) | |
DecodeCopyECDSASignature_DER (const uint8_t *sigBuf, uint8_t sigLen, EncodedECDSASignature & sig) | |
DecodeWeaveCert (const uint8_t *weaveCert, uint32_t weaveCertLen, WeaveCertificateData & certData) | |
DecodeWeaveCert ( TLVReader & reader, WeaveCertificateData & certData) | |
DecodeWeaveDN ( TLVReader & reader, WeaveDN & dn) | |
DecodeWeaveECDSASignature ( TLVReader & reader, EncodedECDSASignature & sig) | |
DecodeWeaveECPrivateKey (const uint8_t *buf, uint32_t len, uint32_t & weaveCurveId, EncodedECPublicKey & pubKey, EncodedECPrivateKey & privKey) | NL_DLL_EXPORT WEAVE_ERROR |
DescribeWeaveCertId (OID attrOID, uint64_t weaveCertId) | const char * |
DetermineCertType ( WeaveCertificateData & cert) | একটি উইভ সার্টিফিকেটের সাধারণ ধরন নির্ধারণ করুন। |
EncodeWeaveECDSASignature ( TLVWriter & writer, EncodedECDSASignature & sig, uint64_t tag) | |
EncodeWeaveECPrivateKey (uint32_t weaveCurveId, const EncodedECPublicKey *pubKey, const EncodedECPrivateKey & privKey, uint8_t *outBuf, uint32_t outBufSize, uint32_t & outLen) | NL_DLL_EXPORT WEAVE_ERROR |
ExtractCertFromAccessToken ( TLVReader & reader, TLVWriter & writer, uint64_t tag) | একটি ওয়েভ অ্যাক্সেস টোকেন পড়ে এবং অ্যাক্সেস টোকেন সার্টিফিকেট বের করে। |
ExtractPrivateKeyFromAccessToken (const uint8_t *accessToken, uint32_t accessTokenLen, uint8_t *privKeyBuf, uint16_t privKeyBufSize, uint16_t & privKeyLen) | একটি ওয়েভ অ্যাক্সেস টোকেন পড়ে এবং ব্যক্তিগত কী বের করে। |
ExtractPrivateKeyFromAccessToken ( TLVReader & reader, TLVWriter & writer) | একটি ওয়েভ অ্যাক্সেস টোকেন পড়ে এবং ব্যক্তিগত কী বের করে। |
GenerateAndEncodeWeaveECDSASignature ( TLVWriter & writer, uint64_t tag, const uint8_t *msgHash, uint8_t msgHashLen, const uint8_t *signingKey, uint16_t signingKeyLen) | একটি Weave ECDSA স্বাক্ষর তৈরি এবং এনকোড করুন। |
GenerateOperationalDeviceCert (uint64_t deviceId, EncodedECPublicKey & devicePubKey, uint8_t *cert, uint16_t certBufSize, uint16_t & certLen, GenerateECDSASignatureFunct genCertSignature) | NL_DLL_EXPORT WEAVE_ERROR উইভ অপারেশনাল ডিভাইস সার্টিফিকেট তৈরি করুন। |
GetWeaveSignatureAlgo (const uint8_t *sig, uint16_t sigLen, OID & sigAlgoOID) | |
Indent (FILE *out, uint16_t count) | void |
InsertRelatedCertificatesIntoWeaveSignature (uint8_t *sigBuf, uint16_t sigLen, uint16_t sigBufLen, const uint8_t *relatedCerts, uint16_t relatedCertsLen, uint16_t & outSigLen) | |
IsCertificateExtensionTag (uint64_t tag) | bool |
IsCurveInSet (uint32_t curveId, uint8_t curveSet) | bool |
IsSupportedCurve (uint32_t curveId) | bool |
IsWeaveIdX509Attr (OID oid) | bool |
IsWeaveX509Attr (OID oid) | bool |
LoadAccessTokenCerts (const uint8_t *accessToken, uint32_t accessTokenLen, WeaveCertificateSet & certSet, uint16_t decodeFlags, WeaveCertificateData *& accessTokenCert) | একটি ওয়েভ সার্টিফিকেট সেটে অ্যাক্সেস টোকেনে সার্টিফিকেট লোড করুন। |
LoadAccessTokenCerts ( TLVReader & reader, WeaveCertificateSet & certSet, uint16_t decodeFlags, WeaveCertificateData *& accessTokenCert) | একটি ওয়েভ সার্টিফিকেট সেটে অ্যাক্সেস টোকেনে সার্টিফিকেট লোড করুন। |
MakeDeviceCredentialHash (const char *serialNum, size_t serialNumLen, const char *deviceId, size_t deviceIdLen, const char *deviceSecret, size_t deviceSecretLen, char *hashBuf, size_t hashBufSize) | NL_DLL_EXPORT WEAVE_ERROR থার্মোস্ট্যাট ডিভাইস শংসাপত্রের একটি নির্দিষ্ট সেটের জন্য একটি যাচাইকরণ হ্যাশ (বেস-64 ফর্ম্যাটে) তৈরি করুন। |
MakeWeaveProvisioningHash (uint64_t nodeId, const char *weaveCert, size_t weaveCertLen, const char *weavePrivKey, size_t weavePrivKeyLen, const char *pairingCode, size_t pairingCodeLen, char *hashBuf, size_t hashBufSize) | NL_DLL_EXPORT WEAVE_ERROR উইভ প্রভিশনিং তথ্যের একটি প্রদত্ত সেটের জন্য একটি যাচাইকরণ হ্যাশ (বেস-64 বিন্যাসে) তৈরি করুন। |
OIDToWeaveCurveId (ASN1::OID curveOID) | uint32_t |
PackCertTime (const ASN1UniversalTime & time, uint32_t & packedTime) | NL_DLL_EXPORT WEAVE_ERROR একটি শংসাপত্রের তারিখ/সময় (এএসএন.1 সার্বজনীন সময় কাঠামোর আকারে) একটি প্যাকড শংসাপত্র তারিখ/সময়ে রূপান্তর করুন। |
PackedCertDateToTime (uint16_t packedDate) | NL_DLL_EXPORT uint32_t একটি প্যাক করা শংসাপত্রের তারিখকে একটি সংশ্লিষ্ট প্যাকড শংসাপত্রের তারিখ/সময়ে রূপান্তর করুন, যেখানে মানের সময় অংশটি 00:00:00 এ সেট করা আছে। |
PackedCertTimeToDate (uint32_t packedTime) | NL_DLL_EXPORT uint16_t একটি প্যাকড শংসাপত্র তারিখ/সময়কে একটি প্যাকড শংসাপত্র তারিখে রূপান্তর করুন। |
ParseWeaveIdAttribute ( ASN1Reader & reader, uint64_t & weaveIdOut) | |
PrintCert (FILE *out, const WeaveCertificateData & cert, const WeaveCertificateSet *certSet, uint16_t indent, bool verbose) | NL_DLL_EXPORT void |
PrintCertArray (FILE *out, TLVReader & reader, uint16_t indent) | |
PrintCertReference (FILE *out, TLVReader & reader, uint16_t indent) | |
PrintCertType (FILE *out, uint8_t certType) | void |
PrintCertValidationResults (FILE *out, const WeaveCertificateSet & certSet, const ValidationContext & validContext, uint16_t indent) | NL_DLL_EXPORT void |
PrintECDSASignature (FILE *out, TLVReader & reader, uint16_t indent) | |
PrintHexField (FILE *out, const char *name, uint16_t indent, uint16_t count, const uint8_t *data) | void |
PrintPackedDate (FILE *out, uint16_t t) | void |
PrintPackedTime (FILE *out, uint32_t t) | void |
PrintWeaveDN (FILE *out, const WeaveDN & dn) | void |
PrintWeaveDN (FILE *out, TLVReader & reader) | |
PrintWeaveSignature (FILE *out, TLVReader & reader, uint16_t indent) | |
SecondsSinceEpochToPackedCertTime (uint32_t secondsSinceEpoch) | NL_DLL_EXPORT uint32_t 1970-01-01 00:00:00 UTC থেকে সেকেন্ডের সংখ্যাকে একটি প্যাকড সার্টিফিকেট তারিখ/সময়ে রূপান্তর করুন। |
TranslateOpenSSLError ( WEAVE_ERROR defaultErr) | |
UnpackCertTime (uint32_t packedTime, ASN1UniversalTime & time) | NL_DLL_EXPORT WEAVE_ERROR একটি প্যাকড সার্টিফিকেট তারিখ/সময় একটি ASN.1 সার্বজনীন সময় কাঠামোতে আনপ্যাক করুন। |
VerifyWeaveSignature (const uint8_t *msgHash, uint8_t msgHashLen, const uint8_t *sig, uint16_t sigLen, WeaveCertificateSet & certSet, ValidationContext & certValidContext) | NL_DLL_EXPORT WEAVE_ERROR |
VerifyWeaveSignature (const uint8_t *msgHash, uint8_t msgHashLen, const uint8_t *sig, uint16_t sigLen, OID expectedSigAlgoOID, WeaveCertificateSet & certSet, ValidationContext & certValidContext) | NL_DLL_EXPORT WEAVE_ERROR |
WeaveCurveIdToOID (uint32_t weaveCurveId) | NL_DLL_EXPORT OID |
ক্লাস | |
---|---|
nl:: বুনা:: প্রোফাইল:: নিরাপত্তা:: CertificateKeyId | |
nl:: বুনা:: প্রোফাইল:: নিরাপত্তা:: বৈধতা প্রসঙ্গ | |
nl:: বুনন:: প্রোফাইল:: নিরাপত্তা:: WeaveCertificateData | |
nl:: বুনন:: প্রোফাইল:: নিরাপত্তা:: WeaveCertificateSet | |
nl:: বুনন:: প্রোফাইল:: নিরাপত্তা:: WeaveDN | |
nl:: বুনন:: প্রোফাইল:: নিরাপত্তা:: WeaveProvisioningBundle | |
nl:: বুনন:: প্রোফাইল:: নিরাপত্তা:: WeaveSignatureGenerator | একটি ইন-মেমরি ব্যক্তিগত কী ব্যবহার করে একটি WeaveSignature তৈরি করে। |
nl:: বুনা:: প্রোফাইল:: নিরাপত্তা:: WeaveSignatureGeneratorBase | WeaveSignatures তৈরির জন্য জেনেরিক কার্যকারিতা প্রদান করে। |
নামস্থান | |
---|---|
nl:: বুনা:: প্রোফাইল:: নিরাপত্তা:: AppKeys | এই নেমস্পেসটি উইভ সিকিউরিটি প্রোফাইলের মধ্যে ওয়েভ অ্যাপ্লিকেশন কী লাইব্রেরির জন্য উইভ-এর মধ্যে সমস্ত ইন্টারফেস অন্তর্ভুক্ত করে। |
nl:: বুনা:: প্রোফাইল:: নিরাপত্তা:: CASE | এই নেমস্পেসটি উইভ সিকিউরিটি প্রোফাইলের মধ্যে সার্টিফিকেট অথেনটিকেটেড সেশন এস্টাব্লিশমেন্ট ( CASE ) প্রোটোকলের জন্য উইভ-এর মধ্যে সমস্ত ইন্টারফেস অন্তর্ভুক্ত করে। |
nl:: বুনা:: প্রোফাইল:: নিরাপত্তা:: CertProvisioning | এই নেমস্পেসটি উইভ সিকিউরিটি প্রোফাইলের মধ্যে ওয়েভ সার্টিফিকেট প্রভিশনিং প্রোটোকলের জন্য উইভ-এর মধ্যে সমস্ত ইন্টারফেস অন্তর্ভুক্ত করে। |
nl:: বুনা:: প্রোফাইল:: নিরাপত্তা:: কী এক্সপোর্ট | এই নেমস্পেসটি উইভ সিকিউরিটি প্রোফাইলের মধ্যে কী এক্সপোর্ট প্রোটোকলের জন্য উইভ-এর মধ্যে সমস্ত ইন্টারফেস অন্তর্ভুক্ত করে। |
nl:: বুনা:: প্রোফাইল:: নিরাপত্তা:: PASE | এই নেমস্পেসটি উইভ সিকিউরিটি প্রোফাইলের মধ্যে পাসওয়ার্ড অথেনটিকেটেড সেশন এস্টাব্লিশমেন্ট ( PASE ) প্রোটোকলের জন্য উইভ-এর মধ্যে সমস্ত ইন্টারফেস অন্তর্ভুক্ত করে। |
nl:: বুনা:: প্রোফাইল:: নিরাপত্তা:: পাসকোড | এই নেমস্পেসটি উইভ সিকিউরিটি প্রোফাইলের মধ্যে উইভ পাসকোড লাইব্রেরির জন্য উইভ-এর মধ্যে সমস্ত ইন্টারফেস অন্তর্ভুক্ত করে। |
nl:: বুনা:: প্রোফাইল:: নিরাপত্তা:: নিন | এই নেমস্পেসটি উইভ সিকিউরিটি প্রোফাইলের মধ্যে টোকেন অথেনটিকেটেড কী এক্সচেঞ্জ ( টেক ) প্রোটোকলের জন্য উইভ-এর মধ্যে সমস্ত ইন্টারফেস অন্তর্ভুক্ত করে। |
গণনা
@235
@235
X.509 সার্টিফিকেট মূল উদ্দেশ্য পতাকা।
@236
@236
X.509 সার্টিফিকেট কী ইউসেজ ফ্ল্যাগ।
@237
@237
শংসাপত্রের পতাকা বুনন।
একটি শংসাপত্র সম্পর্কে তথ্য রয়েছে যা একটি WeaveCertSet অবজেক্টে লোড করা হয়েছে৷
@238
@238
বুনা শংসাপত্র ডিকোড পতাকা.
একটি শংসাপত্র কিভাবে ডিকোড করা উচিত তা উল্লেখ করে তথ্য রয়েছে৷
@239
@239
বুনা শংসাপত্র বৈধ পতাকা.
একটি শংসাপত্র কীভাবে যাচাই করা উচিত তা উল্লেখ করে তথ্য রয়েছে৷
@240
@240
@280
@280
@281
@281
@২৮২
@282
@283
@283
@284
@284
@285
@285
@286
@286
@287
@287
@২৮৮
@288
@২৮৯
@289
Typedefs
ECDSASignatureFunct তৈরি করুন
WEAVE_ERROR(* GenerateECDSASignatureFunct)(const uint8_t *hash, uint8_t hashLen, EncodedECDSASignature &ecdsaSig)
স্থানীয় উইভ নোডের ব্যক্তিগত কী ব্যবহার করে একটি ECDSA স্বাক্ষর তৈরি করুন।
যখন আহ্বান করা হয়, তখন বাস্তবায়নকে অবশ্যই নোডের ব্যক্তিগত কী ব্যবহার করে প্রদত্ত হ্যাশ মানের একটি স্বাক্ষর গণনা করতে হবে।
বিস্তারিত | |||||||
---|---|---|---|---|---|---|---|
পরামিতি |
| ||||||
রিটার্ন মান |
|
ভেরিয়েবল
gProvisioningBundleKDFSalt
const char gProvisioningBundleKDFSalt[] = "Weave Provisioning Bundle v1"
ফাংশন
CASECertInfoFromAccessToken
WEAVE_ERROR CASECertInfoFromAccessToken( const uint8_t *accessToken, uint32_t accessTokenLen, uint8_t *certInfoBuf, uint16_t certInfoBufSize, uint16_t & certInfoLen )
একটি ওয়েভ অ্যাক্সেস টোকেন পড়ে এবং অ্যাক্সেস টোকেন থেকে সার্টিফিকেট ধারণকারী একটি CASE শংসাপত্র তথ্য TLV কাঠামো তৈরি করে।
এই ফাংশনটি একটি প্রদত্ত ওয়েভ অ্যাক্সেস টোকেন ডিকোড করে এবং একটি ওয়েভ CASE সার্টিফিকেট তথ্য কাঠামোর জন্য TLV এনকোড করে। CertificateInfo কাঠামোর মধ্যে Entity Certificate ক্ষেত্রটি অ্যাক্সেস টোকেন শংসাপত্রে সেট করা হয়েছে, এবং Related Certificates ক্ষেত্র (যদি উপস্থিত থাকে) অ্যাক্সেস টোকেনের মধ্যে সংশ্লিষ্ট ক্ষেত্রে সেট করা হয়।
বিস্তারিত | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
পরামিতি |
| ||||||||||
রিটার্ন মান |
|
CASECertInfoFromAccessToken
WEAVE_ERROR CASECertInfoFromAccessToken( TLVReader & reader, TLVWriter & writer )
একটি ওয়েভ অ্যাক্সেস টোকেন পড়ে এবং অ্যাক্সেস টোকেন থেকে সার্টিফিকেট ধারণকারী একটি CASE শংসাপত্র তথ্য TLV কাঠামো লেখে।
এই ফাংশনটি একটি প্রদত্ত TLVReader থেকে একটি ওয়েভ অ্যাক্সেস টোকেন পড়ে এবং একটি TLVWriterকে একটি Weave CASE সার্টিফিকেট তথ্য কাঠামোর জন্য TLV লিখে। CertificateInfo কাঠামোর মধ্যে Entity Certificate ক্ষেত্রটি অ্যাক্সেস টোকেন শংসাপত্রে সেট করা হয়েছে, এবং Related Certificates ক্ষেত্র (যদি উপস্থিত থাকে) অ্যাক্সেস টোকেনের মধ্যে সংশ্লিষ্ট ক্ষেত্রে সেট করা হয়।
বিস্তারিত | |||||||||
---|---|---|---|---|---|---|---|---|---|
পরামিতি |
| ||||||||
রিটার্ন মান |
|
ConvertAuthorityKeyIdentifierExtension
WEAVE_ERROR ConvertAuthorityKeyIdentifierExtension( ASN1Reader & reader, TLVWriter & writer )
কনভার্ট সার্টিফিকেট
WEAVE_ERROR ConvertCertificate( ASN1Reader & reader, TLVWriter & writer )
ConvertDistinguishedName
WEAVE_ERROR ConvertDistinguishedName( ASN1Reader & reader, TLVWriter & writer, uint64_t tag )
ConvertECDSAS স্বাক্ষর_DERToWeave
WEAVE_ERROR ConvertECDSASignature_DERToWeave( const uint8_t *sigBuf, uint8_t sigLen, TLVWriter & writer, uint64_t tag )
কনভার্ট এক্সটেনশন
WEAVE_ERROR ConvertExtension( ASN1Reader & reader, TLVWriter & writer )
কনভার্ট এক্সটেনশন
WEAVE_ERROR ConvertExtensions( ASN1Reader & reader, TLVWriter & writer )
ConvertSubjectPublicKeyInfo
WEAVE_ERROR ConvertSubjectPublicKeyInfo( ASN1Reader & reader, TLVWriter & writer )
রূপান্তর বৈধতা
WEAVE_ERROR ConvertValidity( ASN1Reader & reader, TLVWriter & writer )
ConvertWeaveCertToX509Cert
WEAVE_ERROR ConvertWeaveCertToX509Cert( const uint8_t *weaveCert, uint32_t weaveCertLen, uint8_t *x509CertBuf, uint32_t x509CertBufSize, uint32_t & x509CertLen )
ConvertX509CertToWeaveCert
WEAVE_ERROR ConvertX509CertToWeaveCert( const uint8_t *x509Cert, uint32_t x509CertLen, uint8_t *weaveCertBuf, uint32_t weaveCertBufSize, uint32_t & weaveCertLen )
DecodeConvertAuthorityKeyIdentifierExtension
WEAVE_ERROR DecodeConvertAuthorityKeyIdentifierExtension( TLVReader & reader, ASN1Writer & writer, WeaveCertificateData & certData )
ডিকোড কনভার্ট বেসিক কনস্ট্রেন্টস এক্সটেনশন
WEAVE_ERROR DecodeConvertBasicConstraintsExtension( TLVReader & reader, ASN1Writer & writer, WeaveCertificateData & certData )
DecodeConvertCert
WEAVE_ERROR DecodeConvertCert( TLVReader & reader, ASN1Writer & writer, WeaveCertificateData & certData )
DecodeConvertDN
WEAVE_ERROR DecodeConvertDN( TLVReader & reader, ASN1Writer & writer, WeaveDN & dn )
DecodeConvertECDSAS স্বাক্ষর
WEAVE_ERROR DecodeConvertECDSASignature( TLVReader & reader, ASN1Writer & writer, WeaveCertificateData & certData )
DecodeConvertExtendedKeyUsageExtension
WEAVE_ERROR DecodeConvertExtendedKeyUsageExtension( TLVReader & reader, ASN1Writer & writer, WeaveCertificateData & certData )
ডিকোড কনভার্ট এক্সটেনশন
WEAVE_ERROR DecodeConvertExtension( TLVReader & reader, ASN1Writer & writer, WeaveCertificateData & certData )
ডিকোড কনভার্ট এক্সটেনশন
WEAVE_ERROR DecodeConvertExtensions( TLVReader & reader, ASN1Writer & writer, WeaveCertificateData & certData )
DecodeConvertKeyUsageExtension
WEAVE_ERROR DecodeConvertKeyUsageExtension( TLVReader & reader, ASN1Writer & writer, WeaveCertificateData & certData )
DecodeConvertRSAS স্বাক্ষর
WEAVE_ERROR DecodeConvertRSASignature( TLVReader & reader, ASN1Writer & writer, WeaveCertificateData & certData )
DecodeConvertSubjectKeyIdentifierExtension
WEAVE_ERROR DecodeConvertSubjectKeyIdentifierExtension( TLVReader & reader, ASN1Writer & writer, WeaveCertificateData & certData )
DecodeConvertSubjectPublicKeyInfo
WEAVE_ERROR DecodeConvertSubjectPublicKeyInfo( TLVReader & reader, ASN1Writer & writer, WeaveCertificateData & certData )
DecodeConvertTBScert
WEAVE_ERROR DecodeConvertTBSCert( TLVReader & reader, ASN1Writer & writer, WeaveCertificateData & certData )
ডিকোড কনভার্ট ভ্যালিডিটি
WEAVE_ERROR DecodeConvertValidity( TLVReader & reader, ASN1Writer & writer, WeaveCertificateData & certData )
ডিকোডকপিECDSAS স্বাক্ষর_DER
WEAVE_ERROR DecodeCopyECDSASignature_DER( const uint8_t *sigBuf, uint8_t sigLen, EncodedECDSASignature & sig )
DecodeWeaveCert
WEAVE_ERROR DecodeWeaveCert( const uint8_t *weaveCert, uint32_t weaveCertLen, WeaveCertificateData & certData )
DecodeWeaveCert
WEAVE_ERROR DecodeWeaveCert( TLVReader & reader, WeaveCertificateData & certData )
DecodeWeaveDN
WEAVE_ERROR DecodeWeaveDN( TLVReader & reader, WeaveDN & dn )
DecodeWeaveECDSAS স্বাক্ষর
WEAVE_ERROR DecodeWeaveECDSASignature( TLVReader & reader, EncodedECDSASignature & sig )
DecodeWeaveECPrivateKey
NL_DLL_EXPORT WEAVE_ERROR DecodeWeaveECPrivateKey( const uint8_t *buf, uint32_t len, uint32_t & weaveCurveId, EncodedECPublicKey & pubKey, EncodedECPrivateKey & privKey )
DescribeWeaveCertId
const char * DescribeWeaveCertId( OID attrOID, uint64_t weaveCertId )
সার্ট টাইপ নির্ধারণ করুন
WEAVE_ERROR DetermineCertType( WeaveCertificateData & cert )
একটি উইভ সার্টিফিকেটের সাধারণ ধরন নির্ধারণ করুন।
এই ফাংশনটি সার্টিফিকেটের প্রকারের একটি সাধারণ মূল্যায়ন করে তার বিষয়ের DN এবং উপস্থিত এক্সটেনশনের কাঠামোর উপর ভিত্তি করে। অ্যাপ্লিকেশনগুলি cert.CertType-কে একটি অ্যাপ্লিকেশন-সংজ্ঞায়িত একটি সহ অন্য মানতে সেট করে এই মূল্যায়নকে ওভাররাইড করতে বিনামূল্যে।
সাধারণভাবে, অ্যাপ্লিকেশনগুলি শুধুমাত্র একজন সহকর্মীর শংসাপত্রকে বিশ্বাস করবে যদি এটি একটি বিশ্বস্ত রুট শংসাপত্রের সাথে চেইন করে। যাইহোক, একটি শংসাপত্রের জন্য নির্ধারিত ধরন এই বিশ্বাসের প্রকৃতিকে প্রভাবিত করতে পারে, যেমন নির্দিষ্ট বৈশিষ্ট্যগুলিতে অ্যাক্সেসের অনুমতি দেওয়া বা অননুমোদিত করা। এই কারণে, এই অ্যালগরিদমের পরিবর্তনগুলি সামগ্রিক সিস্টেমের নিরাপত্তার উপর খুব তাৎপর্যপূর্ণ এবং সম্ভাব্য বিপর্যয়কর প্রভাব ফেলতে পারে, এবং এর প্রভাবগুলি পুঙ্খানুপুঙ্খভাবে বোঝা ছাড়া করা উচিত নয়৷
দ্রষ্টব্য: অ্যাক্সেস টোকেন শংসাপত্রগুলিকে শুধুমাত্র তাদের গঠন দ্বারা আলাদা করা যায় না। সুতরাং এই ফাংশনটি কখনই cert.CertType = kCertType_AccessToken সেট করে না।
EncodeWeaveECDSAS স্বাক্ষর
WEAVE_ERROR EncodeWeaveECDSASignature( TLVWriter & writer, EncodedECDSASignature & sig, uint64_t tag )
EncodeWeaveECPrivateKey
NL_DLL_EXPORT WEAVE_ERROR EncodeWeaveECPrivateKey( uint32_t weaveCurveId, const EncodedECPublicKey *pubKey, const EncodedECPrivateKey & privKey, uint8_t *outBuf, uint32_t outBufSize, uint32_t & outLen )
ExtractCertFromAccessToken
WEAVE_ERROR ExtractCertFromAccessToken( TLVReader & reader, TLVWriter & writer, uint64_t tag )
একটি ওয়েভ অ্যাক্সেস টোকেন পড়ে এবং অ্যাক্সেস টোকেন সার্টিফিকেট বের করে।
এই ফাংশনটি একটি TLVReader থেকে একটি ওয়েভ অ্যাক্সেস টোকেন পড়ে এবং একটি নির্দিষ্ট TLVWriter-এ অ্যাক্সেস টোকেন শংসাপত্র লেখে।
বিস্তারিত | |||||||||
---|---|---|---|---|---|---|---|---|---|
পরামিতি |
| ||||||||
রিটার্ন মান |
|
এক্সট্রাক্ট প্রাইভেটকিফ্রম অ্যাকসেস টোকেন
WEAVE_ERROR ExtractPrivateKeyFromAccessToken( const uint8_t *accessToken, uint32_t accessTokenLen, uint8_t *privKeyBuf, uint16_t privKeyBufSize, uint16_t & privKeyLen )
একটি ওয়েভ অ্যাক্সেস টোকেন পড়ে এবং ব্যক্তিগত কী বের করে।
এই ফাংশনটি একটি প্রদত্ত ওয়েভ অ্যাক্সেস টোকেন ডিকোড করে এবং টোকেন থেকে ব্যক্তিগত কী ক্ষেত্রটি বের করে।
বিস্তারিত | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
পরামিতি |
| ||||||||||
রিটার্ন মান |
|
এক্সট্রাক্ট প্রাইভেটকিফ্রম অ্যাকসেস টোকেন
WEAVE_ERROR ExtractPrivateKeyFromAccessToken( TLVReader & reader, TLVWriter & writer )
একটি ওয়েভ অ্যাক্সেস টোকেন পড়ে এবং ব্যক্তিগত কী বের করে।
এই ফাংশনটি একটি প্রদত্ত ওয়েভ অ্যাক্সেস টোকেন ডিকোড করে এবং টোকেন থেকে ব্যক্তিগত কী ক্ষেত্রটি বের করে।
বিস্তারিত | |||||||||
---|---|---|---|---|---|---|---|---|---|
পরামিতি |
| ||||||||
রিটার্ন মান |
|
জেনারেটএন্ডএনকোডওয়েভইসিডিএসএসিইনেচার
WEAVE_ERROR GenerateAndEncodeWeaveECDSASignature( TLVWriter & writer, uint64_t tag, const uint8_t *msgHash, uint8_t msgHashLen, const uint8_t *signingKey, uint16_t signingKeyLen )
একটি Weave ECDSA স্বাক্ষর তৈরি এবং এনকোড করুন।
একটি প্রদত্ত ব্যক্তিগত কী এবং বার্তা হ্যাশ ব্যবহার করে একটি ECDSA স্বাক্ষর গণনা করে এবং প্রদত্ত ট্যাগ সহ নির্দিষ্ট TLV লেখকের কাছে একটি উইভ ECDSAS স্বাক্ষর কাঠামো হিসাবে স্বাক্ষরটি লিখুন।
বিস্তারিত | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
পরামিতি |
| ||||||||||||
রিটার্ন মান |
|
Operational Device Cert জেনারেট করুন
NL_DLL_EXPORT WEAVE_ERROR GenerateOperationalDeviceCert( uint64_t deviceId, EncodedECPublicKey & devicePubKey, uint8_t *cert, uint16_t certBufSize, uint16_t & certLen, GenerateECDSASignatureFunct genCertSignature )
উইভ অপারেশনাল ডিভাইস সার্টিফিকেট তৈরি করুন।
এই ফাংশনটি উইভ টিএলভি ফর্ম্যাটে এনকোড করা ওয়েভ স্ব-স্বাক্ষরিত অপারেশনাল সার্টিফিকেট তৈরি করে।
বিস্তারিত | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
পরামিতি |
| ||||||||||||
রিটার্ন মান |
|
GetWeaveSignatureAlgo
WEAVE_ERROR GetWeaveSignatureAlgo( const uint8_t *sig, uint16_t sigLen, OID & sigAlgoOID )
ইন্ডেন্ট
void Indent( FILE *out, uint16_t count )
সন্নিবেশ সম্পর্কিত শংসাপত্র ওয়েভ স্বাক্ষরে
WEAVE_ERROR InsertRelatedCertificatesIntoWeaveSignature( uint8_t *sigBuf, uint16_t sigLen, uint16_t sigBufLen, const uint8_t *relatedCerts, uint16_t relatedCertsLen, uint16_t & outSigLen )
IsCertificateExtensionTag
bool IsCertificateExtensionTag( uint64_t tag )
IsCurveInSet
bool IsCurveInSet( uint32_t curveId, uint8_t curveSet )
IsSupportedCurve
bool IsSupportedCurve( uint32_t curveId )
IsWeaveIdX509Attr
bool IsWeaveIdX509Attr( OID oid )
IsWeaveX509Attr
bool IsWeaveX509Attr( OID oid )
LoadAccessTokenCerts
WEAVE_ERROR LoadAccessTokenCerts( const uint8_t *accessToken, uint32_t accessTokenLen, WeaveCertificateSet & certSet, uint16_t decodeFlags, WeaveCertificateData *& accessTokenCert )
একটি ওয়েভ সার্টিফিকেট সেটে অ্যাক্সেস টোকেনে সার্টিফিকেট লোড করুন।
এই ফাংশনটি একটি প্রদত্ত ওয়েভ অ্যাক্সেস টোকেন ডিকোড করে এবং নির্দিষ্ট ওয়েভ সার্টিফিকেট সেট অবজেক্টে অ্যাক্সেস টোকেন সার্টিফিকেট লোড করে। যদি অ্যাক্সেস টোকেনগুলিতে এক বা একাধিক সম্পর্কিত শংসাপত্র থাকে তবে সেগুলি শংসাপত্র সেটেও লোড করা হয়।
বিস্তারিত | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
পরামিতি |
| ||||||||||
রিটার্ন মান |
|
LoadAccessTokenCerts
WEAVE_ERROR LoadAccessTokenCerts( TLVReader & reader, WeaveCertificateSet & certSet, uint16_t decodeFlags, WeaveCertificateData *& accessTokenCert )
একটি ওয়েভ সার্টিফিকেট সেটে অ্যাক্সেস টোকেনে সার্টিফিকেট লোড করুন।
এই ফাংশনটি একটি প্রদত্ত TLVReader থেকে একটি ওয়েভ অ্যাক্সেস টোকেন পড়ে এবং নির্দিষ্ট ওয়েভ সার্টিফিকেট সেট অবজেক্টে অ্যাক্সেস টোকেন শংসাপত্র লোড করে। যদি অ্যাক্সেস টোকেনগুলিতে এক বা একাধিক সম্পর্কিত শংসাপত্র থাকে তবে সেগুলি শংসাপত্র সেটেও লোড করা হয়।
বিস্তারিত | |||||||||
---|---|---|---|---|---|---|---|---|---|
পরামিতি |
| ||||||||
রিটার্ন মান |
|
MakeDeviceCredentialHash
NL_DLL_EXPORT WEAVE_ERROR MakeDeviceCredentialHash( const char *serialNum, size_t serialNumLen, const char *deviceId, size_t deviceIdLen, const char *deviceSecret, size_t deviceSecretLen, char *hashBuf, size_t hashBufSize )
থার্মোস্ট্যাট ডিভাইস শংসাপত্রের একটি নির্দিষ্ট সেটের জন্য একটি যাচাইকরণ হ্যাশ (বেস-64 ফর্ম্যাটে) তৈরি করুন।
বিস্তারিত | |||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
পরামিতি |
| ||||||||||||||||
রিটার্ন মান |
|
MakeWeaveProvisioningHash
NL_DLL_EXPORT WEAVE_ERROR MakeWeaveProvisioningHash( uint64_t nodeId, const char *weaveCert, size_t weaveCertLen, const char *weavePrivKey, size_t weavePrivKeyLen, const char *pairingCode, size_t pairingCodeLen, char *hashBuf, size_t hashBufSize )
উইভ প্রভিশনিং তথ্যের একটি প্রদত্ত সেটের জন্য একটি যাচাইকরণ হ্যাশ (বেস-64 বিন্যাসে) তৈরি করুন।
বিস্তারিত | |||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
পরামিতি |
| ||||||||||||||||||
রিটার্ন মান |
|
OIDToWeaveCurveId
uint32_t OIDToWeaveCurveId( ASN1::OID curveOID )
PackCertTime
NL_DLL_EXPORT WEAVE_ERROR PackCertTime( const ASN1UniversalTime & time, uint32_t & packedTime )
একটি শংসাপত্রের তারিখ/সময় (এএসএন.1 সার্বজনীন সময় কাঠামোর আকারে) একটি প্যাকড শংসাপত্র তারিখ/সময়ে রূপান্তর করুন।
প্যাকড শংসাপত্রের তারিখ/সময় একটি শংসাপত্রের মধ্যে সময়ের মানগুলির জন্য একটি কম্প্যাক্ট উপস্থাপনা প্রদান করে (আগে নয় পরে) যার ব্যাখ্যা করার জন্য সম্পূর্ণ ক্যালেন্ডার গণিতের প্রয়োজন হয় না।
একটি প্যাকড সার্টিফিকেট তারিখ/সময় একটি ক্যালেন্ডার তারিখ/timei.e এর ক্ষেত্র ধারণ করে। বছর, মাস, দিন, ঘন্টা, মিনিট, একটি স্বাক্ষরবিহীন পূর্ণসংখ্যার মধ্যে সেকেন্ডপ্যাক। বিট উপস্থাপনা এমনভাবে সংগঠিত হয় যাতে প্যাক করা তারিখ/সময়ের মানগুলির সাধারন তুলনা সংশ্লিষ্ট সময়ের স্বাভাবিক ক্রমানুসারের সাথে মিলে যায়। তাদের আকার কমাতে, প্যাক করা শংসাপত্রের তারিখ/সময়গুলি 2000/01/01 00:00:00 তারিখে বা তার পরে থাকা সময়ের প্রতিনিধিত্ব করার জন্য সীমাবদ্ধ। একটি 32-বিট স্বাক্ষরবিহীন পূর্ণসংখ্যার মধ্যে রাখা হলে, প্যাক করা শংসাপত্রের তারিখ/সময়গুলি 2133 সাল পর্যন্ত সময়ের প্রতিনিধিত্ব করতে পারে।
বিস্তারিত | |||||
---|---|---|---|---|---|
পরামিতি |
| ||||
রিটার্ন মান |
|
PackedCertDateToTime
NL_DLL_EXPORT uint32_t PackedCertDateToTime( uint16_t packedDate )
একটি প্যাক করা শংসাপত্রের তারিখকে একটি সংশ্লিষ্ট প্যাকড শংসাপত্রের তারিখ/সময়ে রূপান্তর করুন, যেখানে মানের সময় অংশটি 00:00:00 এ সেট করা আছে।
বিস্তারিত | |||
---|---|---|---|
পরামিতি |
| ||
রিটার্নস | একটি সংশ্লিষ্ট প্যাকেট সার্টিফিকেট তারিখ/সময়। |
PackedCertTimeToDate
NL_DLL_EXPORT uint16_t PackedCertTimeToDate( uint32_t packedTime )
একটি প্যাকড শংসাপত্র তারিখ/সময়কে একটি প্যাকড শংসাপত্র তারিখে রূপান্তর করুন।
একটি প্যাকড শংসাপত্রের তারিখে একটি স্বাক্ষরবিহীন পূর্ণসংখ্যার মধ্যে একটি ক্যালেন্ডার তারিখের বছর, মাস, দিন প্যাক করা থাকে৷ বিটগুলি এমনভাবে সংগঠিত হয় যাতে প্যাক করা তারিখের মানগুলির সাধারন তুলনা সংশ্লিষ্ট তারিখগুলির স্বাভাবিক ক্রমানুসারের সাথে মিলে যায়। তাদের আকার কমাতে, প্যাকড শংসাপত্রের তারিখগুলি 2000/01/01 বা তার পরের তারিখগুলি প্রতিনিধিত্ব করার জন্য সীমাবদ্ধ। একটি 16-বিট স্বাক্ষরবিহীন পূর্ণসংখ্যার মধ্যে রাখা হলে, প্যাক করা শংসাপত্রের তারিখগুলি 2176 সাল পর্যন্ত তারিখগুলি উপস্থাপন করতে পারে।
বিস্তারিত | |||
---|---|---|---|
পরামিতি |
| ||
রিটার্নস | একটি সংশ্লিষ্ট প্যাকেট শংসাপত্রের তারিখ। |
ParseWeaveIdAttribute
WEAVE_ERROR ParseWeaveIdAttribute( ASN1Reader & reader, uint64_t & weaveIdOut )
PrintCert
NL_DLL_EXPORT void PrintCert( FILE *out, const WeaveCertificateData & cert, const WeaveCertificateSet *certSet, uint16_t indent, bool verbose )
PrintCertArray
WEAVE_ERROR PrintCertArray( FILE *out, TLVReader & reader, uint16_t indent )
প্রিন্ট সার্ট রেফারেন্স
WEAVE_ERROR PrintCertReference( FILE *out, TLVReader & reader, uint16_t indent )
PrintCertType
void PrintCertType( FILE *out, uint8_t certType )
PrintCertValidation Results
NL_DLL_EXPORT void PrintCertValidationResults( FILE *out, const WeaveCertificateSet & certSet, const ValidationContext & validContext, uint16_t indent )
প্রিন্ট ইসিডিএসএস স্বাক্ষর
WEAVE_ERROR PrintECDSASignature( FILE *out, TLVReader & reader, uint16_t indent )
প্রিন্টহেক্সফিল্ড
void PrintHexField( FILE *out, const char *name, uint16_t indent, uint16_t count, const uint8_t *data )
প্রিন্টপ্যাকড তারিখ
void PrintPackedDate( FILE *out, uint16_t t )
প্রিন্টপ্যাকডটাইম
void PrintPackedTime( FILE *out, uint32_t t )
PrintWeaveDN
void PrintWeaveDN( FILE *out, const WeaveDN & dn )
PrintWeaveDN
WEAVE_ERROR PrintWeaveDN( FILE *out, TLVReader & reader )
প্রিন্টওয়েভ স্বাক্ষর
WEAVE_ERROR PrintWeaveSignature( FILE *out, TLVReader & reader, uint16_t indent )
সেকেন্ডস থেকে ইপোচটোপ্যাকড সার্টটাইম
NL_DLL_EXPORT uint32_t SecondsSinceEpochToPackedCertTime( uint32_t secondsSinceEpoch )
1970-01-01 00:00:00 UTC থেকে সেকেন্ডের সংখ্যাকে একটি প্যাকড সার্টিফিকেট তারিখ/সময়ে রূপান্তর করুন।
বিস্তারিত | |||
---|---|---|---|
পরামিতি |
| ||
রিটার্নস | একটি সংশ্লিষ্ট প্যাকেট সার্টিফিকেট তারিখ/সময়। |
OpenSSLError অনুবাদ করুন
WEAVE_ERROR TranslateOpenSSLError( WEAVE_ERROR defaultErr )
আনপ্যাক সার্টটাইম
NL_DLL_EXPORT WEAVE_ERROR UnpackCertTime( uint32_t packedTime, ASN1UniversalTime & time )
একটি প্যাকড সার্টিফিকেট তারিখ/সময় একটি ASN.1 সার্বজনীন সময় কাঠামোতে আনপ্যাক করুন।
বিস্তারিত | |||||
---|---|---|---|---|---|
পরামিতি |
| ||||
রিটার্ন মান |
|
WeaveSignature যাচাই করুন
NL_DLL_EXPORT WEAVE_ERROR VerifyWeaveSignature( const uint8_t *msgHash, uint8_t msgHashLen, const uint8_t *sig, uint16_t sigLen, WeaveCertificateSet & certSet, ValidationContext & certValidContext )
WeaveSignature যাচাই করুন
NL_DLL_EXPORT WEAVE_ERROR VerifyWeaveSignature( const uint8_t *msgHash, uint8_t msgHashLen, const uint8_t *sig, uint16_t sigLen, OID expectedSigAlgoOID, WeaveCertificateSet & certSet, ValidationContext & certValidContext )
WeaveCurveIdToOID
NL_DLL_EXPORT OID WeaveCurveIdToOID( uint32_t weaveCurveId )