과제
C언어를 사용하여 DES 설계
SangQ
2009. 12. 12. 19:12
정보보안에서 나오는 기본적인 암호화 프로그램 DES를 설계 해보았습니다.
DES 알고리즘은 그림으로 나타내었다
이것을
▲ 아까 암호화 했던 메세지 5555666677778888 이 복호화 되어 나온다.
16번 돌려 암호문을 출력하는 형태이다
복호화는 서브키를 꺼꾸로 집어 넣어주면 복호화가 된다.
내가 만든 소스의 구조이다.
함수들과 데스테이블을 통해 암호화하는 형태이다.
▲ 이게 제일 짜증나게 했던 SBOX 함수이다.
다른건 테이블로 돌리기만 하면되는데 sbox는 돌리는 형태가 다르니 ... ㅎㅎ;;
▲ 최종 메인문이다.
프로그램을 돌려보면
▲ 암호화키를 111122223333444 를 넣고 암호화할 메세지를 5555666677778888을 넣어서 실행
▲ 암호화 결과 값이 4A6C3D125AECBEE7 이라고 암호화 되어 나온다.
암호화 하는 중간과정을 다 나오게 해놔서 DES 가 어떻게 돌아가는지 쉽게 볼수있다.
▲ 아까 썼던 키값 111122223333444를 넣고
복호화 할 메세지 4A6C3D125AECBEE7 넣어서 실행하면
실행 파일입니다.