728x90
파일 :
hsol.tistory.com.exe
hsol.tistory.com.exe#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
char ch;
void encrypt(int key);
void decoding(int key);
void main()
{
main:
int key;
printf("\n\tKEY 값을 입력해주세요(정수값) : "); scanf("%d",&key);
if(key>25||key<=0)
{
printf("[경고] KEY 값은 0이상 25이하 로 입력해주세요.\n");
goto main;
}
EDmenu:system("cls");
printf("암호화 or 복호화 (e or d)"); ch=getch();
switch(ch)
{
case 'e':case 'E': encrypt(key);break;
case 'd':case 'D': decoding(key);break;
default: goto EDmenu;
}
}
void encrypt(int key)
{
system("cls");
printf("암호화 프로그램입니다. [20321 임한솔] - 종료(esc)\n");
printf("변환할 암호를 입력해주세요(실시간변환) :");
while(ch!=27)
{
ch=getch();
if(ch==' ')ch=ch;
else if(ch>=97&&ch<=122)
{
if(ch+key>122)
ch=(ch+key)-26;
else
ch+=key;
}
else if(ch>=65&&ch<=90)
{
if(ch+key>90)
ch=(ch+key)-26;
else
ch+=key;
}
else continue;
putch(ch);
}
system("cls");
printf("프로그램을 종료합니다.\n");
}
void decoding(int key)
{
system("cls");
printf("복호화 프로그램입니다. [20321 임한솔] - 종료(esc)\n");
printf("변환할 평문을 입력해주세요(실시간변환) :");
while(ch!=27)
{
ch=getch();
if(ch==' ')ch=ch;
else if(ch>=97&&ch<=122)
{
if(ch-key<97)
ch=218-(ch-key);
else
ch-=key;
}
else if(ch>=65&&ch<=90)
{
if(ch-key<65)
ch=154-(ch-key);
else
ch-=key;
}
putch(ch);
}
system("cls");
printf("프로그램을 종료합니다.\n");
}
ASCII 코드를 이용하여 Visual studio C++ 을 통해 만든 간단한 암호-복호화 프로그램입니다.
원리는 간단하게 입력된 key값 만큼 ASCII코드를 올려주거나 내려주는 방식입니다.
간단한 암호학.
ex)
KEY : 3
Welcome to my blog
Zhofrph wr pb eorj
'it > programming' 카테고리의 다른 글
| [java] Math 메소드를 활용한 가위바위보 (0) | 2013.09.25 |
|---|---|
| CSS 색상 이름 rgb , 16진수 자료( css 색상표 ) (0) | 2013.08.23 |
| 1학기 기말 웹프로그래밍 수행평가 (0) | 2013.07.04 |