Another issue I’ve run into with the service broker and moving databases between servers is this error message:
Error code:25. The master key has to exist and the service master key encryption is required.
The solution that I found was the regenerate the key for the database using the following code:
CREATE MASTER KEY ENCRYPTION BY PASSWORD = '1ComplexPassword!'
You might also need to run the following afterwards:
ALTER DATABASE dbname SET NEW_BROKER.
Also, see my previous post SQL Server 2005 Service Broker Error 15517 for another error message and solution.