2011-05-20 124 views
3

我需要知道SHA1會爲我生成什麼字符?SHA1的特徵是什麼?

是否有可能知道SHA1的字符集?或者如果它是可配置的,它的默認字符集是什麼?

謝謝。

+0

SHA1的20個二進制字節......你問的方式來表示呢? – alpian 2011-05-20 08:09:27

+1

這是一個十進制數字,數字爲0-9 A-F,那裏會涉及什麼字符集? – 2011-05-20 08:10:03

+0

@ N.B .:你知道有代表不同的代碼的字符集? EBCDIC就是一個典型的例子,但是現代的例子就是UTF-16。不是所有的都是ASCII,甚至不在這個範圍內。 – 2011-05-20 10:51:27

回答

2

我相當肯定這只是二進制數據,而非任何字符編碼。如果你喜歡,你可以在Base64中進行編碼。

8

SHA-1不生成文本,它會生成一個二進制散列(最喜歡的消化),所以它不會有一個字符集(或關心爲此事輸入的字符集)。

可以代表它是以文本(十六進制值的字符串表示和Base64是流行的),如果你想,特別是如果你需要將它在網絡上傳輸或將其展示給用戶。該編碼取決於你。

1

散列算法SHA1取字節作爲輸入的流,並且計算160位消化。命令行版本將摘要輸出爲十六進制字符串。沒有涉及的字符集。

+2

SHA-1產生160位輸出,不是「十六進制字符串」。該輸出**可以**(通常是)格式化爲十六進制數字,但在SHA-1中未指定。 – 2011-05-20 08:20:38

+0

我已經闡明瞭輸出摘要的算法和實用程序之間的區別。 – ShiDoiSi 2011-05-20 10:23:28

相關問題