Glossar
Protocol Buffers (Protobuf)
Protocol Buffers (Protobuf) ist das Binärformat der meisten Biome-Nutzlasten. Grundlagen des Formats und warum Dekodierung ohne Schema mehrdeutig bleibt.
Protocol Buffers (Protobuf) ist ein kompaktes binäres Serialisierungsformat von Google. Die meisten SEGB-Einträge in Biome tragen eine Protobuf-Nachricht als Nutzlast. In der Binärkodierung wird jedes Feld als Tag geschrieben, das eine Feldnummer und einen Kodierungstyp (wire type) kombiniert, gefolgt vom Wert: einer Ganzzahl variabler Länge, einem festen 32- oder 64-Bit-Wert oder einem längenpräfixierten Block.
Feldnamen existieren nur im Schema, und Apple veröffentlicht seine Biome-Schemas nicht. Parser wie mac_apt dekodieren die Nutzlasten deshalb ohne Schema (mit blackboxprotobuf) und stützen sich auf Feldnummern, die die Community zugeordnet hat, etwa App.InFocus Feld 3 = Status und Feld 6 = Bundle-ID.
Dekodierung ohne Schema ist mehrdeutig: Ein längenpräfixierter Block kann Text, Rohbytes oder eine verschachtelte Nachricht sein, ein 64-Bit-Wert eine Ganzzahl oder ein Double. Behandeln Sie nicht zugeordnete Felder als unbekannt, statt zu raten. Siehe das SEGB-Dateiformat von Biome.