In previous data hiding techniques, binary rules are usually used to guide the fine-tuning of the values of basic objects in the host media to hide bit 0 and bit 1. In this paper, we propose a new data hiding technique for gray images based on querying a 256x256 information table. The information table is constructed by cloning a 3x3 basic block, which we call seed block. Eight unsigned integer values between 0 and 7, i.e., 3 bit binary data, are assigned to different elements of the seed block. Each time, a pair of pixels are chosen from a host image, and their pixel values are used as row and column numbers to look up the information table. If element value obtained by looking up the table is equal to the 3 bit binary data to be hidden, the values of the pixel pair will remain unchanged. Otherwise, take this element as the central point, we call it the focus element, to enclose a 3x3 window in the information table. Then in the window, find the element which is equal to the data to be hidden. Finally, update the pixel values of the pair with the row and column numbers of the found element in the window. Since the row and column numbers are in the range of 0-255, the updated pixel values will not overflow. In the proposed algorithm, a pair of pixels can hide 3 bits of information, so the embedding capacity is very high. Since the adjustment of pixel values is constrained in a 3x3 window, the modification amount of pixel values is small. The proposed technique belongs to fragile digital watermarking, so it can be used for image authentication and tamper localization. By the evaluation of data hiding capacity, security, imperceptibility, computational cost and extensibility, this algorithm is superior to existing information hiding techniques. The proposed technique can also be used in color image and audio data hiding.