vm: batch 1, OMEMO, files and Jingle FT on three servers #21
Loading…
Reference in a new issue
No description provided.
Delete branch "vm/batch-1"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Batch 1 of vms/PLAN.md (OMEMO, files, Jingle FT) on ejabberd, prosody and
anotherim-server: 50 GUI runs, each with a filled EVIDENCE.md, plus the
harness fixes the agents made on the way.
Coverage:
tools/interop.py gapsprints 0 for XEP-0384, 0424, 0454, 0447,0448, 0234 and 0396 on all servers. The urn:tacky specs (jet-omemo:2,
dtls-omemo:0, omemo-chats:0, omemo-trust:0) were scoped to ejabberd in this
batch; their prosody/anotherim-server cells stay open for a later batch.
Bugs found or re-recorded (details in the runs' EVIDENCE.md; issue #9 is
updated after merge):
a URL-named card and Download keeps the ciphertext (Kaidan's 32-byte IV
is off-spec too)
0448 criterion now requires it, prosody's web run re-judged fail
M27 reproduced; C38-like undecryptable count rises, not traced
spec contradicts itself); plain Jingle FT to Dino fails only on ejabberd
(proxy65 announces 127.0.0.2); omemo-chats sync needs Verified own
devices (harness, withdrawn)
Lacks added with evidence: Gajim 0396/0447/0448, Dino 0448, Kaidan
0234/0396/0424; XEP-0396 is na for anotherim-web.
🤖 Generated with Claude Code
Kaidan's picture to aim is an XEP-0448 share whose only source is ESFS with aes-256-cbc-pkcs7. aim has no CBC: it shows a card named after the upload URL ("5tguSQyso9") instead of the picture, and its Download keeps the ciphertext without an error. Kaidan's IV is 32 bytes where XEP-0448 gives 128 bits; its first 16 bytes decrypt the blob to the announced sha-256 (checked on the host). aim's own file to Kaidan is aesgcm:// + SIMS, not ESFS, and hits #9 P1. Assisted-by: Claude:opus-5-5Kaidan 0.16 sends aes-256-cbc-pkcs7 shares with a 32-byte IV (XEP-0448 gives 128 bits); its first 16 bytes decrypt them to the announced hash. The tool now says so ("iv-truncated") and hashes the plaintext, so a run shows whether the peer's file is intact, not only that its IV is off. Assisted-by: Claude:opus-5-5Kaidan 0.16 shares its picture as XEP-0448 inside OMEMO 2 with an esfs source using urn:xmpp:ciphers:aes-256-cbc-pkcs7:0 (upload padded to the AES block, random name). aim's stored record has the share, but aim does not decrypt the CBC source: it shows a download card named after the URL ("fjosqIUewW") and never the picture. XEP-0448 §4 lists the CBC cipher beside the GCM ones; libtacky handles only GCM. New bug, cause libtacky. aim's own leg is #9 P1 and M27 again. Assisted-by: Claude:opus-5-5Kaidan's picture arrives under OMEMO 2 as an XEP-0448 share whose ESFS source is aes-256-cbc-pkcs7. aim does not decrypt it: it shows a card named after the URL ("msj4P9ttjf") and Download saves the ciphertext without an error, as on prosody. Decrypted by the harness with the share's key (16 of Kaidan's 32 IV bytes) the bytes match Kaidan's announced sha-256. Cause libtacky; Kaidan's 32-byte CBC IV is off-spec. Assisted-by: Claude:opus-5-5