Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func UuidOrGuid ¶
func UuidOrGuid(data []byte)
Types ¶
type CertFeatures ¶
func (*CertFeatures) Append ¶
func (c *CertFeatures) Append(data []byte) []byte
func (*CertFeatures) New ¶
func (c *CertFeatures) New(Type uint32)
type CertSignature ¶
type CertSignature struct {
SignatureType uint16
SignatureLength uint16
// The actual signature bytes
Signature []byte
IssuerLength uint32
// The public key of the issuer that signed this certificate
IssuerKey []byte
}
func (*CertSignature) New ¶
func (c *CertSignature) New(signature, modelKey []byte) error
type Certificate ¶
type Certificate struct {
Magic [4]byte // 0:4
Version uint32 // 4:8
Length uint32 // 8:12
LengthToSignature uint32 // 12:16
Info *CertificateInfo // 0x1
Security *Ftlv // 0x11
Features *Ftlv // 0x5
KeyInfo *KeyInfo // 0x6
Manufacturer *Ftlv // 0x7
Signature *CertSignature // 0x8
}
func (*Certificate) Append ¶
func (c *Certificate) Append(data []byte) []byte
type CertificateInfo ¶
type CertificateInfo struct {
CertificateId [16]byte
SecurityLevel uint32
Flags uint32
InfoType uint32
Digest [32]byte
Expiry uint32
ClientId [16]byte // Client ID (can be used for license binding)
}
func (*CertificateInfo) New ¶
func (c *CertificateInfo) New(securityLevel uint32, digest []byte)
type Chain ¶
type Chain struct {
Magic [4]byte
Version uint32
Length uint32
Flags uint32
CertCount uint32
Certificates []Certificate
}
type ContentKey ¶
type KeyData ¶
type KeyData struct {
KeyType uint16
Length uint16
Flags uint32
PublicKey [64]byte // ECDSA P256 public key (X and Y coordinates)
Usage CertFeatures
}
type License ¶
type License struct {
Magic [4]byte // 0
Offset uint16 // 1
Version uint16 // 2
RightsId [16]byte // 3
ContentKey *ContentKey // 4.9.10
EccKey *EccKey // 4.9.42
AuxKeys *AuxKeys // 4.9.81
Signature *LicenseSignature // 4.11
}
type LicenseSignature ¶
Click to show internal directories.
Click to hide internal directories.