{"id":22901064,"url":"https://github.com/mpdn/sqlite-digest","last_synced_at":"2025-05-08T01:44:50.234Z","repository":{"id":9275180,"uuid":"11105675","full_name":"mpdn/sqlite-digest","owner":"mpdn","description":"Digest implementation for SQLite","archived":false,"fork":false,"pushed_at":"2022-07-25T18:02:02.000Z","size":11,"stargazers_count":18,"open_issues_count":2,"forks_count":6,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-05-08T01:44:44.486Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mpdn.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2013-07-01T20:07:31.000Z","updated_at":"2024-12-07T01:14:27.000Z","dependencies_parsed_at":"2022-09-01T05:23:14.034Z","dependency_job_id":null,"html_url":"https://github.com/mpdn/sqlite-digest","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mpdn%2Fsqlite-digest","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mpdn%2Fsqlite-digest/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mpdn%2Fsqlite-digest/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mpdn%2Fsqlite-digest/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mpdn","download_url":"https://codeload.github.com/mpdn/sqlite-digest/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252983758,"owners_count":21835759,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-12-14T01:31:31.749Z","updated_at":"2025-05-08T01:44:50.145Z","avatar_url":"https://github.com/mpdn.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"SQLite-digest\n=============\nMessage digest extension for SQLite3 using OpenSSL. Released under the MIT license (see LICENSE for more information).\n\nSQLite-digest provides functions for computing hashes in SQLite: `md5`, `sha1`, `sha256`, `sha512` and `digest`.\n\nThe `digest` function takes a OpenSSL digest name as the first argument and one or more values to digest. You can see *some* of the available digest names by installing the OpenSSL command line tool and executing `openssl list -digest-algorithms`. For OpenSSL 1.1.0f it is `BLAKE2b512`, `BLAKE2s256`, `MD4`, `MD5`, `MD5-SHA1`, `RIPEMD160`, `RSA-SHA1`, `SHA1`, `SHA224`, `SHA256`, `SHA384`, `SHA512`, `whirlpool`.\n\nThe remaining functions are identical to calling the `digest` function with the name as the first argument. Eg. `sha256(\"a\")` is the same as `digest(\"sha256\", \"a\")`. See examples below.\n\nThe returned digest is always a blob, so it might be necessary to use the `hex` function to get the string representation. Bear in mind that the `hex` function returns hexadecimal in upper case, whereas most hashes are represented with lower case hexadecimal.\n\nAll functions are variadic (i.e. they can take any number of arguments). If called with more than one argument, the digest will be calculated as if their binary values were concatenated.\n\nSQL Example\n-------\n```sql\n.load ./digest.so\nSELECT hex(digest(\"sha1\", \"abc\")); -- returns \"A9993E364706816ABA3E25717850C26C9CD0D89D\"\nSELECT hex(sha1(\"abc\"));           -- identical to the above function\n\nSELECT hex(digest(\"md5\", \"abc\"));  -- returns \"900150983CD24FB0D6963F7D28E17F72\"\nSELECT hex(md5(\"abc\"));            -- identical to the above function\nSELECT hex(md5(\"a\", \"b\", \"c\"));    -- also identical\n```\n\nTested compatibility\n-------------\n\nOpenSSL v3.0.2\n\nSQLite v3.37.2\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmpdn%2Fsqlite-digest","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmpdn%2Fsqlite-digest","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmpdn%2Fsqlite-digest/lists"}