פורמט ZI²
מהדורה חתומה היא קובץ שאתם שומרים. הנה בדיוק מה יש בתוכו, כדי שתוכלו לפתוח אותו בכל דפדפן היום ובכל תוכנה שתרצו לכתוב מחר.
מבנה קובץ .zi2
| בייטים | שדה | משמעות |
|---|---|---|
| 0 to 3 | ZI2 then 0x01 | סמן וגרסת פורמט |
| 4 to 19 | 16 bytes | salt אקראי לגזירת המפתח |
| 20 to 31 | 12 bytes | nonce אקראי ל-AES-256-GCM |
| 32 to end | ciphertext and tag | פלט AES-256-GCM: הספר הדחוס ועוד תג שלמות של 16 בייטים |
המפתח
המפתח הוא PBKDF2-HMAC-SHA256 על ביטוי הפתיחה שלכם עם ה-salt, 200,000 סבבים, 32 בייטים. לא נדרש דבר נוסף: לא שרת, לא חשבון, לא הפעלה. הביטוי נמצא בעמוד הרישיון שלכם.
מה מתפענח
Gzip, ואז מסמך JSON אחד: כותרת הספר, כותרת המשנה, המחבר, המהדורה, שורת הזכויות, הכריכה כ-data URL של תמונה, והפרקים כ-HTML פשוט עם איורים משובצים כ-data URL.
{
"title": "...", "subtitle": "...", "author": "...",
"edition": "...", "rights": "...",
"cover": "data:image/png;base64,...",
"chapters": [{"title": "...", "html": "..."}]
}ההבטחה
מכיוון שהמבנה מפורסם, מהדורה חתומה לעולם אינה תלויה בכך שהאתר הזה יישאר באוויר. קורא הדפדפן כאן הוא יישום אחד; עמוד הרישיון שלכם שומר את הקובץ, את הביטוי ואת טביעת אצבע שאפשר לאמת בכל עת.