首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Spring Bcrypt是无状态的,不需要安全的随机?

Spring Bcrypt是无状态的,不需要安全的随机?
EN

Stack Overflow用户
提问于 2016-04-07 13:45:30
回答 1查看 217关注 0票数 0

对于Security ,我有两个疑问:

  1. 为了安全起见,地下室需要一个安全可靠的随机设备吗?
  2. 在MySQL (二进制对CHAR)中持久化的最佳数据类型是什么?

关于第一个疑问,我读了许多教程,发现总是相同的配置(默认)。

代码语言:javascript
复制
@Bean
public BCryptPasswordEncoder passwordEncoder() {
    return new BCryptPasswordEncoder();
}

所以,我可以认为这个配置是无状态的吗?我的web服务不需要使用强度和安全的随机方式来生成与默认配置不同的散列吗?

而关于第二个疑问,Bcrypt散列长度总是60吗?那么,在我的数据库中使用CHAR(60)还是二进制(60)比较好呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-04-07 18:22:38

Security是开源的。这是源代码BCryptPasswordEncoder

如果您不传入一个SecureRandom,它只会创建一个新的。从安全的角度来看,这很好。出于性能或测试能力的原因,您可以通过自己的考试。

如果您不传入Strength,它使用的是GENSALT_DEFAULT_LOG2_ROUNDS,它是10,这是相当安全的。你可以通过这种价值来换取心灵的安宁。

Security的数据库模式为password列提供了一个password,但是对于bcrypt来说,它看起来是正确的。

我会使用char/varchar而不是binary,因为它更容易阅读(直观)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36478095

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档