1. A method for securing data between a client device and a server comprising: obtaining input text at an intermediate module; processing the input text at said intermediate module to obtain processed text by applying an order-preserving transformation, said order-preserving transformation comprising: generating order information by applying an order-preserving and secret-key dependent function in the form of a numerical monotonously increasing function to information related to said input text, said order information indicative of a relative order of the input text within a set of possible input texts according to a collation rule; and transmitting the processed text to the server, wherein the applying of the function includes: obtaining an input numeric value based on at least a portion of the input text; providing an input range and an output range; dividing the input and output ranges into two input ranges and two output ranges based on a secret key; selecting a pair of input and output ranges from the divided ranges according to which of the input ranges includes the input numeric value; iteratively repeating the dividing and selecting steps until the output range is smaller than a predetermined parameter, said output range being a final output range; and returning an output numeric value lying within the final output range.