SangQ
C언어를 사용하여 DES 설계 본문
정보보안에서 나오는 기본적인 암호화 프로그램 DES를 설계 해보았습니다.
DES 알고리즘은 그림으로 나타내었다
▲ 이게 한 싸이클이다.
이것을
▲ 아까 암호화 했던 메세지 5555666677778888 이 복호화 되어 나온다.
16번 돌려 암호문을 출력하는 형태이다
복호화는 서브키를 꺼꾸로 집어 넣어주면 복호화가 된다.
내가 만든 소스의 구조이다.
함수들과 데스테이블을 통해 암호화하는 형태이다.
▲ 이게 제일 짜증나게 했던 SBOX 함수이다.
다른건 테이블로 돌리기만 하면되는데 sbox는 돌리는 형태가 다르니 ... ㅎㅎ;;
▲ 최종 메인문이다.
프로그램을 돌려보면
▲ 암호화키를 111122223333444 를 넣고 암호화할 메세지를 5555666677778888을 넣어서 실행
▲ 암호화 결과 값이 4A6C3D125AECBEE7 이라고 암호화 되어 나온다.
암호화 하는 중간과정을 다 나오게 해놔서 DES 가 어떻게 돌아가는지 쉽게 볼수있다.
▲ 아까 썼던 키값 111122223333444를 넣고
복호화 할 메세지 4A6C3D125AECBEE7 넣어서 실행하면
▲ 아까 암호화 했던 메세지 5555666677778888 이 복호화 되어 나온다.
실행 파일입니다.
'과제' 카테고리의 다른 글
MATLAB을 이용한 표준정규분포(가우스분포)에 따른 랜덤수 발생기 (5) | 2010.01.26 |
---|---|
AES가 쉽게 설명되어있는 플래쉬 (0) | 2009.12.12 |
Matlab을 이용한 간단한 OFDM Signal Simulation (2) | 2009.11.07 |