Forum: PC-Programmierung Standard ML - Befehl in shell ausführen und output speichern


von xvzf (Gast)


Lesenswert?

Hallo,

Für ein Projekt an der Uni müssen wir in StandardML eine Verschlüsselung 
implementieren. StandardML hat keine random funktion (die wir zu 
testzwecken benötigen). Die Idee ist, es über einen Systemcall laufen zu 
lassen: OS.Process.system "shuf -i 1-100 n 1" beispielsweise. Das ganze 
liefert einen Status, wie aber bekommen wir die Ausgabe des Programms in 
unser Projekt? Gibt es da einen Trick oder eine andere Möglichkeit?

Wenn jemand Ideen hat bitte melden!

Viele Grüße,
Matthias

von Planlos (Gast)


Angehängte Dateien:

Lesenswert?

https://xkcd.com/221/


Versuch mal ob du an die "$RANDOM"-Environment-Variable kommst.
(OS.Process.getEnv)

oder per File-Access / IO-Stream auf /dev/random zugreifen?

von Konrad (Gast)


Lesenswert?

Muss es kryptographischer Zufall sein, oder reicht 
leidlich-gut-verteilter Zufall?

Wenn Ihr eh Verschluesselung implementiert, habt Ihr vielleicht schon 
eine Stromchiffre oder eine Hashfunktion, mit der man sich einen kleinen 
PRNG bauen kann? Anfangszustand nehmen, hashen, paar Bits ausleiten, 
wieder hashen...

Sonst, so ein xorshift-PRNG ist auch nicht schwer zu bauen, wenn Euer 
SML Shifts und Bitoperationen hat.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.