Web Development w/ Google’s Go (golang) Programming language 的067-Encrypt-Password-With-Bcrypt
https://www.udemy.com/go-programming-language/learn/v4/content
在上这节课的时候,很好奇为什么密码要加密,就上网搜了下,搜到这篇文章
为什么要在密码里加点“盐”,上面有这么一段话
主要的关键字段就是这么两个,一个是登陆时的用户名,对应的一个密码,而且那个时候的用户名是明文存储的,如果你登陆时用户名是 123,那么数据库里存的就是 123。这种设计思路非常简单,但是缺陷也非常明显,数据库一旦泄露,那么所有用户名和密码都会泄露,后果非常严重。参见 《CSDN 详解 600 万用户密码泄露始末》。
感觉挺新鲜.
课上的例子所用到的是 golang.org/x/crypto/bcrypt
在Google上搜到相关wiki资料,https://en.wikipedia.org/wiki/Bcrypt,不过不大容易看.
MD5+salt 和 bcrypt的比较,参考
http://www.cnblogs.com/lixiong/archive/2011/12/24/2300098.html
http://stackoverflow.com/questions/34813483/how-is-bcrypt-better-than-md5-salt