.key - это приватный ключ, вообще, по хорошему его должны генерировать только Вы, как владелец будущего сертификата. Приватный ключ попавший к третьему лицу, в том числе к регистратору, должен считаться скомпрометированным и небезопасным.
.csr - это запрос на подпись вышестоящим сертификатом, он содержит все данные будущего сертификата (домен, владелец и т.д.), а так же подпись этих данных через приватный ключ .key
.csr необходимо отправить регистратору на подпись, подписанный приватным ключом регистратора .csr становится Вашим сертификатом .crt
Так же любая из этих частей может быть в .pem формате, это текстовый формат, который описывает, что он хранит + сами данные (ключ/сертификат/цепочка сертификатов) в base64.
P.S. писал все по памяти, за достоверной информацией лучше сходить в гугл. Но одно скажу точно, должен быть или .crt (бинарный формат) или он же завернутый в .pem