代码之家  ›  专栏  ›  技术社区  ›  Sir Rubberduck

MSSQL:如何比较密码?pwdcompare()返回0

  •  0
  • Sir Rubberduck  · 技术社区  · 6 年前

    所以我得到了加密密码:

    SELECT 
        password, 
        cast(password as binary)
    FROM SYSLOGINS where name = 'user'
    

    密码: ꗩ�ꎒ䵰᠗賦弱ꊮ㟥탑琥ꡍ뛰肓貝쫼㢐祫喀虀ꆓﱲ䈼䛂鄊⏻讨䎊༗䒶햅翲
    二元的: 0x0200E9A56BD992F3704D1718E68C315FAEA2E848A1D025744DA8D0B69380

    当我比较普通密码和二进制密码时,结果是0。

    SELECT 
        pwdcompare(N'plain_password', cast(password as binary)) -- returns 0
    FROM SYSLOGINS where name = 'user'
    

    我做错什么了?

    我检查了各种加密方法,我相信 PWDENCRYPT() 在本例中使用,而不是 HASHBYTES() .

    0 回复  |  直到 6 年前