2011-06-30 21 views

答えて

3

sha1はバイナリ文字列を返します。いくつかのsha1関数は、便利なように、そのバイナリ文字列を16進数またはbase64にエンコードすることもできます。もしそうなら、結果はASCII文字になります。しかし、sha1自体はASCIIを返しません。

+1

これを解説すると、SHA1は(大きい)番号を返します。一部の人は、その数字を16進数の文字列で表すことを選択します。しかし、SHA1関数を持つライブラリを呼び出す場合、必ずASCII文字列を返すとは限りません。常にRTFM。 –

2

SHA1は20バイトを返します。 SHA1は、バイナリデータを表すために

一つの一般的な方法は16進数でそれを符号化しているなどのエンコーディング、テキスト、ASCII、対処しない - この場合、出力は常に[AF] [0-9]

6
あります

厳密に言えば、それは違う。 SHA-1ハッシュの出力は160ビット、つまり20バイトですが、バイトはASCII範囲内にあるとは限りません。

ただし、一部のハッシュ関数は20バイトの16進数(つまり40文字)を出力するため、実際のハッシュの最初の3バイトが0x7e、0x03、および0xb2の場合、出力は "7e03b2"で始まります。その場合、出力 ASCIIです。

関連する問題