Hash
Hash[expr]
式 expr についての整数のハッシュコードを与える.
Hash[expr,type]
expr についての指定された型の整数のハッシュダイジェストを与える.
Hash[expr,type,"format"]
ハッシュコードを指定された形式で与える.
詳細
- Hash[expr,…]は常に同じ式 expr に対しては同じ結果を与える.
- 次は,使用可能なハッシュタイプである.
-
"Adler32" アドラー32ビット巡回冗長検査 "BLAKE2b-512" 512ビットBLAKE2bコード "BLAKE2s-256" 256ビットBLAKE2sコード {"BLAKE2b",b} 512ビットまでの任意長 b のBLAKE2bコード {"BLAKE2s",b} 256ビットまでの任意長 b のBLAKE2sコード {"BLAKE2bp",b} BLAKE2bのマルチコア並列版 {"BLAKE2sp",b} BLAKE2sのマルチコア並列版 {"BLAKE2xb",b} 256GiBまでの任意長 b のBLAKE2xbコード {"BLAKE2xs",b} 128GiBまでの任意長 b のBLAKE2xsコード "CRC32" 32ビット巡回冗長検査 "Keccak224" 224ビットKeccakコード "Keccak256" 256ビットKeccakコード "Keccak384" 384ビットKeccakコード "Keccak512" 512ビットKeccakコード {"Keccak",b} 224, 256, 384, 512ビットで長さ b のKeccakコード "MD2" 128ビットMD2コード "MD4" 128ビットMD4コード "MD5" 128ビットMD5コード "RIPEMD160" 160ビットRIPEMDコード "RIPEMD160SHA256" SHA-256に従うRIPEMD-160(ビットコインで使用されているような) "SHA1" 160ビットSHA-1コード "SHA224" 224ビットSHAコード "SHA256" 256ビットSHAコード "SHA256SHA256" Double SHA-256コード(ビットコインで使用されているような) "SHA384" 384ビットSHAコード "SHA512" 512ビットSHAコード {"SHA",b} 224, 256, 384, 512ビットで長さ b のSHAコード "SHA3-224" 224ビットSHA3コード "SHA3-256" 256ビットSHA3コード "SHA3-384" 384ビットSHA3コード "SHA3-512" 512ビットSHA3コード {"SHA3",b} 224, 256, 384, 512ビットで長さ b のSHA3コード "Expression" 式のハッシュコード(デフォルト) - 可変長ハッシュの場合,長さ b は8の倍数でなければならない.
- "Expression"ハッシュは式の内部表現から計算されるので,コンピュータシステムやWolfram言語のバージョンによって変わることがある.
- バイト列に作用する("SHA"のような)ハッシュについては,Hash[expr,…]は,以下の表に従って,まず expr をバイトに変換する.
-
expr ToString[FullForm[expr]]によるバイト "string" string のUTF-8表現によるバイト ByteArray[…] バイト配列におけるリテラルなバイト - 次は使用可能な形式である.
-
"Integer" 整数(デフォルト) "DecimalString" 10進数列 "HexString" 16進数列 "HexStringLittleEndian" リトルエンディアンバイト順の16進数列 "Base36String" 36を底とする英数字列 "Base64Encoding" Base64の符号化 "ByteArray" 明示的なバイト配列としてのハッシュコード
例題
すべて開くすべて閉じるスコープ (12)
特性と関係 (12)
デフォルトのハッシュコードは"Expression"である:
"DecimalString"は,必要な場合は0で充填された"Integer"の数列版である:
"HexString"は,必要な場合は0で充填された,16を底とした表現である:
"Base36String"は,必要な場合は0で充填された,36を底とした表現である:
"Base64Encoding"は底64の符号化を使って結果のバイトを符号化する:
ByteArrayを中間結果として使うと繰り返されたハッシュが得られる:
FileHash[file,code]は,事実上,Hash[ReadByteArray[file],code]と同じである:
考えられる問題 (3)
テキスト
Wolfram Research (1988), Hash, Wolfram言語関数, https://reference.wolfram.com/language/ref/Hash.html (2022年に更新).
CMS
Wolfram Language. 1988. "Hash." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2022. https://reference.wolfram.com/language/ref/Hash.html.
APA
Wolfram Language. (1988). Hash. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/Hash.html