Glossaire
Protocol Buffers (protobuf)
Protocol Buffers (protobuf) est le format binaire de la plupart des charges utiles Biome. Bases du format, et pourquoi le décodage sans schéma reste ambigu.
Protocol Buffers (protobuf) est un format de sérialisation binaire compact créé par Google. La plupart des enregistrements SEGB de Biome portent un message protobuf comme charge utile. Dans le flux binaire, chaque champ est écrit sous forme d'une étiquette, qui combine un numéro de champ et un type de codage (wire type), suivie de la valeur : un entier de longueur variable, une valeur fixe de 32 ou 64 bits, ou un bloc préfixé par sa longueur.
Les noms de champs n'existent que dans le schéma, et Apple ne publie pas ses schémas Biome. Des parseurs comme mac_apt décodent donc les charges utiles sans schéma (avec blackboxprotobuf) et s'appuient sur des numéros de champs établis par la communauté, par exemple App.InFocus champ 3 = état et champ 6 = bundle ID.
Le décodage sans schéma est ambigu : un bloc préfixé par sa longueur peut être du texte, des octets bruts ou un message imbriqué, et une valeur de 64 bits peut être un entier ou un double. Considérez les champs non identifiés comme inconnus plutôt que de deviner. Voir le format de fichier SEGB de Biome.