Entamy Platform

entaPub – jedes EPUB sicher und bis zum Ende lesen

Beschädigte, veraltete oder bösartige Bücher: Die Lese-Engine entaPub öffnet EPUB sicher, repariert, was sich reparieren lässt, und übergibt das Buch in seiner ursprünglichen Gestalt.

Kein Buch soll sich mehr nicht öffnen lassen. EPUB ist das weltweit verbreitete Format für E-Books, doch viele tatsächlich verbreitete Bücher halten sich nicht an den Standard, sind teilweise beschädigt oder veraltet gebaut. entaPub ist eine in Rust geschriebene EPUB-Lese-Engine, die auch solche Bücher so weit wie möglich öffnet – ohne das Gerät der Lesenden zu gefährden.

Merkmale#

Lesbar, auch wenn beschädigt

Zuerst wird streng nach Standard gelesen. Nur wenn das scheitert, folgt die Wiederherstellung Schritt für Schritt: XML reparieren, als HTML neu einlesen, das Buch neu zusammensetzen.

Nachvollziehbar, was repariert wurde

In welchem Schritt was wie repariert wurde, wird samt Zuverlässigkeit als Diagnose festgehalten. Ein „irgendwie wird es angezeigt“ gibt es nicht.

Kein Netzwerkzugriff beim Öffnen

Externes CSS oder Bilder werden nicht nachgeladen; das Buch wird nur aus dem aufgebaut, was es selbst enthält.

Ausführbares wird entfernt

script, iframe, javascript: und Ähnliches werden entfernt, und das Entfernen wird protokolliert.

Keine Dateien außerhalb des Buchs

Verweise, die mit ../ oder absoluten Pfaden aus dem Buch hinauszeigen, werden abgelehnt.

Auch riesige Bücher bringen nichts zum Stillstand

Dateigröße, entpackte Datenmenge, Verschachtelungstiefe und Anzahl der Elemente sind begrenzt, sodass auch extreme Bücher das Gerät nicht einfrieren.

Speichersicher

unsafe in Rust ist verboten, und mit Fuzzing durch AFL++ werden massenhaft beschädigte Eingaben getestet.

Das Buch in seiner Gestalt

Betonungspunkte, vertikaler Satz und Einzüge gehören zum Text. Nur gefährliche Angaben werden entfernt; vertikaler Satz, Ruby, festes Layout und Doppelseiten bleiben erhalten.

EPUB 2 wie EPUB 3

Neue Bücher und alt gebaute Bücher lassen sich über denselben Einstieg lesen.

Lesen und Erstellen#

Zu entaPub gehört auch der „Builder“, der aus derselben Eingabe stets dasselbe EPUB erzeugt. Mit KuroEditor geschriebene Manuskripte macht dieser Builder zu EPUB, Bücher in KuroViewer öffnet der Reader. Weil Lese- und Erstellungsseite nach demselben Prinzip gebaut sind, können Entamys Produkte E-Books von Anfang bis Ende selbst verarbeiten.

FormateEPUB 2 / EPUB 3 (festes Layout, vertikaler Satz, Ruby, Doppelseiten)
WiederherstellungStreng → XML-Reparatur → Neu einlesen als HTML → Buch neu zusammensetzen (jeder Schritt wird als Diagnose protokolliert)
SicherheitKein externer Zugriff, Entfernen ausführbarer Elemente, Ablehnen von Verweisen außerhalb des Buchs, Ressourcengrenzen
ImplementierungRust (unsafe verboten), Fuzzing mit AFL++
Eingesetzt inKuroViewer (Lesen), KuroEditor (Erstellen)
BereitstellungIn Entamy-Produkte eingebaut (Veröffentlichung als Open Source noch offen)

Falls entaPub als Open Source veröffentlicht wird, geschieht das unter der Kuro License (MIT + Nennung der Rechteinhaber).

Products & Services

Produkte

Produktinformationen zu dieser Marke folgen in Kürze.