Reversible data hiding (RDH) is a technique that slightly alters digital media (e.g. images or videos) to embed secret messages while the original digital media can be completely recovered without any error after the hidden messages have been extracted. In the past more than one decade, hundreds of RDH algorithms have been reported, and among these algorithms, the difference histogram shifting (DHS) based methods have attracted much attention. With DHS-based RDH, high capacity and low distortion can be achieved efficiently. But there occurs one problem that, with DHS, the difference values to embed secret bits are explored, and the other difference values are shifted to create vacant spaces, it will cause the difference value histogram changing significantly and draw the attention of steganalyzers. So, this paper proposed a new idea for RDH based on the difference value and with statistical features maintained (SFM) with simple implementation and high scalability, we embed the secret messages by keeping the difference values that need to be modified in the original range, and the other difference values would not be shifted. In addition, we need the original difference values as the key to extract the secret messages. In order to expand the embedding capacity further, we designed two algorithms that embed message in two different difference values and four different difference values, and these two methods are named SFM_A and SFM_B respectively. SFM_B can support greater amount of embedded message than SFM_A, but brings greater changes to the original image, which could lead to the decline of PSNR and SSIM. The experimental results show that through our method, the histogram of difference values is well maintained, and the degree of distortion of the image is improved at the same time.