www.gryphel.com/c/minivmac/extras/makekeys - feedback

MakeKeys

a Mini vMac Extra


Download

makekeys-1.1.0.zip (info) a zipped hfs disk image and checksum file. The disk image can be mounted with Mini vMac. Includes source code.

MakeKeys is a tool to make secret and public key pairs for use in writing and verifying digital signatures, such as with the SigWrite and SigCheck tools.

Screenshot

To use MakeKeys, launch the application, and in the editing window that appears, paste in some truly random (not psuedo-random) hexadecimal data, which can be generated with MakeRand. For example:

42D8A22109876964FEA9CF70F6DDDC54
D0DBA11B7066D7249369E381872CB523
2E55796E50ACFFE979D43196F041B660
DEB1A6139AFBCD333CE4282CDDE043FF
CD84A6A9307AF6B6EC2ED05D1238D3E6
C30F03EF59E75009CB67CB5D43177831
BE31F973FF8DDA36E1F0AC42AC1C0994
899CBC583E7AA20EC72BBEFEC06BBC84

Copy all of the indented text above. Then paste it into MakeKeys, which requires getting the clipboard into the emulated Macintosh, if MakeKeys is run inside Mini vMac. You can get text into the emulated Macintosh using the “Host Paste” command in the Edit Menu of MakeKeys. It is like the “Paste” 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-V. (The “Host Paste” command has similar effect to using ClipIn and then the normal “Paste” command.)

MakeKeys only uses multiples of 128 bits, which equals 32 hexadecimal digits, as on the lines above. Any excess digits are discarded. The above 8 lines add up to 1024 bits.

Before continuing, it would be a good idea to set Mini vMac to All Out speed. Then, on a modern computer, MakeKeys should take less than 5 minutes to run (for a 1024 bit key, as in this example). At 1x speed, or on a real Macintosh Plus, it takes much longer. (Up to a day.) The code of MakeKeys is intended to be simple to understand and maintain, as opposed to fast.

Now, click on the status bar, at the bottom of the window below the editing area. (Choosing the ‘Go’ command from the File menu, of the emulated Macintosh, will also work.)

After a long while, if all is well, the edit area is replaced with a new secret key:

----- BEGIN GRY SECRET KEY -----
Gry+SKAIAAA/AXuKqWsF8Rh5Ie4/vORBnTxYf8FPpRl/n6hpgDgfJ5MAOsAEyePE
nSfjmL3I9emNTuW/iCIHlCl/WkaWyMQZ+NDb1ZsnSLyOKwOycVkR3JwJbUamM4wy
jUuoWV6jzuhqWZobpGPMSN4B3ivHXtcNVm5SVmnAL13T4FCLnx+TxaYRAQAB9n9N
yEapaUzZs3Pdv2zNzs77wWHev2/i0qAIFxBLWI5VvPd6NuXEefADAtAJHhzm9koz
gWrLZ9pVF+D537ewv3/mZJPGS0u7Ino5F3AQ20NhDvX3JwovUSgUkmy59PbJgZ2M
0zNCvKuephFJbT4Pgi2oc7ZT/qZagkNNDErbyLb7NvBAU6+Ezbb2ejBd0C7s5tM4
Eu8DD8MJUOdZXctnyzF4F0Nz+TG+NtqN/0Ks8OGUCRysWLyciQ6iej7+vivHhLxr
wPBA26XYQmRphwlwz6n+VNzd9huh29Ak12ZwgeNpkyO1LIdueVUu6f+sUJYx1Hlg
tkHwE6ax3jPN+5osKOQ8/0Pg3fY/8CwOIpqLB6QDLCtY2ZrfM69mWkw/QTyGNSDU
FIkI5corJbgms5mGMGQ2CyEZZ3RjzDtP5YwVAdzd4oNdKLHsK+k4nA==
------ END GRY SECRET KEY ------

The above secret key is only an example. Normally, a secret key should never be given to anyone else. The random hexadecimal data used to create the secret key should of course also be kept secret.

Again, click on the status bar. The edit area is then replaced with the corresponding public key:

----- BEGIN GRY PUBLIC KEY -----
Gry+PKAIAAA/AXuKqWsF8Rh5Ie4/vORBnTxYf8FPpRl/n6hpgDgfJ5MAOsAEyePE
nSfjmL3I9emNTuW/iCIHlCl/WkaWyMQZ+NDb1ZsnSLyOKwOycVkR3JwJbUamM4wy
jUuoWV6jzuhqWZobpGPMSN4B3ivHXtcNVm5SVmnAL13T4FCLnx+TxaYRAQABwA54
------ END GRY PUBLIC KEY ------

When MakeKeys 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 ClipOut.)

MakeKeys is in part descended from MacPGP source code, which, as far as I can tell, allows derived works for noncommercial use.

MacPGP has various code to try to protect secrets from other software running on the computer. MakeKeys does not, instead you should 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.

MkKeysTl is a command line version of MakeKeys.

MakeKeys is a successor to PMakKeys, which uses a different format that is more or less compatible with MacPGP.

See the Compiling page for instructions on compiling MakeKeys from the source code.

:

If you find MakeKeys useful, please consider helping the Gryphel Project, of which it is a part.

gryphel logo, 1K
www.gryphel.com/c/minivmac/extras/makekeys - feedback
copyright (c) 2018 Paul C. Pratt - last update 10/19/2018