Gnus development mailing list
 help / color / mirror / Atom feed
* [PATCH] private message id
@ 2010-11-29 21:37 Łukasz Stelmach
  2010-11-29 21:41 ` Russ Allbery
  2010-11-30 20:35 ` Lars Magne Ingebrigtsen
  0 siblings, 2 replies; 9+ messages in thread
From: Łukasz Stelmach @ 2010-11-29 21:37 UTC (permalink / raw)
  To: ding

Hi.

I'd like to share an idea, and a patch that implemnts it, to make
Message-ID slightly worse source of data tracking down an individual who
uses multiple accounts on one machine. All message get the same fqdn
part so it is quite obvious they are sent from the same machine.
I know, there are Received headers but they are not as easy to parse,
and may be a lot less accurate behind a NAT.

I propose a Message-ID consiting of unique-id%e-mail-address grabbed
from the From header. Take a look at the ID of this message.

--8<---------------cut here---------------start------------->8---
diff --git a/lisp/message.el b/lisp/message.el
index bff11b2..9fc3eb6 100644
--- a/lisp/message.el
+++ b/lisp/message.el
@@ -5425,6 +5425,13 @@ In posting styles use `(\"Expires\" (make-expires-date 30))'."
     (setf (nth 3 cur) nday)
     (message-make-date (apply 'encode-time cur))))
 
+(defcustom message-make-private-message-id t
+  "Make Message-ID more privacy-aware by replacing the host
+partname with the senders e-mail addres. It makes a bit harder to
+associate message sent from different accounts."
+  :group 'message-headers
+  :type 'boolean)
+
 (defun message-make-message-id ()
   "Make a unique Message-ID."
   (concat "<" (message-unique-id)
@@ -5443,7 +5450,13 @@ In posting styles use `(\"Expires\" (make-expires-date 30))'."
 		 (and psupersedes
 		      (string-match "_-_@" psupersedes)))
 		"_-_" ""))
-	  "@" (message-make-fqdn) ">"))
+	  (let ((pfrom (save-excursion (message-fetch-field "from"))))
+	    (if (and message-make-private-message-id
+		     pfrom)
+		(concat "%"
+			(cadr (mail-extract-address-components pfrom)))
+	      (concat "@" (message-make-fqdn))))
+	  ">"))
 
 (defvar message-unique-id-char nil)
 
--8<---------------cut here---------------end--------------->8---


-- 
Miłego dnia,
Łukasz Stelmach




^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2010-12-06 19:40 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-11-29 21:37 [PATCH] private message id Łukasz Stelmach
2010-11-29 21:41 ` Russ Allbery
2010-11-30 20:35 ` Lars Magne Ingebrigtsen
2010-12-01  1:10   ` Łukasz Stelmach
2010-12-01 17:09     ` Lars Magne Ingebrigtsen
2010-12-01 23:16       ` Łukasz Stelmach
2010-12-05 12:30         ` Lars Magne Ingebrigtsen
2010-12-06  6:28           ` Łukasz Stelmach
2010-12-06 19:40             ` Lars Magne Ingebrigtsen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).