簡體   English   中英

哈希密碼

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM