Functional encryption (FE) is a generalization of
public-key encryption
Public-key cryptography, or asymmetric cryptography, is the field of cryptographic systems that use pairs of related keys. Each key pair consists of a public key and a corresponding private key. Key pairs are generated with cryptographic alg ...
in which possessing a secret key allows one to learn a function of what the
ciphertext
In cryptography, ciphertext or cyphertext is the result of encryption performed on plaintext using an algorithm, called a cipher. Ciphertext is also known as encrypted or encoded information because it contains a form of the original plaintext ...
is encrypting.
Formal definition
More precisely, a functional encryption scheme for a given functionality
consists of the following four algorithms:
*
: creates a public key
and a master secret key
.
*
: uses the master secret key to generate a new secret key
for the function
.
*
: uses the public key to encrypt a message
.
*
: uses secret key to calculate
where
is the value that
encrypts.
The
security" \n\n\nsecurity.txt is a proposed standard for websites' security information that is meant to allow security researchers to easily report security vulnerabilities. The standard prescribes a text file called \"security.txt\" in the well known locat ...
of FE requires that any information an adversary learns from an encryption of
is revealed by
. Formally, this is defined by simulation.
Applications
Functional encryption generalizes several existing primitives including
Identity-based encryption ID-based encryption, or identity-based encryption (IBE), is an important primitive of ID-based cryptography. As such it is a type of public-key encryption in which the public key of a user is some unique information about the identity of the use ...
(IBE) and
attribute-based encryption (ABE). In the IBE case, define
to be equal to
when
corresponds to an identity that is allowed to decrypt, and
otherwise. Similarly, in the ABE case, define
when
encodes attributes with permission to decrypt and
otherwise.
History
Functional encryption was proposed by
Amit Sahai
Amit Sahai (born 1974) is an American computer scientist. He is a professor of computer science at UCLA and the director of the Center for Encrypted Functionalities.
Biography
Amit Sahai was born in 1974 in Thousand Oaks, California, to parents ...
and
Brent Waters in 2005 and formalized by
Dan Boneh,
Amit Sahai
Amit Sahai (born 1974) is an American computer scientist. He is a professor of computer science at UCLA and the director of the Center for Encrypted Functionalities.
Biography
Amit Sahai was born in 1974 in Thousand Oaks, California, to parents ...
and Brent Waters in 2010. Until recently, however, most instantiations of Functional Encryption supported only limited function classes such as boolean formulae. In 2012, several researchers developed Functional Encryption schemes that support arbitrary functions.
References
{{reflist
Cryptographic_primitives