[英]hashed password
我一直在玩這里找到的代碼。 我正在得到像
UKepQT7tW8mGtOJzNaLV2X+Ij/E=
當我使用查看哈希密碼時
String t = base64EncoderDecoder.encodeAsString(f.generateSecret(spec).getEncoded());
輸入我的哈希密碼。 是否應具有+ / =之類的符號? 我也希望哈希更長。 我搞砸了嗎?
是否應具有+ / =之類的符號?
好吧,根據第一個Google結果(根據Wikipedia文章有關Base64編碼的說明 ), +
和/
是有效的符號,分別映射到62和63。 =
是填充字符。
我也希望哈希更長。
為什么? 這只是您使用的編碼方法的結果。 以16為底進行編碼將多占用50%的字符(因為每4位占用1個字符,而不是每6位占用1個字符)。 從引用中可以引用:
// SHA-1 generates 160 bit hashes, so that's what makes sense here
160位的結果是27字符的Base64編碼(160/6〜= 27),這正是您所擁有的,因此對我來說似乎很合理。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.