nl::Weave::Profiles::Security

Không gian tên này bao gồm tất cả giao diện trong Weave dành cho cấu hình Security của Weave.

Tóm tắt

Liệt kê

@235 enum
Cờ mục đích của khoá chứng chỉ X.509.
@236 enum
Cờ sử dụng khoá chứng chỉ X.509.
@237 enum
Đan cờ chứng chỉ.
@238 enum
Tạo cờ giải mã chứng chỉ.
@239 enum
Đan cờ xác thực chứng chỉ.
@240 enum
@280 enum
@281 enum
@282 enum
@283 enum
@284 enum
@285 enum
@286 enum
@287 enum
@288 enum
@289 enum

Typedef

GenerateECDSASignatureFunct)(const uint8_t *hash, uint8_t hashLen, EncodedECDSASignature &ecdsaSig) typedef
Tạo chữ ký ECDSA bằng khoá riêng tư của nút Weave cục bộ.

Biến

gProvisioningBundleKDFSalt = "Weave Provisioning Bundle v1"[]
const char

Hàm

CASECertInfoFromAccessToken(const uint8_t *accessToken, uint32_t accessTokenLen, uint8_t *certInfoBuf, uint16_t certInfoBufSize, uint16_t & certInfoLen)
Đọc một Mã truy cập Weave và tạo cấu trúc Thông tin chứng chỉ CASE TLV chứa các chứng chỉ từ mã truy cập.
CASECertInfoFromAccessToken(TLVReader & reader, TLVWriter & writer)
Đọc một Mã truy cập Weave và viết cấu trúc Thông tin chứng chỉ CASE TLV chứa các chứng chỉ từ mã truy cập.
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)
Xác định loại chung của chứng chỉ Weave.
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)
Đọc Mã truy cập Weave và trích xuất Chứng chỉ Mã truy cập.
ExtractPrivateKeyFromAccessToken(const uint8_t *accessToken, uint32_t accessTokenLen, uint8_t *privKeyBuf, uint16_t privKeyBufSize, uint16_t & privKeyLen)
Đọc một Mã truy cập Weave và trích xuất khoá riêng tư.
ExtractPrivateKeyFromAccessToken(TLVReader & reader, TLVWriter & writer)
Đọc một Mã truy cập Weave và trích xuất khoá riêng tư.
GenerateAndEncodeWeaveECDSASignature(TLVWriter & writer, uint64_t tag, const uint8_t *msgHash, uint8_t msgHashLen, const uint8_t *signingKey, uint16_t signingKeyLen)
Tạo và mã hoá chữ ký ECDSA của Weave.
GenerateOperationalDeviceCert(uint64_t deviceId, EncodedECPublicKey & devicePubKey, uint8_t *cert, uint16_t certBufSize, uint16_t & certLen, GenerateECDSASignatureFunct genCertSignature)
NL_DLL_EXPORT WEAVE_ERROR
Tạo chứng chỉ thiết bị vận hành Weave.
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)
Tải các chứng chỉ trong một mã truy cập vào một nhóm chứng chỉ Weave.
LoadAccessTokenCerts(TLVReader & reader, WeaveCertificateSet & certSet, uint16_t decodeFlags, WeaveCertificateData *& accessTokenCert)
Tải các chứng chỉ trong một mã truy cập vào một nhóm chứng chỉ Weave.
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
Tạo hàm băm xác minh (ở định dạng base-64) cho một bộ thông tin đăng nhập thiết bị Máy điều nhiệt nhất định.
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
Tạo hàm băm xác minh (ở định dạng base-64) cho một tập hợp thông tin cấp phép Weave nhất định.
OIDToWeaveCurveId(ASN1::OID curveOID)
uint32_t
PackCertTime(const ASN1UniversalTime & time, uint32_t & packedTime)
NL_DLL_EXPORT WEAVE_ERROR
Chuyển đổi ngày/giờ của chứng chỉ (ở dạng cấu trúc giờ toàn cầu ASN.1) thành ngày/giờ của chứng chỉ được đóng gói.
PackedCertDateToTime(uint16_t packedDate)
NL_DLL_EXPORT uint32_t
Chuyển đổi ngày chứng chỉ được đóng gói thành ngày/giờ của chứng chỉ được đóng gói tương ứng, trong đó phần thời gian của giá trị được đặt thành 00:00:00.
PackedCertTimeToDate(uint32_t packedTime)
NL_DLL_EXPORT uint16_t
Chuyển đổi ngày/giờ của chứng chỉ được đóng gói thành ngày/giờ của chứng chỉ được đóng gói.
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
Chuyển đổi số giây kể từ 1970-01-01 00:00:00 UTC thành ngày/giờ chứng chỉ được đóng gói.
TranslateOpenSSLError(WEAVE_ERROR defaultErr)
UnpackCertTime(uint32_t packedTime, ASN1UniversalTime & time)
NL_DLL_EXPORT WEAVE_ERROR
Giải nén ngày/giờ của chứng chỉ được đóng gói vào cấu trúc thời gian toàn cầu 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

Lớp

nl::Weave::Profiles::Security::CertificateKeyId
nl::Weave::Profiles::Security::ValidationContext
nl::Weave::Profiles::Security::WeaveCertificateData
nl::Weave::Profiles::Security::WeaveCertificateSet
nl::Weave::Profiles::Security::WeaveDN
nl::Weave::Profiles::Security::WeaveProvisioningBundle
nl::Weave::Profiles::Security::WeaveSignatureGenerator

Tạo WeaveSignature bằng cách sử dụng khoá riêng tư trong bộ nhớ.

nl::Weave::Profiles::Security::WeaveSignatureGeneratorBase

Cung cấp chức năng chung để tạo các chữ ký WeaveSignature.

Không gian tên

nl::Weave::Profiles::Security::AppKeys

Không gian tên này bao gồm tất cả giao diện trong thư viện khoá ứng dụng Weave trong cấu hình bảo mật Weave.

nl::Weave::Profiles::Security::CASE

Không gian tên này bao gồm tất cả giao diện trong giao thức Weave dành cho giao thức Thiết lập phiên được xác thực chứng chỉ (CASE) trong hồ sơ bảo mật Weave.

nl::Weave::Profiles::Security::CertProvisioning

Không gian tên này bao gồm tất cả giao diện trong Weave dành cho giao thức cấp phép chứng chỉ Weave trong hồ sơ bảo mật Weave.

nl::Weave::Profiles::Security::KeyExport

Không gian tên này bao gồm tất cả giao diện trong Weave cho giao thức xuất khoá trong cấu hình bảo mật Weave.

nl::Weave::Profiles::Security::PASE

Không gian tên này bao gồm tất cả giao diện trong giao thức Weave dành cho giao thức Thiết lập phiên được xác thực bằng mật khẩu (PASE) trong cấu hình bảo mật Weave.

nl::Weave::Profiles::Security::Passcodes

Không gian tên này bao gồm tất cả giao diện trong thư viện mật mã Weave trong hồ sơ bảo mật Weave.

nl::Weave::Profiles::Security::TAKE

Không gian tên này bao gồm tất cả giao diện trong giao thức Weave dành cho giao thức Trao đổi khoá xác thực bằng mã thông báo (Take) trong hồ sơ Weave Security (Bảo mật).

Liệt kê

@235

 @235

Cờ mục đích của khoá chứng chỉ X.509.

@236

 @236

Cờ sử dụng khoá chứng chỉ X.509.

@237

 @237

Đan cờ chứng chỉ.

Chứa thông tin về một chứng chỉ đã được tải vào đối tượng WeaveCertSet.

@238

 @238

Tạo cờ giải mã chứng chỉ.

Chứa thông tin chỉ định cách giải mã chứng chỉ.

@239 tuổi

 @239

Đan cờ xác thực chứng chỉ.

Chứa thông tin chỉ định cách xác thực chứng chỉ.

@240 giây

 @240

@280

 @280

@281

 @281

@282

 @282

@283

 @283

@284

 @284

@285

 @285

@286

 @286

@287

 @287

@288

 @288

@289

 @289

Typedef

GenerateECDSASignatureFunct

WEAVE_ERROR(* GenerateECDSASignatureFunct)(const uint8_t *hash, uint8_t hashLen, EncodedECDSASignature &ecdsaSig)

Tạo chữ ký ECDSA bằng khoá riêng tư của nút Weave cục bộ.

Khi được gọi, các phương thức triển khai phải tính toán chữ ký trên giá trị hàm băm đã cho bằng cách sử dụng khoá riêng tư của nút.

Thông tin chi tiết
Tham số
[in] hash
Vùng đệm chứa hàm băm của chứng chỉ cần ký.
[in] hashLen
Độ dài tính bằng byte của hàm băm.
[in] ecdsaSig
Tham chiếu đến đối tượng chữ ký ecdsa, nơi lưu trữ kết quả của hàm này.
Giá trị trả về
WEAVE_NO_ERROR
Nếu thao tác thành công.

Biến

gProvisioningBundleKDFSalt

const char gProvisioningBundleKDFSalt[] = "Weave Provisioning Bundle v1"

Hàm

CASECertInfoFromAccessToken

WEAVE_ERROR CASECertInfoFromAccessToken(
  const uint8_t *accessToken,
  uint32_t accessTokenLen,
  uint8_t *certInfoBuf,
  uint16_t certInfoBufSize,
  uint16_t & certInfoLen
)

Đọc một Mã truy cập Weave và tạo cấu trúc Thông tin chứng chỉ CASE TLV chứa các chứng chỉ từ mã truy cập.

Hàm này giải mã một Mã thông báo truy cập Weave nhất định và mã hoá TLV cho cấu trúc Thông tin chứng chỉ Weave CASE. Trường EntityCertificates trong cấu trúc CertificateInfo được đặt thành chứng chỉ mã truy cập và trường liên quan đến chứng chỉ (nếu có) được đặt thành trường tương ứng trong mã truy cập.

Thông tin chi tiết
Tham số
accessToken
Con trỏ tới vùng đệm chứa Mã truy cập Weave đã mã hoá.
accessTokenLen
Độ dài của mã truy cập đã mã hoá.
certInfoBuf
Con trỏ trỏ đến vùng đệm mà cấu trúc thông tin chứng chỉ CASE cần được mã hoá.
certInfoBufSize
Kích thước của vùng đệm do certInfoBuf trỏ đến.
certInfoLen
Tham chiếu đến một số nguyên sẽ được đặt thành độ dài của cấu trúc thông tin chứng chỉ được mã hoá. LƯU Ý: Giá trị này chỉ được đặt khi hàm trả về thành công.
Giá trị trả về
WEAVE_NO_ERROR
Nếu cấu trúc thông tin chứng chỉ CASE được mã hoá thành công.
tlv-errors
Đan các lỗi liên quan đến việc đọc hoặc viết TLV.
cert-errors
Các lỗi liên quan đến việc giải mã chứng chỉ Weave.
platform-errors
Các lỗi khác riêng của nền tảng.

CASECertInfoFromAccessToken

WEAVE_ERROR CASECertInfoFromAccessToken(
  TLVReader & reader,
  TLVWriter & writer
)

Đọc một Mã truy cập Weave và viết cấu trúc Thông tin chứng chỉ CASE TLV chứa các chứng chỉ từ mã truy cập.

Hàm này đọc một Mã thông báo truy cập Weave từ một TLVReader nhất định và ghi TLV cho cấu trúc Thông tin chứng chỉ Weave CASE vào TLVWriter. Trường EntityCertificates trong cấu trúc CertificateInfo được đặt thành chứng chỉ mã truy cập và trường liên quan đến chứng chỉ (nếu có) được đặt thành trường tương ứng trong mã truy cập.

Thông tin chi tiết
Tham số
[in] reader
Một TLVReader được đặt trên Weave Access Token.
[in] writer
TLVWriter được dùng để ghi lại thông tin đầu ra về chứng chỉ CASE.
Giá trị trả về
WEAVE_NO_ERROR
Nếu cấu trúc thông tin chứng chỉ CASE được mã hoá thành công.
tlv-errors
Đan các lỗi liên quan đến việc đọc hoặc viết TLV.
cert-errors
Các lỗi liên quan đến việc giải mã chứng chỉ Weave.
platform-errors
Các lỗi khác riêng của nền tảng.

ConvertAuthorityKeyIdentifierExtension

WEAVE_ERROR ConvertAuthorityKeyIdentifierExtension(
  ASN1Reader & reader,
  TLVWriter & writer
)

ConvertCertificate

WEAVE_ERROR ConvertCertificate(
  ASN1Reader & reader,
  TLVWriter & writer
)

ConvertDistinguishedName

WEAVE_ERROR ConvertDistinguishedName(
  ASN1Reader & reader,
  TLVWriter & writer,
  uint64_t tag
)

ConvertECDSASignature_DERToWeave

WEAVE_ERROR ConvertECDSASignature_DERToWeave(
  const uint8_t *sigBuf,
  uint8_t sigLen,
  TLVWriter & writer,
  uint64_t tag
)

ConvertExtension

WEAVE_ERROR ConvertExtension(
  ASN1Reader & reader,
  TLVWriter & writer
)

ConvertExtensions

WEAVE_ERROR ConvertExtensions(
  ASN1Reader & reader,
  TLVWriter & writer
)

ConvertSubjectPublicKeyInfo

WEAVE_ERROR ConvertSubjectPublicKeyInfo(
  ASN1Reader & reader,
  TLVWriter & writer
)

ConvertValidity

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
)

DecodeConvertBasicConstraintsExtension

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
)

DecodeConvertECDSASignature

WEAVE_ERROR DecodeConvertECDSASignature(
  TLVReader & reader,
  ASN1Writer & writer,
  WeaveCertificateData & certData
)

DecodeConvertExtendedKeyUsageExtension

WEAVE_ERROR DecodeConvertExtendedKeyUsageExtension(
  TLVReader & reader,
  ASN1Writer & writer,
  WeaveCertificateData & certData
)

DecodeConvertExtension

WEAVE_ERROR DecodeConvertExtension(
  TLVReader & reader,
  ASN1Writer & writer,
  WeaveCertificateData & certData
)

DecodeConvertExtensions

WEAVE_ERROR DecodeConvertExtensions(
  TLVReader & reader,
  ASN1Writer & writer,
  WeaveCertificateData & certData
)

DecodeConvertKeyUsageExtension

WEAVE_ERROR DecodeConvertKeyUsageExtension(
  TLVReader & reader,
  ASN1Writer & writer,
  WeaveCertificateData & certData
)

DecodeConvertRSASignature

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
)

DecodeConvertValidity

WEAVE_ERROR DecodeConvertValidity(
  TLVReader & reader,
  ASN1Writer & writer,
  WeaveCertificateData & certData
)

DecodeCopyECDSASignature_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
)

DecodeWeaveECDSASignature

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
)

DetermineCertType

WEAVE_ERROR DetermineCertType(
  WeaveCertificateData & cert
)

Xác định loại chung của chứng chỉ Weave.

Hàm này đánh giá chung về loại chứng chỉ dựa trên cấu trúc mã DN của chủ đề và phần mở rộng hiện có. Ứng dụng có thể tuỳ ý ghi đè bài đánh giá này bằng cách đặt cert.CertType thành một giá trị khác, bao gồm cả giá trị do ứng dụng xác định.

Nhìn chung, ứng dụng sẽ chỉ tin tưởng chứng chỉ của ứng dụng ngang hàng nếu chứng chỉ đó liên kết với một chứng chỉ gốc đáng tin cậy. Tuy nhiên, loại được chỉ định cho chứng chỉ có thể ảnh hưởng đến bản chất của sự tin cậy này, ví dụ: để cho phép hoặc không cho phép truy cập vào một số tính năng. Do đó, các thay đổi đối với thuật toán này có thể có tác động RẤT QUAN TRỌNG và TIỀM NĂNG TIỀM NĂNG đối với tính bảo mật tổng thể của hệ thống. Bạn không nên thực hiện thay đổi khi chưa hiểu rõ tác động của các thay đổi đó.

LƯU Ý: Không thể phân biệt chứng chỉ mã truy cập chỉ bằng cấu trúc. Do đó, hàm này không bao giờ đặt cert.CertType = kCertType_AccessToken.

EncodeWeaveECDSASignature

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
)

Đọc Mã truy cập Weave và trích xuất Chứng chỉ Mã truy cập.

Hàm này đọc Weave Access Token từ TLVReader và ghi Chứng chỉ mã truy cập vào một TLVWriter được chỉ định.

Thông tin chi tiết
Tham số
[in] reader
Một TLVReader được đặt trên Weave Access Token.
[in] writer
TLVWriter mà chứng chỉ sẽ được ghi vào.
[in] tag
Thẻ TLV sẽ được sử dụng khi viết chứng chỉ.
Giá trị trả về
WEAVE_NO_ERROR
Nếu cấu trúc thông tin chứng chỉ CASE được mã hoá thành công.
tlv-errors
Đan các lỗi liên quan đến việc đọc hoặc viết TLV.
cert-errors
Các lỗi liên quan đến việc giải mã chứng chỉ Weave.
platform-errors
Các lỗi khác riêng của nền tảng.

ExtractPrivateKeyFromAccessToken

WEAVE_ERROR ExtractPrivateKeyFromAccessToken(
  const uint8_t *accessToken,
  uint32_t accessTokenLen,
  uint8_t *privKeyBuf,
  uint16_t privKeyBufSize,
  uint16_t & privKeyLen
)

Đọc một Mã truy cập Weave và trích xuất khoá riêng tư.

Hàm này giải mã một Mã thông báo truy cập Weave nhất định và trích xuất trường khoá riêng tư từ mã thông báo.

Thông tin chi tiết
Tham số
accessToken
Con trỏ tới vùng đệm chứa Mã truy cập Weave đã mã hoá.
accessTokenLen
Độ dài của mã truy cập đã mã hoá.
privKeyBuf
Con trỏ trỏ đến vùng đệm mà cấu trúc khoá riêng tư cần được mã hoá.
privKeyBufSize
Kích thước của vùng đệm do privKeyBuf trỏ đến.
privKeyLen
Tham chiếu đến một số nguyên sẽ được đặt thành độ dài của khoá riêng tư. LƯU Ý: Giá trị này chỉ được đặt khi hàm trả về thành công.
Giá trị trả về
WEAVE_NO_ERROR
Nếu khoá riêng tư đã được trích xuất thành công.
tlv-errors
Đan các lỗi liên quan đến việc đọc hoặc viết TLV.
cert-errors
Các lỗi liên quan đến việc giải mã chứng chỉ Weave.
platform-errors
Các lỗi khác riêng của nền tảng.

ExtractPrivateKeyFromAccessToken

WEAVE_ERROR ExtractPrivateKeyFromAccessToken(
  TLVReader & reader,
  TLVWriter & writer
)

Đọc một Mã truy cập Weave và trích xuất khoá riêng tư.

Hàm này giải mã một Mã thông báo truy cập Weave nhất định và trích xuất trường khoá riêng tư từ mã thông báo.

Thông tin chi tiết
Tham số
[in] reader
Một TLVReader được đặt trên Weave Access Token.
[in] writer
Một TLVWriter mà khoá riêng tư sẽ được ghi vào.
Giá trị trả về
WEAVE_NO_ERROR
Nếu khoá riêng tư đã được trích xuất thành công.
tlv-errors
Đan các lỗi liên quan đến việc đọc hoặc viết TLV.
cert-errors
Các lỗi liên quan đến việc giải mã chứng chỉ Weave.
platform-errors
Các lỗi khác riêng của nền tảng.

GenerateAndEncodeWeaveECDSASignature

WEAVE_ERROR GenerateAndEncodeWeaveECDSASignature(
  TLVWriter & writer,
  uint64_t tag,
  const uint8_t *msgHash,
  uint8_t msgHashLen,
  const uint8_t *signingKey,
  uint16_t signingKeyLen
)

Tạo và mã hoá chữ ký ECDSA của Weave.

Tính toán chữ ký ECDSA bằng cách sử dụng một khoá riêng tư và hàm băm thông báo nhất định, đồng thời viết chữ ký dưới dạng cấu trúc Weave ECDSASignature cho trình ghi TLV được chỉ định bằng thẻ đã cho.

Thông tin chi tiết
Tham số
[in] writer
Đối tượng TLVWriter mà bạn phải viết chữ ký đã mã hoá.
[in] tag
TLV để liên kết với cấu trúc chữ ký đã mã hoá.
[in] msgHash
Vùng đệm chứa hàm băm của thông báo cần ký.
[in] msgHashLen
Độ dài tính bằng byte của hàm băm thông báo.
[in] signingKey
Vùng đệm chứa khoá riêng tư sẽ được dùng để tạo chữ ký. Khoá riêng tư dự kiến sẽ được mã hoá theo cấu trúc TLV Weave EllipticCurvePrivateKey.
[in] signingKeyLen
Độ dài tính bằng byte của khoá cá nhân đã mã hoá.
Giá trị trả về
WEAVE_NO_ERROR
Nếu thao tác thành công.
other
Các mã lỗi Weave khác liên quan đến việc giải mã khoá riêng tư, tạo chữ ký hoặc mã hoá chữ ký.

GenerateOperationalDeviceCert

NL_DLL_EXPORT WEAVE_ERROR GenerateOperationalDeviceCert(
  uint64_t deviceId,
  EncodedECPublicKey & devicePubKey,
  uint8_t *cert,
  uint16_t certBufSize,
  uint16_t & certLen,
  GenerateECDSASignatureFunct genCertSignature
)

Tạo chứng chỉ thiết bị vận hành Weave.

Hàm này tạo chứng chỉ hoạt động tự ký của Weave được mã hoá theo định dạng TLV của Weave.

Thông tin chi tiết
Tham số
deviceId
Mã thiết bị vận hành dệt.
devicePubKey
Dệt khoá công khai của thiết bị vận hành.
cert
Con trỏ trỏ đến vùng đệm nơi chứng chỉ đã tạo sẽ được ghi.
certBufSize
Độ dài tính bằng byte của vùng đệm chứng chỉ đã cung cấp.
certLen
Độ dài tính bằng byte của chứng chỉ đã tạo.
genCertSignature
Con trỏ trỏ đến một hàm tạo chữ ký ECDSA trên hàm băm chứng chỉ nhất định bằng cách sử dụng khoá riêng tư của thiết bị đang hoạt động.
Giá trị trả về
WEAVE_NO_ERROR
Nếu chứng chỉ Weave được tạo thành công.

GetWeaveSignatureAlgo

WEAVE_ERROR GetWeaveSignatureAlgo(
  const uint8_t *sig,
  uint16_t sigLen,
  OID & sigAlgoOID
)

Thụt lề

void Indent(
  FILE *out,
  uint16_t count
)

InsertRelatedCertificatesIntoWeaveSignature

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
)

Tải các chứng chỉ trong một mã truy cập vào một nhóm chứng chỉ Weave.

Hàm này giải mã một mã truy cập Weave nhất định và tải chứng chỉ mã truy cập vào đối tượng nhóm chứng chỉ Weave được chỉ định. Nếu mã thông báo truy cập chứa một hoặc nhiều chứng chỉ có liên quan, thì các chứng chỉ này cũng sẽ được tải vào bộ chứng chỉ.

Thông tin chi tiết
Tham số
accessToken
Con trỏ tới vùng đệm chứa Mã truy cập Weave đã mã hoá.
accessTokenLen
Độ dài của mã truy cập đã mã hoá.
certSet
Chứng chỉ được đặt mà chứng chỉ mã thông báo truy cập sẽ được tải vào.
decodeFlags
Cờ giải mã chứng chỉ nên được sử dụng khi tải chứng chỉ.
accessTokenCert
Tham chiếu đến một con trỏ sẽ được đặt thành cấu trúc dữ liệu chứng chỉ Weave cho chứng chỉ mã truy cập. LƯU Ý: Con trỏ này sẽ chỉ được thiết lập nếu hàm trả về thành công.
Giá trị trả về
WEAVE_NO_ERROR
Nếu chứng chỉ mã truy cập đã được tải thành công hay chưa.
tlv-errors
Đan các lỗi liên quan đến việc đọc TLV.
cert-errors
Các lỗi liên quan đến việc giải mã chứng chỉ Weave.
platform-errors
Các lỗi khác riêng của nền tảng.

LoadAccessTokenCerts

WEAVE_ERROR LoadAccessTokenCerts(
  TLVReader & reader,
  WeaveCertificateSet & certSet,
  uint16_t decodeFlags,
  WeaveCertificateData *& accessTokenCert
)

Tải các chứng chỉ trong một mã truy cập vào một nhóm chứng chỉ Weave.

Hàm này đọc mã thông báo truy cập Weave từ một TLVReader đã cho và tải chứng chỉ mã truy cập vào đối tượng nhóm chứng chỉ Weave được chỉ định. Nếu mã thông báo truy cập chứa một hoặc nhiều chứng chỉ có liên quan, thì các chứng chỉ này cũng sẽ được tải vào bộ chứng chỉ.

Thông tin chi tiết
Tham số
reader
Đối tượng TLVReader được đặt ngay trước một Mã truy cập Weave.
certSet
Chứng chỉ được đặt mà chứng chỉ mã thông báo truy cập sẽ được tải vào.
decodeFlags
Cờ giải mã chứng chỉ nên được sử dụng khi tải chứng chỉ.
accessTokenCert
Tham chiếu đến một con trỏ sẽ được đặt thành cấu trúc dữ liệu chứng chỉ Weave cho chứng chỉ mã truy cập. LƯU Ý: Giá trị này chỉ được đặt khi hàm trả về thành công.
Giá trị trả về
WEAVE_NO_ERROR
Nếu chứng chỉ mã truy cập đã được tải thành công hay chưa.
tlv-errors
Đan các lỗi liên quan đến việc đọc TLV.
cert-errors
Các lỗi liên quan đến việc giải mã chứng chỉ Weave.
platform-errors
Các lỗi khác riêng của nền tảng.

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
)

Tạo hàm băm xác minh (ở định dạng base-64) cho một bộ thông tin đăng nhập thiết bị Máy điều nhiệt nhất định.

Thông tin chi tiết
Tham số
[in] serialNum
Con trỏ trỏ đến vùng đệm chứa số sê-ri của thiết bị.
[in] serialNumLen
Độ dài của chuỗi số sê-ri.
[in] deviceId
Con trỏ trỏ đến vùng đệm chứa mã nhận dạng của thiết bị.
[in] deviceIdLen
Độ dài mã nhận dạng của thiết bị.
[in] deviceSecret
Con trỏ trỏ đến vùng đệm chứa khoá bí mật của thiết bị.
[in] deviceSecretLen
Độ dài của mã thông báo bí mật của thiết bị.
[in,out] hashBuf
Con trỏ trỏ đến vùng đệm sẽ nhận giá trị hàm băm xác minh, ở định dạng base-64. Chuỗi đầu ra sẽ có kết thúc rỗng. Vùng đệm này ít nhất phải lớn bằng kDeviceCredentialHashLength + 1.
[in] hashBufSize
Kích thước tính bằng byte của vùng đệm mà hashBuf trỏ đến.
Giá trị trả về
WEAVE_NO_ERROR
Nếu phương thức này thành công.
WEAVE_ERROR_INVALID_STRING_LENGTH
Nếu một trong các giá trị đầu vào quá dài (> 65535).
WEAVE_ERROR_BUFFER_TOO_SMALL
Nếu vùng đệm đã cung cấp quá nhỏ nên không thể chứa giá trị hàm băm đã tạo.

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
)

Tạo hàm băm xác minh (ở định dạng base-64) cho một tập hợp thông tin cấp phép Weave nhất định.

Thông tin chi tiết
Tham số
[in] nodeId
Mã nút Weave của thiết bị.
[in] weaveCert
Con trỏ trỏ đến vùng đệm chứa chứng chỉ thiết bị Weave ở định dạng base-64.
[in] weaveCertLen
Độ dài của giá trị chứng chỉ mà weaveCert trỏ đến.
[in] weavePrivKey
Con trỏ trỏ đến vùng đệm chứa khoá riêng tư của thiết bị Weave ở định dạng base-64.
[in] weavePrivKeyLen
Độ dài của giá trị khoá riêng tư được chỉ ra bởi weavePrivKey.
[in] pairingCode
Con trỏ trỏ đến vùng đệm chứa mã ghép nối thiết bị.
[in] pairingCodeLen
Độ dài của giá trị mã ghép nối được trỏ đến bởi matchingCode.
[in,out] hashBuf
Con trỏ trỏ đến vùng đệm sẽ nhận giá trị hàm băm xác minh, ở định dạng base-64. Chuỗi đầu ra sẽ có kết thúc rỗng. Vùng đệm này ít nhất phải lớn bằng kWeaveProvideingHashLength + 1.
[in] hashBufSize
Kích thước tính bằng byte của vùng đệm mà hashBuf trỏ đến.
Giá trị trả về
WEAVE_NO_ERROR
Nếu phương thức này thành công.
WEAVE_ERROR_INVALID_STRING_LENGTH
Nếu một trong các giá trị đầu vào quá dài (> 65535).
WEAVE_ERROR_BUFFER_TOO_SMALL
Nếu vùng đệm đã cung cấp quá nhỏ nên không thể chứa giá trị hàm băm đã tạo.

OIDToWeaveCurveId

uint32_t OIDToWeaveCurveId(
  ASN1::OID curveOID
)

PackCertTime

NL_DLL_EXPORT WEAVE_ERROR PackCertTime(
  const ASN1UniversalTime & time,
  uint32_t & packedTime
)

Chuyển đổi ngày/giờ của chứng chỉ (ở dạng cấu trúc giờ toàn cầu ASN.1) thành ngày/giờ của chứng chỉ được đóng gói.

Ngày/giờ của chứng chỉ được đóng gói cung cấp cách biểu diễn ngắn gọn cho các giá trị thời gian trong chứng chỉ (notBefore và notAfter) mà không yêu cầu diễn giải toán học đầy đủ trên lịch.

Ngày/giờ của chứng chỉ được đóng gói chứa các trường ngày/giờ theo lịch. năm, tháng, ngày, giờ, phút, gói thứ hai thành một số nguyên không dấu. Biểu diễn bit được sắp xếp sao cho phép so sánh thứ tự của các giá trị ngày/giờ được đóng gói tương ứng với thứ tự tự nhiên của thời gian tương ứng. Để giảm kích thước của chúng, ngày/giờ chứng chỉ được đóng gói được giới hạn để đại diện cho các lần vào hoặc sau 2000/01/01 00:00:00. Khi được đặt trong một số nguyên 32 bit chưa ký, ngày/giờ của chứng chỉ được đóng gói có thể biểu thị thời gian lên đến năm 2133.

Thông tin chi tiết
Tham số
time
Ngày/giờ theo lịch sẽ được chuyển đổi.
packedTime
Tham chiếu đến một số nguyên sẽ nhận được ngày/giờ được đóng gói.
Giá trị trả về
WEAVE_NO_ERROR
Nếu thời gian nhập được chuyển đổi thành công.
ASN1_ERROR_UNSUPPORTED_ENCODING
Nếu thời gian nhập chứa giá trị năm không thể biểu diễn bằng giá trị thời gian chứng chỉ được đóng gói.

PackedCertDateToTime

NL_DLL_EXPORT uint32_t PackedCertDateToTime(
  uint16_t packedDate
)

Chuyển đổi ngày chứng chỉ được đóng gói thành ngày/giờ của chứng chỉ được đóng gói tương ứng, trong đó phần thời gian của giá trị được đặt thành 00:00:00.

Thông tin chi tiết
Tham số
packedDate
Ngày chứng chỉ được đóng gói sẽ được chuyển đổi.
Trả về
Ngày/giờ của chứng chỉ gói tương ứng.

PackedCertTimeToDate

NL_DLL_EXPORT uint16_t PackedCertTimeToDate(
  uint32_t packedTime
)

Chuyển đổi ngày/giờ của chứng chỉ được đóng gói thành ngày/giờ của chứng chỉ được đóng gói.

Ngày chứng chỉ được đóng gói chứa các trường ngày trong lịch, năm, ngày được đóng gói thành một số nguyên chưa ký. Các bit được sắp xếp sao cho phép so sánh thứ tự của các giá trị ngày được đóng gói tương ứng với thứ tự tự nhiên của các ngày tương ứng. Để giảm kích thước của chúng, ngày chứng chỉ đóng gói được giới hạn để đại diện cho ngày vào hoặc sau ngày 1/1/2000. Khi được đặt trong một số nguyên 16 bit chưa ký, ngày của chứng chỉ được đóng gói có thể đại diện cho các ngày tính đến năm 2176.

Thông tin chi tiết
Tham số
packedTime
Ngày/giờ của chứng chỉ được đóng gói sẽ được chuyển đổi.
Trả về
Ngày chứng chỉ gói tương ứng.

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
)

PrintCertReference

WEAVE_ERROR PrintCertReference(
  FILE *out,
  TLVReader & reader,
  uint16_t indent
)

PrintCertType

void PrintCertType(
  FILE *out,
  uint8_t certType
)

PrintCertValidationResults

NL_DLL_EXPORT void PrintCertValidationResults(
  FILE *out,
  const WeaveCertificateSet & certSet,
  const ValidationContext & validContext,
  uint16_t indent
)

PrintECDSASignature

WEAVE_ERROR PrintECDSASignature(
  FILE *out,
  TLVReader & reader,
  uint16_t indent
)

PrintHexField

void PrintHexField(
  FILE *out,
  const char *name,
  uint16_t indent,
  uint16_t count,
  const uint8_t *data
)

PrintPackedDate

void PrintPackedDate(
  FILE *out,
  uint16_t t
)

PrintPackedTime

void PrintPackedTime(
  FILE *out,
  uint32_t t
)

PrintWeaveDN

void PrintWeaveDN(
  FILE *out,
  const WeaveDN & dn
)

PrintWeaveDN

WEAVE_ERROR PrintWeaveDN(
  FILE *out,
  TLVReader & reader
)

PrintWeaveSignature

WEAVE_ERROR PrintWeaveSignature(
  FILE *out,
  TLVReader & reader,
  uint16_t indent
)

SecondsSinceEpochToPackedCertTime

NL_DLL_EXPORT uint32_t SecondsSinceEpochToPackedCertTime(
  uint32_t secondsSinceEpoch
)

Chuyển đổi số giây kể từ 1970-01-01 00:00:00 UTC thành ngày/giờ chứng chỉ được đóng gói.

Thông tin chi tiết
Tham số
secondsSinceEpoch
Số giây kể từ 00:00:00 giờ UTC ngày 1 tháng 1 năm 1970. Lưu ý: giá trị này tương thích với các giá trị dương của giá trị time_t POSIX, đến năm 2105.
Trả về
Ngày/giờ của chứng chỉ gói tương ứng.

TranslateOpenSSLError

WEAVE_ERROR TranslateOpenSSLError(
  WEAVE_ERROR defaultErr
)

UnpackCertTime

NL_DLL_EXPORT WEAVE_ERROR UnpackCertTime(
  uint32_t packedTime,
  ASN1UniversalTime & time
)

Giải nén ngày/giờ của chứng chỉ được đóng gói vào cấu trúc thời gian toàn cầu ASN.1.

Thông tin chi tiết
Tham số
packedTime
Thời gian chứng chỉ được đóng gói cần được giải nén.
time
Thông tin tham chiếu đến cấu trúc ASN1UniversalTime để nhận ngày/giờ đã giải nén.
Giá trị trả về
WEAVE_NO_ERROR
Nếu thời gian nhập được giải nén thành công.

VerifyWeaveSignature

NL_DLL_EXPORT WEAVE_ERROR VerifyWeaveSignature(
  const uint8_t *msgHash,
  uint8_t msgHashLen,
  const uint8_t *sig,
  uint16_t sigLen,
  WeaveCertificateSet & certSet,
  ValidationContext & certValidContext
)

VerifyWeaveSignature

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
)