Potrzebuję hash (MD5) całe hasło w naszej bazie danych Sql Server 2000. Mogę łatwo wygenerować program C#/VB.NET do konwersji (hash) wszystkich haseł, ale zastanawiałem się (bardziej dla mojej edukacji niż dla prawdziwej nieodpartej potrzeby), czy możliwe było obliczenie skrótu MD5 bezpośrednio w T-SQL.
Dziękuję każdemu, kto odpowie.Czy można obliczyć skrót MD5 bezpośrednio w języku T-SQL?
Odpowiedz
Używa tego kodu, ale nie jest natywny dla tego języka.
Dziękuję bardzo. Miałem nadzieję znaleźć sposób, aby zrobić to bezpośrednio za pomocą instrukcji SQL, ale to też jest dobre! –
w 2005 roku i później, można wywołać funkcję HashBytes(). W 2000 roku najbliżej jest pwdencrypt/pwdcompare, chociaż te funkcje mają swoje własne pułapki (przeczytaj komentarze do linku).
Dziękuję bardzo za życzliwą odpowiedź. Na koniec wybieram odpowiedź Daniela, ponieważ szukałem skrótu MD5, ale twój był naprawdę blisko, a sugestia o pwdencryt/pwdcompare nauczyła mnie czegoś naprawdę interesującego. –
Nie, nie ma natywnej polecenie TSQL wygenerować MD5 hash jest w SQL Server 2000.
W 2005 i powyżej można użyć HashBytes
funkcję: http://msdn.microsoft.com/en-us/library/ms174415.aspx
Mimo że wybrałem inną odpowiedź, w każdym razie chciałbym bardzo podziękować za odpowiedź. –
Nie ma nic magicznego md5, można zaimplementuj go jako czystą funkcję tsql, jeśli chcesz. Nie jestem pewien, czy to będzie zabawa w TSQL, ale nie powinno być nic uniemożliwia robi tak :)
proszę zobaczyć poniżej przykład/rozwiązania z wykorzystaniem 2008
DECLARE @HashThis nvarchar(4000);
SELECT @HashThis = CONVERT(nvarchar(4000),'dslfdkjLK85kldhnv$n000#knf');
SELECT HashBytes('md5', @HashThis);
GO
Tak dla przypomnienia:
UPDATE T_WHATEVER_YOUR_TABLE_NAME_IS
SET PREFIX_Hash = LOWER(SUBSTRING(master.dbo.fn_varbintohexstr(HashBytes('MD5', LOWER('a-string-with-utf8-encoded-international-text'))), 3, 32))
- 1. Skrót MD5 w silverlight
- 2. Czy można obliczyć skrót hasła używany przez usługę Active Directory?
- 3. Prosty skrót MD5 łańcucha znaków
- 4. Jak wygenerować skrót pliku MD5 w javascript?
- 5. Jak uzyskać skrót MD5 pliku w C++?
- 6. Czy można używać skrótu MD5 w BigQuery?
- 7. Czy można wybrać EXISTS bezpośrednio?
- 8. Czy istnieje funkcja sumy MD5 w języku PL/SQL
- 9. Jak uzyskać skrót MD5 z ciągu znaków w Golang?
- 10. Jak obliczyć sumę kontrolną md5 pliku w Pythonie?
- 11. Jak utworzyć skrót MD5 z modułem HMAC w Ruby?
- 12. Jak obliczyć liczbę "wtorków" między dwiema datami w TSQL?
- 13. Czy można obciąć skrót SHA256 na 128 bitów?
- 14. Czy zarządzany interfejs API WinRT zawiera sposób obliczania skrótu MD5?
- 15. Czy można dodać skrót klawiszowy ESC?
- 16. IF-ELSE skrót w języku C
- 17. C# czy inny skrót
- 18. Jak obliczyć szerokość piksela w języku JavaFX?
- 19. Wydajność TSQL z @@ Błąd i czy można je wymienić?
- 20. W Qt (4.6), czy można bezpośrednio wywoływać gniazda?
- 21. Czy można kodować java w innym języku?
- 22. Czy można napisać jednolinijkowe w języku Python?
- 23. TSQL Oblicz numer tygodnia w miesiącu
- 24. Szybka implementacja MD5 w C++
- 25. Czy można obliczyć prędkość, integrując dane z akcelerometru w czasie?
- 26. Czy percentyle zbioru danych można obliczyć w sposób zmniejszający mapę?
- 27. Czy mogę używać uwierzytelniania md5 w psycopg2?
- 28. Hash MD5 w Elixir
- 29. Java md5, sposób PHP
- 30. Czy można wyszukiwać filmy z YouTube w języku ich napisów?
Powiązane, dla wersji po SQL Server 2000: http://stackoverflow.com/q/3525997/1569 –