Groups | Search | Server Info | Keyboard shortcuts | Login | Register


Groups > de.comm.software.gnus > #3984

Re: ignore 46754.00 - [Gnus] Aufbau der Message-ID

From Stefan Wiens <s.wi@gmx.net>
Newsgroups de.comm.software.gnus
Subject Re: ignore 46754.00 - [Gnus] Aufbau der Message-ID
Date 2024-04-12 02:34 +0200
Message-ID <87pluv1kub.fsf@eswe.dd-dns.de> (permalink)
References (6 earlier) <87il0nkia4.fsf_-_@n14.ybtra.de> <87y19jzvyy.fsf@n14.ybtra.de> <87r0fbzvln.fsf@n14.ybtra.de> <87jzl3zuau.fsf@n14.ybtra.de> <87sezrld24.fsf@n14.ybtra.de>

Show all headers | View raw


Marcel Logen <333200007110-0201@ybtra.de> writes:

> Marcel Logen in de.test:
>
>>>>>><https://git.savannah.gnu.org/cgit/emacs.git/tree/lisp/gnus/message.el?h=emacs-29.3#n5901>
>>>>>
>>>>>Beispiel:
>>>>>
>>>>>| Date: Thu, 11 Apr 2024 17:03:54 +0200
>>>>>| Message-ID: <87msq0j605.fsf@n14.ybtra.de>
>>>>>
>>>>>Die Variable "message-uniq-id-char" hat (in dieser Gnus-Sitzung?) den
>>>>>Wert 284.
>>>>>
>>>>>   284 % 25 = 9
>>>>>   284 // 25 = 11
>>>>>
>>>>>Also 11 * 25 + 9 = 284.
>>>>>
>>>>>Datumsumrechnung (mit GNU date in der bash):
>>>>>
>>>>>   date -d '11 Apr 2024 17:03:54 +0200' +%s
>>>>>
>>>>>ergibt
>>>>>
>>>>>   1712847834.
>>>>>
>>>>>In Emacs ("M-x eval-expression" oder mit "M-:"):
>>>>>
>>>>>   M-: (message-number-base36 (+ (ash 1712847834 -16) (ash 9 16)) 4) RET
>>>>>
>>>>>ergibt
>>>>>
>>>>>   msq0
>>>>>
>>>>>und
>>>>>
>>>>>   M-: (message-number-base36 (+ (logand 1712847834 #xffff) (ash 11 16)) 4) RET
>>>>>
>>>>>ergibt:
>>>>>
>>>>>   j605
>>>>>
>>>>>"ash" ist "bit shift to left" (oder "to right", wenn das zweite Argument
>>>>>negativ ist). "logand" ist bitweises AND.
>>>>>
>>>>>Zusammen mit der User-ID 1000 (=> 87) hier auf dem Rechner kommt der
>>>>>linke Teil "87msq0j605" heraus. => OK!
>>>>>
>>>>>Die Frage ist natürlich, ob man aus einer gegebenen Gnus-Message-ID wieder
>>>>>den Wert von "message-uniq-id-char" berechnen kann ...
>>>>
>>>>Ich habe jetzt den Wert von "message-uniq-id-char" auf 0 gesetzt.
>>>>Mal sehen, was mit der Message-ID passiert.
>>>
>>>Ach so: Der Wert der Variablen wird bei jedem neuen Posting um 1 erhöht.
>>
>>Genauer: bei jedem Aufruf von "message.el"? Grübel.
>>
>>>| Date: Thu, 11 Apr 2024 18:48:37 +0200
>>>| Message-ID: <87y19jzvyy.fsf@n14.ybtra.de>
>>>
>>>timestamp: 1712854117
>>>
>>>1 = 0 * 25 + 1
>>>
>>>Also:
>>>
>>>   M-: (message-number-base36 (+ (ash 1712854117 -16) (ash 1 16)) 4) RET
>>>   => y19j
>>>
>>>   M-: (message-number-base36 (+ (logand 1712854117 #xffff) (ash 0 16)) 4)
>>>   => zvyy
>>
>>So langsam blicke ich da durch. :-)
>>
>>Mal rückwärts rechnen:
>>
>>| user14@n14:~$ echo 'zyxwvutsrqponmlkjihgfedcba9876543210' && echo '0----+----1----+----2----+----3----+'
>>| zyxwvutsrqponmlkjihgfedcba9876543210
>>| 0----+----1----+----2----+----3----+
>>
>>       y           1           9         j
>>y19j = 1 * 36^3 + 34 * 36^2 + 26 * 36 + 16 = 91672
>>
>>       z           v           y         y
>>zvyy = 0 * 36^3 +  4 * 36^2 +  1 * 36 +  1 =  5221
>>
>>Der timestamp dazu war ja: 1712854117 (s. o.)
>>
>>1712854117 // 65536 = 26136
>>1 * 65536           = 65536
>>                    --------
>>                      91672 (sieh an!)
>>
>>M-: (logand 1712854117 #xffff) RET
>>=> 5221 (#o12145, #x1465)
>>
>>Und: 1712854117 = 0x66181465
>>                        ^^^^
>>
>>Wie bekomme ich jetzt aus diesem Wust den Wert von "message-uniq-id-char"?
>>Hm ...
>>
>>Na ja, vielleicht heute am späteren Abend mal weitermachen.
>
> Ein 'Reverse-Engineering'-Beispiel:
>
>| Date: Fri, 08 Mar 2024 17:35:14 +0100
>| Message-ID: <86y1asel6l...
>
> Zunächst die 86. Das sollte die User ID 1001 sein.
>
>    zyxwvutsrqponmlkjihgfedcba9876543210
>    0----+----1----+----2----+----3----+
>
>  8         6
> 27 * 36 + 29 = 1001
>
> timestamp:
>
>    date -d '8 Mar 2024 17:35:14 +0100' +%s
>    => 1709915714
>
>    1709915714 // 65536 = 26091
>
> y1as:
>
>  y          1           a        s
>  1 *36^3 + 34 * 36^2 + 25 * 36 + 7 = 91627
>                                    - 26091
>                                   ---------
>                                      65536 = 1 * 65536
> el6l:
>
>  e          l           6         l
> 21 *36^3 + 14 * 36^2 + 29 * 36 + 14 = 998978
>
>                                       998978 // 65536 = 15
>
> Dann wäre "message-uniq-id-char" = 15 * 25 + 1 = 376
>
> Jetzt die Probe - ich bin gespannt:
>
>    M-: (message-number-base36 (+ (ash 1709915714 -16) (ash 1 16)) 4) RET
>    => y1as
>
> und
>
>    M-: (message-number-base36 (+ (logand 1709915714 #xffff) (ash 15 16)) 4) RET
>    => el6l
>
> => OK :-)
>
> Man kann also bei Kenntnis des timestamps auf message-uniq-id-char
> schließen.
>
> (Ich hoffe, ich habe keinen Fehler drin.)
>
> Marcel
>
> fup2 de.comm.software.gnus
> (vielleicht interessiert das ja dort jemanden :-)

Und? Ist das gefährlichh?

-- 
Stefan

Back to de.comm.software.gnus | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

Re: ignore 46754.00 - [Gnus] Aufbau der Message-ID Marcel Logen <333200007110-0201@ybtra.de> - 2024-04-12 01:00 +0200
  Re: ignore 46754.00 - [Gnus] Aufbau der Message-ID Stefan Wiens <s.wi@gmx.net> - 2024-04-12 02:34 +0200
    [message.el] Aufbau der Message-ID (was: ignore 46754.00 - [Gnus] Aufbau der Message-ID) Marcel Logen <333200007110-0201@ybtra.de> - 2024-04-12 12:10 +0200
      Re: [message.el] Aufbau der Message-ID Stefan Wiens <s.wi@gmx.net> - 2024-04-12 16:57 +0200
        Re: [message.el] Aufbau der Message-ID Marcel Logen <333200007110-0201@ybtra.de> - 2024-04-13 01:51 +0200
          Re: [message.el] Aufbau der Message-ID Marcel Logen <333200007110-0201@ybtra.de> - 2024-04-13 03:39 +0200
            Re: [message.el] Aufbau der Message-ID Marcel Logen <333200007110-0201@ybtra.de> - 2024-04-13 12:05 +0200
              Re: [message.el] Aufbau der Message-ID Marcel Logen <333200007110-0201@ybtra.de> - 2024-04-14 00:00 +0200
                Re: [message.el] Aufbau der Message-ID Marcel Logen <333200007110-0201@ybtra.de> - 2024-04-14 01:08 +0200
                Re: [message.el] Aufbau der Message-ID Marcel Logen <333200007110-0201@ybtra.de> - 2024-04-14 01:59 +0200
          Re: [message.el] Aufbau der Message-ID Stefan Wiens <s.wi@gmx.net> - 2024-04-15 22:23 +0200
            Re: [message.el] Aufbau der Message-ID Marcel Logen <333200007110-0201@ybtra.de> - 2024-04-16 01:12 +0200
              Re: [message.el] Aufbau der Message-ID Stefan Wiens <s.wi@gmx.net> - 2024-04-16 03:02 +0200
                Re: [message.el] Aufbau der Message-ID Marcel Logen <333200007110-0201@ybtra.de> - 2024-04-17 23:42 +0200
                Re: [message.el] Aufbau der Message-ID Stefan Wiens <s.wi@gmx.net> - 2024-04-18 08:13 +0200
                Re: [message.el] Aufbau der Message-ID Marcel Logen <333200007110-0201@ybtra.de> - 2024-04-18 12:06 +0200

csiph-web