collision resisant

r·2021년 2월 17일
0

데이터베이스

목록 보기
2/7

weak collision resisant: m1 message 가 주어졌을때 hash(m1) = hash(m2) 가 되는 m2 찾기 어려운 그런 함수

strong collision resitant: 모든 m1, m2 에대해서 hash(m1) = hash(m2) 가 되는 경우 찾기 어려운 그런 함수

hash input type 이 string 인 경우에는 string 은 char 의 array 이고 char 은 int 에 일대일대응되니까
int 가 input 인 hash 함수랑 똑같이 취급 가능.

float 일때는 공식같을때 함수 부분만 정수에 대응되는 함수로 바꾼다든지 식으로.

hash function 중 보안성 철저한 함수 중에 하나가 sha 256 으로 256 bit long type 을 쓰고 비트코인 증명 관련 문서에도 쓰임.

sha 256 함수는, 위의 사진과 같이 아주 작은 글자의 변화에도, hash value 가 완전 다르게 나오기 때문에 보안성 철저함. ㅎㅎㅎ
아 참고로 구하기 어렵다는 건 보통 슈퍼 컴퓨터로 해도 1년이상 걸린다는 걸 의미함.

좋은 hash function 이 일반적으로 공통적으로 갖춰야 하는 세가지 특성
efficient, deterministic( 한 input 에 return value 하나, 그리고 gives same input values for same output value), and uniform( 각 hash value 가 되는 input 개수가 균일함)

hashing 응용 사례: encryption and file verification

profile
프론트엔드 개발자를 꿈꿉니다.

0개의 댓글