Superkey
A superkey is any set of attributes whose values uniquely identify tuples in a relation. Unlike a Candidate Key, a superkey does not need to be minimal — it can contain extra attributes. Every candidate key is a superkey, but not every superkey is a candidate key.
Example
For students(id, email, name):
{id}— Superkey (and candidate key, minimal){id, name}— Superkey (not candidate key, not minimal){id, email, name}— Superkey (the entire tuple, trivially unique){name}— Not a superkey (not unique)
Relation to BCNF
In Boyce-Codd Normal Form, every non-trivial functional dependency X → Y requires that X is a superkey. This is the defining property of BCNF.