DES(Data Encryption Standard) 암호화 알고리즘
본 자료는 2페이지 의 미리보기를 제공합니다. 이미지를 클릭하여 주세요.
닫기
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
해당 자료는 2페이지 까지만 미리보기를 제공합니다.
2페이지 이후부터 다운로드 후 확인할 수 있습니다.

본문내용

DWORD t;
MakeKey(key,keys);/* 암호화키 16개 만들기 */
out->dw[0] = plain.dw[0];
out->dw[1] = plain.dw[1];
IP(out);/* IP치환 */
for(i=0;i<16;i++)/* 16회 반복 */
{
RoundFunction(keys[i],out);
t = out->dw[0];
out->dw[0] = out->dw[1];
out->dw[1] = t;
}
t = out->dw[0];
out->dw[0] = out->dw[1];
out->dw[1] = t;
FP(out);/* IP역치환 */
}
int main(void)
{
BIT64 key,in,out;
DWORD i;
BYTE ch[9];
BYTE KEY[7] = {0x01,0x01,0x01,0x01,0x01,0x01,0x01};
for(i=0;i<7;i++)
{
key.b[i] = KEY[i];
}
printf("\n--=================================--");
printf("\n D E S P R O G R A M ");
printf("\n--=================================--");
printf("\n오직 8글자 평문을 입력하시오 : ");
scanf("%s",&in);
printf("\n오직 7글자 암호키를 입력하시오 : ");
scanf("%s",&key);
des_encrytion(key,in,&out);
printf("\n 입력한 문자 16진수값 : %02X %02X %02X %02X %02X %02X %02X %02X",
in.b[0],in.b[1],in.b[2],in.b[3],in.b[4],in.b[5],in.b[6],in.b[7]);
printf("\n 입력한 암호키 16진수값 : %02X %02X %02X %02X %02X %02X %02X %02X",
key.b[0],key.b[1],key.b[2],key.b[3],key.b[4],key.b[5],key.b[6],key.b[7]);
printf("\n 암호문은 : %c%c%c%c%c%c%c%c",
out.b[0],out.b[1],out.b[2],out.b[3],out.b[4],out.b[5],out.b[6],out.b[7]);
printf("\n 확인하기어려울때(HEX) : %02X %02X %02X %02X %02X %02X %02X %02X",
out.b[0],out.b[1],out.b[2],out.b[3],out.b[4],out.b[5],out.b[6],out.b[7]);
return 0;
}
DES(Data Encryption Standard)는 암호화 알고리즘이다. DES에서는 대칭적(symmetric) 알고리즘을 사용하고 있다. 이 대칭적 알고리즘은 암호화하는 과정과 이를 푸는 과정이 같은 열쇠(key)와 알고리즘을 사용하여 이루어지는 것이 특징이다. 이와 반대로 public-key encryption은 대칭적 알고리즘과는 달리 암호화할 때와 암호를 풀 때 사용하는 열쇠가 다르다.

키워드

  • 가격2,500
  • 페이지수7페이지
  • 등록일2007.03.25
  • 저작시기2003.4
  • 파일형식한글(hwp)
  • 자료번호#400693
본 자료는 최근 2주간 다운받은 회원이 없습니다.
청소해
다운로드 장바구니