Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > de.sci.electronics > #369668

Re: random_rdtsc und random_rdrand

From Helmut Schellong <var@schellong.biz>
Newsgroups de.sci.electronics
Subject Re: random_rdtsc und random_rdrand
Date 2026-10-01 18:35 +0200
Message-ID <119m23p$l012$1@solani.org> (permalink)
References (9 earlier) <119jjb3$luij$1@solani.org> <119jlkk$jb56$1@solani.org> <119jm08$m0k1$1@solani.org> <119jv68$jhg9$1@solani.org> <119k3oe$ma1h$1@solani.org>

Show all headers | View raw


Leo Baumann wrote on 01.10.2026 00:50:
> Am 30.09.2026 um 23:32 schrieb Helmut Schellong:
>>>>> Der NIST-Test kann die Unvorhersehbarkeit und Entropie nicht bestätigen.-
>>>>>
>>>>> Was die da mit "approximate entropy" meinen ist unklar.
>>>>>
>>>>
>>>> http://www.schellong.de/pdf/NIST800-22r1a.pdf
>>>
>>> Also hat das mit der physikalisch gemeinten Entropie nichts zu tun.
>>
>> Ja, es gibt die physikalische und die informationstheoretische Entropie.
>> In der Test-Suite geht es um die Entropie von Shannon mit Gleichverteilung.
> 
> Fassen wir zusammen:
> 
> TSC ist vorhersagbar und hat keine Entropie-
> Dein Programm müsste die Zahlen also unvorhersagbar machen und irgendwie eine Entropie erzeugen-
> Durch Programmierung ist das nicht erreichbar-

Doch, ich habe es erreicht.

> Egal was Du programmierst, es ist berechenbar-

Nein. Ich habe schon vor langer Zeit zufällige Verzögerungen benutzt.

> Der NIST-Test bestätigt die Unvorhersagbarkeit und phys. Entropie *nicht*-
> Der NIST-Test bestätigt die statistische Zufälligkeit von Bitketten, die von Zufallszahlengeneratoren erzeugt wurden.-
> Der Zufallszahlengenerator muss aber Unvorhersagbar sein und eine Entropiequelle haben-
> 
> Deiner hat das aber nicht.

Doch, alles dies hat er sehr wohl.

Lies das Posting von Christian Weisgerber, und/oder:
https://man.freebsd.org/cgi/man.cgi?query=random&sektion=4&apropos=0&manpath=FreeBSD+15.1-RELEASE+and+Ports.quarterly
https://man.freebsd.org/cgi/man.cgi?query=random&apropos=1&sektion=4&manpath=FreeBSD+15.1-RELEASE+and+Ports.quarterly&format=html
https://man.freebsd.org/cgi/man.cgi?query=crypto&sektion=4&apropos=0&manpath=FreeBSD+15.1-RELEASE+and+Ports.quarterly


===============================================================================================================
[27.09.2026, 12:47]

.      Mein Kommando 'randtsc' liest den TSC-Counter und nutzt dessen Werte
.      für Steuerungszwecke und zur Ausgabe zum Bildschirm und in eine Datei.

Vorstehend die komplette Beschreibung der Kernfunktion meines Kommandos.

.              http://www.schellong.de/txt/nist1.txt

Die Ausgabe meines Kommandos wurde von der NIST-Suite dennoch mit einer
Bewertung bedacht, so gut, wie ich sie noch nie sah.
Es liegt höchste kryptographische Qualität vor.
Das ist real!

Die Ausgabe des Kommandos ist nicht deterministisch, keine PRNG-Ausgabe
und nicht wiederholbar.

Das Zauberwort in der Beschreibung oben ist 'Steuerungszwecke'.

.                    sleep( D_bitmask & tsc );

Ich habe eine Verzögerungszeit programmiert, wie vorstehend symbolisch dargestellt.
Das erste Lesen des TSC liefert auf jeden Fall einen echt zufälligen Zählerstand.
Dieser Zählerstand wird benutzt, um eine Verzögerung mit zufälliger Länge zu bilden.
Während dieser Verzögerung inkrementiert der TSC um einen zufälligen Betrag.
Dieser Betrag kann einen maximalen Zahlenwert von etwa 100.000.000 haben.
Das ist die maximale Differenz zwischen zwei nacheinander gelesenen Zählerständen.

Diesem unterliegt die Wirkung der Gesamtheit der Hardware und Software des Computers:
.                    sleep( [ D_bitmask & tsc ] + D_Computer );
Hier ist ein weiterer wirksamer Anteil von echtem Zufall vorhanden.

Zur binären Ausgabe verwertet werden allerdings wesentlich weniger Bits des TSC:
.                        output( W_bitmask & tsc );
Der hier vorliegende Wertbereich wird folglich sehr oft komplett durchlaufen.
Es wird berücksichtigt, daß sich das niederwertigste Bit am häufigsten ändert!
Das ist eine vorliegende Unsymmetrie.

Nachfolgend eine beweiskräftige Ausgabenserie des Kommandos 'randtsc':

.        randtsc 300             Differenz               D_bitmask
.        00000275187.129.340245  0000027518712.9340245   10
.        00000275187.156.451316  0000000000002.7111071   10
.        00000275187.159.386832  0000000000000.2935516   10
.        00000275187.160.711210  0000000000000.1324378   10
.                             ...
.        00000275189.769.798642  0000000000002.8283528    1
.        00000275189.774.950741  0000000000000.5152099    1
.        00000275189.780.630313  0000000000000.5679572    1
.        00000275189.786.154246  0000000000000.5523933    1
.        00000275189.788.205427  0000000000000.2051181    0
.        00000275189.793.859874  0000000000000.5654447    0
.        00000275189.801.675332  0000000000000.7815458    0
.        00000275189.803.471061  0000000000000.1795729    0

Vorstehend wurde eine Ausgabe zum Bildschirm vorgenommen.
Der Regler des Kommandos verringert fortlaufend die interne Verzögerung, weil
die Verzögerung von außen (durch das Terminal) seine Vorgaben übersteigt.
Trotz Erreichung des Wertes 0 ändert sich die starke, zufällige Modulation nicht.

.        randtsc 300 0 > dez.txt             Differenz
.        00000278625.325.111329  0000000000000.0009248    0
.        00000278625.325.120324  0000000000000.0008995    0
.        00000278625.325.129312  0000000000000.0008988    0
.        00000278625.325.137763  0000000000000.0008451    0
.        00000278625.325.147368  0000000000000.0009605    0
.        00000278625.325.339997  0000000000000.0192629    0
.        00000278625.325.351150  0000000000000.0011153    0
.        00000278625.325.360940  0000000000000.0009790    0

Vorstehend wurde nicht mehr zum Bildschirm ausgegeben, und
die interne Verzögerung wurde abgeschaltet.
Dennoch beträgt die Verzögerung mindestens über 8000 Inkrements des TSC.
Es kommt auch der hohe Wert 192629 vor - großer Sprung durch Externes.
Das ist natürlich auch echter Zufall.
Der Wertehub ist hier viel zu gering für eine hochqualitative Ausgabe.

.        randtsc 300 > dez.txt               Differenz
.        00000276928.790.366209  0000000000000.0184004   10
.        00000276928.790.377807  0000000000000.0011598   10
.        00000276928.790.569007  0000000000000.0191200   10
.        00000276928.790.606470  0000000000000.0037463   10
.        00000276928.790.971766  0000000000000.0365296   11
.        00000276928.791.756231  0000000000000.0784465   11
.        00000276928.792.575959  0000000000000.0819728   11
.        00000276928.793.703713  0000000000000.1127754   11

Vorstehend eine gewöhnliche Ausgabe.
Die Bitbreite von D_bitmask wird hier nicht reduziert, sondern vom Regler erhöht.
Der Wertehub liegt hier im Bereich von Millionen, so daß hochqualitative
Ausgaben (W_bitmask) möglich sind.


Ein Betriebssystem war schon in den 1980ern sehr komplex (z.B. SCO-Unix).
Es gab z.B. 'Dirty Blocks'.
Das sind Daten im RAM, die noch nicht auf eine Festplatte abgesichert wurden.
Dies wurde unter SCO nach einer Verzögerung von 30 Sekunden begonnen zu tun.
(Ich hatte diesen Zeitwert damals auf 9 s reduziert.)
Dies wurde nicht stramm mit höchster Priorität getan, sondern wurde z.B. durch
massive Zugriffe locker unterbrochen, oder durch Start von mehreren Prozessen, etc.
Ein Scheduler ist eine der wichtigsten und komplexesten Funktionen.

Alle Funktionen des Betriebssystems zusammen erzeugen ein im Detail
unvorhersehbares Konglomerat an Verzögerungen wie auch Bevorzugungen.
Eine Mikrosekunde Verzögerung im betreffenden Prozeß verhindert bereits
das Lesen von mehr als 3000 Inkrements des TSC - und erzeugt echten Zufall.
===============================================================================================================



-- 
Mit freundlichen Grüßen
Helmut Schellong

Back to de.sci.electronics | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

random_rdtsc und random_rdrand Helmut Schellong <var@schellong.biz> - 2026-09-29 13:06 +0200
  Re: random_rdtsc und random_rdrand Leo Baumann <ib@leobaumann.de> - 2026-09-29 15:45 +0200
    Re: random_rdtsc und random_rdrand Helmut Schellong <var@schellong.biz> - 2026-09-29 18:37 +0200
      Re: random_rdtsc und random_rdrand Leo Baumann <ib@leobaumann.de> - 2026-09-29 21:33 +0200
        Re: random_rdtsc und random_rdrand Helmut Schellong <var@schellong.biz> - 2026-09-29 22:41 +0200
          Re: random_rdtsc und random_rdrand Leo Baumann <ib@leobaumann.de> - 2026-09-29 22:51 +0200
            Re: random_rdtsc und random_rdrand Helmut Schellong <var@schellong.biz> - 2026-09-30 00:26 +0200
              Re: random_rdtsc und random_rdrand Leo Baumann <ib@leobaumann.de> - 2026-09-30 02:05 +0200
                Re: random_rdtsc und random_rdrand Helmut Schellong <var@schellong.biz> - 2026-09-30 10:45 +0200
                Re: random_rdtsc und random_rdrand Leo Baumann <ib@leobaumann.de> - 2026-09-30 10:57 +0200
                Re: random_rdtsc und random_rdrand Helmut Schellong <var@schellong.biz> - 2026-09-30 11:33 +0200
                Re: random_rdtsc und random_rdrand Marc Haber <mh+usenetspam2616@zugschl.us> - 2026-09-30 15:31 +0200
                Re: random_rdtsc und random_rdrand Helmut Schellong <var@schellong.biz> - 2026-09-30 16:25 +0200
                Re: random_rdtsc und random_rdrand Marc Haber <mh+usenetspam2616@zugschl.us> - 2026-09-30 17:17 +0200
                Re: random_rdtsc und random_rdrand Arno Welzel <usenet@arnowelzel.de> - 2026-10-04 02:45 +0200
                Re: random_rdtsc und random_rdrand Helmut Schellong <var@schellong.biz> - 2026-10-04 11:58 +0200
          Re: random_rdtsc und random_rdrand Alexander Schreiber <als@usenet.thangorodrim.de> - 2026-09-30 01:23 +0200
            Re: random_rdtsc und random_rdrand Helmut Schellong <var@schellong.biz> - 2026-09-30 10:19 +0200
      Re: random_rdtsc und random_rdrand Leo Baumann <ib@leobaumann.de> - 2026-09-30 05:16 +0200
        Re: random_rdtsc und random_rdrand Marte Schwarz <marte.schwarz@gmx.de> - 2026-09-30 08:01 +0200
          Re: random_rdtsc und random_rdrand Leo Baumann <ib@leobaumann.de> - 2026-09-30 08:11 +0200
            Re: random_rdtsc und random_rdrand Andreas Fecht <forum@aftec.de> - 2026-09-30 09:49 +0200
              Re: random_rdtsc und random_rdrand Leo Baumann <ib@leobaumann.de> - 2026-09-30 09:55 +0200
                Re: random_rdtsc und random_rdrand Helmut Schellong <var@schellong.biz> - 2026-09-30 11:23 +0200
                Re: random_rdtsc und random_rdrand Michael Schwingen <news-1513678000@discworld.dascon.de> - 2026-09-30 14:48 +0000
                Re: random_rdtsc und random_rdrand Helmut Schellong <var@schellong.biz> - 2026-09-30 17:17 +0200
              Re: random_rdtsc und random_rdrand Bernd Laengerich <Bernd.Laengerich@web.de> - 2026-09-30 09:59 +0200
          Re: random_rdtsc und random_rdrand Eric Bruecklmeier <u@5i7.de> - 2026-09-30 09:13 +0200
            Re: random_rdtsc und random_rdrand Helmut Schellong <var@schellong.biz> - 2026-09-30 11:07 +0200
        Re: random_rdtsc und random_rdrand Helmut Schellong <var@schellong.biz> - 2026-09-30 11:03 +0200
          Re: random_rdtsc und random_rdrand Leo Baumann <ib@leobaumann.de> - 2026-09-30 16:58 +0200
            Re: random_rdtsc und random_rdrand Leo Baumann <ib@leobaumann.de> - 2026-09-30 17:33 +0200
              Re: random_rdtsc und random_rdrand Helmut Schellong <var@schellong.biz> - 2026-09-30 18:34 +0200
            Re: random_rdtsc und random_rdrand Helmut Schellong <var@schellong.biz> - 2026-09-30 18:12 +0200
              Re: random_rdtsc und random_rdrand Leo Baumann <ib@leobaumann.de> - 2026-09-30 18:25 +0200
                Re: random_rdtsc und random_rdrand Helmut Schellong <var@schellong.biz> - 2026-09-30 19:16 +0200
              Re: random_rdtsc und random_rdrand Leo Baumann <ib@leobaumann.de> - 2026-09-30 18:45 +0200
                Re: random_rdtsc und random_rdrand Helmut Schellong <var@schellong.biz> - 2026-09-30 19:25 +0200
                Re: random_rdtsc und random_rdrand Leo Baumann <ib@leobaumann.de> - 2026-09-30 20:10 +0200
                Re: random_rdtsc und random_rdrand Helmut Schellong <var@schellong.biz> - 2026-09-30 20:49 +0200
                Re: random_rdtsc und random_rdrand Helmut Schellong <var@schellong.biz> - 2026-09-30 20:55 +0200
                Re: random_rdtsc und random_rdrand Leo Baumann <ib@leobaumann.de> - 2026-09-30 20:55 +0200
                Re: random_rdtsc und random_rdrand Helmut Schellong <var@schellong.biz> - 2026-09-30 23:32 +0200
                Re: random_rdtsc und random_rdrand Leo Baumann <ib@leobaumann.de> - 2026-10-01 00:50 +0200
                Re: random_rdtsc und random_rdrand Helmut Schellong <var@schellong.biz> - 2026-10-01 18:35 +0200
                Re: random_rdtsc und random_rdrand Leo Baumann <ib@leobaumann.de> - 2026-10-01 18:58 +0200
                Re: random_rdtsc und random_rdrand Leo Baumann <ib@leobaumann.de> - 2026-10-02 06:29 +0200
                Re: random_rdtsc und random_rdrand Helmut Schellong <var@schellong.biz> - 2026-10-02 16:02 +0200
                Re: random_rdtsc und random_rdrand Leo Baumann <ib@leobaumann.de> - 2026-10-02 16:11 +0200
                Re: random_rdtsc und random_rdrand Helmut Schellong <var@schellong.biz> - 2026-10-02 22:00 +0200
                Re: random_rdtsc und random_rdrand Leo Baumann <ib@leobaumann.de> - 2026-10-02 22:02 +0200
                Re: random_rdtsc und random_rdrand Helmut Schellong <var@schellong.biz> - 2026-10-02 22:09 +0200
                Re: random_rdtsc und random_rdrand Leo Baumann <ib@leobaumann.de> - 2026-10-02 22:20 +0200
                Re: random_rdtsc und random_rdrand Helmut Schellong <var@schellong.biz> - 2026-10-02 23:11 +0200
                Re: random_rdtsc und random_rdrand Leo Baumann <ib@leobaumann.de> - 2026-10-02 23:51 +0200
                Re: random_rdtsc und random_rdrand Helmut Schellong <var@schellong.biz> - 2026-10-03 11:57 +0200
                Re: random_rdtsc und random_rdrand Marte Schwarz <marte.schwarz@gmx.de> - 2026-10-03 11:30 +0200
                Re: random_rdtsc und random_rdrand Heinz Schmitz <sch@example.invalid> - 2026-10-03 16:59 +0200
                Re: random_rdtsc und random_rdrand Helmut Schellong <var@schellong.biz> - 2026-10-03 17:29 +0200
                Re: random_rdtsc und random_rdrand Alexander Schreiber <als@usenet.thangorodrim.de> - 2026-10-03 13:33 +0200
                Re: random_rdtsc und random_rdrand Stefan Wiens <s.wi@gmx.net> - 2026-10-02 16:19 +0200
                Re: random_rdtsc und random_rdrand Christian Weisgerber <naddy@mips.inka.de> - 2026-10-02 19:24 +0000
                Re: random_rdtsc und random_rdrand Stefan Wiens <s.wi@gmx.net> - 2026-10-02 22:04 +0200
                Re: random_rdtsc und random_rdrand Stefan Wiens <s.wi@gmx.net> - 2026-10-03 14:49 +0200
                Re: random_rdtsc und random_rdrand Leo Baumann <ib@leobaumann.de> - 2026-10-03 15:21 +0200
                Re: random_rdtsc und random_rdrand Helmut Schellong <var@schellong.biz> - 2026-10-03 17:26 +0200
                Re: random_rdtsc und random_rdrand Leo Baumann <ib@leobaumann.de> - 2026-10-03 17:35 +0200
                Re: random_rdtsc und random_rdrand Helmut Schellong <var@schellong.biz> - 2026-10-04 00:48 +0200
                Re: random_rdtsc und random_rdrand Leo Baumann <ib@leobaumann.de> - 2026-10-04 00:52 +0200
                Re: random_rdtsc und random_rdrand Helmut Schellong <var@schellong.biz> - 2026-10-04 01:33 +0200
                Re: random_rdtsc und random_rdrand Leo Baumann <ib@leobaumann.de> - 2026-10-04 02:04 +0200
                Re: random_rdtsc und random_rdrand Helmut Schellong <var@schellong.biz> - 2026-10-04 11:48 +0200
                Re: random_rdtsc und random_rdrand Leo Baumann <ib@leobaumann.de> - 2026-10-04 11:56 +0200
                Re: random_rdtsc und random_rdrand Stefan Wiens <s.wi@gmx.net> - 2026-10-04 03:41 +0200
                Re: random_rdtsc und random_rdrand Stefan Wiens <s.wi@gmx.net> - 2026-10-04 03:50 +0200
                Re: random_rdtsc und random_rdrand Helmut Schellong <var@schellong.biz> - 2026-10-04 12:20 +0200
                Re: random_rdtsc und random_rdrand Stefan Wiens <s.wi@gmx.net> - 2026-10-04 12:46 +0200
                Re: random_rdtsc und random_rdrand Helmut Schellong <var@schellong.biz> - 2026-10-04 17:39 +0200
                Re: random_rdtsc und random_rdrand Helmut Schellong <var@schellong.biz> - 2026-10-03 17:12 +0200
                Re: random_rdtsc und random_rdrand Leo Baumann <ib@leobaumann.de> - 2026-10-03 17:47 +0200
                Re: random_rdtsc und random_rdrand Helmut Schellong <var@schellong.biz> - 2026-10-04 00:59 +0200
                Re: random_rdtsc und random_rdrand Helmut Schellong <var@schellong.biz> - 2026-10-02 21:49 +0200
  Re: random_rdtsc und random_rdrand Leo Baumann <ib@leobaumann.de> - 2026-09-29 15:52 +0200
    Re: random_rdtsc und random_rdrand Helmut Schellong <var@schellong.biz> - 2026-09-29 18:46 +0200

csiph-web