Sql server 对称解密返回空值

Sql server 对称解密返回空值,sql-server,encryption,encryption-symmetric,isqlquery,Sql Server,Encryption,Encryption Symmetric,Isqlquery,我有两个数据库。我复制了一个表中的所有数据,并插入到另一个数据库表中。我已经在第二个数据库上创建了对称密钥,但当我尝试运行以下查询时 OPEN SYMMETRIC KEY SecureSymmetricKey DECRYPTION BY PASSWORD = N'StrongPassword'; select DecryptByKey(columname) as DocSSN from tablename CLOSE SYMMETRIC KEY SecureSymmetri

我有两个数据库。我复制了一个表中的所有数据,并插入到另一个数据库表中。我已经在第二个数据库上创建了对称密钥,但当我尝试运行以下查询时

 OPEN SYMMETRIC KEY SecureSymmetricKey DECRYPTION BY PASSWORD = N'StrongPassword';        
 select DecryptByKey(columname) as DocSSN from tablename
 CLOSE SYMMETRIC KEY SecureSymmetricKey; 

但始终返回空值。

您需要按照中描述的步骤操作。您必须使用新创建的对称密钥(使用给定的已知密钥材料)重新加密两个服务器/数据库上的所有数据。不可能在事后创建密钥副本

在服务器/数据库之间共享对称密钥是一种非常糟糕的做法。您应该在每个数据库上使用不同的密钥进行加密