Unpublished SQL Server password encryption function

Source: Internet
Author: User

If you are interested in MSSQL user information, you may find the master. dbo. sysxlogins stores user passwords. However, if the password field is not null, It is a bunch of binary files that cannot be understood. How is this password encrypted?
In fact, you only need to take a closer look at master. dbo. sp_addlogin and you will be able to see the code in the MSSQL sp.
Let's take a look at how it works. Pay attention to this line of select @ passwd = pwdencrypt (@ passwd). After this, @ passwd will be encrypted. Let's also try it.
DECLARE @ ClearPWD varchar (255)
DECLARE @ EncryptedPWD varbinary (255)
SELECT @ ClearPWD = 'test'
SELECT @ EncryptedPWD = CONVERT (varbinary (255), pwdencrypt (@ ClearPWD ))
SELECT @ EncryptedPWD
It looks good. It is indeed encrypted, but how can I restore it?
  
Password Encryption is one-way. You can use encrypted passwords to compare them.
Continue to look at the sp related to other users. You can find that the master. dbo. sp_password contains the password comparison content.
Pwdcompare (@ old, password, (case when xstatus & 2048 = 2048 THEN 1 ELSE 0 END ))
Ignore xstatus. This is a status mask. Generally, we can use 0 directly.
DECLARE @ ClearPWD varchar (255)
DECLARE @ EncryptedPWD varbinary (255)
SELECT @ ClearPWD = 'test'
SELECT @ EncryptedPWD = CONVERT (varbinary (255), pwdencrypt (@ ClearPWD ))
SELECT pwdcompare (@ ClearPWD, @ EncryptedPWD, 0)
SELECT pwdcompare ('errorpassword', @ EncryptedPWD, 0)
In this way, we can use these two functions to encrypt our passwords.

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.