Patent EP-2421193-A1 (EP)
Inventor: JOYE MARC
IPC: H04L9/30
Filed: 2010-11-23
Abstract: A method for performing an arithmetic operation on a binary Huff curve defined by a set of projective points ( X  :  Y  :  Z ) ∈ P 2 (F 2   m ) satisfying the equation  aX ( Y   2  +  fYZ  +  Z   2 ) =  bY ( X   2  +  fXZ  +  Z   2 ), where  a , b , f  ∈ F* 2   m  and  a  ≠  b . A processor obtains a first finite point    P    = ( x   1 ,  y   1 ) ∈  E , performs the arithmetic operation using the first point    P    to obtain a second point P', and outputs the second point P'. The arithmetic operation comprises at least one of: 
calculating a point inverse using the formula -   P    = ( x̅   1 ,  y̅   1 ) ∈  E  with          x    ‾     1     =                   y   1     ⁢     b   +   a   ⁢     x   1     ⁢     y   1           a   +   b   ⁢     x   1     ⁢     y   1             and          y    ‾     1     =         x   1     ⁢     a   +   b   ⁢     x   1     ⁢     y   1           b   +   a   ⁢     x   1     ⁢     y   1             or the formula -    P    = ( x̅   1 ,  y̅   1 ) ∈  E  with          x   ‾     1     =         y   1     ⁢       a   ^     ⁢     x   1     +   1           β   ^     ⁢     y   1     +   1            and          y   ‾     1     =         x   1     ⁢       β   ^     ⁢     y   1     +   1           α   ^     ⁢     x   1     +   1           , where        α   ^     =       a   +   b       b   ⁢   f           and        β   ^     =       a   +   b       a   ⁢   f             
calculating a point doubling using the formula [2]P =  (x 3 , y 3 )  with x 3  =         f   ⁢     a   +   b     ⁢       x   1     2     ⁢       1   +     y   1       2             b   ⁢     1   +     x   1         2     ⁢       1   +     x   1     ⁢     y   1       2             and        y   3     =       f   ⁢     a   +   b     ⁢       y   1     2     ⁢       1   +     x   1       2             b   ⁢     1   +     y   1         2     ⁢       1   +     x   1     ⁢     y   1       2         ,         
calculating a point addition between the point P and a further finite point    Q    = ( x   2 ,  y   2 ) ∈  E , where    P  ≠  Q ,  using the formula    P    +    Q    = ( x   3 ,  y   3 ) with       x   3     =           x   1     ⁢     y   1     +     x   2     ⁢     y   2       ⁢     1   +     y   1     ⁢     y   2               y   1     +     y   2       ⁢     1   +     x   1     ⁢     x   2     ⁢     y   1     ⁢     y   2                and        y   3     =           x   1     ⁢     y   1     +     x   2     ⁢     y   2       ⁢     1   +     x   1     ⁢     x   2               x   1     +     x   2       ⁢     1   +     x   1     ⁢     x   2     ⁢     y   1     ⁢     y   2           ,       and 
calculating a point addition between the point P and a further finite point Q ( x   2 ,  y   2 ) ∈  E , where    P    may be equal to    Q   , using the formula    P    +    Q    = ( x   3 ,  y   3 ) with       {           x   3         =       b   ⁢       x   1     +     x   2       ⁢     1   +     x   1     ⁢     x   2     ⁢     y   1     ⁢     y   2       +   f   ⁢     a   +   b     ⁢     x   1     ⁢     x   2     ⁢     1   +     y   1     ⁢     y   2           b   ⁢     1   +     x   1     ⁢     x   2       ⁢     1   +     x   1     ⁢     x   2     ⁢     y   1     ⁢     y   2                     y   3         =       a   ⁢       y   1     +     y   2             1   +     x   1     ⁢     x   2     ⁢     y   1     ⁢     y   2       +   f   ⁢     a   +   b     ⁢     y   1     ⁢     y   2     ⁢     1   +     x   1     ⁢     x   2           a   ⁢     1   +     y   1     ⁢     y   2             1   +     x   1     ⁢     x   2     ⁢     y   1     ⁢     y   2                 .           
     Also provided is a processor (10).