Node.js 仅将小字符串散列为数字

Node.js 仅将小字符串散列为数字,node.js,string,hash,primary-key,Node.js,String,Hash,Primary Key,我的主键是一个字符串-因此我想对它进行散列,这样我就可以使用散列数字而不是字符串 我总共有800个固定字符串(这意味着散列的安全风险非常低,而且非常少),因此我不太可能遇到与简单散列函数/方法冲突的情况。我考虑过md5,但因为它将是sqlite表中的主键,所以我希望避免在其中使用任何字符串。你有什么想法吗 干杯通常情况下,您会使用类似于自动递增字段的内容,但如果您想要散列,您可以尝试以下方法: const crc32 = require("crc32") const key = "lskdjfa

我的主键是一个字符串-因此我想对它进行散列,这样我就可以使用散列数字而不是字符串

我总共有800个固定字符串(这意味着散列的安全风险非常低,而且非常少),因此我不太可能遇到与简单散列函数/方法冲突的情况。我考虑过md5,但因为它将是sqlite表中的主键,所以我希望避免在其中使用任何字符串。你有什么想法吗


干杯

通常情况下,您会使用类似于自动递增字段的内容,但如果您想要散列,您可以尝试以下方法:

const crc32 = require("crc32")
const key = "lskdjfasoif";
const idNum = parseInt(crc32(key),16);

为什么需要散列字符串?只需为该字段创建一列并向其添加索引即可。md5只会返回另一个字符串。你说得对。我不想麻烦更多的回答者,因为我只会将我的行id作为主键,然后简单地搜索我的字符串,我想我是个白痴,而且已经崩溃了。既然这个答案是正确的,我就接受它。谢谢