The authors analyzed and solved possible singularity for an improved MFE multivariate public key (Medium Field multivariate public key Encryption) and studied the use of it in software copy protection. They used their new MFE multivariate public key cryptosystem to design an algorithm of software registration, in which a given plaintext can result in multi-cipher-text. The breaking is hard because the ciphertext is variable. The ability to withstand algebraic attacks is enhanced. The dependence of registration string on the fingerprints of machine prevents any registration string from being shared by multiple machines.