nl:: Weave:: Profiles:: Security
Không gian tên này bao gồm tất cả các giao diện trong hồ sơ Bảo mật của Weave dành cho hồ sơ Weave.
Tóm tắt
Bảng liệt kê |
|
---|---|
@235
|
enum Cờ mục đích khoá chứng chỉ X.509. |
@236
|
enum Cờ sử dụng khoá chứng chỉ X.509. |
@237
|
enum Dệt cờ chứng chỉ. |
@238
|
enum Cờ giải mã chứng chỉ dệt. |
@239
|
enum Dệt 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)
|
|
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)
|
Xác định loại chung của chứng chỉ Dệt.
|
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 Weave Access Token (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 Weave Access Token (Mã truy cập Weave) và trích xuất khoá riêng tư.
|
ExtractPrivateKeyFromAccessToken(TLVReader & reader, TLVWriter & writer)
|
Đọc Weave Access Token (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ý Weave ECDSA.
|
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ị hoạt động của 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ã truy cập vào một bộ chứng chỉ Weave.
|
LoadAccessTokenCerts(TLVReader & reader, WeaveCertificateSet & certSet, uint16_t decodeFlags, WeaveCertificateData *& accessTokenCert)
|
Tải các chứng chỉ trong mã truy cập vào một bộ 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ị Thermostat 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 nhóm thông tin cấp phép nhất định của Weave.
|
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ờ chứng chỉ đóng gói.
|
PackedCertDateToTime(uint16_t packedDate)
|
NL_DLL_EXPORT uint32_t
Chuyển đổi ngày của chứng chỉ đóng gói thành ngày/giờ đóng gói tương ứng của chứng chỉ, trong đó phần thời gian của giá trị được thiết lập là 00:00:00.
|
PackedCertTimeToDate(uint32_t packedTime)
|
NL_DLL_EXPORT uint16_t
Chuyển đổi ngày/giờ của chứng chỉ đóng gói thành ngày/giờ của chứng chỉ đó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ỉ đó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ỉ đã đó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:: |
|
nl:: |
|
nl:: |
|
nl:: |
|
nl:: |
|
nl:: |
|
nl:: |
Tạo một WeaveSignature bằng khoá riêng tư trong bộ nhớ. |
nl:: |
Cung cấp chức năng chung để tạo chữ ký Weave. |
Không gian tên |
|
---|---|
nl:: |
Không gian tên này bao gồm tất cả các giao diện trong thư viện khoá ứng dụng Weave trong hồ sơ bảo mật của Weave. |
nl:: |
Không gian tên này bao gồm tất cả các giao diện trong giao diện Weave dành cho giao thức Thiết lập phiên xác thực chứng chỉ (CASE) trong hồ sơ bảo mật của Weave. |
nl:: |
Không gian tên này bao gồm tất cả các giao diện trong giao thức Weave dành cho giao thức Cấp phép chứng chỉ Weave trong hồ sơ bảo mật của Weave. |
nl:: |
Không gian tên này bao gồm tất cả các giao diện trong Weave dành cho giao thức xuất khoá trong hồ sơ bảo mật của Weave. |
nl:: |
Không gian tên này bao gồm tất cả các giao diện trong giao diện Weave dành cho giao thức Thiết lập phiên xác thực mật khẩu (PASE) trong hồ sơ bảo mật của Weave. |
nl:: |
Không gian tên này bao gồm tất cả các giao diện trong thư viện mật mã của Weave trong hồ sơ bảo mật của Weave. |
nl:: |
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 mã thông báo (Take) trong hồ sơ Bảo mật của Weave. |
Bảng liệt kê
@235
@235
Cờ mục đích khoá chứng chỉ X.509.
@236
@236
Cờ sử dụng khoá chứng chỉ X.509.
@237
@237
Dệt cờ chứng chỉ.
Chứa thông tin về chứng chỉ đã được tải vào đối tượng WeaveCertSet.
@238
@238
Cờ giải mã chứng chỉ dệt.
Chứa thông tin chỉ định cách giải mã chứng chỉ.
@239
@239
Dệt 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
@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 quá trình triển khai phải tính toán chữ ký trên giá trị băm đã cho bằng cách sử dụng khoá riêng tư của nút.
Thông tin chi tiết | |||||||
---|---|---|---|---|---|---|---|
Các tham số |
|
||||||
Giá trị trả về |
|
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ã 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ã thông báo truy cập.
Hàm này giải mã một Mã truy cập Weave nhất định và mã hoá TLV cho cấu trúc Thông tin chứng chỉ CASE của Weave. Trường Entitycertification trong cấu trúc CertificateInfo được đặt thành chứng chỉ mã thông báo truy cập và trường LinkedChứ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 | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Các tham số |
|
||||||||||
Giá trị trả về |
|
CASECertInfoFromAccessToken
WEAVE_ERROR CASECertInfoFromAccessToken( TLVReader & reader, TLVWriter & writer )
Đọc Mã truy cập Weave và ghi cấu trúc Thông tin chứng chỉ CASE TLV chứa các chứng chỉ từ mã thông báo truy cập.
Hàm này đọc Mã 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ỉ CASE của Weave vào TLVWriter. Trường Entitycertification trong cấu trúc CertificateInfo được đặt thành chứng chỉ mã thông báo truy cập và trường LinkedChứ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 | |||||||||
---|---|---|---|---|---|---|---|---|---|
Các tham số |
|
||||||||
Giá trị trả về |
|
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ỉ Dệt.
Chức năng này thực hiện đánh giá chung về một loại chứng chỉ dựa trên cấu trúc của tên phân biệt chủ thể và các phần mở rộng hiện có. Các ứng dụng được phép ghi đè bài đánh giá này bằng cách đặt certification.CertType thành một giá trị khác, bao gồm cả giá trị do ứng dụng xác định.
Nói chung, các ứng dụng sẽ chỉ tin cậy 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 nhất định. Do đó, những thay đổi đối với thuật toán này có thể có ảnh hưởng RẤT QUAN TRỌNG và TIỀM NĂNG đối với khả năng bảo mật tổng thể của hệ thống. Bạn không nên thực hiện các thay đổi này khi chưa hiểu rõ các hệ quả.
LƯU Ý: Bạn không thể phân biệt chứng chỉ mã thông báo truy cập chỉ bằng cấu trúc. Do đó, hàm này không bao giờ đặt certification.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 Weave Access Token (Mã truy cập Weave) và trích xuất Chứng chỉ mã truy cập.
Hàm này đọc Mã truy cập Weave từ TLVReader và ghi Chứng chỉ Mã truy cập vào TLVWriter được chỉ định.
Thông tin chi tiết | |||||||||
---|---|---|---|---|---|---|---|---|---|
Các tham số |
|
||||||||
Giá trị trả về |
|
ExtractPrivateKeyFromAccessToken
WEAVE_ERROR ExtractPrivateKeyFromAccessToken( const uint8_t *accessToken, uint32_t accessTokenLen, uint8_t *privKeyBuf, uint16_t privKeyBufSize, uint16_t & privKeyLen )
Đọc Weave Access Token (Mã truy cập Weave) và trích xuất khoá riêng tư.
Hàm này giải mã một Weave Access Token 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 | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Các tham số |
|
||||||||||
Giá trị trả về |
|
ExtractPrivateKeyFromAccessToken
WEAVE_ERROR ExtractPrivateKeyFromAccessToken( TLVReader & reader, TLVWriter & writer )
Đọc Weave Access Token (Mã truy cập Weave) và trích xuất khoá riêng tư.
Hàm này giải mã một Weave Access Token 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 | |||||||||
---|---|---|---|---|---|---|---|---|---|
Các tham số |
|
||||||||
Giá trị trả về |
|
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ý Weave ECDSA.
Tính toán chữ ký ECDSA bằng cách sử dụng một khoá riêng tư nhất định và hàm băm tin nhắn, đồng thời viết chữ ký dưới dạng cấu trúc Weave ECDSASignature cho người ghi TLV được chỉ định với thẻ đã cho.
Thông tin chi tiết | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Các tham số |
|
||||||||||||
Giá trị trả về |
|
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ị hoạt động của 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 | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Các tham số |
|
||||||||||||
Giá trị trả về |
|
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ã truy cập vào một bộ 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 bộ chứng chỉ Weave đã chỉ định. Nếu mã truy cập chứa một hoặc nhiều chứng chỉ có liên quan, các mã này cũng được tải vào bộ chứng chỉ.
Thông tin chi tiết | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Các tham số |
|
||||||||||
Giá trị trả về |
|
LoadAccessTokenCerts
WEAVE_ERROR LoadAccessTokenCerts( TLVReader & reader, WeaveCertificateSet & certSet, uint16_t decodeFlags, WeaveCertificateData *& accessTokenCert )
Tải các chứng chỉ trong mã truy cập vào một bộ chứng chỉ Weave.
Hàm này đọc mã thông báo truy cập Weave từ một TLVReader nhất định và tải chứng chỉ mã truy cập vào đối tượng bộ chứng chỉ Weave được chỉ định. Nếu mã truy cập chứa một hoặc nhiều chứng chỉ có liên quan, các mã này cũng được tải vào bộ chứng chỉ.
Thông tin chi tiết | |||||||||
---|---|---|---|---|---|---|---|---|---|
Các tham số |
|
||||||||
Giá trị trả về |
|
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ị Thermostat nhất định.
Thông tin chi tiết | |||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Các tham số |
|
||||||||||||||||
Giá trị trả về |
|
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 nhóm thông tin cấp phép nhất định của Weave.
Thông tin chi tiết | |||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Các tham số |
|
||||||||||||||||||
Giá trị trả về |
|
Mã OIDToWeaveCurve
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ờ chứng chỉ đóng gói.
Ngày/giờ của chứng chỉ được đóng gói cung cấp cách trình bày ngắn gọn cho các giá trị thời gian trong một chứng chỉ (không phải Trước và Sau) mà không cần diễn giải toàn bộ lịch biểu.
Ngày/giờ của chứng chỉ đóng gói chứa các trường ngày/giờ theo lịch, chẳng hạn như năm, tháng, ngày, giờ, phút, giây được đóng gói thành một số nguyên chưa ký. Biểu diễn bit được tổ chức sao cho những so sánh thứ tự của các giá trị ngày/giờ đóng gói tương ứng với thứ tự tự nhiên của các thời gian tương ứng. Để giảm kích thước của chúng, ngày/giờ của giấy chứng nhận đóng gói được giới hạn trong hoặc sau ngày 01/01/2000 00:00:00. Khi nằm trong số nguyên 32 bit chưa ký, ngày/giờ của chứng chỉ đóng gói có thể biểu thị thời gian cho đến năm 2133.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Các tham số |
|
||||
Giá trị trả về |
|
PackedCertDateToTime
NL_DLL_EXPORT uint32_t PackedCertDateToTime( uint16_t packedDate )
Chuyển đổi ngày của chứng chỉ đóng gói thành ngày/giờ đóng gói tương ứng của chứng chỉ, trong đó phần thời gian của giá trị được thiết lập là 00:00:00.
Thông tin chi tiết | |||
---|---|---|---|
Các tham số |
|
||
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ỉ đóng gói thành ngày/giờ của chứng chỉ đóng gói.
Ngày của chứng chỉ được đóng gói chứa các trường ngày tháng, năm, ngày theo lịch đượ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 đó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 nhận đóng gói được giới hạn trong hoặc sau ngày 2000/01/01. Khi được chứa trong 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 ngày lên đến năm 2176.
Thông tin chi tiết | |||
---|---|---|---|
Các tham số |
|
||
Trả về |
Ngày của 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ỉ đóng gói.
Thông tin chi tiết | |||
---|---|---|---|
Các tham số |
|
||
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ỉ đã đóng gói vào cấu trúc thời gian toàn cầu ASN.1.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Các tham số |
|
||||
Giá trị trả về |
|
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 )