Precluding Software Piracy Using Asymmetric Cryptography