Our main purpose in this paper is to present an effective and secure on-line software transaction protocol. On-line software transaction should meet some requirements such as security and nonrepudiation. Our research will be mainly based on public cryptosystem, digital signature and nonrepudiation protocol to establish an on-line software transaction protocol.