Понятие первичного и внешнего ключей актуальны только для реляционных баз данных, где все данные организованы в форме таблиц, связанных между собой. Само слово ключ в контексте БД подразумевает поле (столбец таблицы) ИЛИ набор полей. Что же это за особые столбцы, и почему их называют ключами? Первичный ключ (Primary key) - это поле, или список полей, с помощью которого можно однозначно идентифицировать одну строчку. Выделение ПК необходимо, чтобы иметь возможность найти нужную строчку, корректно делать соединения таблиц и агрегацию...
Ключ это значение, с криптографическим алгоритмом для получения определенного шифротекста. Ключи в основном представляют собой очень, очень, очень большие числа. Размер ключа измеряется в битах, число представляющее собой 1024 битный ключ, чертовски велико. В криптографии с открытым ключом, чем больше ключ, тем надежнее шифрование. Хотя открытый и секретные ключи математически связаны, очень трудно получить секретный ключ на основе открытого ключа, однако это всегда возможно при наличии достаточного времени и вычислительных мощностей...