A digital watermarking is a method of embedding an invisible data called watermark into an original data. In this paper, we describe a general watermarking model with common principle and its applications which is classified with the aim of usage. And then, we propose a watermarking model based on the public key system, which compensates some problems in real systems. The main focus of this watermarking system is the authentication of owner`s information which is embedded into the original data and the detection of person who distributes an illegal copy.