Artificial intelligent assistant

What is the epoch of LUKS that is shown when running luksDump? When you run `luksDump` on a LUKS device, I get this: $ sudo cryptsetup luksDump /dev/sda1 LUKS header information Version: 2 Epoch: 3 Metadata area: 16384 [bytes] Keyslots area: 16744448 [bytes] UUID: 4640c6e4-[…] Label: (no label) Subsystem: (no subsystem) Flags: (no flags) […] I’s quite obvious what “version” refers to (the current best is v2, so this is what you should aim for) and I’ve seen values for `Epoch` from 3 to 5. However, what does `Epoch` refer to, actually? And what value should I aim at? Does it matter (security-wise) what number is stated there? Is it bad if it is still Epoch 3 e.g.? Can one upgrade that Epoch? I’ve searched the web and the FAQ for information, but the word `epoch` is not mentioned there.

The Epoch increases every time you change anything in your LUKS header (like when adding or removing keys, etc.).

The LUKS2 header specification states:

>
> uint64_t seqid; // sequence ID, increased on update
>

> `seqid` is a counter (sequential number) that is always increased when a new update of the header is written. The header with a higher _seqid_ is more recent and is used for recovery (if there are primary and secondary headers with different seqid, the more recent one is automatically used).

Why this is called a "sequence ID" in code and technical documentation, but uses the term "Epoch" when shown to the end user, remains a mystery.

That it is in fact the same thing, can be seen if you read the fine source, which prints seqid as Epoch:

>
> log_std(cd, "Epoch: \t%" PRIu64 "\
", hdr->seqid);
>

**tl;dr** You can safely ignore the Epoch, it is a harmless counter with no specific meaning.

xcX3v84RxoQ-4GxG32940ukFUIEgYdPy 496a8ccf2bb62bab78f289e00d62c3ea