신경망 기반 일방향 해시 함수
초록
본 논문은 3층 신경망을 이용해 데이터 혼돈·확산·압축을 구현하고, 다중 블록 모드를 도입해 가변 길이 입력을 128비트 해시값으로 변환하는 일방향 해시 함수를 제안한다. Chaotic piecewise‑linear 맵을 전이 함수로 사용해 키와 입력에 대한 높은 민감성을 확보하고, 병렬 구현이 가능하도록 설계하였다. 이론적 분석과 실험을 통해 일방향성, 키·평문 민감성, 생일 공격·미들‑인‑더‑미들 공격에 대한 저항성을 입증한다.
상세 분석
제안된 해시 함수는 입력층·은닉층·출력층으로 구성된 3‑layer 피드포워드 신경망을 기반으로 한다. 입력층은 32개의 32‑bit 픽셀(P0P31)을 받아 8개의 중간값(C0C7)을 생성하며, 이 과정에서 각 입력에 대해 chaotic piecewise‑linear map f 와 가중치 W0, 편향 B0가 적용된다. f는 0<Q<0.5 구간에서 혼돈을 발생시키며, 초기값이나 파라미터가 미세하게 달라져도 T≥50번 반복 후에는 출력이 완전히 달라지는 특성을 가진다. 이러한 특성은 해시 함수의 확산·혼돈 요구를 충족시킨다.
은닉층은 입력층 출력 C를 받아 또다시 chaotic map f 와 가중치 W1, 편향 B1을 적용해 8개의 값(D0D7)을 만든다. 여기서는 f를 한 번만 적용해 연산량을 최소화하면서도 충분한 비선형성을 확보한다. 출력층은 D를 4개의 최종 해시값(H0H3)으로 압축한다. 이 단계에서는 f를 T번 반복해(보통 T≥50) 출력값의 무작위성을 크게 강화한다. 따라서 작은 입력 변화가 전체 해시값에 50%에 가까운 해밍 거리 변화를 일으키는 높은 평문·키 민감성을 보인다.
키 생성기는 128‑bit 사용자 키 K를 4개의 서브키(K0~K3)로 분할하고, 각 서브키를 다시 chaotic map에 투입해 151개의 실수형 서브키(가중치·편향·파라미터)로 변환한다. 이 과정은 모듈러 1 연산을 통해
댓글 및 학술 토론
Loading comments...
의견 남기기