The invention provides for a cryptographic method for digital signature.
A set S1 of k polynomial functions Pk(x1, . . . , xn+v, y1, . . . , yk) are supplied as a public key, where k, v, and n are integers, x1, . . . , xn+v are n+v variables of a first type, and y1, . . . , yk are k variables of a second type, the set S1 being obtained by applying a secret key operation on a given set S2 of k polynomial functions P′k(a1, . . . , an+v, y1, . . . , yk), a1, . . . , an+v designating n+v variables including a set of n “oil” and v “vinegar” variables.
A message to be signed is provided and submitted to a hash function to produce a series of k values b1, . . . , bk. These k values are substituted for the k variables y1, . . . . , yk of the set S2 to produce a set S3 of k polynomial functions P″k(a1, . . . , an+v), and v values a′n+1, . . . , a′n+1, are selected for the v “vinegar” variables. A set of equations P″k(a1, . . . , a′n+v)=0 is solved to obtain a solution for a′1, . . . , a′n and the secret key operation is applied to transform the solution to the digital signature.