불 대수 (Boolean Algebra)

고급암호학수정일

불 대수(Boolean algebra)는 참(1)과 거짓(0) 두 값의 집합 {0, 1}과 그 위의 AND, OR, NOT 연산으로 이루어진 대수 구조로, 디지털 전자공학과 논리 회로의 수학적 기초입니다. XOR을 덧셈, AND를 곱셈으로 보면 환(불 환)을 이룹니다.

실생활 예시로 이해하기

  • 전등 스위치: 스위치는 “켜짐”(1) 또는 “꺼짐”(0) 가운데 한 상태에 있습니다. 여러 스위치를 조합하면 더 복잡한 논리적 결정을 나타낼 수 있습니다.
  • 보안 시스템: 창 센서와 문 센서가 모두 작동하면(둘 다 1) 경보가 울리도록(출력 1) 설계할 수 있습니다.
  • 비밀번호 인증: 시스템은 입력값의 해시가 저장된 해시와 일치하는지 비교합니다. 비교 결과가 참(1)이면 접근이 허용되고, 거짓(0)이면 거부됩니다.

핵심 연산

  • AND(∧, &): 두 입력이 모두 1일 때만 1을, 그 밖에는 0을 반환합니다. 열쇠 두 개가 모두 있어야 열리는 금고, 또는 직렬로 연결된 두 스위치가 모두 켜져야 불이 들어오는 회로와 같습니다.
  • OR(∨, |): 입력 중 하나라도 1이면 1을, 두 입력이 모두 0일 때만 0을 반환합니다. 두 온도 조절 장치 가운데 하나라도 낮은 온도를 감지하면 켜지는 히터와 같습니다.
  • NOT(¬, ~): 하나의 입력을 뒤집는 단항 연산으로, 인버터 게이트처럼 1을 0으로, 0을 1로 바꿉니다. 예를 들어 “문이 닫혀 있음” 신호가 0(열림)이면 출력이 1이 되어 경고등이 켜지는 회로가 NOT을 사용합니다.
  • XOR(⊕): 두 입력이 서로 다를 때만 1을 반환합니다. 불 환에서의 덧셈에 해당하며, 같은 값을 두 번 XOR하면 원래 값으로 돌아갑니다(a ⊕ b ⊕ b = a).

이 연산들을 결합하면 복잡한 논리식을 만들 수 있고, 드모르간 법칙(¬(a ∧ b) = ¬a ∨ ¬b) 같은 규칙으로 식을 단순화할 수 있습니다. 간단한 논리 게이트부터 마이크로프로세서까지, 모든 디지털 회로는 불 대수로 표현됩니다.

암호화에서의 역할

  • 해시 함수: SHA-256 같은 해시 함수는 비트 단위 AND, XOR, NOT과 비트 회전·시프트에 232를 법으로 하는 덧셈을 섞어 반복해 입력을 고정 길이 출력으로 바꿉니다. 비트코인의 블록 해시와 주소 생성에도 이런 함수가 쓰입니다.
  • 블록 암호와 스트림 암호: AES는 라운드마다 데이터에 라운드 키를 XOR하고, 스트림 암호는 키 스트림을 평문에 XOR해 암호문을 만듭니다. XOR은 같은 키로 한 번 더 적용하면 원래 값으로 돌아가므로 암호화와 복호화에 모두 쓰입니다.

특징과 한계

  • 규칙이 단순해 이해하기 쉽습니다.
  • 모든 디지털 회로를 표현할 수 있고, 복잡한 논리 회로를 단순화하는 데 쓰입니다.
  • 디지털 회로 설계와 분석에 필수적입니다.
  • 두 값(0과 1)만 다루므로 아날로그 신호나 연속 값을 직접 나타내지는 않습니다.
  • 변수가 아주 많은 시스템에서는 식이 번거로워질 수 있습니다.

응용 분야

  • 디지털 전자공학: 논리 게이트, 회로, 디지털 시스템의 설계와 분석
  • 컴퓨터 과학: 프로그래밍의 조건문, 데이터베이스 쿼리, 알고리즘의 논리 연산
  • 수학: 집합론, 명제 논리, 이산 수학

이 글은 학습을 위한 일반 정보이며 투자 권유나 법률 자문이 아닙니다. 가상자산은 가격 변동이 크고 원금 손실 위험이 있습니다.