hash()
hash() 함수는 지정한 해시 알고리즘을 사용하여 바이너리 데이터의 해시값을 바이너리로 반환합니다.
문법
hash(ALGORITHM, DATA)
매개변수
ALGORITHM- 해시 알고리즘 이름입니다.
md5,sha1,sha256,sha384,sha512중 하나를 지정합니다. DATA- 해시를 계산할 바이너리 데이터입니다.
설명
hash() 함수는 지정한 해시 알고리즘으로 바이너리 데이터의 해시값을 계산하여 바이너리로 반환합니다.
DATA가 null이거나 바이너리 타입이 아니면 null을 반환합니다.
지원하지 않는 알고리즘을 지정하거나 매개변수가 부족하면 쿼리 파싱 시점에 오류가 발생합니다.
오류 코드
| 오류 코드 | 설명 |
|---|---|
| 90690 | 해시 알고리즘을 지정하지 않은 경우 |
| 90691 | 해시 데이터를 지정하지 않은 경우 |
| 90692 | 지원하지 않는 해시 알고리즘을 지정한 경우 |
사용 예
-
MD5 해시값 계산
json "{}" | eval result = tohex(hash("md5", encode("hello, world!"))) | # result: 3adbbad1791fbae3ec908894c4963870 -
SHA-256 해시값 계산
json "{}" | eval result = tohex(hash("sha256", encode("hello, world!"))) | # result: 68e656b251e67e8358bef8483ab0d51c6619f3e7a1a9f0e75838d41ff368f728 -
바이너리가 아닌 값을 입력한 경우
json "{}" | eval result = hash("md5", "hello world") | # result: null -
DATA가null인 경우json "{}" | eval result = hash("sha1", null) | # result: null
호환성
hash() 함수는 소나 4.0 이전 버전부터 제공되었습니다.