[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#58472: [PATCH] Make `message-unique-id' less prone to collisions
From: |
Paul Eggert |
Subject: |
bug#58472: [PATCH] Make `message-unique-id' less prone to collisions |
Date: |
Thu, 13 Oct 2022 09:21:05 -0700 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.2.2 |
On 2022-10-12 19:46, Stefan Kangas wrote:
The main goal is to avoid collisions, but using the time also gives an
idea of when the message was sent, which is kind of nice.
That info is in the Date: line, along with zillions of other Received:
lines. There should be no need to repeat it in the Message-ID line.
Time also
guarantees a somewhat unique value even if the user has happened to set
the random seed.
If that's a concern, we should be using more-random data, e.g., with
(base64-encode-string
(secure-hash 'md5 'iv-auto 128 nil t))
if we want 128 bits of randomness (this yields a string like
"B8a3usyu5QSE/rTLu0nIHg==").
As an aside, it's weird that there's no easy way to ask Emacs for an
N-bit random integer, where the randomness is taken from system entropy.
Shouldn't we extend Emacs to support that? E.g., (make-string 128
'iv-auto) could give you an N-byte entropy-derived random string, or
(random -N) could give you an N-bit entropy-derived random nonnegative
integer, or something like that. Then we could write something like this:
(base64-encode-string (make-string 16 'iv-auto))
to get a Message-ID component with 16 bytes (128 bits) of entropy.
- bug#58472: [PATCH] Make `message-unique-id' less prone to collisions, Stefan Kangas, 2022/10/12
- bug#58472: [PATCH] Make `message-unique-id' less prone to collisions, Paul Eggert, 2022/10/12
- bug#58472: [PATCH] Make `message-unique-id' less prone to collisions, Stefan Kangas, 2022/10/12
- bug#58472: [PATCH] Make `message-unique-id' less prone to collisions, Matt Armstrong, 2022/10/13
- bug#58472: [PATCH] Make `message-unique-id' less prone to collisions, Stefan Kangas, 2022/10/13
- bug#58472: [PATCH] Make `message-unique-id' less prone to collisions, Matt Armstrong, 2022/10/13
- bug#58472: [PATCH] Make `message-unique-id' less prone to collisions, Paul Eggert, 2022/10/13
- bug#58472: [PATCH] Make `message-unique-id' less prone to collisions, Stefan Kangas, 2022/10/14
- bug#58472: [PATCH] Make `message-unique-id' less prone to collisions,
Paul Eggert <=
- bug#58472: [PATCH] Make `message-unique-id' less prone to collisions, Stefan Kangas, 2022/10/14
- bug#58472: [PATCH] Make `message-unique-id' less prone to collisions, Stefan Kangas, 2022/10/16
- bug#58472: [PATCH] Make `message-unique-id' less prone to collisions, Stefan Kangas, 2022/10/16
- bug#58472: [PATCH] Make `message-unique-id' less prone to collisions, Matt Armstrong, 2022/10/16
- bug#58472: [PATCH] Make `message-unique-id' less prone to collisions, Stefan Kangas, 2022/10/16
- bug#58472: [PATCH] Make `message-unique-id' less prone to collisions, Matt Armstrong, 2022/10/17
- bug#58472: [PATCH] Make `message-unique-id' less prone to collisions, Paul Eggert, 2022/10/17
- bug#58472: [PATCH] Make `message-unique-id' less prone to collisions, Stefan Kangas, 2022/10/17
- bug#58472: [PATCH] Make `message-unique-id' less prone to collisions, Eli Zaretskii, 2022/10/17
- bug#58472: [PATCH] Make `message-unique-id' less prone to collisions, Matt Armstrong, 2022/10/17