When I restore a database with encryption to a different server, I have to reencrypt the DB Master Key using the Server Key.
I use this script:
Use <DATABASENAME>
OPEN MASTER KEY DECRYPTION BY PASSWORD = '<INSERT YOUR KEY HERE>';
ALTER MASTER KEY DROP ENCRYPTION BY SERVICE MASTER KEY
ALTER MASTER KEY ADD ENCRYPTION BY SERVICE MASTER KEY
CLOSE MASTER KEY;
Donald