# Patent

## Title
Authentication method employing elliptic curve cryptography

## Abstract

Disclosed is an authentication method employing elliptic curve cryptography (ECC), applicable to a mobile broadcast TV system having one or more head end systems, at least a transmitter, and at least a mobile set. The authentication method comprises at least one request message from mobile sets simultaneously or in a short period of time arriving at a head end system for authentication; manipulating each broadcast authentication message by ECC; manipulating each service request message by ECC and pairing operation; performing a mutual authentication between the head end system and mobile sets by ECC and pairing operation; and broadcasting one group of authentication messages to all the mobile sets of many requests arrived at the head end system simultaneously or in a short period of time for the same service.

## Background
FIELD OF THE INVENTION
The present invention generally relates to an authentication method employing Elliptic Curve Cryptography (ECC), applicable to mobile broadcast TV systems, mobile pay-TV systems or mobile pay-per-view systems.
BACKGROUND OF THE INVENTION
Mobile broadcast TV has been developed actively in the recent years, and so as the related technologies. With the gradual integration of heterogeneous networks, the convergence service becomes a very important trend. Mobile broadcast TV service is an important service era of the convergence service. In the convergence service, pay service plays an important role of the mobile broadcast TV service.
Digital Video Broadcast (DVB) consortium has been actively promoting mobile broadcast service in the recent years. Mobile TV on broadcasting network is an important approach for mobile services. In DVB, the standard of mobile broadcast TV is defined in DVB-H. At present, mobile broadcast TV has several campuses under active development, which include DVB-H, MediaFLO, ISDB-T, T-DMB.
Mobile broadcast TV is a development which may provide a convergence service of broadcast and telecommunication services. To provide mobile service, DVB-H defines additional features in physical layer from existing terrestrial DVB-T, where one of the features is to process handoff/handover issue. In addition, DVB-H also applies Internet Protocol (IP) to provide multimedia service.
In the terrestrial TV, an illegal TV station may easily use the same frequency to forge an illegal TV station which causes legal TV a grave operation loss. An attacker may also easily and cheaply use the same frequency to forge an illegal TV station or transmitter attacking a legal TV station. Also, without proper and secure authentication mechanism, an impersonation subscriber may steal a service. These security problems also exist in the pay service for mobile broadcast TV. Therefore, a mutual authentication mechanism for pay service of mobile broadcast TV becomes an important mechanism.
Anonymity is an important privacy issue in protecting user information and identification to prevent abuse by unauthorized users. With the actively development of broadcast TV and the convergence of heterogeneous networks, diverse services such as pay-TV, Impulse Pay-Per-View (IPPV), VOD, multimedia services, on-line game, may be provided to the subscribers. The anonymous authentication of mobile broadcast TV also becomes an important security issue. Anonymous identity-based cryptography has been widely applied to network and communication systems.
Authentication is a security mechanism used to identify the subscribers and the legal users. The early pay TV uses a conditional access system (CAS) to operate the service access management through subscriber authentication. In a pay TV system, CAS manages a large amount of authorized subscribers. The CAS employs the entitlement message to manage the authorized subscribers and services. The CAS handle the security of the entitlement and authentication by the entitlement message allocated to subscribers. The entitlement message carries access parameters with authentication information in order to manage the service access.
Because the bandwidth of broadcast is very precious, the efficient utilization of bandwidth to achieve the broadcast efficiency in pay-TV or near-VOD is an important job. In general, the following scenarios may occur in pay-TV. A plurality of users request the same service and the same service arrives at the head end system of CAS in a short period of time or simultaneously. In order to achieve the broadcast efficiency, the service scheduling and program scheduling are necessary and important tasks. Also, efficient use of bandwidth is also important in the service or program scheduling. To achieve efficient handling, the CAS needs to schedule the entitlement messages for the arriving requests.
The early CAS uses a public key cryptosystem or symmetric key cryptosystem to manage the service security. The CAS using the public key cryptosystem uses digital signatures to authenticate the subscribers. The CAS using the symmetric key cryptosystem, such as DES or AES, uses shared secret keys to authenticate the subscribers, but fails to reach the non-repudiation protection. However, in the situation of multiple service operations, the symmetric key technique may suffer insecure risk and fail to reach the non-repudiation protection.
For example, Song et. al. disclosed an E-ticket scheme for pay-TV systems. The E-ticket scheme may achieve the privacy and non-repudiation protection for pay-TV systems. The scheme is based on RSA public key cryptography, and employs an encrypted authentication message with digital signature to execute mutual authentication. This scheme also supports anonymity. Lee et. al. also disclosed related schemes. These techniques all use one-to-one authentication message delivery without proposing an effective measure for the scenario when a plurality of users requesting the same service which arrives at the CAS head end system simultaneously or in a short period of time.
In recent years, the elliptic curve cryptography (ECC) becomes more efficient in same security level, or called key length, than the integer factoring scheme. The pairing technology applied to elliptic curve research has also been disclosed, such as Weil Pairing, Tate Pairing, and so on. These pairing technologies may be applied to encryption, digital signature and authenticated key agreement, and so on. For example, the bilinear pairing technology is applied to the supersingular elliptic curve, bilinear Diffe-Hellman problem, and discrete logarithm problem.
The following describes the technical terminologies and definitions used in ECC. Mathematically, ECC is defined on the finite algebraic structure. To simplify the description, the elliptic curve in the following description is defined on the finite algebraic structure Fp, where characteristic p>3. Elliptic curve E defined on Fp may be simplified as the following form: E: y2=x3+ax+b, where a·bεFp(p>3), and 4a3+27b2≠0. The points on elliptic curve E form a group and the group includes a point at infinity, depicted as O. According to the group definition, any point P of elliptic curve E must satisfy P+(−P)=O. The elliptic curve group is an additive group.
Assume that line l passes two different points P and Q of elliptic curve E. Line l and elliptic curve E intersects at a third point −R, and P+Q=R. If line l is tangent to elliptic curve E, P+P=2P. Generally, point multiplication is defined as Q=kP, where k is an integer. A famous problem, called elliptic curve discrete logarithm problem (ECDLP), is that it is difficult to find an integer k so that Q=kP for a given point Q on elliptic curve E. Many security technologies based on ECC are proposed according to ECDLP. The bilinear pairing technique is a nice scheme to realize the identity-based cryptography. The bilinear pairing technology is a mapping to map a subgroup of points on an elliptic curve to subgroup of elements in a finite field.
SUMMARY OF THE INVENTION
The disclosed exemplary embodiments according to the present invention may provide an authentication method based on elliptic curve cryptography (ECC), applicable to a mobile broadcast TV systems, mobile pay-TV systems or mobile pay-per-view systems. The mobile broadcast TV system at least includes one or more head end systems, at least a transmitter, and at least a mobile set.
In an exemplary embodiment, the disclosed is directed to an authentication method based on ECC. The authentication method comprises: one or more request messages from mobile sets simultaneously or in a short period of time arriving at a head end system for authentication; computing each broadcast authentication message by ECC; computing each service request message by ECC and pairing operation; constructing a mutual authentication between the head end system and mobile sets by ECC and pairing operation; and broadcasting one group of authentication messages to all the mobile sets of many requests arriving at the head end system simultaneously or in a short period of time for the same service.
The above disclosed exemplary embodiments employ the point addition of ECC and bilinear pairing to the authentication parameters so as to achieve the one-to-many authentication message broadcast.
The foregoing and other features, aspects and advantages of the present invention will become better understood from a careful reading of a detailed description provided herein below with appropriate reference to the accompanying drawings.



BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1A shows an exemplary schematic view of the application of an authentication method based on ECC to a mobile broadcast TV system, consistent with certain disclosed embodiments of the present invention.
FIG. 1B shows an exemplary operation of an authentication method based on ECC, consistent with certain disclosed embodiments of the present invention.
FIG. 2 shows a schematic view of an exemplary operation of a head end system in the initialization phase, consistent with certain disclosed embodiments of the present invention.
FIG. 3 shows a schematic view of an exemplary operation of the communication protocol between a head end system and a mobile set in the issue phase, consistent with certain disclosed embodiments of the present invention.
FIG. 4 shows a schematic view of an exemplary operation of the communication protocol between a head end system and a mobile set in the subscription phase, consistent with certain disclosed embodiments of the present invention.
FIG. 5 shows a schematic view of an exemplary operation of the re-authentication protocol between a head end system and a mobile set when a hand-off occurs, consistent with certain disclosed embodiments of the present invention.
FIG. 6A shows an exemplary comparison and analysis of the present invention and a conventional method in terms of communication cost.
FIG. 6B shows an exemplary comparison and analysis of the present invention and a conventional method in terms of computational cost.



DETAILED DESCRIPTION OF THE EXEMPLARY EMBODIMENTS
The disclosed embodiments of the present invention provide a one-to-many authentication message broadcast, and take into account the that scenario that a plurality of users' requests arrive at the head end system simultaneously or in a short period of time for the same service. The subscribers to the pay service of mobile broadcast TV may anonymously authenticate whether the head end system is genuine.
The present invention employs ECC and pairing operation to realize the mobile broadcast TV authentication, and the authentication has the efficient broadcast effect. Through ECC and pairing operations, the efficient broadcast of authentication messages may also be obtained. Besides, through the use of pairing operation and ECC, the attacks from man-in-the-middle or forgeries may also be resisted.
The following describes the technical terminologies, definitions and features of the bilinear pairing operation related to the present invention. Let elliptic curve E be defined over the finite algebraic structure Fp, there exists an isomorphism between a set of certain points on E to a subgroup on Fp. Assume that #E is the number of points in E over Fp. Let n be a prime number such the n|#E, and n and the characteristic p of Fp are mutually prime. E has points of order n; i.e., the point PεE satisfying the equation nP=O, P≠O. Point P is called the generator of the subgroup of E over Fp, and P has an order of n.
Let G1 be a cyclic additive group with a generator P and an order of prime number q, and G2 be a multiplicative group with an order of q. Assume that the discrete logarithm problem in both G1 and G2 is hard to solve. Typically, G1 is a subgroup of a point set on E and G2 is a subgroup of Fp. Let ê be a bilinear mapping, i.e., ê: G1×G1→G2, satisfying and the following three conditions:

    
    
        (1) Bilinearity: ê(P1+P2, Q)=ê(P1, Q) ê(P2, Q), ê(P, Q1+Q2)=ê(P, Q1) ê(P, Q1), and ê(aP, bQ)=ê(P, Q)ab, for all Q, P, P1, P2, Q1, Q2εG1 and a, bεZq*; where Zq* is a mathematical symbol for integer finite field;
        (2) Non-degeneracy: there exists PεG1, such that ê(P, P)≠1; and
        (3) Computability: there exists an efficient algorithm to compute ê(P, Q) in polynomial time.
    
    


The following describes how the present invention employs ECC and pairing operation, and is applicable to the mobile broadcast TV systems, mobile pay-TV systems or mobile pay-per-view systems. FIG. 1A shows an exemplary schematic view of the application of an authentication method based on ECC to a mobile broadcast TV system, consistent with certain disclosed embodiments of the present invention. Referring to FIG. 1A, a mobile broadcast TV system includes a head end system 110, one or more transmitters and one or more mobile sets, such as transmitters 120a, 120b and mobile sets 130a, 130b, 130c. 
Head end system 110, such as a system for handling audio/video or multimedia service, has a power processor. A transmitter may be a base station carrying and transmitting wireless signals to mobile sets. A mobile set is a user device requesting services. The mobile broadcast TV system uses 3G/Universal Mobile Telecommunications System (UMTS) or Global System for Mobile Communication (GSM) as a return channel. The return channel is connected to the head end system for providing interactive service.
Whenever a user requests a service, the corresponding mobile set must transmit messages to head end system 110. The message consists of authentication and the service request for user authentication. When head end system 110 authenticates that the mobile set is legal, the head end system will broadcast the authentication information to each mobile set. After the mobile set confirms that the head end system is genuine, the mobile set may obtain the service.
When a mobile set moves to a coverage area of a new transmitter, known as hand-off, the mobile set has to perform a re-authentication. To provide efficient processing, assume that an authentication server 140 with a service scheduler needs to do a scheduling for the arriving authentication request messages to head end system 110. FIG. 1B shows an exemplary operation of an authentication method based on ECC, consistent with certain disclosed embodiments of the present invention.
Refer to both FIG. 1A and FIG. 1B. As label 115 of FIG. 1B shows, at least a request message from mobile sets will arrive at head end system 110 for authentication simultaneously or in a short period of time. According to the authentication method of the present invention, each broadcast authentication message is manipulated with ECC and pairing operation, shown as label 135 of FIG. 1B. Each request message from the mobile sets is manipulated with ECC, shown as label 125 of FIG. 1B. From ECC and pairing operation, head end system 110 and the mobile set perform mutual authentication, shown as label 145 of FIG. 1B.
There may exist requests from a plurality of mobile sets arriving at the head end system simultaneously or in a short period of time, and among these requests some may request the same service to the head end system. For example, m users ur1, ur2, ur3, . . . , urm requesting the same service arrive at the head end system for authentication. In the disclosed exemplary embodiment according to the present invention, the authentication process of these m users ur1, ur2, ur3, . . . , urm requesting the same service is called one authentication process, with the same service depicted as V. In other words, for the requests of the same service, an authentication broadcast message is broadcasted to all the corresponding requesting mobile sets, shown as label 155 of FIG. 1B. The head end system has to efficiently execute the authentication process simultaneously or within a short period of time.
The following defines the symbols for describing the present invention.

    
    
        QH: the public key of the head end system;
        QI: the public key of the i-th user;
        PI: the private key of the i-th user;
        PAH: the authentication public key of the head end system;
        PAI: the authentication public key of the i-th user;
        PKs: the share secret between the head end system and the mobile set;
        ks: secret key generated by the i-th mobile set;
        kh: secret key generated by the head end system;
        H1(•): one way hash function mapping {0, 1}*→G1;
        H2(•):one way hash function mapping {0, 1}*→G2°
    
    


The authentication method based on ECC of the present invention may include four phases: the initialization phase, the issue phase, the subscription phase and the hand-off authentication. With the aforementioned symbol definitions, the following describes the execution of each phase.
In the initialization phase, the head end system is responsible for the public and private information of all the entities. The head end system has to generate a plurality of parameters to construct a secure communication system. It shows a schematic view of an exemplary operation of a head end system in the initialization phase, consistent with certain disclosed embodiments of the present invention.
Referring to FIG. 2, when a request message form a user, e.g., i-th user, arrives at head end system 110 for authentication, as shown in step 210, the head end system selects an elliptic curve E of order q and a base point P, and makes the elliptic curve E, order q and base point P known to the public. In the step 220, the public key QH of the head system and the public key QI of the user are computed. For example, public key QH may be computed with identity IDH of the head end system, and public key QI may be computed with identity IDI of i-th user, such as QH=H1(IDH), QI=(IDI). In step 230, authentication public key PAH of the head end system and authentication public key PAI and private key PI of the i-th user are computed, for example, by selecting an xεZq* to compute PAH=x·P and selecting an sεZq* to compute PAI=s·P and PI=s·QI, where x and s are both secret. Step 240 is to select a secret value kh, khεZq*, to compute an initial public key PHs of the authentication public key of the head end system and make the initial public key PHs known to the public, for example, by using secret value kh and authentication public key PAH to compute PHs=kh·PAH.
When a mobile user requests services, the authentication method enters the issue phase. In the execution of the issue phase, the mobile set issues a service set-up request to launch an execution of mutual authentication. FIG. 3 shows a schematic view of an exemplary operation of the communication protocol between a head end system and a mobile set in the issue phase, consistent with certain disclosed embodiments of the present invention.
Referring to the exemplary operation of FIG. 3, step 310 is for the mobile set to encrypt authentication parameters idi, Pi, Ci, PIs, Xi with secret value kh and transmit authentication message {idi, Pi, Ci, PIs, Xi, V} to the head end system. The encryption to the authentication parameters may employ ECC technique, such as, PIs=ks·PAI, Pi=ks·P, Ci=ks·PI+ks·QH, Xi=ks·PHs·idi=IDI+ks·PAH. Step 320 is for the service scheduler of the head end system to receive the service requests, schedule these service requests and identify the m users requesting the same service V to the head end system.
In step 330, the head end system performs sub-steps 331a, 331b, 332a, and 332b for the request of each user i of the m users. Sub-step 331a is to decrypt authentication parameter idi and check its legitimacy, for example, by employing ECC to decrypt authentication parameter idi. Sub-step 331b is to authenticate the legitimacy of the i-th mobile set, for example, by employing pairing operation to check whether the equation ê(Ci, PHs)=ê(QI, PKs)·ê(QH, Xi) holds. If the equation holds, the head end system will accept that the i-th mobile set is legitimate, i.e., genuine; otherwise, the head end system rejects the authentication. This is reasonable because PKs=kh·x·PIs=kh·x·ks·s·P=ks, s·kh·x·P=ks·s·PHs, which is the share secret between the head end system and the i-th user.
Sub-step 332a is to encrypt authentication parameter Yi with secret value kh, and x, for example, by employing ECC to compute Yi=kh·x·QI. In sub-step 332b, the head end system employs the point addition of ECC on authentication parameter Yi of each of the m users and public key QI of each user to compute YG and QG of one group of authentication parameters, for example, by employing ECC to sum up authentication parameter Yi of each of the m users and public key QI of each user, i.e.,




  
    
      Y
      G
    
    =
    
      
        
          ∑
          
            i
            =
            1
          
          m
        
        ⁢
        
          
            (
            
              Y
              i
            
            )
          
          ⁢
          
            
          
          ⁢
          and
          ⁢
          
            
          
          ⁢
          
            Q
            G
          
        
      
      =
      
        
          ∑
          
            I
            =
            1
          
          m
        
        ⁢
        
          (
          
            Q
            I
          
          )
        
      
    
  
  ;




and treat YG and QG as one group of authentication parameters. In other words, the head end system provides the pairing bilinear operation to the mobile set through the iterative point addition of ECC to improve the broadcast effect.

After all the m users finish the above sub-steps, step 340 is executed. In step 340, the head end system computes authentication message {YG, QG, θ} by a mapping between the same service V and a ticket identity θ of the same service V, and broadcasts the authentication message {YG, QG, θ} to the m users requesting the same service V. The head end system may employ the pairing from ECC to compute the ticket identity θ, for example, by first computing the service ticket α of the requested service V of the m users, α=H2(V, YG), then performing pairing with QG to compute θ, θ=ê(PHs, QG)⊕α, where H2 is a one-way hash function.
In step 350, the mobile set corresponding to the i-th user receives authentication message {YG, QG, θ}, performs authentication of the head end system and computes the ticket identity of the i-th user. The mobile set may authenticate the head end system through verifying whether the equation ê(YG, ks·s·P)=ê(QG, PKs) holds or not. If the equation holds, the mobile set of the i-th user accepts that the head end system is legitimate, i.e., genuine; otherwise, rejects the authentication and terminates the service process. This is correct, proven as follows:




  
    
      
        
          
            e
            ^
          
          ⁡
          
            (
            
              
                Y
                G
              
              ,
              
                
                  k
                  s
                
                ·
                s
                ·
                P
              
            
            )
          
        
        =
        
        ⁢
        
          
            e
            ^
          
          ⁡
          
            (
            
              
                
                  ∑
                  
                    i
                    =
                    1
                  
                  m
                
                ⁢
                
                  (
                  
                    Y
                    i
                  
                  )
                
              
              ,
              
                
                  k
                  s
                
                ·
                s
                ·
                P
              
            
            )
          
        
      
    
  
  
    
      
        =
        
        ⁢
        
          
            e
            ^
          
          ⁡
          
            (
            
              
                
                  ∑
                  
                    I
                    =
                    1
                  
                  m
                
                ⁢
                
                  (
                  
                    
                      k
                      h
                    
                    ·
                    x
                    ·
                    
                      Q
                      I
                    
                  
                  )
                
              
              ,
              
                
                  k
                  s
                
                ·
                s
                ·
                P
              
            
            )
          
        
      
    
  
  
    
      
        =
        
        ⁢
        
          
            
              e
              ^
            
            ⁡
            
              (
              
                
                  
                    ∑
                    
                      I
                      =
                      1
                    
                    m
                  
                  ⁢
                  
                    (
                    
                      Q
                      I
                    
                    )
                  
                
                ,
                
                  
                    k
                    s
                  
                  ·
                  s
                  ·
                  P
                
              
              )
            
          
          ⁢
          
            
              k
              h
            
            ·
            x
          
        
      
    
  
  
    
      
        =
        
        ⁢
        
          
            e
            ^
          
          ⁡
          
            (
            
              
                
                  ∑
                  
                    I
                    =
                    1
                  
                  m
                
                ⁢
                
                  (
                  
                    Q
                    I
                  
                  )
                
              
              ,
              
                
                  k
                  s
                
                ·
                s
                ·
                
                  k
                  h
                
                ·
                x
                ·
                P
              
            
            )
          
        
      
    
  
  
    
      
        =
        
        ⁢
        
          
            e
            ^
          
          ⁡
          
            (
            
              
                
                  ∑
                  
                    I
                    =
                    1
                  
                  m
                
                ⁢
                
                  (
                  
                    Q
                    I
                  
                  )
                
              
              ,
              
                P
                Ks
              
            
            )
          
        
      
    
  
  
    
      
        =
        
        ⁢
        
          
            e
            ^
          
          ⁡
          
            (
            
              
                Q
                G
              
              ,
              
                P
                Ks
              
            
            )
          
        
      
    
  




where PKs=ks·s·PHs=ks·s·kh·x·P=kh·x·ks·s·P=kh·x·PIs.

Besides, the mobile set may compute the i-th service θi by the equation θi=θ·ê(PHs, (QG+(−QI)))−1, and store the service θi. This is correct, proven as follows:




  
    
      
        
          
            e
            ^
          
          ⁡
          
            (
            
              
                P
                Hs
              
              ,
              
                Q
                G
              
            
            )
          
        
        =
        
        ⁢
        
          
            e
            ^
          
          ⁡
          
            (
            
              
                P
                Hs
              
              ,
              
                (
                
                  
                    Q
                    1
                  
                  +
                  
                    Q
                    2
                  
                  +
                  ...
                  +
                  
                    Q
                    I
                  
                  +
                  ...
                  +
                  
                    Q
                    m
                  
                
                )
              
            
            )
          
        
      
    
  
  
    
      
        =
        
        ⁢
        
          
            
              e
              ^
            
            ⁡
            
              (
              
                
                  P
                  Hs
                
                ,
                
                  Q
                  I
                
              
              )
            
          
          ·
          
            
              e
              ^
            
            ⁡
            
              (
              
                
                  P
                  Hs
                
                ,
                
                  (
                  
                    
                      Q
                      1
                    
                    +
                    
                      Q
                      2
                    
                    +
                    ...
                    +
                    
                      Q
                      I
                    
                    +
                    ...
                    +
                    
                      Q
                      m
                    
                    -
                    
                      Q
                      I
                    
                  
                  )
                
              
              )
            
          
        
      
    
  
  
    
      
        =
        
        ⁢
        
          
            
              e
              ^
            
            ⁡
            
              (
              
                
                  P
                  Hs
                
                ,
                
                  Q
                  I
                
              
              )
            
          
          ·
          
            
              e
              ^
            
            ⁡
            
              (
              
                
                  P
                  Hs
                
                ,
                
                  (
                  
                    
                      Q
                      G
                    
                    -
                    
                      Q
                      I
                    
                  
                  )
                
              
              )
            
          
        
      
    
  




Then, ê(PHs, QG)⊕α=(ê(PHs, QI)⊕α)·ê(PHs, (QG−QI))
and θ=θi·ê(PHs, (QG−QI));
therefore, θi=θ·ê(PHs, (QG+(−QI)))−1 
After the head end system finishes step 340, the head end system may choose a secret to compute a new authentication public key PHs for the next authentication process, as shown in step 360. For example, by choosing a new secret value kh to compute new the authentication public key PHs=kh·PAH.
Following the above disclosed, the present invention may also prove the following items.

    (1) In efficient authentication from ECC protocol (E-AEP for short), if a mobile set is a legitimate set, then the head end system is able to authenticate the mobile set. Proven as follows:
    
        According to the aforementioned ECDLP, without knowing secret value ks, the adversary cannot forge the valid PIs and Xi, and therefore cannot compute Ci=ks·PI+ks. Also, according to the aforementioned steps of head end system authentication, after the head end system receives message {idi, Pi, Ci, PIs, Xi, V}, the head end system will verify whether the equation ê(Ci, PHs)=ê(QI, PKs)·ê(QH, Xi) holds or not, and the correctness of the equation is also proven by the present invention. Therefore, the head end system is able to authenticate the mobile set.
    
    
    (2) In E-AEP, if a head end system is a legitimate head end system, then the mobile set is able to authenticate the head end system. Proven as follows:
    
        According to the aforementioned step 350, without knowing the secret value kh and x, the adversary cannot forge the valid Yi, and therefore cannot forge valid YG. Without knowing the secret value ks, the adversary cannot forge PIs. Because QI is obtained through IDI and hash function H1(•), the adversary cannot forge valid QI and QG. If the adversary tries to forge the valid θ as θ=ê(PHs, QG)⊕α, the adversary will face the discrete logarithm problem in the bilinear pairing and cannot obtain the valid θ. The i-th mobile set, after receiving message {YG, QG, θ}, will check whether the equation ê(YG, ks·s·P)=ê(QG, PKs) holds, and the correctness of the equation is also proven by the present invention. Therefore, the mobile set is able to authenticate the head end system.
    
    
    (3) E-AEP can provide anonymous service. Proven as follows:
    
        Because identity IDI of the i-th user is translated as QI by hash function H1(•), PI=s·QI is obtained through encryption with secret value s by an elliptic curve public key system, and Ci=ks·PI+ks is obtained through encryption with secret value ks by an elliptic curve public key system, there is no information about identity IDI in the message {idi, Pi, Ci, PIs, Xi, V}. On the other hand, identity IDI is translated as QI by hash function H1(•), and Yi=kh·x·QI is obtained through encryption with secret value kh and x by an elliptic curve public key system; therefore,
    
    






  
    Y
    G
  
  =
  
    
      ∑
      
        i
        =
        1
      
      m
    
    ⁢
    
      (
      
        Y
        i
      
      )
    
  




is an encrypted value. QG is computed by





  
    
      Q
      G
    
    =
    
      
        ∑
        
          I
          =
          1
        
        m
      
      ⁢
      
        (
        
          Q
          I
        
        )
      
    
  
  ,




and θ is computed through pairing operation θ=ê(PHs, QG)⊕α; therefore, no information regarding identity IDI is exposed in message {YG, QG, θ}. So, it is difficult for the adversary to solve identity IDI with the hash function security.

When the valid message is received, the handheld user may use the ticket identity to subscribe some services. When the user tries to subscribe a certain service V, the user has to perform the communication protocol of the subscription phase. FIG. 4 shows a schematic view of an exemplary operation of the communication protocol between a head end system and a mobile set in the subscription phase, consistent with certain disclosed embodiments of the present invention.
Referring to FIG. 4, the mobile set encrypts authentication parameters Zi, PIs, Xi with secret value Ks, and transmits subscription message {Zi, PIs, Xi, θi} to head end system 110, as shown in step 410. In step 415a, head end system 110 receives and schedules the re-authentication requests. In step 415b, head end system 110 identifies the l requests arriving at head end system 110. Then, head end system 110 performs a loop procedure 420 of subscription communication protocol. That is, for each subscriber of the l requests, head end system 110 performs sub-steps 420a, 420b and 420c. Sub-step 420a is to perform the user authentication after receiving the subscription message, and verify whether the equation ê(Zi, PHs)=ê(QI, PKs)·ê(QH, Xi) from pairing operation holds. Sub-step 420b is to verify whether the equation θi=ê(PHs, QI)⊕α from pairing operation holds to confirm the ticket identity θi is legitimate.
In sub-step 420a, if the equation from pairing operation is confirmed, the user issuing the subscription message is genuine. In sub-step 420b, if the equation from pairing operation is confirmed, the user obtains a service right.
In loop procedure 420, head end system 110 may employ the following operations on elliptic curve E to manipulate authentication parameters Yi and QI into YG and QG, and manipulate purchase identity α into λG.

Yi=kh·x·QI 

YG=YG+Yi 

QG=QG+QI 

λG=λG+α

In other words, head end system 110 employs the iterative point additions of authentication parameters Yi and QI and purchase identity α, and the computation of γG=ê(PHs, QG)⊕λG to produce an authentication message {YG, QG, γG}, as shown in sub-step 420c. In step 430, the authentication message {YG, QG, γG} is broadcasted to the mobile sets.

The mobile set may re-authenticate head end system 110 through the confirmation of the equation ê(YG, ks·s·P)=ê(QG, PKs) from pairing operation, as shown in step 440. If the equation is confirmed, the re-authenticated head end system 110 is genuine.
If the equation ê(YG, ks·s·P)=ê(QG, PKs) is confirmed, the mobile set may generate respective authorization key γi through the equation γi=γG·ê(PHs, (QG+(−QI)))−1, as shown in step 450. In other words, the mobile set may derive respective authorization key γi through the iterative additions and the pairing operations of the authentication parameters. Then, the mobile set may obtain the service by the respective authorization key γi and its private key.
When the mobile set moves to a coverage area of a different transmitter, a hand-off occurs and the mobile set has to perform the re-authentication communication protocol. In a hand-off, a forged transmitter or TV station may forge as a genuine transmitter or TV station. FIG. 5 shows a schematic view of an exemplary operation of the re-authentication protocol between a head end system and a mobile set when a hand-off occurs, consistent with certain disclosed embodiments of the present invention.
Referring to FIG. 5, as shown in step 510, the mobile set encrypts authentication parameters Ci, PIs, Xi with a new secret value ks, such as by employing ECC, and transmits a re-authentication message {Ci, PIs, Xi, θi} to head end system 110. In step 520, head end system 110 receives and schedules a plurality of requests, such as, by service scheduler to schedule, and identifies the m requests arriving at head end system 110 for the same service. Then, for each request, the following sub-steps are executed.
In sub-step 531a, head end system 110 authenticates the i-th mobile set, such as by restoring QI, PHs, α of i-th mobile set and verifies whether the equation ê(Ci, PHs)=ê(QI, PKs)·ê(QH, Xi) from pairing operation holds. In sub-step 531b, head end system 110 verifies the legitimacy of the ticket ID θi, such as by checking whether the equation θi=ê(PHs, QI)⊕α from pairing operation holds.
In sub-step 532a, the ECC may be applied to encrypt authentication parameter Yi with secret value kh and x, such as Yi=kh·x·QI. In sub-step 532b, for authentication parameter Yi of each of the m users and public key QI of each user, the head end system employs the point addition of ECC to compute a group of authentication parameters YG and QG, such as by employing ECC to sum up authentication parameter Yi of each of the m users and to sum up public key QI of each user.
In step 540, head end system 110 broadcasts authentication message {YG, QG} to the m users. In step 550, the mobile set receives authentication message {YG, QG} and authenticates head end system 110, such as, by checking whether the equation ê(YG, ks·s·P)=ê(QG, PKs) from pairing operation holds.
The above disclosed embodiments of the present invention may provide a secure authentication protocol to resist attacks, such as attacks from man-in-the-middle, attacks from forgers or attacks of replay in E-AEP. The following proves how the present invention resists the attacks.
(1) Resists attacks from forgers: Without knowing secret value ks, an attacker cannot forge a valid message {idi, Pi, Ci, PIs, Xi, V}. If the attacker tries to crack secret value ks to forge PIs and Xi, the attacker will face the discrete logarithm problem in bilinear pairing operation, i.e., PIs=ks·PAI and Xi=ks·PHs. If the attacker tries to crack secret value ks to forge a Ci, the attacker will also face a discrete logarithm problem in bilinear pairing operation, i.e., Ci=ks·PI+ks·QH. On the way from the head end system to the mobile set, without knowing secret values kh and ks, the attacker cannot forge a valid message {YG, QG, θ}. If the attacker tries to crack secret value kh to forge YG, the attacker will face a discrete logarithm problem in bilinear pairing operation, i.e.,




  
    Y
    G
  
  =
  
    
      
        ∑
        
          i
          =
          1
        
        m
      
      ⁢
      
        (
        
          Y
          i
        
        )
      
    
    =
    
      
        ∑
        
          I
          =
          1
        
        m
      
      ⁢
      
        
          (
          
            
              k
              h
            
            ·
            x
            ·
            
              Q
              I
            
          
          )
        
        ·
      
    
  




If an attacker tries to crack secret value ks to forge PIs, the attacker will face a discrete logarithm problem in bilinear pairing operation, i.e., PIs=ks·PAI. Because of the hash function security, it is difficult for the attacker to forge QG as




  
    Q
    G
  
  =
  
    
      
        ∑
        
          I
          =
          1
        
        m
      
      ⁢
      
        (
        
          Q
          I
        
        )
      
    
    =
    
      
        ∑
        
          I
          =
          1
        
        m
      
      ⁢
      
        
          (
          
            
              H
              1
            
            ⁡
            
              (
              
                ID
                I
              
              )
            
          
          )
        
        .
      
    
  




If an attacker tries to forge θ as θ=ê(PHs, QG)⊕α, the attacker has to know the valid value of ê(PHs, QG) and α. Also, without knowing s, x, ks and kh, the attacker cannot forge θ. Because of the hash function security, it is difficult for the attacker to forge α as α=H2(V, YG).
(2) Resists attacks from man-in-the-middle: Because the head end system and the mobile set shares secret value PKs. The head end system computes PKs=kh·x·PIs=kh·x·ks·PAI=kh·x·ks·s·P through the equation PKs=kh·x·PIs. Without knowing ks and kh, the attacker cannot forge valid PKs. If the attacker forges {idi, Pi, Ci, PIs, Xi, V} without knowing secret value ks, the head end system will identify that ê(Ci, PHs)≠ê(QI, PKs)·ê(QH, Xi). That is, the equation does not hold. This is because the attacker does not have the share secret value PKs. The head end system will reject authentication and terminate the service process. On the other hand, the mobile set compute PKs=ks·s·PHs=ks·x·kh·PAH=ks·s·kh·x·P through the equation PKs=ks·s·PHs. If the attacker does not know secret value kh and x, and forges {YG, QG, θ}, the mobile set will identify that the equation ê(YG, ks·s·P)=ê(QG, PKs) does not holds. The mobile set will reject authentication and terminate the service process.
(3) Resists attacks of replay: To resist the attacks of replay, an exemplary easy way is to embed timestamps into the authentication message. However, time synchronization is required for the timestamp scheme. In the present invention, because secret value kh of each authentication process is randomly chosen by the head end system, {idi, Pi, Ci, PIs, Xi, V} message is random and may be randomly changed. Similarly, secret value ks of each authentication process is randomly chosen, and {YG, QG, θ} message is random and may be randomly changed. Therefore, the present invention may greatly reduce the possibility of attacks of replay.
FIG. 6A and FIG. 6B respectively show an exemplary comparison of the communication cost and computational cost between the disclosed embodiments of the present invention and a conventional technique, i.e., Song's method. In the FIG. 6A, assumes that ID and timestamp length are both 32 bits, the length of the largest prime number in modular operation is 1024 bits, and the length of a point in ECC is 320 bits.
As shown in the exemplary comparison and analysis of FIG. 6A, the present invention performs better in terms of communication cost. A better broadcast effect is achieved for the authentication broadcast message. Because the disclosed embodiments of the present invention take into the account the scenario that a plurality of requests to the same service may occur simultaneously or in a short period of time. As shown in FIG. 6A, the head end system of the present invention only requires to broadcast a 0.96K-bit authentication broadcast message {YG, QG, θ} for m requests arriving simultaneously or in a short period of time, while the Song's method requires m*2.779K-bit authentication delivery message. Therefore, the disclosed embodiments of the present invention are more efficient in broadcasting messages to the subscribers.
In the exemplary comparison and analysis in FIG. 6B, e is the pairing operation, MG1 is the multiplication in G1, AG1 is the addition in G1, E% is the modular index and M% is the modular multiplication. FIG. 6B shows the computational cost of the head end system and the mobile set in the scenario that m requests arriving simultaneously or in a short period of time. In Song's method, no above scenario is taken into account. However, the disclosed embodiments of the present invention take the one-to-many scenario into account. As shown in the exemplary comparison and analysis of FIG. 6B, the present invention performs better in terms of computational cost and broadcast effect for authentication message.
In the issuing phase, it may be seen from FIG. 6B, the disclosed embodiments of the present invention only require a 1.92K-bit authentication message, while Song's method requires 3.8K-bit to issue a certification message. In broadcasting, when m requests arrive simultaneously or in a short period of time, the present invention only requires a 0.96K-bit authentication broadcast message, while Song's method requires m*2.78K-bit. In the subscription phase, the disclosed embodiments of the present invention only require a 1.28K-bit subscription message, while Song's method requires 4.82K-bit to complete a subscription message. In broadcasting, the disclosed embodiments of the present invention only require 0.96K-bit message, while Song's method requires m*3.77K-bit message.
When m requests to the same service arrive simultaneously or in a short period of time, the disclosed embodiments according to the present invention only requires for broadcasting a message by the head end system in an authentication process. While in Song's method, m messages are required. Therefore, the present invention may provide an efficient method for message broadcast to the mobile sets.
In summary, the disclosed exemplary embodiments of the present invention may provide an authentication method from ECC. In the case that m requests arrive the head end system simultaneously or in a short period of time, the authentication method only employs an authentication broadcast message by the pairing operation to achieve effective broadcasting of authentication messages and performs better in terms of both communication cost and computational cost. The authentication method employs ECC and has inherited the high security and small key size of the ECC so as to achieve the mutual authentication between the head end system and the mobile set, as well as provide anonymous service. The authentication method may resist the attacks from man-in-the-middle and forgers, and reduce the attach probability from the replay.
Although the present invention has been described with reference to the exemplary embodiments, it will be understood that the invention is not limited to the details described thereof. Various substitutions and modifications have been suggested in the foregoing description, and others will occur to those of ordinary skill in the art. Therefore, all such substitutions and modifications are intended to be embraced within the scope of the invention as defined in the appended claims.

## Claims

1. An authentication method employing elliptic curve cryptography (ECC), applicable to a mobile broadcast TV system, said mobile broadcast TV system at least having one or more head end systems, at least one or more transmitters and one or more mobile sets, said authentication method comprising the steps of:
one or more request messages from said one or more mobile sets arriving at a head end system of said one or more head end systems for authentication simultaneously or in a short period of time;
manipulating each request message from said one or more mobile sets by employing ECC;
manipulating each broadcast authentication message by employing ECC and pairing operations;
said head end system and said one or more mobile sets performing mutual authentication by employing the pairing operation and ECC; and
broadcasting an authentication message for a plurality of request messages for a same service arriving simultaneously or in a short period of time to said one or more mobile sets;
wherein said authentication method further includes execution of initialization phase, execution of issue phase, execution of subscription phase and execution of handoff authentication; and in said execution of issue phase, communication protocol between said one or more mobile sets and said head end system further includes:
said one or more mobile sets encrypting a plurality of authentication parameters with a secret value kh, and transmitting an authentication message to said head end system for a V service, wherein the mobile set corresponding to an i-th user encrypts said authentication parameters including idi, Pi, Ci, PIs, Xi with said secret value kh, and transmitting said authentication message including {idi, Pi, Ci, PIs, Xi, V} to said head end system;
said head end system receiving a plurality of user requests and scheduling said plurality of user requests, and identifying m user requests that request for said V service, m being a positive integer;
for each request from said i-th user of said m user requests, said head end system checking legitimacy of authentication parameter idi to authenticate legitimacy of said i-th user;
said head end system broadcasting an authentication broadcast message to those mobile sets corresponding to said m user requests;
the mobile set corresponding to said i-th user, after receiving said authentication broadcast message, authenticating said head end system and computing a ticket identity θi of said i-th user; and
said head end system computing a new authentication public key for a next authentication process.

2. The method as claimed in claim 1, wherein when a request message from a user arrives at said head end system for authentication, said execution of initialization phase further includes:
selecting an elliptic curve with an order, and a base point, and making said elliptic curve, said order and said base point known to public;
computing a public key of said head end system and a public key of said user, respectively;
computing an authentication public key of said head end system and an authentication public key and a private key of said user, respectively; and
selecting a secret value of another authentication process to compute an initial public key of said authentication public key of said head end system of said another authentication process, and making said initial public key known to the public.

3. The method as claimed in claim 1, wherein said broadcasting an authentication broadcast message to those mobile sets corresponding to said m user requests further includes:
for each request from said i-th user of said m user requests, encrypting authentication parameter Yi of said i-th user by using secret values kh and x;
for authentication parameter Yi and public key QI of said i-th user, producing a group of authentication parameters YG and QG; and
computing a ticket identity θ mapped to said V service, and broadcasting an authentication message {YG, QG, θ} to the mobile sets corresponding to said m user requests.

4. The method as claimed in claim 3, wherein a service identity a of a service subscribed by said m user requests is computed, and the pairing operation is performed on said service identity α and QG to obtain said ticket identity θ.

5. The method as claimed in claim 4, wherein said service identity α is obtained through a hash function H2(V, YG).

6. The method as claimed in claim 3, wherein said group authentication parameters YG and QG are computed with point addition of ECC.

7. The method as claimed in claim 1, wherein in said execution of subscription phase, the communication protocol between said one or more mobile sets and said head end system further includes:
the mobile set corresponding to said i-th user encrypting three parameters Zi, PIs, Xi by using a new secret value Ks, and transmitting a subscription message {Zi, PIs, Xi, θi} to said head end system;
said head end system receiving and scheduling a re-authentication request, and identifying a plurality of requests arriving at said head end system;
for said plurality of requests, said head end system executing a loop procedure of subscription communication protocol, said loop procedure at least including authenticating each i-th user that sends a subscription message for said plurality of requests and identifying legitimacy of identity θi of said i-th user, and generating an authentication message {YG, QG, γG} through a plurality of iterative additions of authentication parameters Yi and QI and subscription identity α;
broadcasting said authentication message {YG, QG, γG} to said one or more mobile sets;
said one or more mobile sets performing re-authentication of said head end system by checking whether an equation from the pairing operation holds; and
each of said one or more mobile sets generating its own authentication key, respectively.

8. The method as claimed in claim 7, wherein said checking whether the equation from the pairing operation holds is to perform the authentication of said i-th user.

9. The method as claimed in claim 7, wherein said checking whether the equation from the pairing operation holds is to check whether said identity θi is legitimate.

10. The method as claimed in claim 8, wherein if said equation from the pairing operation holds, said i-th user is legitimate.

11. The method as claimed in claim 10, wherein if said equation from the pairing operation holds, said i-th user obtains service right of said V service.

12. The method as claimed in claim 1, said authentication method executes a hand-off authentication when the mobile set corresponding to said i-th user moves to a coverage area of a different transmitter.

13. The method as claimed in claim 12, wherein in the execution of said hand-off authentication of said V service, the communication protocol between said one or more mobile sets and said head end system further includes:
the mobile set corresponding to said i-th user encrypting three authentication parameters Ci, PIs, Xi, by using a new secret value ks, and transmitting a re-authentication message {Ci, PIs, Xi, θi} to said head end system;
said head end system receiving and scheduling a plurality of requests, and identifying n requests arriving at said head end system for said V service, n being a positive integer;
for each request from a j-th user of said n requests, said head end system executing authentication of said j-th user and identifying the legitimacy of a ticket identity θj of said j-th user;
said head end system broadcasting an authentication broadcast message to those mobile sets corresponding to said n requests; and
the mobile set corresponding to said i-th user receiving said authentication broadcast message and authenticating said head end system.

14. The method as claimed in claim 13, wherein said broadcasting an authentication broadcast message to those mobile sets corresponding to said n requests further includes:
encrypting authentication parameter Yi of the i-th user by using secret values kh and x;
for authentication parameter Yi and public key QI of the i-th user of said n requests, computing a group of authentication parameters YG and QG; and
broadcasting an authentication message {YG, QG} to those mobile sets corresponding to said n user requests.

15. The method as claimed in claim 14, wherein said group of authentication parameters YG and QG are computed with point addition of ECC.

16. The method as claimed in claim 13, wherein before authenticating said i-th user, public key QI of said i-th user and service identity α and authentication public key PHs of said head end system are restored.

17. The method as claimed in claim 13, wherein said authentication method authenticates said i-th user and identifies the legitimacy of the ticket identity θi of said i-th user by employing the pairing operation.

18. The method as claimed in claim 1, wherein said authentication method provides an anonymous service on user identity.