[응용 프로그램] 자바로 구현한 DES 암호화 알고리즘 및 프로그램 소스(순열, S-Box, Shift)
- 최초 등록일
- 2003.06.22
- 최종 저작일
- 2003.06
- 34페이지/ 한컴오피스
- 가격 2,000원
소개글
이번 학기 최고의 레포트..
자바로 DES 구현하기였습니다.
본 자료에는 알고리즘 해석도 함께 포함 되어있으며
S-Box 부터 IP와 Shift 연산등.. 모든 알고리즘을 구현하였습니.
자료 잘 활용하시길..
자바 컴파일 하시면 생성값을 얻으실수 있을 것입니다.
그리고 소스안에 개인 증명 할수 있도록 증명 부분도 넣엇으니 활용하세요..
그럼 수거하십시오
목차
▣ DES 알고리즘의 일반적 모형
▣ 처리 단계
▣ DES 알고리즘의 단일 반복 과정
초기순열(IP)
역 초기순열(IP-1)
확장순열(E) 32-> 48
순열함수(P)
단일 반복 처리 과정
S-BOX(48BIT->38BIT)
--소 스--
1. EnDecryput.java
2. KeyMakey.java
3. Desjeong.java
결과값
============키생성과정============
============암호화과정============
============복호화과정============
본문내용
// IP 순열 함수
static byte[] Ip (byte[] original) {
byte[] temp= new byte[64];
System.out.print("IP순열 통과후 : ");
for(i=0;i<64;i++){
temp[i] = original[IP[i]-1];
System.out.print(temp[i]);
if(i%8==7)
System.out.print(" ");
}
System.out.println();
return temp;
}
//역 IP 순열 함수
static byte[] Ip2 (byte[] original) {
byte[] temp = new byte[64];
System.out.print("IP역순열 통과후: ");
for(i=0;i<64;i++){
temp[i] = original[IP2[i]-1];
System.out.print(temp[i]);
if(i%8==7)
System.out.print(" ");
}
System.out.println();
return temp;
}
//라운드 단일반복과정
static byte[] Rounding(byte[] original,byte[] key) {
// nextTemp = Li,Ri
// left = Li-1, right = Ri-1
byte[] nextTemp = new byte[64];
byte[] left = new byte[32];
byte[] right = new byte[32];
byte[] tempExpansion = new byte[48];
byte[] temp = new byte[32];
byte[] rightTemp = new byte[32];
int sTemp;
//64비트를 왼쪽 32비트, 오른쪽 32비트로 나눈다
for(i=0;i<32;i++) {
//상위 32비트를 왼쪽32비트로
left[i]=original[i];
//하위 32비트를 오른쪽 32비트로
right[i]=original[i+32];
//마지막단계에서 Ri-1을 Li로 보내기위해서
//temp라는 배열에 오른쪽 32비트를 임시로 저장한다
temp[i] = right[i];
참고 자료
없음