Sto recuperando email da Gmail usando PHP e IMAP; tuttavia, alcune e-mail non hanno un messageid. Non tutti i messaggi dovrebbero avere un messageid?IMAP PHP - Le e-mail devono avere un messageid?
Ho bisogno di un ID univoco di riferimento quindi non sono sicuro di come altro tenere traccia delle e-mail senza di esso.
Sto facendo qualcosa di sbagliato?
Per esempio qui è un colpo di testa di posta elettronica ottengo
[date] => Sun, 06 Nov 2011 21:21:56 -0500
[subject] => Daylight Saving Time? Chili's Saving Time!
[to] => [email protected]
[message_id] =>
[from] => [email protected]
[sender] => [email protected]
[reply_toaddress] => [email protected]
[size] => 14385
[msgno] => 156
[status] => Unread
Grazie
Ma poiché non c'è nulla che lo garantisca, ciò non impedisce a un MTA malizioso o malizioso di utilizzare ID messaggio identici per posta diversa, giusto? Qual è il modo migliore per evitare questa situazione? – Pacerier
@Pacerier se ci si preoccupa che un altro MTA non possa replicare l'ID messaggio del server, è difficile. È possibile creare l'ID del messaggio come hash dell'ora del messaggio, del proprio nome host e di una chiave segreta, il che renderebbe difficile la creazione di un ID messaggio, ma non sono sicuro che si guadagni molto. L'unico metodo efficace per la verifica del mittente nella posta elettronica è la firma e la crittografia PGP. –
Un aggiornamento a questa vecchia domanda: ho sempre creduto che un ID messaggio fosse un "must", ma ho appena scoperto un'e-mail nella mia casella di posta IMAP che non ne ha uno! Ho guardato la fonte grezza. Il mio software di lettura dei messaggi IMAP è andato in crash a causa di ciò, come me ha presupposto che ci sia sempre un ID messaggio. –