• SQL Server 2005 helpful catalogs: crypt_properties and key_encryptions


           不久之前,我回答过一个问题:如找出被证书(certificate)加密的密钥。 我写了一些查询,用于找出那些加密,签名的信息。在展示这些查询之前,我会对这两个视图做个简要的介绍:
    crypt_properties视图保存了签名(signature)相关的信息。可以用其中的thumbprint列来确定相关的密钥。
    key_encryptions视图保存了对称密钥加密(symmetric key)的相关信息。和crypt_properties视图一样,非对称密钥asymmetric key和证书也是用thumbprint列来确定的。 但是,对称密钥则完全不同,需要用到GUID.


    现在列出这些查询 

    --被证书cert1签名的对象
    select object_name(cp.major_id) from sys.crypt_properties cp, sys.certificates c where cp.thumbprint = c.thumbprint and c.name = 'cert1';

    --查找被非对称密钥akey1签名的对象
    select object_name(cp.major_id) from sys.crypt_properties cp, sys.asymmetric_keys ak where cp.thumbprint = ak.thumbprint and ak.name = 'akey1';

    -- 被证书cert1加密的对称密钥
    select sk.name from sys.key_encryptions ke, sys.certificates c, sys.symmetric_keys sk where ke.thumbprint = c.thumbprint and c.name = 'cert1' and ke.key_id = sk.symmetric_key_id
    --被非对称密钥akey1加密的对称密钥 
    select sk.name from sys.key_encryptions ke, sys.asymmetric_keys ak, sys.symmetric_keys sk where ke.thumbprint = ak.thumbprint and ak.name = 'akey1' and ke.key_id = sk.symmetric_key_id

    --被对称密钥skey1加密的对称密钥
    select sk1.name from sys.key_encryptions ke, sys.symmetric_keys sk1, sys.symmetric_keys sk2 where ke.thumbprint = sk2.key_guid and sk2.name = 'skey1' and ke.key_id = sk1.symmetric_key_id
    -- 查找加密了对称密钥skey1的证书
    select c.name from sys.key_encryptions ke, sys.certificates c, sys.symmetric_keys sk where ke.thumbprint = c.thumbprint and sk.name = 'skey1' and ke.key_id = sk.symmetric_key_id

    -- 加密了对称密钥skey1的非对称密钥
    select ak.name from sys.key_encryptions ke, sys.asymmetric_keys ak, sys.symmetric_keys sk where ke.thumbprint = ak.thumbprint and sk.name = 'skey1' and ke.key_id = sk.symmetric_key_id

    --加密了对称密钥skey1的对称密钥
    select sk2.name from sys.key_encryptions ke, sys.symmetric_keys sk1, sys.symmetric_keys sk2 where ke.thumbprint = sk2.key_guid and sk1.name = 'skey1' and ke.key_id = sk1.symmetric_key_id

     

    原文地址:SQL Server 2005 helpful catalogs: crypt_properties and key_encryptions

  • 相关阅读:
    Java集合的Stack、Queue、Map的遍历
    LinkedHashMap的实现原理
    HashSet的实现原理
    HashMap的实现原理
    leetcode526
    leetcode406
    leetcode413
    leetcode513
    leetcode338
    leetcode419
  • 原文地址:https://www.cnblogs.com/stswordman/p/1254436.html
Copyright © 2020-2023  润新知