I. 고속 경량 해시 알고리즘, LSH
가. LSH(Lightweight Secure Hash)의 개념
w비트 워드 단위로 동작하여 n비트 출력값을 가지는 고속 경량 해시 암호화 알고리즘
나. LSH의 특징
– LSH-8w-n → w: 32 or 64, n: 1 ~ 8w 사이의 정수를 만족하는 암호화 알고리즘 예) LSH-256-256, LSH-512-256, LSH-512-512
II. LSH 암호화 구성도 및 절차
가. LSH 암호화 구성도
– 해시함수는 Message에 대해 초기화→압축→완료 단계 후 출력
나. LSH 암호화 절차
절차 | 설명 |
---|---|
초기화 | – 입력 메시지를 메시지 블록 비트 길이의 배수가 되도록 패딩 후 분할 – 연결 변수를 IV로 초기화 |
압축 | – 32 워드 배열 메시지 블록을 압축 함수 출력값으로 연결 변수 갱신 – 마지막 메시지 블록 처리까지 반복 |
완료 | – 최종 저장된 값으로부터 n 비트 길이의 해시 함수 출력값 생성 |
– LSH암호는 다양한 SW환경에서 국제 표준(SHA2/3) 대비 2배 이상의 성능 암호화 알고리즘
View Comments (2)
정의에서 w비트 원드 단위라고 나오는 데요....w비트가 뭐여요?
w비트는 CPU가 한 번에 처리할 수 있는 크기(1 word)의 bit 길이인 32 또는 64를 말합니다. 예를 들어 LSH-8w-n에 w=32를 적용 시 LSH-256-n이 되며, w=64를 적용 시 LSH-512-n이 됩니다. 메시지 크기는 LSH-512-256 적용 시 512 bit 평문을 암호화하면 256 bit 암호문이 생성됩니다.
KISA LSH 암호기술 문서 (https://seed.kisa.or.kr/kisa/algorithm/EgovLSHInfo.do)의 관련자료 항목에서 “LSH 해시 함수 사양 및 세부 명세” 자료를 읽어 보시면 도움이 되실 듯 합니다.