head 1.1; branch 1.1.1; access; symbols FILE5_48:1.1.1.2 netbsd-11-0-RC4:1.1.1.1 netbsd-11-0-RC3:1.1.1.1 netbsd-11-0-RC2:1.1.1.1 netbsd-11-0-RC1:1.1.1.1 perseant-exfatfs-base-20250801:1.1.1.1 netbsd-11:1.1.1.1.0.10 netbsd-11-base:1.1.1.1 netbsd-10-1-RELEASE:1.1.1.1 perseant-exfatfs-base-20240630:1.1.1.1 perseant-exfatfs:1.1.1.1.0.8 perseant-exfatfs-base:1.1.1.1 netbsd-10-0-RELEASE:1.1.1.1 netbsd-10-0-RC6:1.1.1.1 netbsd-10-0-RC5:1.1.1.1 netbsd-10-0-RC4:1.1.1.1 netbsd-10-0-RC3:1.1.1.1 netbsd-10-0-RC2:1.1.1.1 netbsd-10-0-RC1:1.1.1.1 FILE5_45:1.1.1.1 netbsd-10:1.1.1.1.0.6 netbsd-10-base:1.1.1.1 FILE5_43:1.1.1.1 cjep_sun2x-base1:1.1.1.1 cjep_sun2x:1.1.1.1.0.4 cjep_sun2x-base:1.1.1.1 cjep_staticlib_x-base1:1.1.1.1 cjep_staticlib_x:1.1.1.1.0.2 cjep_staticlib_x-base:1.1.1.1 FILE5_40:1.1.1.1 CHRISTOS:1.1.1; locks; strict; comment @# @; 1.1 date 2021.04.09.18.58.01; author christos; state Exp; branches 1.1.1.1; next ; commitid W9ddLLbSkHHinEOC; 1.1.1.1 date 2021.04.09.18.58.01; author christos; state Exp; branches; next 1.1.1.2; commitid W9ddLLbSkHHinEOC; 1.1.1.2 date 2026.06.10.15.59.13; author christos; state Exp; branches; next ; commitid 3UWc0DrzTz7bHgJG; desc @@ 1.1 log @Initial revision @ text @ #------------------------------------------------------------------------------ # $File: aes,v 1.1 2020/08/18 21:20:22 christos Exp $ # # aes: magic file for AES encrypted files # Summary: AES Crypt Encrypted Data File # From: Joerg Jenderek # URL: https://en.wikipedia.org/wiki/Advanced_Encryption_Standard # Reference: https://www.aescrypt.com/aes_file_format.html 0 string AES >3 ubyte <3 AES encrypted data, version %u #!:mime application/aes !:mime application/x-aes-encrypted !:ext aes # For Version 2 the encrypted file can have text tags >>3 ubyte =2 # length of an extension identifier and contents like: 0 24 33 38 #>>5 ubeshort x \b, tag length %u #>>5 pstring/H x '%s' # standard extension tags like CREATED_BY >>>7 string CREATED_BY \b, created by # software product, manufacturer like "SharpAESCrypt v1.3.3.0" "aescrypt (Windows GUI) 3.10" ... >>>>&1 string x "%s" # TODO: more other tags # tag CREATED_DATE like YYYY-MM-DD # tag CREATED_TIME like HH:MM:SS # @ 1.1.1.1 log @2021-03-30 20:21 Christos Zoulas * release 5.40 2021-02-05 16:31 Christos Zoulas * PR/234: Add limit to the number of bytes to scan for encoding * PR/230: Fix /T (trim flag) for regex 2021-02-01 12:31 Christos Zoulas * PR/77: Trim trailing separator. 2020-12-17 15:44 Christos Zoulas * PR/211: Convert system read errors from corrupt ELF files into human readable error messages 2020-12-08 16:24 Christos Zoulas * fix multithreaded decompression file descriptor issue by using close-on-exec (Denys Vlasenko) 2020-06-27 11:58 Christos Zoulas * Exclude surrogate pairs from utf-8 detection (Michael Liu) 2020-06-25 12:53 Christos Zoulas * Include # to the list of ignored format chars (Werner Fink) @ text @@ 1.1.1.2 log @Import file-5.48 (previous was file-5.45) 2026-05-07 11:32 Christos Zoulas * release 5.48 2026-05-11 15:55 Christos Zoulas * add landlock support (valoq) 2026-04-19 15:55 Christos Zoulas * add BE/LE GUID 2026-04-17 11:05 Christos Zoulas * multiple fixes to prevent integer overflow in 32 bits (kerwin) 2026-04-15 12:40 Christos Zoulas * PR/745: streamout: Don't flush when trying to set negative offsets on pipes, just continue, fixes 'cat file.zip | file -' * PR/753: vmihalko: Fix race is magic_getpath() 2026-03-11 15:14 Christos Zoulas * PR/728: Anton Monroe: Reinstate regex/c 2026-02-26 11:32 Christos Zoulas * release 5.47 2026-02-04 09:54 Christos Zoulas * Better multi-compound document identification by following the order of the directories entries. (Thomas Ledoux) 2026-01-19 14:00 Christos Zoulas * if stat fails, don't attempt to restore times (Steven Grubb) 2025-05-28 15:20 Christos Zoulas * PR/622: Odd_Bloke: Handle negative offsets in file_buffer(), when fd is not available. 2025-05-28 12:50 Christos Zoulas * PR/655: jsummers: Obey str_flags in strings like we do for search and regex * PR/659: Pitzl: Apply MAGIC_CONTINUE to annotations; i.e. print only the first, unless -k is specified. 2024-12-19 14:44 Christos Zoulas * PR/592: allow + in format strings * PR/592: signed operations should be done in signed context 2024-12-05 13:50 Christos Zoulas * PR/578: jsummers: Don't crash on cygwin when tm_mon == -1 * PR/579: net147: Fix stack overrun. 2024-11-27 14:44 Christos Zoulas * release 5.46 * Add OFFPOSITIVE 2024-11-25 13:56 Christos Zoulas * avoid leaking symbols in libmagic 2024-11-10 13:56 Christos Zoulas * PR/562: jsummers: Search/regex offsets are absolute to the beginning of the file, so adjust them by subtracting the offset that the "use" starts so that we don't double-count it. 2024-11-09 19:30 Christos Zoulas * PR/543: matshch: bump nbuf so we can get the flags into the buffer. 2024-11-02 14:34 Christos Zoulas * Add Android elf notes (enh) 2023-12-29 12:55 Christos Zoulas * Add limit for number of magic warnings allowed 2023-07-29 12:55 Christos Zoulas * check regex bounds (found by clusterfuzz) @ text @d3 1 a3 1 # $File: aes,v 1.5 2026/05/14 02:00:00 christos Exp $ d8 1 a8 1 # From: Joerg Jenderek/Paul E. Jones d12 1 a12 2 >3 ubyte 0 >>4 ubyte <0x10 AES encrypted data, version 0 d16 2 a17 8 >3 ubyte >0 >>4 ubyte 0 >>>3 ubyte x AES encrypted data, version %u #!:mime application/aes !:mime application/x-aes-encrypted !:ext aes # Since Version 2 the encrypted file can have text tags >>3 ubyte >1 d19 2 a20 2 #>>>>5 ubeshort x \b, tag length %u #>>>>5 pstring/H x '%s' d24 1 a24 1 >>>>&1 string x "%.64s" d28 2 @