Software piracy is a major economic problem since proprietary algorithms are currently hard to protect, both at
the technical as well as the legal level. Function hiding can be used to achieve protection for algorithms against disclosure since encrypted function that can be executed without prior decryption give good solution seemingly unsolvable problems of software protection. In this case, the -program will be executed with the encrypted coefficients and the user won't get the clear-text results, until he send them back to the software producer who decrypt it and send it to the user. This work concerned with development of software protection system based on function hiding protocol. This protocol allows charging clients on a per-usage basis. Moreover, using this approach one will describe a protocol that ensures -under reasonable condition - that only licensed users are able to obtain the clear-text output of the program. The used encryption technique is probabilistic (Goldwasser-Micali) In addition to two supporting algorithms (Plus and Mixed-mult) that are used to allow encrypted function to be executed without needing to prior decryption. The developed system is tested on LAN and proved successful. This approach is fully software based and does not rely on tamper resistant hardware