GB2407740A - Identifier-based signcryption - Google Patents

Identifier-based signcryption Download PDF

Info

Publication number
GB2407740A
GB2407740A GB0415779A GB0415779A GB2407740A GB 2407740 A GB2407740 A GB 2407740A GB 0415779 A GB0415779 A GB 0415779A GB 0415779 A GB0415779 A GB 0415779A GB 2407740 A GB2407740 A GB 2407740A
Authority
GB
United Kingdom
Prior art keywords
party
function
elements
key
ida
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
GB0415779A
Other versions
GB0415779D0 (en
GB2407740B (en
Inventor
Liqun Chen
John Malone-Lee
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Development Co LP
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of GB0415779D0 publication Critical patent/GB0415779D0/en
Priority to US10/977,342 priority Critical patent/US20050135610A1/en
Publication of GB2407740A publication Critical patent/GB2407740A/en
Application granted granted Critical
Publication of GB2407740B publication Critical patent/GB2407740B/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/606Protecting data by securing the transmission between two devices or processes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3066Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
    • H04L9/3073Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves involving pairings, e.g. identity based encryption [IBE], bilinear mappings or bilinear pairings, e.g. Weil or Tate pairing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/321Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2107File encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Algebra (AREA)
  • Computing Systems (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Storage Device Security (AREA)

Abstract

Identifier-based signcryption methods and apparatus are disclosed both for signing and encrypting data, and for decrypting and verifying data. The signcryption methods use computable bilinear mappings and may be based, for example, on Weil or Tate pairings. Known, efficient, signing/verifying processes (22, 25) are judiciously combined with particular encryption/decryption processes (23, 24) to achieve efficient, yet secure, signcryption methods.

Description

Identifier-Based Signcryption
Field of the Invention
The present invention relates to methods and apparatus for implementing an identifier- based signcryption cryptographic scheme. A "signcryption" scheme is one that combines both data encryption and signature to obtain private and authenticated communications.
Background of the Invention
As is well known to persons skilled in the art, in "identifier-based" cryptographic methods a public, cryptographically unconstrained, string is used in conjunction with a public key of a trusted authority to carry out tasks such as data encryption and signing. The complementary tasks, such as decryption and signature verification, require the involvement of the trusted authority to carry out a computation based on the public string and a private key that is related to its public data. In message- signing applications and frequently also in message encryption applications, the string serves to "identify" a party (the sender in signing applications, the intended recipient in encryption applications); this has given rise to the use of the label "identifier- based" or "identity-based" generally for these cryptographic methods. However, at least in certain encryption applications, the string may serve a different purpose to that of identifying the intended recipient and, indeed, may be an arbitrary string having no other purpose than to form the basis of the cryptographic processes. Accordingly, the use of the term "identity- based" or "identifier- based" herein in relation to cryptographic methods and systems is to be understood simply as implying that the methods and systems are based on the use of a cryptographically unconstrained string whether or not the string serves to identify the intended recipient.
Furthermore, as used herein the term "string" is simply intended to imply an ordered series of bits whether derived from a character string, a serialized image bit map, a digitized sound signal, or any other data source.
The current most practical approach to building identifier-based cryptosystems uses bilinear pairings. A brief overview of pairings-based cryptography will next be given. In the present specification, Gil and Go denote two algebraic groups of large prime order l in which the discrete logarithm problem is believed to be hard and for which there exists a nondegenerate computable bilinear map A, for example, a Tate pairing or Weil pairing.
Note that Gil is a [l]-torsion subgroup of a larger algebraic group Go and satisfies [l]P = 0 for all P e Got where O is the identity element, l is a large prime, and [*cofactor = number of elements in Go. The group G2 is a subgroup of a multiplicative group of a finite field.
For the Weil pairing:, the bilinear map p is expressed as A: Go x Go G2.
The Tate pairing can be similarly expressed though it is possible for it to be of asymmetric 1 0 form: I: Go xGo G2 Generally, the elements of the groups Go and Go are points on an elliptic curve (typically, though not necessarily, a supersingular elliptic curve); however, this is not necessarily the case.
For convenience, the examples given below assume the use of a symmetric bilinear map (I: Go x G1 G2) with the elements of Go being points on an elliptic curve; however, these particularities, are not to be taken as limitations on the scope ofthe present invention.
As is well known to persons skilled in the art, for cryptographic purposes, modified forms of the Weil and Tate pairings are used that ensure p(P,P) HI where P Go; however, for convenience, the pairings are referred to below simply by their usual names without labeling them as modified.
As the mapping between Go and G2 is bilinear, exponents/multipliers can be moved around.
For example if a, b, c Z (where Z is the set of all integers) and P. Q Go then p(aP, bQ)c = p(aP, cQ)b = p(bP, cQ)a = p(hP, aQ)c = p(cP, aQ)b = p(cP, bQ)a = p(abP, Q)c = p(ahP, cQ) = p(P, abQ)C = p(cP, abQ) = p(abcP, Q) = p(P, abcQ) = p(P, Q) A normal public/private key pair can be defined for a trusted authority: the private key is s where s Z' and the public key is (P. R) where P and R are respectively master and derived public elements with P e At end R A, PandRbeingrelatedbyR=sP With the cooperation of the trusted authority, an identifier-based public key / private key pair < QLD, SID >can be defined for a party with identity string ID where: QID, SID Gl SID = SQID QID = HI(ID) Hl is a hash: {0,1} * G Further background regarding Weil and Tate pairings and their cryptographic uses (such as for encryption and signing) can be found in the following references: - G. Frey, M. Muller, and H. Ruck. The Tate pairing and the discrete logarithm applied to elliptic curve cryptosystems. IEEE Transactions on Information Theory, 45(5):1717-1719, 1999.
- D. Boneh and M. Franklin. Identity based encryption from the Weil pairing. In Advances in Cryptology - CRYPTO 2001, LNCS 2139, pp.213-229, Springer-Verlag, 2001.
With regard to the latter reference, it may be noted that this reference describes both a fully secure encryption scheme using the Weil pairing and, as an aid to understanding this fully secure scheme, a simpler scheme referred to as "BasicIdent" which is acknowledged not to be secure against a chosen ciphertext attack.
As already mentioned above, the present invention is concerned with signcryption cryptographic schemes. A "signcryption" primitive was proposed by Zheng in 1997 in the paper: "Digital Signcryption or How to Achieve Cost(Signature & Encryption) << Cost(Signature) + Cost(Encryption) ." Y. Zheng, in Advances in Cryptology - CRYPTO 97, volume 1294 of Lecture Notes in Computer Science, pages 165- 179, Springer-Verlag, 1997. This paper also proposed a discrete logarithm based scheme.
Tdentity-based signcryption is signcryption that uses identity-based cryptographic algorithms. A number of identity-based signcryption schemes have been proposed such as described in the paper "Multipurpose IdentityBased Signcryption: A Swiss Army Knife for Identity-Based Cryptography" X. Boyen, in Advances in Cryptology - CRYPTO 2003, volume 2729 of Lecture Notes in Computer Science, pages 382-398, Springer-Verlag, 2003. This paper also proposes a security model for identity-based signcryption that is based on six algorithms SETUP, EXTRACT, ENCRYPT, DECRYPT and VERIFY. For convenience of describing the prior art and the preferred embodiments of the invention, a similar set of six algorithms is used herein and the functions of each of these algorithms will now be described with reference to Figure 1 ofthe accompanying drawings; it should, however, be understood that the present invention is not intended to be limited to implementations using such a set of six algorithms.
In Figure 1 the algorithms SETUP 20 and EXTRACT 21 are associated with a trusted authority, the algorithms SIGN 22 and ENCRYPT 23 with a party A, and the algorithms DECRYPT 24 and VERIFY 25 with a party B. The functions of these algorithms are as follows: - SETUP - On input of a security parameter k this algorithm produces a pair <params, s> where "params" are the global public parameters for the system and s is the master secret key. The public parameters "params" include a global public keyR, a description of a finite message space fU, a description of a finite signature space S. and a description of a finite ciphertext space C It is assumed below that "params" are publicly known and are therefore not explicitly provided as input to the other algorithms.
- EXTRACT - On input of an identity IDU and the master secret key s, this algorithm computes a secret key Su corresponding to IDES.
- SIGN - On input of <m, SA>, this algorithm produces a signature won m under IDA and some ephemeral state data r.
- ENCRYPT - On input of < SA, IDB, m, A, r>, this algorithm produces a ciphertext c.
This is the encryption under IDB's public key of m and of IDA's signature on m.
- DECRYPT - oninputof<c', SB>, this algorithm produces (m', IDA', Owherem'is a message and <f is a purported signature on m' of party with identity IDA'.
- VERIFY - On input of m', IDA', of>, this algorithm outputs True if c' is the signature of the party represented by IDA on m, and it outputs False otherwise.
The marking of a quantity with ' (as in m) is to indicate that its equivalence to the unmarked quantity has to be tested.
The above individual algorithms 20 to 25 have the following consistency requirement. If: (m,,r) SIGN(m,SA) c ENCRYPT(SA,IDB,m,,r) (m', A', DECRYPT(c, SB) Then the following must hold: IDA' = IDA m' = m True VERY(m:IDA, It should be noted that other ways of modelling identitybased signcryption exist; for example, the signing and encryption algorithms may be treated as a single signcryption algorithm as are the decryption and verification algorithms. However, the above-described
model will be used in the present specification.
The implementation of a signcryption scheme using the above six algorithms is straight- forward: - a trusted authority first executes SETUP; - the trusted authority executes EXTRACT to provide party A with the latter's secret key c, . HA, - party A executes SIGN to form a signature cr on a message m, and ENCRYPT to encrypt the message m together with the signature; - the trusted authority executes EXTRACT to provide party B with the latter's secret key SB; - party B executes DECRYPT to recover m', d and a sender identity, and then VERIFY to verify the signature.
It will be appreciated that the execution of EXTRACT to provide SB can be carried out at any time before DECRYPT is run.
The specific identity-based signcryption scheme described in the abovereferenced paper by Boyen is based on bilinear pairings with the algorithms being implemented as follows:
SETUP
- Establish public parameters Gil, G2, l, Hand the following cryptographic hash functions: H': {0, 1} kit G' H2: {O'l}ko nit z* H3:G2{O,lko H4: G2 Zl Hs: G. {0,1} k, n where: ko is the number of bits required to represent an element of Go; kit is the number of bits required to represent an identity; and n is the number of bits of a message to be signed and encrypted.
- Choose P such that <P> = Gil that is, P is a generator for the cyclic group G'.
- Choose s uniformly at random from Z' . - Compute the global public key R sP.
EXTRACT
To extract the private key for user U with IDES {0,1} ken: - compute the public key Qu HI(IDu) - compute the secret key Su sQu
SIGN
For user A with identity IDA to sign a message m {O,l}n with private key SA corresponding to public key QA HI(iDA) - choose r uniformly at random from z' and compute: Am rQA - compute: h H2(X 1l m) where 1l indicates concatenation 5.J (r+h)SA return r and the signature fir= <X, J>.
ENCRYPT
For user A with identity IDA to encrypt message m, using r and output by SIGN, for user B with identity IDB: - compute: QB H,(IDB) W P (SA, QB) t H4(W) You tX u w - compute: f = H3(U) 63 J v = Hs(J) (IDA 1I m) - return the ciphertext c: <Y. f, v>.
DECRYPT
For user B with identity IDH to decrypt ciphertext c': <Y',f, vie using SB SHI(IDB): - compute: u p (Y. SB) J' f (33 H3(u - compute: H5(J) V' to recover string: IDA' || m' - compute: QA HI(IDAB) W P(QA, SB) I' H4(w:) X (t)-l y - return the message m', the signature of= <Xt, JI>, and the identity IDA 'ofthe purported sender.
VERIFY
To verify that the signature on message m'is that of user A where A has identity IDA: - compute: h' - H2(X'llm) - check whether: p (P. J) = p (R. X + h'QA:) and, if so, return True, else return False.
The foregoing signature algorithm SIGN is based on an efficient signature scheme proposed in the paper "An Identity-Based Signature from Gap DiffieHellman Groups" J. C. Cha and J. H. Cheon, in Public Key Cryptography PKC 2003, volume 2567 of Lecture Notes in Computer Science, pages 18-30, Springer-Verlag, 2003.
It is an object of the present invention to provide an identity-based signcryption scheme with improved efficiency.
Summarv of the Invention According to one aspect of the present invention, there is provided an identifier-based signcryption method in which a first party associated with a first element QA signcrypts subject data m intended for a second party associated with a second element QB, the first and second elements being formed from identifier strings IDA IDS of the first and second parties respectively such that the first and second elements are both members of an algebraic group Go with at least one of these elements being in a subgroup Go of Go where Go is of prime order l and in respect of which there exists a computable bilinear map A; the method comprising the first party: (a) signing m by computing:
PITA
where r is randomly chosen in Z.; h - H2(C(at least Xand m)) where H2: {0, 1} * - z, and C' () is a deterministic combination function, Jew (r+h)SA where SA = SQA is a private key supplied by a trusted authority and s is a secret key held by the trusted authority; (b) encrypting m and signature data by computing: w as the bilinear mapping of elements rSA and QB, and f - Enc(w, C2(at least J and m)) where Enc() is a symmetric-key encryption function using w as key, and C2() is a reversible combination function; (c) outputting ciphertext comprising X and I: The signature step is based on the same signature algorithm as used by the Boyen prior art signcryption scheme described above; however, the encryption step uses a more efficient algorithm to that of Boyen. In fact, analysis shows that the encryption step uses an algorithm similar to the "Basicldent" encryption algorithm described in the above mentioned paper by Boneh and Franklin. However, the way the encryption step is carried out with respect to the signature step now ensures that the signcryption method of the invention is secure against a chosen ciphertext attack unlike the "BasicIdent" algorithm itself.
According to another aspect ofthe present invention, there is provided an identifier-based signcryption method in which a second party associated with a second element QB decrypts and verifies received ciphertext <X,f> that is purportedly a signcryption of subject data m by a first party associated with a first element QA, the first and second elements being formed from identifier strings IDA, IDB of the first and second parties respectively such that the first and second elements are both members of an algebraic group Go with at least one of these elements being in a subgroup G' of Go where G is of prime order l and in respect of which there exists a computable bilinear map A; the method comprising the second party: (a) decrypting the received ciphertext by computing: w'as a bilinear mapping of elements X and SB where SB = SQB is a private key supplied by a trusted authority, s is a secret key held by the trusted authority; Dec(w'J') where Dec() is a symmetric-key decryption function using w'as key, with at least quantities J' and m' teeing recovered from the result; (b)verifying that the message is from the first party by computing: QA H (IDA where HI() is a hash function; h' - H2(C(at least: X' and m)) where H2: {0,1} * - Z! and C() is a deterministic combination function, and then checking whether: p (P. J) = p (R. X + h QA) where P is an element of Gil and R = sP is a public key element formed by the trusted authority.
It will be appreciated by persons skilled in the art that the check carried by the second party and expressed above as: P(P, J) = p(R, Y+ hQA) can be expressed in a variety of different forms due to the bilinear nature of the mapping p with each form of expression having a corresponding computational implementation. All implementations of the equivalent expressions effectively perform the same check and accordingly the foregoing statement of the invention is not to be read as restricted by the form of expression used to specify the check.
The present invention also encompasses apparatus, systems and computer program products embodying the methods of the invention.
Brief Description of the Drawines
Embodiments of the invention will now be described, by way of nonlimiting example, with reference to the accompanying diagrammatic drawings, in which: Figure 1 is a diagram illustrating component algorithms of an identity-based signcryption scheme according to a priorart proposal; and Figure 2 is a diagram of a system embodying the present invention.
Best Mode of Carrying Out the Invention Figure 2 illustrates a system in which a first computing entity 100 associated with a party A is arranged to sign and encrypt a message m and send it to a second computing entity 1 10 associated with party B for decryption and verification of the signature. The system employs a signcryption scheme with the entity 100 using a secret SA based on the identity of party A and entity 1 10 using a secret SB based on the identity of party B; these secrets SA, SB are securely provided by a trusted-authority computing entity 120 to the entities 100, 110 respectively. The entities 100, 110 and 120 inter-communicate, for example, via the internet or other communications infrastructure 51, by direct point-to-point communication, or by data transfer effected using a portable storage medium; it is also possible that two or more of the entities reside on the same computing platform.
The signcryption scheme implemented by the Figure 2 system will be described below in terms of the six algorithms SETUP, EXTRACT, SIGN, ENCRYPT, DECRYPT, and VERIFY described above and depicted in Figure 1, it being appreciated that other models for describing the Figure 2 signcryption scheme are also possible.
SETUP
- Establish public parameters Gil, G2, q, l and the following cryptographic hash functions: Hi: {O,l}k Go H2 {0,1 kr,+n z*' H3: G2 {0 1 k +k'+n where: ho is the number of bits required to represent an element of Gil; kit is the number of bits required to represent an identity; and n is the number of bits of a message to be signed and encrypted.
- Choose P such that <P> = hi that is, P is a generator for the cyclic group G. - Choose s uniformly at random from z/ . - Compute the global public key R sP.
EXTRACT
To extract the private key for user U with IDU {0,1}k': - compute the public key QU H[(IDU) - compute the secret key Su sQu Thus, user A has a public key QA HI (IDA) and private key SA SQA, and user B has a public key QB H(IDs) and private key SB SQB
SIGN
For user A with identity IDA to sign a message m {O,I}n with private key SA corresponding to public key QA H(IDA): - choose r uniformly at random from Z.' and compute: X - rQA - compute: h H2(X 11 m) Jew ( - h)SA return r and the signature cr= <X, J>.
ENCRYPT
For user A with identity IDA to encrypt message m, using r and output by SIGN, for user B with identity IDB: - compute: QB HI(IDB) W P (rSA' QB) compute: fin H3(w)(JllIDA11 m) - return the ciphertext c: <X, f>.
DECRYPT
For user B with identity IDB to decrypt ciphertext c': <Xt,f> using SR: compute: W P (X, SB) - compute: f 03 H3(w) which is taken to be the string: J' 1l IDA' 1l m' from which the individual components are then be recovered; - return the message m the signature = <X', J'> and the identity IDA'ofthe purported 1 0 sender.
VERIFY
To verify user A's signature CT on message m' where A has identity IDA': compute: QA H(IDA) h' - H2(XtIIm) - check whether: P (P,J) = p (R. X'+ h QA) and, if so, return True, else return False.
As regards application of the above algorithms to the system shown in Figure 2, it will be appreciated that SETUP and EXTRACT are run by the trusted authority entity 120, SIGN and ENCRYPT by the entity 100 associated with party A,and DECRYPT and VERIFY by the entity 120 associated with party B. As already noted above, the EXTRACT algorithm is, of course, run twice to provide the secrets SA and SB for the parties A and B respectively, this typically only being done for each party A, B after the trusted authority has checked the entitlement of that party to the related identity IDA, IDR (it is noted that in many applications SH will only be generated after party B has received the signcrypted message - in other words, it is not required that all steps of EXTRACT be carried out together before another of the algorithms is commenced).
It will be appreciated that the functionality of the described algorithms will generally be implemented as program code running on the relevant computing entity, this latter typically being built around a general purpose program-controlled processor, however, it is also possible to provide dedicated hardware for executing at least some of the cryptographic processes involved.
Table 1 below gives comparative figures for the efficiency of the Figure 2 signcryption scheme used by the Figure 2 system (this scheme being denoted by "IBSC" for Identifier- Based Signcryption), and the Boyen signcryption scheme described in the introduction (denoted "MIBS" for Multipurpose Identity-Based Signcryption). Only the computational effort is compared since bandwidth requirements are identical, and only the dominant operations are considered, namely multiplications in Gil (abbreviated to "mls"), exponentiations in G2 (abbreviated to "exps"), pairing computations (abbreviated to "cps"), inversions in F' (abbreviated to "invs"). The term F is used to denote the multiplicative
group of the field of l elements where IG1I = l.
c,ign/Encry at D ecrypt/Ve ify Scheme Gl rnis G2 exps p cps Gl rnis p cps F invs q Number of Dommant 3 1 1 2 4 1 MIBS Operations Timing 121.7 ms 184.4 ms Number of 3 0 1 3 0 Dominant IBSC Operations Timing 116.6 ms 124.2 ms
TABLE 1
Both the number of dominant operations are listed and comparative timings for signing/encryption and decryption/verification. The timings were obtained for an instantiation of G1, G2 and p using the supersingular curve E: y2 = X3 + X defined over Fq where y iS a 512-bit prime. This curve has q+1 points and the value of q was chosen such that q+1 has a 1 60-bit prime factor l. In this case the group hi is the subgroup of order l in E(Fq) and G2 is the l-th roots of unity in F q2. The same computing platform was used for (tM) all operations, in this case a 667MHz G4 PowerPC running implementations written in C. As can be seen from Table 1, the IBSC scheme is significantly more efficient, particularly during decryption/verification, than the prior-art MIBS scheme.
It will be appreciated that many variants are possible to the above described embodiments of the invention. For example, in the ENCRYPT algorithm used in Figure 2, the computation: f - H3(W)ffl(J||IDA|Im) can be replaced by any symmetric-key encryption process Enc(w, J 1l IDA 1I m) taking w as the encryption key for encrypting the string (J 1l IDA 1I m); any deterministic processing carried out on w before it is used in the underlying encryption algorithm is taken to reside in Enc(). In this case, in DECRYPT the corresponding computation: f (13 H3(w) is replaced by the corresponding symmetric-key decryption operationDec(w', J' 1l IDA'1l m using w'as the key.
In the embodiment described above with reference to Figure 2, the ciphertext is anonymous in that the identity of the signer is not discernible except by party B; this is as a result of the identity IDA of party A being concatenated with m and J for encryption. If anonymity is not required, then the identity IDA of party A can be sent unencrypted as a separate element (any change to this identity before delivery to party B resulting in the verification step failing).
It will be appreciated that the order of concatenation of concatenated components does not matter provided this is known to both parties A and B. Indeed, these components can be combined in ways other than by concatenation. Thus, the concatenation carried out during signing and verification can be replaced by any deterministic combination function, whilst the concatenation carried out during encryption can be replaced by any combination function that is reversible (as the decryption process needs to reverse the combination done in the encryption process). It is also possible to include additional components into the set of components subject to combination.
It will be further appreciated that the message m can comprises any subject data including text, an image file, a sound file, an arbitrary string, etc. In the foregoing description of embodiments of the invention it has been assumed that all the elements P. QA and QB (and their derivatives R. SA, SB) are members of Gil and that the bilinear map p has the form: p:GxGr - G2 with both the Well and Tate pairings being suitable implementations of the map. In fact, it is also possible for either one the elements QA, QB not to be restricted to Gil provided it is in Go and further provided that the other of the elements is in Gil; in this case, the bilinear map can be of the form: p:GxGo - G2 with the Tate pairing being a suitable implementation. Where it is QA that is unrestricted to Gil, then the order of the elements in the pairings used for determining w and w' in the foregoing embodiment described with respect to Figure 2 should be reversed (the given order being suitable for QB being unrestricted to Gil), It will be appreciated that different versions of the hash function H. () would need to be used for converting the identities IDA and IDB into QA and QB, one version generating an element in Gil and the other generating an element in Go but not necessarily within Gil.

Claims (25)

1. An identifier-based signcryption method in which a first party associated with a first element QA signcrypts subject data m intended for a second party associated with a second element QB, the first and second elements being formed from identifier strings IDA IDB of the first and second parties respectively such that the first and second elements are both members of an algebraic group Go with at least one of these elements being in a subgroup G' of Go where hi is of prime order l and in respect of which there exists a computable bilinear map A; the method comprising the first party: (a) signing m by computing: X - rQA where r is randomly chosen in z'; h - H2(C(at least Xand m)) where H2: {0,1} * - z, and Cat) is a deterministic combination function, Jan (r+h)SA where SA = SQA is a private key supplied by a trusted authority and s is a secret key held by the trusted authority; (b) encrypting m and signature data by computing: w as the bilinear mapping of elements rSA and QB, and f - Enc(w, C2(at least J and m)) where Enc() is a symmetric-key encryption function using w as key, and C2() is a reversible combination function; (c) outputting ciphertext comprisingXandf:
2. A method according to claim 1, wherein in step (b) the set of quantities to which the combination function C2() is applied comprises at least J. m and the identity IDA of the first party, whereby this identity is encrypted in the ciphertext.
3. A method according to claim 1, wherein in step (c) the identity IDA of the first party is output in unencrypted form along with X and f:
4. A method according to any one ofthe preceding claims, wherein the function C() is a concatenation function.
5. A method according to any one of the preceding claims, wherein the function C2() is a concatenation function.
6. A method according to any one of the preceding claims, wherein the symmetric-key encryption function Enc() effects at least the followings operations: - forming a hash of the key w; - forming an exclusive-OR of the hash of w with the output of the combination function c2().
7. A method according to any one of the preceding claims, wherein both the first and second elements QA, QB are in the subgroup GI and the bilinear mapp is of the form: p:GxG - G2 where G2 is a subgroup of a multiplicative group of a finite field.
8. A method according to claim 7, wherein the bilinear map is a Well or Tate pairing.
9. A method according to any one of claims 1 to 6, wherein only one of the first and second elements QA, QB is restricted to the subgroup Gil and the bilinear map p is of the form: p:GxGo - G2 where G2 is a subgroup of a multiplicative group of a finite field.
10. A method according to claim 9, wherein the bilinear map is a Tate pairing.
11. Apparatus for carrying out the method of any one of the preceding claims.
12. A computer-readable medium storing a computer program arranged to condition a program-controlled computer, when executed by the latter, to carry out the method of any one of claims 1 to 10.
13. A method according to any one of claims 1 to 10, wherein the second party on receiving ciphertext components X, f purportedly from the first party as identified by identity IDA: S (d) decrypts the received ciphertext by computing: w' as a bilinear mapping of the elements and SB where SB = SQB is a private key supplied to the second party by the trusted authority, and the order position of SB in the mapping is the same as for QB in the mapping effected during computation of w, Dec(w'J') where Dec() is a symmetric-key decryption function complimenting Enc(), with the result being subject to a reverse of the combination function C2() whereby to recover at least: J' and m'; (e) verifies that the message is from the first party by computing: QA HI(IDA) where H'() is a hash function; h' H2(C'(at least: X and m)) and then checking whether: p (P,J) = p (R. X'+ h QA:) where P is an element of G] and R = sP is a public key element formed by the trusted authority.
14. A system comprising data-sending apparatus for carrying out the method of anyone of claims 1 to 10, data-receiving apparatus for carrying out the steps of claim 13, and trusted authority apparatus for providing the global public key R and the private keys SA and SB.
15. An identifier-based signcryption method in which a second party associated with a second element QB decrypts and verifies received ciphertext <X2f> that is purportedly a signcryption of subject data m by a first party associated with a first element QA, the first and second elements being formed from identifier strings IDA IDB of the first and second parties respectively such that the first and second elements are both members of an algebraic group Go with at least one of these elements being in a subgroup G' of Go where G. is of prime order l and in respect of which there exists a computable bilinear map A; the method comprising the second party: (a) decrypting the received ciphertext by computing: w'as a bilinear mapping of elements X and SB where SB = SQB is a private key supplied by a trusted authority, s is a secret key held by the trusted authority; Dec(w 'I) where Dec() is a symmetric-key decryption function using w'as key, with at least quantities J' and m' being recovered from the result; (b)verifying that the message is from the first party by computing: QA H I(IDA where Hl() is a hash function; h' - H2(C(at least: X1 and m)) where H2: {0,1} * - Z.' and C() is a deterministic combination function, and then checking whether: p (P. J') = p (R. Xt + h QA) where P is an element of Gil and R = sP is a public key element formed by the trusted authority.
16. A method according to claim 15, wherein in step (a) the identity IDA'ofthe first party is also recovered from the result provided by the decryption function Dec().
17. A method according to claim 16, wherein the identity IDA' ofthe first party is received in unencrypted form along with X'andf.
18. A method according to any one of claims 15 to 17, wherein the function C() is a concatenation function.
19. A method according to any one of claims 15 to 18, wherein the symmetric-key encryption function Dec() effects at least the followings operations: - forming a hash of the key w', - forming an exclusive-OR of the hash of w'withf.
20. A method according to any one of claims 15 to 19, wherein both the first and second elements QA, QB are in the subgroup Gil and the bilinear map p is of the form: p:GxG - G2 where G2 is a subgroup of a multiplicative group of a finite field.
21. A method according to claim 20, wherein the bilinear map is a Well or Tate pairing.
22. A method according to any one of claims 15 to 19, wherein only one of the first and second elements QA, QB is restricted to being in the subgroup Gil and the bilinear map p is ofthe form: p:GxGo - G2 where G2 is a subgroup of a multiplicative group of a finite field.
23. A method according to claim 22, wherein the bilinear map is a Tate pairing.
24. Apparatus for carrying out the method of any one of claims 1 S to 23.
25. A computer-readable medium storing a computer program arranged to condition a program-controlled computer, when executed by the latter, to carry out the method of any one of claims 15 to 23.
GB0415779A 2003-11-01 2004-07-15 Identifier-based signcryption Expired - Fee Related GB2407740B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US10/977,342 US20050135610A1 (en) 2003-11-01 2004-10-29 Identifier-based signcryption

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GBGB0325527.0A GB0325527D0 (en) 2003-11-01 2003-11-01 Identifier-based signcryption

Publications (3)

Publication Number Publication Date
GB0415779D0 GB0415779D0 (en) 2004-08-18
GB2407740A true GB2407740A (en) 2005-05-04
GB2407740B GB2407740B (en) 2005-12-14

Family

ID=29725778

Family Applications (2)

Application Number Title Priority Date Filing Date
GBGB0325527.0A Ceased GB0325527D0 (en) 2003-11-01 2003-11-01 Identifier-based signcryption
GB0415779A Expired - Fee Related GB2407740B (en) 2003-11-01 2004-07-15 Identifier-based signcryption

Family Applications Before (1)

Application Number Title Priority Date Filing Date
GBGB0325527.0A Ceased GB0325527D0 (en) 2003-11-01 2003-11-01 Identifier-based signcryption

Country Status (1)

Country Link
GB (2) GB0325527D0 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2490407A (en) * 2011-04-29 2012-10-31 Ibm Joint encryption using base groups, bilinear maps and consistency components
WO2014173288A1 (en) * 2013-04-26 2014-10-30 天地融科技股份有限公司 Encryption/decryption device and information processing method and system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003017559A2 (en) * 2001-08-13 2003-02-27 Board Of Trustees Of The Leland Stanford Junior University Systems and methods for identity-based encryption and related cryptographic techniques
GB2390516A (en) * 2002-07-05 2004-01-07 Hewlett Packard Development Co Generating a cryptographic key

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003017559A2 (en) * 2001-08-13 2003-02-27 Board Of Trustees Of The Leland Stanford Junior University Systems and methods for identity-based encryption and related cryptographic techniques
GB2390516A (en) * 2002-07-05 2004-01-07 Hewlett Packard Development Co Generating a cryptographic key

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
http://citeseer.ist.psu.edu/nalla03signcryption.html, "Signcryption scheme for identity-based Cryptosystems", Nalla D. and Reddy K. C., 04/09/2003 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2490407A (en) * 2011-04-29 2012-10-31 Ibm Joint encryption using base groups, bilinear maps and consistency components
GB2490407B (en) * 2011-04-29 2013-11-06 Ibm Joint encryption of data
US8654975B2 (en) 2011-04-29 2014-02-18 International Business Machines Corporation Joint encryption of data
US8661240B2 (en) 2011-04-29 2014-02-25 International Business Machines Corporation Joint encryption of data
WO2014173288A1 (en) * 2013-04-26 2014-10-30 天地融科技股份有限公司 Encryption/decryption device and information processing method and system

Also Published As

Publication number Publication date
GB0415779D0 (en) 2004-08-18
GB2407740B (en) 2005-12-14
GB0325527D0 (en) 2003-12-03

Similar Documents

Publication Publication Date Title
Cocks An identity based encryption scheme based on quadratic residues
Nyberg et al. Message recovery for signature schemes based on the discrete logarithm problem
US8589679B2 (en) Identifier-based signcryption with two trusted authorities
CA2587474C (en) New trapdoor one-way function on elliptic curves and their applications to shorter signatures and asymmetric encryption
EP1495573B1 (en) Hierarchical identity-based encryption and signature schemes
US9571274B2 (en) Key agreement protocol
EP1379024A1 (en) Method and apparatus for generating a cryptographic key
US20060083370A1 (en) RSA with personalized secret
CN104301108B (en) It is a kind of from identity-based environment to the label decryption method without certificate environment
US7315945B2 (en) Directoryless public key cryptographic system and method
US6993136B2 (en) Cryptographic key exchange method using efficient elliptic curve
US7248692B2 (en) Method of and apparatus for determining a key pair and for generating RSA keys
US20160352689A1 (en) Key agreement protocol
US20050089173A1 (en) Trusted authority for identifier-based cryptography
US20050135610A1 (en) Identifier-based signcryption
Heninger RSA, DH, and DSA in the Wild
EP2395698B1 (en) Implicit certificate generation in the case of weak pseudo-random number generators
WO2016187690A1 (en) Key agreement protocol
Chauhan An implemented of hybrid cryptography using elliptic curve cryptosystem (ECC) and MD5
Tahat et al. A new digital signature scheme with message recovery using hybrid problems
Elkamchouchi et al. A new proxy identity-based signcryption scheme for partial delegation of signing rights
GB2407740A (en) Identifier-based signcryption
JP2002023626A (en) Method for ciphering public key and communication system using public key cryptograph
Bashir et al. Cryptanalysis and improvement of an encryption scheme that uses elliptic curves over finite fields
an Wang et al. On the role of pkg for proxy re-encryption in identity based setting

Legal Events

Date Code Title Description
PCNP Patent ceased through non-payment of renewal fee

Effective date: 20130715