【发布时间】:2021-08-25 02:18:56
【问题描述】:
(TL;DR:我在底部有两个问题。)
我一直在查看 CouchDB 的文档以了解其哈希算法,但我无法找到重要的细节。
我收集到的最多信息来自这个页面:1.5.2. Authentication Database
这是我的问题:
我在 Cloudant 上的 CouchDB 实例中的 _users 数据库中有一堆用户。
我需要能够将用户从 CouchDB 迁移到 Firebase。
Firebase 为此提供了a super-handy-dandy auth migration tool。但是,为了利用其身份验证迁移工具,我需要确切知道 "simple" password_scheme 使用的是哪种哈希算法。
对于我的_users 数据库中的每个用户,我都有"salt" 和"password_sha" 可用。
给定名称"password_sha",我假设"simple" "password_scheme" 使用SHA1、SHA256、SHA512、PBKDF_SHA1 或PBKDF2_SHA256。
我数据库中的用户文档都没有"derived_key"。几乎所有这些都没有定义的"password_scheme"。如果其中任何一个确实有定义的"password_scheme",它总是"simple"(而不是"pbkdf2")。
一旦我确切知道 CouchDB 使用哪种散列算法,我就需要知道使用了多少轮或迭代来散列密码。
Firebase 文档说:
“您必须提供用于散列密码的轮数(
SHA1、SHA256和SHA512介于 1 和 8192 之间,PBKDF_SHA1和PBKDF2_SHA256介于 0 和 120000 之间)。”
但是,我找不到任何关于此的文档/信息。
所以我的问题是:
- CouchDB 用于“简单”“password_scheme”的散列算法是什么? (是 SHA1、SHA256、SHA512、PBKDF_SHA1、PBKDF2_SHA256 还是别的什么?)
- 使用多少轮或迭代来散列密码?
【问题讨论】:
标签: firebase-authentication couchdb sha password-hash