Ключ в контексте структур данных (например, в книге КСПСЕ) представляет собой значение (часто целое число) , который используется для идентификации определенного компонента структуры данных. Часто ключи определяют, как хранятся или обрабатываются базовые данные. Например, в бинарных деревьях поиска мы имеем, что для каждого узла ключ этого узла больше, чем ключи в левом поддереве и меньше, чем ключи в правом поддереве. Это свойство облегчает поиск данного ключа (или определяет, что нет узла с таким ключом).
На практике наши «реальные» данные часто являются не ключевыми, а чем-то большим и более значимым, чем одно число. Эти данные называются спутниковыми данными и могут в основном игнорироваться при работе с структурами данных, если спутниковые данные перемещаются при каждом перемещении ключа (в противном случае вы теряете данные).
Концепция ключа аналогична в контексте баз данных, но там часто требуется, чтобы ключ был уникальным . Например, первичный ключ должен быть уникальным. Это требование часто является необязательным в контексте структур данных, но иногда делается для простоты.
В криптографии ключ обычно относится к (часто секретному, но не всегда!) Параметру, который необходим для шифрования или дешифрования с помощью данного алгоритма шифрования или дешифрования. Ключи, используемые для шифрования и дешифрования, должны быть «связаны» (в симметричной криптографии, должны быть одинаковыми), чтобы процесс шифрования или дешифрования был успешным.