To protect the patient information in medical images, this article proposes a robust watermarking algorithm for medical images based on Harris-SURF-DCT. First, the corners of the medical image are extracted using the Harris corner detection algorithm, and then, the previously extracted corners are described using the method of describing feature points in the SURF algorithm to generate the feature descriptor matrix. Then, the feature descriptor matrix is processed through the perceptual hash algorithm to obtain the feature vector of the medical image, which is a binary feature vector with a size of 32 bits. Secondly, to enhance the security of the watermark information, the logistic map algorithm is used to encrypt the watermark before embedding the watermark. Finally, with the help of cryptography knowledge, third party, and zero-watermarking technology, the algorithm can embed the watermark without modifying the medical image. When extracting the watermark, the algorithm can extract the watermark from the test image without the original image. In addition, the algorithm has strong robustness to conventional attacks and geometric attacks. Especially under geometric attacks, the algorithm performs better.