First, download finalshell from the official website (it seems to have a new domain, not sure if it was set up by the author, the installation package is in msi format, also not sure what the difference is compared to the original version)
After installation, locate finalshell.jar, use the following command to start, for debugging later use java -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:5005 -jar finalshell.jar
After starting, click on the bottom left, when logging in, enter any account and password, ignore the incorrect password prompt, just need to open offline activation to see the current generated machine code 123@acb33a2719acb54e
The activation algorithm for the new version is: keccak384(machine code + suffix for Advanced/Professional Edition)[12:28], finally provide a python script (python needs to install the pycryptodome library, may encounter errors, refer to CSDN):
from Crypto.Hash import keccak
from Crypto.Hash import MD5
def md5(msg):
hash_obj = MD5.new(msg)
return hash_obj.hexdigest()
def keccak384(msg):
hash_obj = keccak.new(data=msg, digest_bits=384)
return hash_obj.hexdigest()
if __name__ == '__main__':
code = input('Enter machine code: ')
print('Version < 3.9.6 (Old version)')
print('Advanced Edition:', md5(f'61305{code}8552'.encode())[8:24])
print('Professional Edition:', md5(f'2356{code}13593'.encode())[8:24])
print('Version >= 3.9.6 (New version)')
print('Advanced Edition:', keccak384(f'{code}hSf(78cvVlS5E'.encode())[12:28])
print('Professional Edition:', keccak384(f'{code}FF3Go(*Xvbb5s2'.encode())[12:28])