Working with several DBs in parallel and need to initialize some records with hashed passwords. In MS SQL server there are handy functions that allow to hash on the fly:
HashBytes('SHA1', CONVERT(nvarchar(32), N'admin'))
Is there is a similar function with SQLite?
If not, which is the easiest workaround (such as select from SQL server and somehow insert it into SQLite tables)?
The preferred hashing algorithm is SHA1 and the passwords are stored in a BLOB column.
Update: I use C# language in the current project.
There is no such function built into SQLite3.
But you could define a user function e.g. with
sqlite3_create_functionif you’re using the C interface, and implement SHA-1 with that. (But if you’re having a programmable interface perhaps you could just SHA-1 the password outside of the SQL engine.)You could also try to find / create an extension and load with the
load_extensionfunction, but I don’t have experience on that.Edit:
System.Data.SQLitein C#.