mirror of
https://github.com/InvisibleUp/uvmac.git
synced 2024-11-22 07:31:19 +00:00
1 line
5.7 KiB
HTML
1 line
5.7 KiB
HTML
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title> MakeRand </title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="canonical" href="index.html">
</head>
<body>
<div>
<i> <a href="https://www.gryphel.com/index.html">www.gryphel.com</a>/c/<a href="../../index.html">minivmac</a>/<a href="../index.html">extras</a>/makerand
- <a href="https://www.gryphel.com/c/feedback.html">feedback</a> </i>
</div>
<hr>
<h2 align=center>
MakeRand
</h2>
<hr>
<p> Download </p>
<blockquote>
<p> <a href="https://www.gryphel.com/d/minivmac/extras/makerand/makerand-1.0.0.zip">makerand-1.0.0.zip</a>
(90K) a zipped hfs disk image and checksum file.
The disk image can be mounted with Mini vMac.
Includes source code.
</p>
</blockquote>
<p>
MakeRand is a tool for making random hexadecimal data,
such as for use with the
<a href="../makekeys/index.html">MakeKeys</a>
tool.
</p>
<p> <img src="https://www.gryphel.com/d/minivmac/extras/makerand/screen.gif" width=514 height=344 border=0 alt="Screenshot"> </p>
<p>
To use MakeRand, launch the application, and start typing random
text. Random data is gathered from the timing of your key presses. The
text you type is also mixed in.
</p>
<p>
MakeRand counts 2 to 7 bits of randomness per key press. When it
thinks it has gathered at least 1024 bits of randomness, it
“stirs” the pool of bits with a strong psuedo-randomizing
function, and then takes 1024 bits and appends them in hexadecimal (base
16) to the output window. </p>
<p>
You can copy this text to the clipboard to use in MakeKeys or
elsewhere.
When MakeRand is run inside Mini vMac, you can get
text out of the emulated Macintosh using the “Host Copy”
command in the Edit Menu. It is like the “Copy” command,
except that it uses the clipboard of the real computer instead
of the clipboard of the emulated computer. The keyboard shortcut
is Command-Option-C. (The “Host Copy” command has
similar effect to using the normal “Copy” command and then
<a href="../clipout/index.html">ClipOut</a>.)
</p>
<p>
If you want more than 1024 bits, you can keep typing to generate
another block. If you want fewer bits, at any time you can click on the
status bar (at the bottom of the window below the editing area)
to save the bits collected so far. The status bar displays a count of
how many bits have been collected.
</p>
<p>
MakeRand does use the text you type, so how random it is does
affect how random the output is. Perfectly typing in a passage
from a book adds very little true randomness. Making lots of typos
adds more randomness. Typing in gibberish is better. Mashing
keys randomly might be better yet, except that people aren't very
good at truly being random. Also, if you try to press keys randomly,
you might easily fall into a simple rhythm, which would reduce the
randomness of the timing, which is more important than the keys pressed.
</p>
<p>
MakeRand is in part descended from MacPGP source code, which, as far as
I can tell, allows derived works for noncommercial use.
</p>
<p>
MacPGP has various code to try to protect secrets from other software
running on the computer. MakeRand does not. If you are using the random
data for something sensitive, such as with MakeKeys, you should instead
try to secure the entire virtual machine that it is run in. Such as by
putting the Mini vMac disk image on an encrypted volume of the host
computer, for a start.
</p>
<p>
MacPGP uses the time manager to try to determine more precisely when
keys are pressed. But in Mini vMac, the emulated keyboard can only
generate presses at each sixtieth of a second. So MakeRand only
uses the “ticks” value for key presses (time in sixtieths
of a second), so it won’t think it has more randomness than
it really has when run in Mini vMac. How much randomness MakeRand
counts for each keypress depends on how long it has been since the
last key press: 0 ticks = 2 bits, 1 tick
|