多半是ORM建立數(shù)據(jù)表的時(shí)候,密碼列給的長度不足導(dǎo)致的。
比如把
password_hash = db.Column(db.String(64))
改為
password_hash = db.Column(db.String(120)
然后重新建立表即可。
原因:
表沒有足夠空間放置加密后的數(shù)據(jù),sha512_crypt需要至少120字節(jié)。(86 char hash + additional metadata the SHA512 algorithm stores)