Ho bisogno di hash (MD5) tutta la password nel nostro database Sql Server 2000. Posso facilmente generare un programma C#/VB.NET per convertire (hash) tutte le password, ma mi stavo chiedendo (più per la mia formazione che per una reale necessità impellente) se fosse possibile calcolare l'hash MD5 direttamente in T-SQL.
Grazie a chiunque risponda.È possibile calcolare l'hash MD5 direttamente nel linguaggio T-SQL?
risposta
Sta utilizzando questo codice, ma non è nativo per la lingua.
Grazie mille. Speravo di trovare un modo per farlo direttamente con le istruzioni SQL, ma anche questo è bello! –
Nel 2005 e versioni successive, è possibile chiamare la funzione HashBytes(). Nel 2000, la cosa più vicina è pwdencrypt/pwdcompare, anche se queste funzioni hanno le proprie insidie (leggi i commenti del collegamento).
Grazie mille per la cortese risposta. Alla fine scelsi la risposta di Daniel perché stavo cercando l'hashing MD5, ma il tuo è stato molto vicino e il suggerimento su pwdencryt/pwdcompare mi ha fatto imparare qualcosa di veramente interessante. –
No, non esiste un comando nativo TSQL per generare MD5 di in SQL Server 2000.
Nel 2005 e sopra di voi hash possibile utilizzare la funzione HashBytes
: http://msdn.microsoft.com/en-us/library/ms174415.aspx
Anche se ho scelto un'altra risposta, ho comunque voluto ringraziarti per la tua risposta. –
Non c'è nulla di magico md5, si può implementalo come una pura funzione tsql se vuoi. Non sono sicuro che sarebbe stato divertente in TSQL, ma ci dovrebbe essere nulla impedisce di farlo :)
prega di vedere sotto esempio/soluzione che utilizza 2008
DECLARE @HashThis nvarchar(4000);
SELECT @HashThis = CONVERT(nvarchar(4000),'dslfdkjLK85kldhnv$n000#knf');
SELECT HashBytes('md5', @HashThis);
GO
Solo per la cronaca:
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. È possibile calcolare l'hash MD5 (o altro) con letture bufferizzate?
- 2. Java calcolare hash MD5
- 3. TSQL - È possibile definire l'ordinamento?
- 4. È possibile la decodifica md5?
- 5. È possibile decomprimere md5 per eseguire più core/thread?
- 6. È possibile eseguire qualsiasi linguaggio eseguibile?
- 7. Qual è lo scopo dell'hash MD5 nel download delle app?
- 8. Calcolare l'hash MD5 di una stringa in scala
- 9. È possibile definire una funzione locale in una query TSQL?
- 10. tsql: è possibile eseguire istruzioni caso nidificate in una selezione?
- 11. È possibile installare direttamente una gemma da un repository git?
- 12. Esiste una funzione in linguaggio C per calcolare gradi/radianti?
- 13. È possibile accedere al disco rigido direttamente da GPU?
- 14. I compilatori di linguaggio di programmazione prima traducono in assembly o direttamente nel codice macchina?
- 15. Funzione di aggiornamento nel trigger TSQL
- 16. Nel linguaggio di programmazione Go, è possibile ottenere il tipo di una variabile come stringa?
- 17. È possibile calcolare Viewport Width (vw) senza barra di scorrimento?
- 18. È possibile calcolare la velocità integrando i dati dell'accelerometro nel tempo?
- 19. È possibile caricare su S3 direttamente dall'URL utilizzando il POST?
- 20. È possibile scrivere direttamente un programma con istruzioni bytecode Java?
- 21. È possibile eseguire BitBlt direttamente da una bitmap GDI +?
- 22. iOS: è possibile aprire NSURLRequest direttamente in Safari?
- 23. Apertura dell'app lucida direttamente nel browser predefinito
- 24. MD5 è supportato su Windows Phone 7?
- 25. Vala è un linguaggio multipiattaforma?
- 26. TSQL - Il ciclo while è selezionato?
- 27. Android: Variazioni Esercizio direttamente nel materiale calendarview
- 28. UML è un linguaggio di programmazione?
- 29. TSQL - come eseguire una query come variabile?
- 30. controllo nullo nel linguaggio delle espressioni JSF
Correlato, per le versioni successive a SQL Server 2000: http://stackoverflow.com/q/3525997/1569 –