Thanks to our new overlord ChatGPT, and some not so insignificant additional research/debugging, I managed to understand the custom DES-encryption Alias used, and implement this together with the custom Base58 encoding and more in a C-program, even though I have no programming skills... amazing really! Please no complaints regarding program readability etc., though suggestions welcome. I will try to add some notes to the code later. Let me know if it compiles on Irix, which I have not yet tested, though I guess it should work.
Basically Alias used DES in OFB 1-bit mode (which is somewhat uncommon) to encrypt/decrypt licenses. In addition they added further layers of obfuscation by processing the encrypted string in reverse and more importantly by using bits from the plaintext to modify the IV for each round of decryption/encryption. This was probably so that a standard DES implementation could not be used if the keys and IV were discovered. The keys/IV are different for each version of Alias. I have not included the neccessary keys/IV in this program - you are prompted to provide them yourself. I didn't want to post keys here, to avoid any liability for the forum owner. However keys/IV can be read directly from the Alias binaries without too much work, and can probably be found online.
Basically this tool can help you to generate licenses (or decrypt existing licenses) for any sysid and any feature (if you provide the relevant IV/key and combine this with the license description here:
https://wiki.preterhuman.net/Alias). It could easily be modified further to automate the whole thing. First encrypt the license string, then encode it to Alias58 (custom base58 variant). The program will generate the checksum and prefix character automatically. And there you have a valid license string for your SGI (and possibly IBM if you can find that rare version)...! In theory this applies to all versions back to the ones running on Irix 3 (I have tested Alias 3.1 at least), possibly even 2.4 versions, if they are ever found..!
There are a few other interesting discoveries related to this. Jan-jaap has previously noted that the findkey program uses DES to process an encrypted text file with all the Alias pre-keyed customers FlexLM licenses (at least from Alias 7.5 onwards). This text file can easily be decrypted, as it does not use the custom "AliasDES" DES OFB 1-bit implementation, but standard DES in CFB8 mode. You just need the IV and key again, which are quite easy to find. You can even use OpenSSL to decrypt ths file directly (enc -d -des-cfb8 -iv XXX -K XXX -in Alias.master -out Alias.master.decrypt).
The many pre-key licenses in this file have a format like this:
# prekey info for (getid = XX, sysinfo = XX)
FEATURE AW_A3D sgiawd 7.500 1-jan-0 0 XX\
VENDOR_STRING=A7KpP36tDjhknDriK8MmII HOSTID=XX ck=55
I was not sure what the VENDOR_STRING was, but after checking with my tool, it is clear that it is simply an Alias58 encoded string, without any encryption. Just remove the first character (version character) and last character (checksum character) and run it through the Alias58 decoder included, and you will get what seems to be the features enabled for this specific license. Seems Alias did not use individual FlexLM features at this point, and instead used the vendor string to check for features. I was curious if the vendor_string was actually the customer name, but unfortunately that doesn't seem to be the case...