по идее в качестве сертификата принимается и crt, и pem файл.
Что касается приватного ключа, то тут есть 2 варианта:
1) если вы сами генерировали запрос на сертификат, который отсылали в Entrast, тот потом его подписывал и возвращал — в этом случае приватный ключ был создан вами при формировании запроса вместе с запросом на сертификат (запрос отослали Entrast, а ключ не отсылали);
2) если вы не формировали запрос, а сразу запросили сертификат, то теоретически Entrast должен прислать вам 2 файла: приватный ключ отдельно, а сертификат — отдельно. Хотя приватный ключ можно встроить в сертификат.
Попробуйте просто открыть crt-файл от Entrast и поискать там строки
-----BEGIN RSA PRIVATE KEY-----
.....
-----END RSA PRIVATE KEY-----
Если они там есть, то это и есть ваш приватный ключ.
Функция openssl_pkcs7_sign() ожидает приватный ключ отдельно, так что скормить ей pem-файл нельзя.
Фраза-пароль — да, это та, которую указывали при запросе сертификата. Но для теста можете попробовать передать пустую строку в этот аргумент.