Mapping a bit string $L$ to elliptical curve point in say prime field $\mathbb Z_p$. A simple way would be to use an integer mapping function that maps $L$ to a number $\{1, q\}$ where $q$ is the order of the group and then return $q[B]$, where $B$ is a base point. But it would be unacceptable for the purpose I want.

Here is my design for some mental poker or any card game "https://crypto.stackexchange.com/questions/87159/a-card-game-for-mental-poker-or-any-other-card-game" as it should not allow anyone to compute the discrete logarithm of one point base on another point in the group. So we use a function which maps $L$ to a number $\{1,p\}$ call it $x$ and a bit $b$. If any point $P = (x,y)$ exists on the curve, return $[h]P'^*$ where $h$ is the cofactor of the curve and $P' = (x,y)$ if $b=0$ $(x,-y)$ otherwise $(x,y)$. Otherwise set $L = H_{0,..|L|}(L)$ and repeat the process in a loop until you can find a point. It should be secure (Infeasible to calculate the Elliptical curve discrete logarithm of one point over another as long as the curve is good enough) right?

  • $\begingroup$ Koblitz encoding? $\endgroup$ – kelalaka Dec 28 '20 at 11:44
  • $\begingroup$ Thank you for this. I would have preferred non reversible but I can simply use a hash function before doing doing this encoding $\endgroup$ – Manish Adhikari Dec 28 '20 at 12:15

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.