Google cam kết thúc đẩy công bằng chủng tộc cho Cộng đồng người da đen. Xem cách thực hiện.
Trang này được dịch bởi Cloud Translation API.
Switch to English

nl :: Dệt :: Tiền điện tử

Không gian tên này bao gồm tất cả các giao diện trong Weave để hỗ trợ mật mã được chia sẻ.

Tóm lược

Bảng kê

X963EncodedPointFormat enum

Typedefs

AES128CTRDRBG typedef
AES128CTRMode typedef
AES256CTRMode typedef
EntropyFunct )(uint8_t *buf, size_t bufSize) typedef
int(*
Chữ ký của một hàm được sử dụng để thu thập dữ liệu ngẫu nhiên từ một nguồn entropy.
HKDFSHA1 typedef
HKDFSHA256 typedef
HMACSHA1 typedef
HMACSHA256 typedef

Chức năng

ClearSecretData (uint8_t *buf, uint32_t len)
NL_DLL_EXPORT void
Xóa các byte len đầu tiên của buf vùng nhớ.
ConstantTimeCompare (const uint8_t *buf1, const uint8_t *buf2, uint16_t len)
bool
So sánh các byte len đầu tiên của vùng nhớ buf1 và vùng nhớ buf2 .
DecodeBIGNUMValueLE (BIGNUM & val, uint16_t size, const uint8_t *& p)
DecodeECDSASignature (const EncodedECDSASignature & encodedSig, ECDSA_SIG *& sig)
DecodeECKey (OID curveOID, const EncodedECPrivateKey *encodedPrivKey, const EncodedECPublicKey *encodedPubKey, EC_KEY *& ecKey)
NL_DLL_EXPORT WEAVE_ERROR
DecodeX962ECPoint (const uint8_t *encodedPoint, uint16_t encodedPointLen, EC_GROUP *group, EC_POINT *& point)
NL_DLL_EXPORT WEAVE_ERROR
DecodeX962ECPoint (const uint8_t *encodedPoint, uint16_t encodedPointLen, BIGNUM *& x, BIGNUM *& y)
ECDHComputeSharedSecret (OID curveOID, const EC_GROUP *ecGroup, const EC_POINT *pubKeyPoint, const BIGNUM *privKeyBN, uint8_t *sharedSecretBuf, uint16_t sharedSecretBufSize, uint16_t & sharedSecretLen)
NL_DLL_EXPORT WEAVE_ERROR
ECDHComputeSharedSecret (OID curveOID, const EncodedECPublicKey & encodedPubKey, const EncodedECPrivateKey & encodedPrivKey, uint8_t *sharedSecretBuf, uint16_t sharedSecretBufSize, uint16_t & sharedSecretLen)
ECDSASigToFixedLenSig (OID curveOID, const ECDSA_SIG *ecSig, uint8_t *fixedLenSig)
ECDSA_SIG_get0 (const ECDSA_SIG *sig, const BIGNUM **pr, const BIGNUM **ps)
void
ECDSA_SIG_set0 (ECDSA_SIG *sig, BIGNUM *r, BIGNUM *s)
int
EncodeBIGNUMValueLE (const BIGNUM & val, uint16_t size, uint8_t *& p)
EncodeECDSASignature (const ECDSA_SIG *sig, EncodedECDSASignature & encodedSig)
EncodeX962ECPoint (OID curveOID, EC_GROUP *ecGroup, const EC_POINT *point, uint8_t *buf, uint16_t bufSize, uint16_t & encodedPointLen)
NL_DLL_EXPORT WEAVE_ERROR
FixedLenSigToECDSASig (OID curveOID, const uint8_t *fixedLenSig, ECDSA_SIG *& ecSig)
GenerateAndEncodeWeaveHMACSignature (OID sigAlgoOID,TLVWriter & writer, uint64_t tag, const uint8_t *data, uint16_t dataLen, const uint8_t *key, uint16_t keyLen)
Tạo và mã hóa chữ ký HMAC của Weave.
GenerateAndEncodeWeaveRSASignature (OID sigAlgoOID,TLVWriter & writer, uint64_t tag, const uint8_t *hash, uint8_t hashLen, const uint8_t *keyDER, uint16_t keyDERLen)
Tạo và mã hóa chữ ký RSA của Weave.
GenerateECDHKey (OID curveOID, EncodedECPublicKey & encodedPubKey, EncodedECPrivateKey & encodedPrivKey)
GenerateECDSASignature (OID curveOID, const uint8_t *msgHash, uint8_t msgHashLen, const EncodedECPrivateKey & encodedPrivKey, EncodedECDSASignature & encodedSig)
GenerateECDSASignature (OID curveOID, const uint8_t *msgHash, uint8_t msgHashLen, const EncodedECPrivateKey & encodedPrivKey, uint8_t *fixedLenSig)
GetCurveG (OID curveOID, EncodedECPublicKey & encodedPubKey)
GetCurveSize (const OID curveOID, const EC_GROUP *ecGroup)
int
GetCurveSize (const OID curveOID)
int
Nhận kích thước Đường cong Elliptic (tính bằng byte).
GetECGroupForCurve (OID curveOID, EC_GROUP *& ecGroup)
NL_DLL_EXPORT WEAVE_ERROR
ReverseBytes (uint8_t *buf, size_t len)
void
ShaNIDFromSigAlgoOID (OID sigAlgoOID)
int
VerifyECDSASignature (OID curveOID, const uint8_t *msgHash, uint8_t msgHashLen, const EncodedECDSASignature & encodedSig, const EncodedECPublicKey & encodedPubKey)
VerifyECDSASignature (OID curveOID, const uint8_t *msgHash, uint8_t msgHashLen, const uint8_t *fixedLenSig, const EncodedECPublicKey & encodedPubKey)
VerifyHMACSignature (OID sigAlgoOID, const uint8_t *data, uint16_t dataLen, const EncodedHMACSignature & sig, const uint8_t *key, uint16_t keyLen)
Xác minh chữ ký HMAC của Weave.
VerifyRSASignature (OID sigAlgoOID, const uint8_t *hash, uint8_t hashLen, const EncodedRSASignature & sig, const uint8_t *certDER, uint16_t certDERLen)
Xác minh chữ ký RSA của Weave.

Các lớp học

nl :: Weave :: Crypto :: CTRMode
nl :: Weave :: Crypto :: CTR_DRBG
nl :: Weave :: Crypto :: EncodedECDSASignature
nl :: Weave :: Crypto :: EncodedECPrivateKey
nl :: Weave :: Crypto :: EncodedECPublicKey
nl :: Weave :: Crypto :: EncodedHMACSignature
nl :: Weave :: Crypto :: EncodedRSAKey
nl :: Weave :: Crypto :: EncodedRSASignature
nl :: Weave :: Crypto :: HKDF
nl :: Weave :: Crypto :: HKDFSHA1Or256
nl :: Weave :: Crypto :: HMAC

Bảng kê

X963EncodedPointFormat

 X963EncodedPointFormat

Typedefs

AES128CTRDRBG

CTR_DRBG< Platform::Security::AES128BlockCipherEnc > AES128CTRDRBG

AES128CTRMode

CTRMode< Platform::Security::AES128BlockCipherEnc > AES128CTRMode

AES256CTRMode

CTRMode< Platform::Security::AES256BlockCipherEnc > AES256CTRMode

EntropyFunct

int(* EntropyFunct)(uint8_t *buf, size_t bufSize)

Chữ ký của một hàm được sử dụng để thu thập dữ liệu ngẫu nhiên từ một nguồn entropy.

HKDFSHA1

HKDF< Platform::Security::SHA1 > HKDFSHA1

HKDFSHA256

HKDF< Platform::Security::SHA256 > HKDFSHA256

HMACSHA1

HMAC< Platform::Security::SHA1 > HMACSHA1

HMACSHA256

HMAC< Platform::Security::SHA256 > HMACSHA256

Chức năng

ClearSecretData

NL_DLL_EXPORT void ClearSecretData(
  uint8_t *buf,
  uint32_t len
)

Xóa các byte len đầu tiên của buf vùng nhớ.

Trong cách triển khai này, byte len đầu tiên của buf vùng nhớ được lấp đầy bởi các số không.

Chi tiết
Thông số
[in] buf
Con trỏ tới bộ đệm bộ nhớ chứa dữ liệu bí mật cần được xóa.
[in] len
Chỉ định kích thước dữ liệu bí mật theo byte.

ConstantTimeCompare

bool ConstantTimeCompare(
  const uint8_t *buf1,
  const uint8_t *buf2,
  uint16_t len
)

So sánh các byte len đầu tiên của vùng nhớ buf1 và vùng nhớ buf2 .

Thời gian thực hiện bởi chức năng này không phụ thuộc vào dữ liệu trong vùng nhớ buf1buf2 .

Chi tiết
Thông số
[in] buf1
Con trỏ tới một khối bộ nhớ.
[in] buf2
Con trỏ tới một khối bộ nhớ.
[in] len
Kích thước vùng nhớ cần so sánh tính bằng byte.
Giá trị trả lại
true
nếu byte len đầu tiên của vùng nhớ buf1buf2 bằng nhau.
false
nếu không thì.

DecodeBIGNUMValueLE

WEAVE_ERROR DecodeBIGNUMValueLE(
  BIGNUM & val,
  uint16_t size,
  const uint8_t *& p
)

DecodeECDSASignature

WEAVE_ERROR DecodeECDSASignature(
  const EncodedECDSASignature & encodedSig,
  ECDSA_SIG *& sig
)

DecodeECKey

NL_DLL_EXPORT WEAVE_ERROR DecodeECKey(
  OID curveOID,
  const EncodedECPrivateKey *encodedPrivKey,
  const EncodedECPublicKey *encodedPubKey,
  EC_KEY *& ecKey
)

DecodeX962ECPoint

NL_DLL_EXPORT WEAVE_ERROR DecodeX962ECPoint(
  const uint8_t *encodedPoint,
  uint16_t encodedPointLen,
  EC_GROUP *group,
  EC_POINT *& point
)

DecodeX962ECPoint

WEAVE_ERROR DecodeX962ECPoint(
  const uint8_t *encodedPoint,
  uint16_t encodedPointLen,
  BIGNUM *& x,
  BIGNUM *& y
)

ECDHComputeSharedSecret

NL_DLL_EXPORT WEAVE_ERROR ECDHComputeSharedSecret(
  OID curveOID,
  const EC_GROUP *ecGroup,
  const EC_POINT *pubKeyPoint,
  const BIGNUM *privKeyBN,
  uint8_t *sharedSecretBuf,
  uint16_t sharedSecretBufSize,
  uint16_t & sharedSecretLen
)

ECDHComputeSharedSecret

WEAVE_ERROR ECDHComputeSharedSecret(
  OID curveOID,
  const EncodedECPublicKey & encodedPubKey,
  const EncodedECPrivateKey & encodedPrivKey,
  uint8_t *sharedSecretBuf,
  uint16_t sharedSecretBufSize,
  uint16_t & sharedSecretLen
)

ECDSASigToFixedLenSig

WEAVE_ERROR ECDSASigToFixedLenSig(
  OID curveOID,
  const ECDSA_SIG *ecSig,
  uint8_t *fixedLenSig
)

ECDSA_SIG_get0

void ECDSA_SIG_get0(
  const ECDSA_SIG *sig,
  const BIGNUM **pr,
  const BIGNUM **ps
)

ECDSA_SIG_set0

int ECDSA_SIG_set0(
  ECDSA_SIG *sig,
  BIGNUM *r,
  BIGNUM *s
)

EncodeBIGNUMValueLE

WEAVE_ERROR EncodeBIGNUMValueLE(
  const BIGNUM & val,
  uint16_t size,
  uint8_t *& p
)

EncodeECDSASignature

WEAVE_ERROR EncodeECDSASignature(
  const ECDSA_SIG *sig,
  EncodedECDSASignature & encodedSig
)

EncodeX962ECPoint

NL_DLL_EXPORT WEAVE_ERROR EncodeX962ECPoint(
  OID curveOID,
  EC_GROUP *ecGroup,
  const EC_POINT *point,
  uint8_t *buf,
  uint16_t bufSize,
  uint16_t & encodedPointLen
)

FixedLenSigToECDSASig

WEAVE_ERROR FixedLenSigToECDSASig(
  OID curveOID,
  const uint8_t *fixedLenSig,
  ECDSA_SIG *& ecSig
)

GenerateAndEncodeWeaveHMACSignature

WEAVE_ERROR GenerateAndEncodeWeaveHMACSignature(
  OID sigAlgoOID,
  TLVWriter & writer,
  uint64_t tag,
  const uint8_t *data,
  uint16_t dataLen,
  const uint8_t *key,
  uint16_t keyLen
)

Tạo và mã hóa chữ ký HMAC của Weave.

Tính toán chữ ký HMAC cho một dữ liệu nhất định bằng cách sử dụng khóa bí mật và viết chữ ký dưới dạng cấu trúc Weave HMACSignature cho người viết TLV được chỉ định với thẻ đã cho.

Chi tiết
Thông số
[in] sigAlgoOID
Thuật toán OID được sử dụng để tạo chữ ký HMAC .
[in] writer
Đối tượng TLVWriter mà chữ ký được mã hóa sẽ được viết.
[in] tag
Thẻ TLV được liên kết với cấu trúc chữ ký được mã hóa.
[in] data
Một bộ đệm chứa dữ liệu được ký.
[in] dataLen
Độ dài tính bằng byte của dữ liệu.
[in] key
Bộ đệm chứa khóa bí mật được sử dụng để tạo chữ ký HMAC .
[in] keyLen
Độ dài tính bằng byte của khóa bí mật.
Giá trị trả lại
WEAVE_NO_ERROR
Nếu hoạt động thành công.
other
Các mã lỗi Weave khác liên quan đến mã hóa chữ ký.

GenerateAndEncodeWeaveRSASignature

WEAVE_ERROR GenerateAndEncodeWeaveRSASignature(
  OID sigAlgoOID,
  TLVWriter & writer,
  uint64_t tag,
  const uint8_t *hash,
  uint8_t hashLen,
  const uint8_t *keyDER,
  uint16_t keyDERLen
)

Tạo và mã hóa chữ ký RSA của Weave.

Tính toán chữ ký RSA bằng cách sử dụng khóa riêng RSA được mã hóa X509 nhất định và băm thông báo và viết chữ ký dưới dạng cấu trúc Weave RSASignature tới trình viết TLV được chỉ định với thẻ đã cho.

Chi tiết
Thông số
[in] sigAlgoOID
Thuật toán OID được sử dụng để tạo chữ ký RSA.
[in] writer
Đối tượng TLVWriter mà chữ ký được mã hóa sẽ được viết.
[in] tag
Thẻ TLV được liên kết với cấu trúc chữ ký được mã hóa.
[in] hash
Bộ đệm chứa băm dữ liệu được ký.
[in] hashLen
Độ dài tính bằng byte của băm dữ liệu.
[in] keyDER
Bộ đệm chứa khóa riêng được sử dụng để tạo chữ ký. Khóa cá nhân dự kiến ​​sẽ được mã hóa dưới dạng cấu trúc khóa riêng X509 RSA.
[in] keyDERLen
Độ dài tính bằng byte của khóa cá nhân được mã hóa.
Giá trị trả lại
WEAVE_NO_ERROR
Nếu hoạt động thành công.
other
Các mã lỗi Weave khác liên quan đến giải mã khóa cá nhân, tạo chữ ký hoặc mã hóa chữ ký.

GenerateECDHKey

WEAVE_ERROR GenerateECDHKey(
  OID curveOID,
  EncodedECPublicKey & encodedPubKey,
  EncodedECPrivateKey & encodedPrivKey
)

GenerateECDSASignature

WEAVE_ERROR GenerateECDSASignature(
  OID curveOID,
  const uint8_t *msgHash,
  uint8_t msgHashLen,
  const EncodedECPrivateKey & encodedPrivKey,
  EncodedECDSASignature & encodedSig
)

GenerateECDSASignature

WEAVE_ERROR GenerateECDSASignature(
  OID curveOID,
  const uint8_t *msgHash,
  uint8_t msgHashLen,
  const EncodedECPrivateKey & encodedPrivKey,
  uint8_t *fixedLenSig
)

GetCurveG

WEAVE_ERROR GetCurveG(
  OID curveOID,
  EncodedECPublicKey & encodedPubKey
)

GetCurveSize

int GetCurveSize(
  const OID curveOID,
  const EC_GROUP *ecGroup
)

GetCurveSize

int GetCurveSize(
  const OID curveOID
)

Nhận kích thước Đường cong Elliptic (tính bằng byte).

Chi tiết
Thông số
[in] curveOID
OID đường cong Elliptic được chỉ định.
Giá trị trả lại
Returns
0 nếu đường cong được chỉ địnhOID là Đường cong Elliptic không được hỗ trợ. Nếu không, trả về kích thước đường cong tính bằng byte.

GetECGroupForCurve

NL_DLL_EXPORT WEAVE_ERROR GetECGroupForCurve(
  OID curveOID,
  EC_GROUP *& ecGroup
)

ReverseBytes

void ReverseBytes(
  uint8_t *buf,
  size_t len
)

ShaNIDFromSigAlgoOID

int ShaNIDFromSigAlgoOID(
  OID sigAlgoOID
)

VerifyECDSASignature

WEAVE_ERROR VerifyECDSASignature(
  OID curveOID,
  const uint8_t *msgHash,
  uint8_t msgHashLen,
  const EncodedECDSASignature & encodedSig,
  const EncodedECPublicKey & encodedPubKey
)

VerifyECDSASignature

WEAVE_ERROR VerifyECDSASignature(
  OID curveOID,
  const uint8_t *msgHash,
  uint8_t msgHashLen,
  const uint8_t *fixedLenSig,
  const EncodedECPublicKey & encodedPubKey
)

Xác minhHMACSignature

WEAVE_ERROR VerifyHMACSignature(
  OID sigAlgoOID,
  const uint8_t *data,
  uint16_t dataLen,
  const EncodedHMACSignature & sig,
  const uint8_t *key,
  uint16_t keyLen
)

Xác minh chữ ký HMAC của Weave.

Xác minh chữ ký HMAC bằng cách sử dụng dữ liệu đã cho và khóa bí mật sẽ được sử dụng để xác minh chữ ký.

Chi tiết
Thông số
[in] sigAlgoOID
Thuật toán OID được sử dụng để tạo chữ ký HMAC .
[in] data
Một bộ đệm chứa dữ liệu được ký.
[in] dataLen
Độ dài tính bằng byte của dữ liệu.
[in] sig
Chữ ký HMAC được mã hóa để được xác minh.
[in] key
Bộ đệm chứa khóa bí mật được sử dụng để tạo chữ ký HMAC .
[in] keyLen
Độ dài tính bằng byte của khóa bí mật.
Giá trị trả lại
WEAVE_NO_ERROR
Nếu xác minh chữ ký HMAC thành công.
WEAVE_ERROR_INVALID_SIGNATURE
Nếu xác minh chữ ký HMAC không thành công.

Xác minh

WEAVE_ERROR VerifyRSASignature(
  OID sigAlgoOID,
  const uint8_t *hash,
  uint8_t hashLen,
  const EncodedRSASignature & sig,
  const uint8_t *certDER,
  uint16_t certDERLen
)

Xác minh chữ ký RSA của Weave.

Xác minh chữ ký RSA bằng cách sử dụng băm dữ liệu đã cho và chứng chỉ RSA được mã hóa X509 chứa khóa công khai sẽ được sử dụng để xác minh chữ ký.

Chi tiết
Thông số
[in] sigAlgoOID
Thuật toán OID được sử dụng để tạo chữ ký RSA.
[in] hash
Một bộ đệm chứa băm của dữ liệu được ký.
[in] hashLen
Độ dài tính bằng byte của băm dữ liệu.
[in] sig
Chữ ký RSA được mã hóa để được xác minh.
[in] certDER
Bộ đệm chứa chứng chỉ với khóa công khai được sử dụng để xác minh chữ ký. Chứng chỉ dự kiến ​​sẽ được mã hóa DER theo cấu trúc X509 RSA.
[in] certDERLen
Độ dài tính bằng byte của chứng chỉ được mã hóa.
Giá trị trả lại
WEAVE_NO_ERROR
Nếu hoạt động thành công.