I don't remember where I found this query, it lists everyone with permissons to certificates and keys in a database.
--Current assigned permissions
SELECT dp.*, su.*
FROM sys.database_permissions dp
INNER JOIN sys.database_principals su
ON dp.grantee_principal_id = su.principal_id
WHERE dp.class IN (24,25)
Questions for you, we are just getting started with encryption, I thought I had everything figured out that was needed then a developers comes to me and said they need additional permissions, which is what you were asking about.
Finally the question, do I need to give individual permissions to all users that need to use certificates and keys? Do I use the GRANT CONTROL ON CERTIFICATE::xxx TO username to give permissions?