[media-types] [IANA #1458198] Media type registration re quest: application/vnd.fabylon.book (vendor tree)

"Amanda Baber via RT" <[email protected]>
Newsgroups gmane.ietf.types
Message-ID <[email protected]>
Hi Darrel,

Would you be able to review this new request by August 31st?

thanks,
Amanda

=====

Type name: application

Subtype name: vnd.fabylon.book

Required parameters: N/A

Optional parameters: N/A

Encoding considerations: binary

Security considerations:

The format carries no scripting and no executable content, so it presents no
code execution surface of its own.

The principal risk is decompression. The container uses Zstandard (RFC 8878) for
its manifest, its page block and optionally its assets. Both the manifest and
each chunk declare their uncompressed length in the file before the compressed
data is read, so a conforming decoder can bound its allocation in advance and
reject a declared size that exceeds local policy rather than trusting the
compressed stream. Implementations that ignore the declared sizes are vulnerable
to decompression bombs.

Byte offsets and sizes in the manifest are attacker-controlled in an untrusted
file. Implementations must validate every offset and length against the declared
arena length and the actual file length before dereferencing.

The container may embed font and image assets. Those are processed by the
implementation's own font and image handling and inherit whatever risks those
libraries carry; the container adds none of its own.

The format carries no active content and no external references that are
fetched automatically. It contains no privacy-sensitive fields beyond the
bibliographic metadata an author chooses to include (title, author, language).

Interoperability considerations:

The container generation is encoded in a 16-byte magic string at offset 0 rather
than in a field inside the file, so an implementation can reject an unknown
generation before parsing. The current generation is FABYLON_BOOK_02!. A
previous generation used FABYLON_REALM_01 with a different internal structure;
readers may support it for compatibility, and writers no longer produce it. An
incompatible future generation will change the magic string.

The manifest is JSON, so unknown fields can be ignored safely by older readers.
The two length fields in the fixed header are little-endian unsigned 32-bit
integers.

Published specification:

https://www.google.com/url?q=https://fabylon.net/fab/specification/&source=gmail&ust=1787033907661000&sa=E

The same specification, with a sample file, is also published at
https://www.google.com/url?q=https://github.com/mbenders/fab-format&source=gmail&ust=1787033907661000&sa=E

Applications that use this media type:

Fabylon Bookmaker (writer) and Fabylon Reader (reader). Use is at present
limited to those tools and their publisher. The registration is requested for
correct identification and interchange, not on the basis of wide deployment.

Fragment identifier considerations: N/A

Additional information:

Deprecated alias names for this type: N/A
Magic number(s): FABYLON_BOOK_02!
(hex 46 41 42 59 4C 4F 4E 5F 42 4F 4F 4B 5F 30 32 21)
16 bytes at offset 0
File extension(s): fab
Macintosh file type code(s): N/A

Person & email address to contact for further information:

M.H.H. Benders <[email protected]>

Intended usage: COMMON

Restrictions on usage: N/A

Author: M.H.H. Benders <[email protected]>

Change controller: Fabylon, Karjalohja, Finland <[email protected]>

Provisional registration? (standards tree only): N/A

Additional notes:

A publicly downloadable sample file is available at
https://www.google.com/url?q=https://github.com/mbenders/fab-format/blob/master/samples/fab-book-format-en.fab&source=gmail&ust=1787033907661000&sa=E
and further samples in five languages at https://www.google.com/url?q=https://fabylon.net/fab/&source=gmail&ust=1787033907661000&sa=E , so the magic
number and container structure can be verified directly.

_______________________________________________
media-types mailing list -- [email protected]
To unsubscribe send an email to [email protected]
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.