Ключ KSK (KSK-public) является ключом, для которого родитель данной безопасной зоны обеспечивает доверие. Для этого он использует ресурсную запись DS, которая содержит хэш дочернего ключа KSK. Делегирующий родитель подписывает данную ресурсную запись DS своим собственным ключом ZSK для того, чтобы отношения доверия осталось в силе. Для обновления ключа KSK дочерней зоны следует выполнить следующее:
создать новый ключ KSK и добавить его в множество зонных ключей;
подписать множество ключей зоны новым ключом KSK, а также старым ключом KSK (ключом, который истекает);
передать новый ключ KSK своему родителю таким способом, при котором родитель мог бы аутентифицировать этот ключ;
в родительской зоне создать новую DS-ресурсную запись (которая заменит старую DS-ресурсную запись), содержащую хэш нового ключа KSK, затем подписать заново созданную DS-ресурсную запись.
Для того чтобы родитель мог аутентифицировать новый ключ KSK (будем называть его KSK2), основываясь на существующей цепочке доверия, дочерняя зона при выполнении обновления ключа создает DNSKEY-множество ресурсных записей, используя DNSKEY-ресурсные записи существующего ключа вместе с новой DNSKEY-ресурсной записью для KSK2. Затем создаются две подписи (две RRSIG-ресурсные записи) – одна с использованием существующего ключа KSK, другая с использованием нового ключа KSK2. Затем родителю посылается заново созданное DNSKEY множество ресурсных записей вместе с RRSIG-ресурсными записями (во множественном числе, потому что существуют две подписи, соответствующие ключам KSK и KSK2). Множество ресурсных записей, посылаемое родителю, приведено ниже в некотором псевдоформате:
example.ru DNSKEY <key-id: 43543> /* новый KSK*/ example.ru DNSKEY <key-id: 78546> /* существующий KSK*/ example.ru DNSKEY <key-id: 98342> /* ZSK*/ example.ru RRSIG (DNSKEY) <signer:example.ru signing-key:78546> /* весь DNSKEY RRset подписан существующим KSK */ example.ru RRSIG (DNSKEY) <signer:example.ru signing-key:43543> /* весь DNSKEY RRset подписан новым KSK */