# Pairing-based Cryptography

Pairings are bilinear maps that enable the realization of several cryptographic primitives. Pairing-based cryptography offers approaches for numerous interesting problems, such as

- Attribute-based cryptography
- Anonymous group signatures and reputation systems
- Fine-granular access control systems (Anonymous Credential Systems)

Pairing-based cryptography was first known and utilized in the field of identity-based cryptography. Identity-based cryptography deals with special asymmetric encryption and signature schemes. In identity-based schemes, the public key can be directly derived from the owner's identity. For example, this would allow you to encrypt an email using a key locally derived from the recipient's email address. Hence there is no need for the usual process of contacting a central key authority to retrieve the recipient's public key. Instead, the key authority is used to generate the private keys, with the added benefit that it only has be contacted once by every user. Since the key authority generates all private keys in such a system, it represents an especially lucrative target for malicious attacks.

In our group, we develop new schemes in the field of pairing-based cryptography. Furthermore, we analyze implementations of such schemes with respect to efficiency and security.

## Attribute-based Cryptography

Development of so-called functional encryption schemes is one of the main visions of modern cryptography. These encryption schemes should overcome the main disadvantages of conventional encryption schemes, namely that data is encrypted for a certain addressee and the access to the encrypted data is all or nothing. In the context of functional encryption schemes, every user receives a secret key which is parameterized with a certain function according to the access rights of the user. The data is encrypted only once and the user learn only the evaluation of their function on data and not necessarily the data themselves. While in general it is difficult to even just define the security requirements for this kind of encryption schemes, efficient encryption schemes for different restricted classes of functions are known. Attribute-based encryption (ABE) is a special case of functional encryption.

An attribute-based system requires a central authority which sets the system up and provides the user with their secret keys. In key-policy ABE (KP-ABE), the owner of data defines a subset of predefined attributes for data and encrypts it once using this set. In order to access the encrypted data, every user in the system receives a user secret key provided with an access policy according to the rights of the user. The key policies are Boolean formulas over predefined attributes. A user will be able to decrypt a ciphertext if and only if the attributes of the ciphertext satisfy the policy of his/her key. For ciphertext-policy ABE (CP-ABE) the roles of attributes and policies are reversed. That is, the data is encrypted under an access policy and the keys are provided for sets of attributes. Systems based on ABE have to model the access rights of the user in terms of attributes and access policies depending on concrete scenarios and concrete access pattern.

In our example, the manager of Map Data Center wants to ensure fine-grained access control to the road maps for its customers (routing services). Therefore, restricting access to the full data base, to the maps of continents, and to the maps of each single country will be realized. Each map is encrypted once with an appropriate policy. For example, the map of Germany's roads is encrypted with the policy "World OR Europe OR Germany". Every customer who gets a key with one of the attributes "World", "Europe", or "Germany", will be able to decrypt the appropriate ciphertext and obtain access to Germany's road maps. Thus, the access control is managed by the encryption itself.

## Anonymous Group Signatures and Reputation Systems

In standard signature schemes, the sender computes a *signature* on his message using his secret key. The receiver can check, using the signature and the sender's public key, that the message was indeed composed by the sender and that it was not modified in transit. To achieve this, the public key must uniquely identify the sender. However, in many scenarios this strict identification is not necessary or even desirable. Whenever an application only needs assurance that the sender belongs to a certain *group* of possible senders, *anonymous group signatures* can be used.

Anonymous group signatures allow each member of a group to sign messages without disclosing their identity. For this, each group member gets their own private key that is associated to the group's public key. In contrast to standard digital signature schemes, the message receiver can only check whether *some* group member signed the message, but not which specific member did it. The actual signer can only be determined by a special entity in the system (the *group manager*).

Besides anonymity, other properties of group signatures play an important role in some applications. For example, it may be useful to restrict the number of messages that each group member can sign. Furthermore, techniques for revoking group membership are important. In particular, these and other extensions of group signatures can be used to construct *anonymous reputation systems*.

Reputation systems are an important tool to allow customers and providers of goods and services to gather useful information about past transactions. In order to receive trustworthy, reliable, and honest ratings, a reputation system should guarantee the customer anonymity and at the same ensure that no customer can submit more than one rating. Of course the ratings should be publicly verifiable by third parties.

Some of the required properties for reputation systems are already known for group signatures. Some, however, are not. For example, a reputation system does not consist of a single group, but rather there is a group for each rateable product (or service). For the security of reputation systems these different groups cannot be analyzed in isolation.

The goal of this research area is the extension of group signature schemes and the construction of anonymous reputation system on the basis of group signatures.

## Anonymous Credential Systems

How can you assure a pharmacist that you have a prescription without revealing your identity? How can you show your driver's license without revealing your name? Such scenarios can be realized with anonymous credential systems. In such systems, users obtain credentials that certify attributes. With a credential, a user can access certain resources or services without revealing his identity. For this, he needs to prove that he is in possession of a credential with attributes that fulfill the resource's or service's access policy. We are interested in anonymous credential systems that support complex access policies.

In order for an anonymous credential system to be considered secure, the user must be able to access a resource without revealing his identity. Besides anonymity of users, credential systems must also make sure that users cannot collude and combine their attributes. A group of users must not be able to access to a resource for which none of the users (individually) have access to. Constructions of anonymous credentials usually rely on - among others - pairings and digital signatures.

The goal of this research area is to construct provably secure anonymous credential systems that support complex access policies.

## Secure and Efficient Implementations

Because of the many applications of elliptic curves and pairings, increasingly more efficient algorithms to compute pairings have been developed in recent years. By now, pairings can even be computed in reasonably quickly on resource-restricted systems such as chip cards. This is particularly interesting if we want to defend against attackers with physical access to hardware executing computations that depend on a secret key. There are several ways to physically attack hardware which are usually not in the scope of formal security proofs. A physical attacker may try to gain information about the secret key by exploiting side channels. For example, the attacker may actively manipulate an algorithm's execution, or passively measure power consumption and running time.

Pairings are defined on subgroups of elliptic curves over finite fields. These structures are also the basis for elliptic curve cryptography. There are already many theoretical and practical results on side-channel reistant elliptic curve cryptography. In part, these can be applied to pairing-based cryptography. For example, fault injection attacks on elliptic curve cryptography can be applied to pairing-based cryptography. For passive attacks, analysis methods for extracting information from power consumption can be applied as well. However, what cannot be easily applied to pairing-based cryptography are answers to the question "what manipulations are useful for an attacker?" and "how do I derive a secret key from data gathered through side channels?". This is because of the higher algorithm complexity and the role of the secret key for computations.

The goal of this research area is to improve security of pairing-based cryptography implemenations, to identify relevant side channels and to design efficient countermeasures against physical attackers.

# Publications

Open list in Research Information System

## 2019

M. Pilot, Bachelor's thesis, 2019

S. Scholz, Master's thesis, 2019

H. Bröcher, Master's thesis, 2019

J. Blömer, J. Bobolz, D.P. Diemert, F. Eidens, 2019

## 2018

J. Blömer, N. Löken, in: Proceedings of the 13th International Conference on Availability, Reliability and Security, ARES 2018, ACM, 2018, pp. 25:1--25:10

J. Blömer, J. Bobolz, in: ACNS 2018 Applied Cryptography & Network security, 2018

J. Blömer, F. Eidens, J. Juhnke, in: The International Conference on Cryptology And Network Security (CANS), Springer, 2018, pp. 235-255

K. Bemmann, J. Blömer, J. Bobolz, H. Bröcher, D.P. Diemert, F. Eidens, L. Eilers, J.F. Haltermann, J. Juhnke, B. Otour, L.A. Porzenheim, S. Pukrop, E. Schilling, M. Schlichtig, M. Stienemeier, in: Proceedings of the 13th International Conference on Availability, Reliability and Security - ARES '18, ACM, 2018

J. Juhnke, 2018

J. Blömer, F. Eidens, J. Juhnke, in: Topics in Cryptology - {CT-RSA} 2018 - The Cryptographers' Track at the {RSA} Conference 2018, Proceedings, Springer International Publishing, 2018, pp. 470-490

J. Blömer, J. Bobolz, C. Scheideler, A. Setzer, 2018

J. Blömer, K. Kohn, SIAM Journal on Applied Algebra and Geometry. (2018), 2(2), pp. 314-338

## 2017

J. Blömer, P. Günther, V. Krummel, N. Löken, in: Foundations and Practice of Security, Springer International Publishing, 2017, pp. 3-17

P. Bemmann, Master's thesis, Universität Paderborn, 2017

G. Liske, Universität Paderborn, 2017

D. Diemert, Bachelor's thesis, Universität Paderborn, 2017

A. Ganesh Athreya, Bachelor's thesis, Universität Paderborn, 2017

M. Jürgens, Bachelor's thesis, Universität Paderborn, 2017

D. Niehus, Master's thesis, Universität Paderborn, 2017

J. Blömer, G. Liske, in: Proceedings of the International Conference of Mathematical Aspects of Computer and Information Sciences (MACIS), Springer International Publishing, 2017, pp. 438-453

## 2016

K.S. Bemmann, Bachelor's thesis, Universität Paderborn, 2016

L. Porzenheim, Bachelor's thesis, Universität Paderborn, 2016

J. Blömer, G. Liske, in: Proceedings of the CT-RSA 2016, 2016, pp. 431-447

P. Günther, Universität Paderborn, 2016

F. Dallmeier, Bachelor's thesis, Universität Paderborn, 2016

J. Hamm, Master's thesis, Universität Paderborn, 2016

## 2015

F. Heihoff, Bachelor's thesis, Universität Paderborn, 2015

N. Löken, Master's thesis, Universität Paderborn, 2015

J. Blömer, J. Juhnke, C. Kolb, in: Proceedings of the 18th International Conference on Financial Cryptography and Data Security (FC), 2015, pp. 478--488

F. Eidens, Master's thesis, Universität Paderborn, 2015

P. Schleiter, Master's thesis, Universität Paderborn, 2015

C. Stroh, Master's thesis, Universität Paderborn, 2015

J. Bobolz, Master's thesis, Universität Paderborn, 2015

B. Gerken, Master's thesis, Universität Paderborn, 2015

M. Sosniak, Master's thesis, Universität Paderborn, 2015

B. Kalde, Bachelor's thesis, Universität Paderborn, 2015

K. Kohn, Master's thesis, Universität Paderborn, 2015

T. Eisenhofer, Bachelor's thesis, Universität Paderborn, 2015

J. Blömer, J. Juhnke, N. Löken, in: Proceedings of the Sixth International Conference on Mathematical Aspects of Computer and Information Sciences (MACIS), 2015, pp. 166-180

J. Blömer, K. Kohn, Universität Paderborn, 2015

## 2014

J. Blömer, R. Gomes da Silva, P. Günther, J. Krämer, J. Seifert, in: Proceedings of Fault Tolerance and Diagnosis in Cryptography(FDTC), 2014, pp. 123--136

J. Blömer, G. Liske, 2014

J. Lippert, Bachelor's thesis, Universität Paderborn, 2014

P. Bemmann, Bachelor's thesis, Universität Paderborn, 2014

J. Jochheim, Master's thesis, Universität Paderborn, 2014

T. Rath, Bachelor's thesis, Universität Paderborn, 2014

J. Blömer, P. Günther, G. Liske, in: Proceedings of Fault Tolerance and Diagnosis in Cryptography(FDTC), 2014, pp. 1--7

## 2013

K. Kohn, Bachelor's thesis, Universität Paderborn, 2013

J. Blömer, G. Liske, 2013

J. Blömer, P. Günther, V. Krummel, in: Proceedings of the 5th International Conference on Mathematical Aspects of Computer and Information Sciences (MACIS), 2013, pp. 98-105

J. Bobolz, Bachelor's thesis, Universität Paderborn, 2013

O. Otte, Bachelor's thesis, Universität Paderborn, 2013

A. Tezer, Bachelor's thesis, Universität Paderborn, 2013

## 2012

P. Schleiter, Bachelor's thesis, Universität Paderborn, 2012

T. Haarhoff, Bachelor's thesis, Universität Paderborn, 2012

N. Löken, Bachelor's thesis, Universität Paderborn, 2012

## 2011

G. Liske, Master's thesis, Universität Paderborn, 2011

## 2009

G. Liske, Bachelor's thesis, 2009