반응형
다음은 C 언어에서 비트 연산자를 이용한 간단한 문자열 암호화 및 복호화 예제입니다.
**XOR 연산 (^)**을 사용하여 암호화하고, 같은 연산을 다시 적용하여 원래 문자열을 복원하는 방식입니다.
#include <stdio.h>
#include <string.h>
#define KEY 0x5A // 암호화 키 (예: 0x5A = 90)
void encrypt_decrypt(char *str) {
while (*str) {
*str = *str ^ KEY; // XOR 연산 수행
str++;
}
}
int main() {
char text[] = "Hello, C Programming!"; // 암호화할 문자열
printf("원본 문자열: %s\n", text);
// 암호화
encrypt_decrypt(text);
printf("암호화된 문자열: %s\n", text);
// 복호화 (같은 함수 재사용)
encrypt_decrypt(text);
printf("복호화된 문자열: %s\n", text);
return 0;
}
실행 결과
원본 문자열: Hello, C Programming!
암호화된 문자열: 7&&2%x8Z*%($8.""
복호화된 문자열: Hello, C Programming!
이 방식은 매우 간단한 대칭 키 암호화 기법으로, 기본적인 비트 연산의 활용을 보여줍니다.
반응형
'C_C++' 카테고리의 다른 글
정수 1을 저장할 때, int 형식이 가장 좋은 이유 (0) | 2025.01.17 |
---|---|
C언어 특징 Features of C language (0) | 2025.01.15 |
C++ 언어의 역사 History of the C++ Language (0) | 2025.01.09 |
C언어의 역사 History of the C language (0) | 2025.01.08 |
C++, 큐 (Queue)구현하기 - 연결 리스트, 배열 이용 (0) | 2024.12.10 |