nl::Weave::Profiller::Güvenlik::Sertifika Temel Hazırlığı:WeaveNodeMfrAttestTemsilci

Bu, soyut bir sınıftır.

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

Weave düğüm üreticisi onayı sırasında platforma özgü işlemlerin yetkilendirildiği soyut arayüz.

Özet

Herkese açık işlevler

EncodeMAInfo(TLVWriter & writer)=0
virtual WEAVE_ERROR
Yerel düğüm için Weave üretici onay bilgilerini kodlama.
GenerateAndEncodeMASig(const uint8_t *data, uint16_t dataLen, TLVWriter & writer)=0
virtual WEAVE_ERROR
Yerel düğüm üreticisi özel anahtarını kullanarak üretici onayı imzası oluşturun ve kodlayın.

Herkese açık işlevler

KodlamaBilgisi

virtual WEAVE_ERROR EncodeMAInfo(
  TLVWriter & writer
)=0

Yerel düğüm için Weave üretici onay bilgilerini kodlama.

Uygulama çağrıldığında, düğümün üretici onayı için kullanılan bilgileri içeren bir yapı yazmalıdır. Üretici onay bilgileri, Güvenlik Profile özel etiketi kullanılarak, sağlanan TLV yazarına TLV yapısı biçiminde yazılmalıdır.

GenerateAndEncodeMASig

virtual WEAVE_ERROR GenerateAndEncodeMASig(
  const uint8_t *data,
  uint16_t dataLen,
  TLVWriter & writer
)=0

Yerel düğüm üreticisi özel anahtarını kullanarak üretici onayı imzası oluşturun ve kodlayın.

Uygulamalar çağrıldığında, düğümün üretici onay özel anahtarını kullanarak belirli bir hash değerinde imza hesaplamalıdır.

Öncelikle, üretici onay imza algoritmasını tanımlayan numaralandırılmış değer, sağlanan TLV yazarına aktarılmamış bir tam sayı biçiminde ve şu etiket kullanılarak yazılmalıdır: kTag_GetCertReqMsg_MfrAttestSigAlgo Yasal değerler kOID_SigAlgo_* sabit ad alanından alınır.

Oluşturulan imza, daha sonra şu etiketlerden biri kullanılarak sağlanan TLV yazarına ECDSASignature, RSASignature, HMACSignature veya özel bir yapıda yazılmalıdır: kTag_GetCertReqMsg_MfrAttestSig_ECDSA kTag_GetCertReqMsg_MfrAttestSig_RSA kTag_GetCertReqMsg_customHfrMsg product specificFqMsg security specificFqMsg profile specificFQMsg

Not: Düğümün ilgili Eliptik Eğri özel anahtarının yerel bir arabellekte tutulduğu durumlarda, GenerateAndEncodeWeaveECDSASignature() yardımcı işlevi bu yöntemi uygulamak için yararlı olabilir.