This paper proposes a novel encryption method based on Turbo code. In most communication systems, information encryption and error correction are always independent. While joint encryption and error correction codes combine these two processes into one. In order to provide information encryption and error correction simultaneously, we generate a normal random sequence that controls the puncturing mechanism by a secret key in the Turbo encoder. The puncturing mechanism is dynamic and controlled by the secret key. On the other hand, the key-controlled puncturing mechanism deletes the parity bits randomly, which ensures a high error correction capability for the Turbo code. When decoding, only the legal receiver can generate the same normal random sequence using the secret key, then classify and decrypt the received sequence correctly. While for the illegal receivers, because a wrong secret key results in a wrong puncturing mechanism, and the Turbo decoder is sensitive to the puncturing mechanism, they will get a totally wrong decoding result. Meanwhile, this coding scheme also provides good error correction capability for the encrypted information while it is transmitted in a noisy channel. Experimental results show that the proposed method performs well in terms of both security and error-immunity