MCPcopy Create free account
hub / github.com/secdev/scapy / KeyAttestationStatement

Class KeyAttestationStatement

scapy/layers/tpm.py:669–729  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

667
668
669class KeyAttestationStatement(Packet):
670 fields_desc = [
671 StrFixedLenField("Magic", b"KAST", length=4),
672 LEIntField("Version", 1),
673 LEIntEnumField("Platform", 2, _PCP_TYPE),
674 LEIntField("HeaderSize", 0),
675 LEIntField("cbIdBinding", 0),
676 LEIntField("cbKeyAttestation", 0),
677 LEIntField("cbAIKOpaque", 0),
678 MultipleTypeField(
679 [
680 (
681 PacketLenField(
682 "idBinding",
683 PCP_IDBinding20(),
684 PCP_IDBinding20,
685 length_from=lambda pkt: pkt.cbIdBinding,
686 ),
687 lambda pkt: pkt.Platform == 2,
688 )
689 ],
690 StrLenField(
691 "idBinding",
692 b"",
693 length_from=lambda pkt: pkt.cbIdBinding,
694 ),
695 ),
696 PacketLenField(
697 "keyAttestation",
698 KeyAttestation(),
699 KeyAttestation,
700 length_from=lambda pkt: pkt.cbKeyAttestation,
701 ),
702 MultipleTypeField(
703 [
704 (
705 PacketLenField(
706 "aikOpaque",
707 PCP_20_KEY_BLOB(),
708 PCP_20_KEY_BLOB,
709 length_from=lambda pkt: pkt.cbAIKOpaque,
710 ),
711 lambda pkt: pkt.Platform == 2,
712 ),
713 (
714 PacketLenField(
715 "aikOpaque",
716 PCP_KEY_BLOB(),
717 PCP_KEY_BLOB,
718 length_from=lambda pkt: pkt.cbAIKOpaque,
719 ),
720 lambda pkt: pkt.Platform == 1,
721 ),
722 ],
723 StrLenField(
724 "aikOpaque",
725 b"",
726 length_from=lambda pkt: pkt.cbAIKOpaque,

Callers 1

Calls 10

StrFixedLenFieldClass · 0.90
LEIntFieldClass · 0.90
LEIntEnumFieldClass · 0.90
MultipleTypeFieldClass · 0.90
PacketLenFieldClass · 0.90
StrLenFieldClass · 0.90
PCP_IDBinding20Class · 0.85
KeyAttestationClass · 0.85
PCP_20_KEY_BLOBClass · 0.85
PCP_KEY_BLOBClass · 0.85

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…