본문 바로가기

보안, 개인정보 보호 및 데이터 무결성

A-Level 컴퓨터 과학 · 주제 6

이 주제용 영상 수업 영상 페이지 열기
16:28

보안, 개인정보보호 및 무결성

지금, 이 순간, 당신의 기기에 공격이 가해지고 있습니다. 키보드에 몸을 숙인 사람이 아니라, 무한히 스캔하는 자동 봇 군대의 공격입니다…

영어 내레이션 · 영어 + 중국어 자막 burned-in

6.1

보안, 개인정보 보호 및 무결성 — 서로 다른 세 가지 개념

Syllabus
응시자가 다음을 수행할 수 있어야 함: 참고 사항 및 가이드라인
보안, 개인정보 보호, 데이터 무결성이라는 용어의 차이를 설명하시오
데이터 보안과 컴퓨터 시스템 보안 모두의 필요성을 인정하고 있음을 보여주시오
스탠드alon PC부터 컴퓨터 네트워크까지 컴퓨터 시스템을 보호하기 위한 보안 조치 서술 사용자 계정, 비밀번호, 디지털 서명 및 생체 인식과 같은 인증 방식, 방화벽, 안티바이러스 소프트웨어, 안티스파이웨어, 암호화 포함
네트워크와 인터넷이Computer 및 데이터 보안에 위협하는 요인에 대한 이해 표시 말웨어(malware)(바이러스, spyware), 해커, 피싱(phishing), 파밍(pharming) 포함
위협으로 인한 위험을 제한하는 데 사용할 수 있는 방법을 설명하시오
데이터 보안을 보호하기 위한 설계된 보안 방법 설명 암호화, 접근 권한 포함

출처: Cambridge International syllabus

세 용어는 비슷해 보이지만 뜻이 다릅니다:

  • 보안(security) — 데이터가 허가되지 않은 접근, 변경 또는 파괴로부터 보호됨.
  • 개인정보 보호(privacy) — 개인이 자신의 개인정보를 볼 수 있는 사람을 통제할 권리, 동의와 명확한 목적을 포함함.
  • 무결성(integrity) — 데이터가 정확하고 완전함 — 파손되거나 우연히 변경되지 않음.

파일이 보안(권한 있는 사람만 열 수 있음)은 갖추었으나 무결성(오타로 손상됨)은 결여될 수 있으며, 정확성은 있으나 비공개성은 없을 수 있습니다(누구나 읽을 수 있음). 세 가지 모두 필요합니다.

체계에서 요구하는 차이점, 각 문장씩: 보안은 데이터 손실 및 무단 접근으로부터 데이터를 보호하는 것입니다; 개인정보 보호는 데이터를 비밀로 유지하여 viewing 권한이 있는 사람만이 볼 수 있게 하는 것입니다; 무결성은 데이터가 정확하고 일관되며 완전하다는 것입니다. 따라서 "보안과 개인정보 보호의 차이": 보안은 불필요한 사람에게 의해 데이터가 접근, 변경 또는 분실되는 것을 방지하는 것에 관한 것이며, 개인정보 보호는 개인이 자신의 개인정보를 누가 볼 수 있을지 결정할 권리에 관한 것입니다. "보안과 무결성의 차이": 보안은 무단 접근으로부터 데이터를 보호하는 것이며, 무결성은 데이터가 정확하고 최신임을 의미하며 이는 검증과 확인을 통해 보호됩니다.

탐색하기

위험 및 책임 실험실

관련된 규칙, 위험 또는 보호 조항에 따라 예제를 분류하십시오.

English 한국어
security/sɪˈkjʊərɪti/ 보안
privacy/ˈprɪvəsi/ 개인 정보 보호
integrity/ɪnˈteɡrɪti/ 무결성
6.1

보안이 중요한 이유

English

Two things to protect: the data itself (keep it confidential, intact and available) and the computer system (a compromised system can attack others, steal credentials, or be held to ransom).

"Why does the school need to keep both secure?" Data: it is personal and confidential, so it must not be read, changed or deleted by an unauthorised person, and its loss would stop the school working. System: an intruder who reaches the computer system can install malware, use it to attack other systems, damage the hardware or software, or lock it with ransomware; a secure system is the first line of defence for the data on it.

English 한국어
unauthorised/ʌnˈɔːθəraɪzd/ 미승인
malware/ˈmælweə/ 악성 소프트웨어
ransomware/ˈrænsəmweə/ 랜섬웨어
6.1

네트워크와 인터넷으로부터의 위협

위협은 세 가지 그룹으로 분류됩니다.

미들맨 공격자가 앨리스와 밥 사이에 앉아 메시지를 읽거나 변조함
미들맨 공격자는 두 당사자 사이에 위치합니다
  1. 악성 소프트웨어(Malware) — 유해한 프로그램:
  • 바이러스(virus) — 자체 복제 코드로 다른 프로그램에 부착되어 실행될 때 확산됩니다.
  • 워머(worm) — 사용자 조작 없이 네트워크를 통해 자체 복제 코드를 확산시킵니다.
  • 트로이 말(Trojan horse) — 유용해 보이지만 악성 코드를 숨겨둡니다.
  • 스파이웨어(spyware) — 키 입력, 비밀번호 등의 정보를 비공개로 수집합니다.
  • 랜섬웨어 — 파일을 암호화하고 보전을 요구합니다.
  • 광고웨어(adware) — 원치 않는 광고를 강제로 PUSH합니다.

2. 사람들을 속이는 방법(사회공학적 공격):

  • 피싱 — 사용자를 속여 자격증서를 주도록 하는 가짜 이메일/사이트입니다.
  • 파밍(pharming) — 올바른 주소를 입력했음에도 불구하고 사용자를 위조 사이트로Redirect합니다.
  • 사회 공학 — 사람들에게 정보를 입히도록 속이는 행위입니다.

scheme에서 설명하는 네 가지 유해 threat: 바이러스는 악의적 소프트웨어로, 복제(자신 자신을 복사)하여 다른 파일에 부착하고 데이터를 삭제하거나 손상시킵니다. 스파이웨어는 사용자의 키 입력과 행동을 기록하여 제3자에게 전송함으로써 비밀번호와 개인 정보를 획득하려는 악의적 소프트웨어입니다. 피싱 이메일은 합법적인 기관에서 온 것처럼 위장하며, 사용자가 개인 정보나 은행 계좌 정보를 요청하는 가짜 웹사이트로 연결되는 링크를 포함합니다. 파밍은 사용자의 컴퓨터 또는 웹 서버에 설치된 악의적 코드로, 사용자가 올바른 주소를 입력했음에도 불구하고 가짜 웹사이트로 리디렉션합니다. 스파이어와 바이러스의 유사점: 둘 다 맬웨어이며, 모두 사용자의 몰래 설치되며, 제3자에게 데이터를 전송하거나 시스템을 손상시킬 수 있습니다. 차이는 바이러스가 복제되는 반면 스파이어는 정보를 기록하고 전송한다는 점입니다. 피싱과 파밍은 모두 사용자를 데이터를 수집하는 가짜 웹사이트로 이끕니다. 피싱은 사용자가 이메일 내 링크를 클릭해야 하지만, 파밍은 컴퓨터 또는 DNS 서버의 코드를 통해 작동하므로 이메일이 필요 없습니다.

3. 네트워크 공격:

  • 해킹 by 해커 — 불허가 접근, 주로 약한 비밀번호나 소프트웨어 결함을 통해 이루어집니다.
  • 서비스 거부 (DoS/DDoS) — 서버를 폭주시켜 실제 사용자가 접속할 수 없게 만듭니다.
  • 도청 — 전송 중 데이터를 포획함 (오픈 Wi-Fi에서 위험 요소).
  • 중간자 공격 — 공격자가 두 당사자 간 메시지를 비밀리에 중계하거나 변경함.

작업 예시. 학교 네트워크의 데이터에 대한 두 가지 위협을 식별하고 설명하며, 각각에 대해 다른 예방 방법을 제시하십시오.

Threat 1, malware: a virus copied onto a computer from an email attachment or a download replicates itself and corrupts or deletes files; prevention: anti-virus software that scans files and is kept up to date. Threat 2, hacking: an unauthorised person gains access to the network, for example by guessing a weak password, and reads or changes the data; prevention: a firewall that blocks unauthorised connections, or strong passwords with two-factor authentication. A third pair, phishing: an email leads a user to a fake site that collects their login; prevention: training users to check the sender and the URL, and filtering email. The measure must match the threat: encryption does not stop a virus, and anti-virus software does not stop phishing.

Malware grouped by behaviour: self-spreading types are the virus (attaches to programs) and worm (spreads over networks); hidden or disguised types are the Trojan (looks useful), spyware, ransomware and adware
행동에 따른 맬웨어: 자생형(바이러스, 웜) versus 숨겨짐/위장형(트로이, 스파이어, 랜섬웨어, 광고웨어)
English 한국어
networks/ˈnetwɜːks/ 네트워크
man-in-the-middle/mæn ɪnðə ˈmɪdl/ 중간자 공격
virus/ˈvaɪrəs/ 바이러스
worm/wɜːm/ 벌레(worm)
Trojan horse/ˈtrəʊdʒn hɔːs/ 트로이마
spyware/ˈspaɪweə/ 스파이웨어
adware/ˈædweə/ 광고 소프트웨어
phishing/ˈfɪʃɪŋ/ 피싱
pharming/ˈfɑːmɪŋ/ 파밍
social engineering/ˈsəʊʃl ˌendʒɪˈnɪərɪŋ/ 사회 공학
hacking/ˈhækɪŋ/ 해킹
hackers/ˈhækəz/ 해커
denial of service/dɪˈnaɪəl ɒv ˈsɜːvɪs/ 서비스 거부
eavesdropping/ˈiːvzdrɒpɪŋ/ 도청
firewall/ˈfaɪəwɔːl/ 파이어월
two-factor authentication/tuː ˈfæktə ɔːˌθentɪˈkeɪʃn/ 이중 인증
authentication/ɔːˌθentɪˈkeɪʃn/ 인증
encryption/enˈkrɪpʃn/ 암호화
6.1

보안 조치

조치는 데이터 보안(분실, 도난 또는 손상 방지)과 컴퓨터 시스템 보안(하드웨어, 소프트웨어 및 네트워크) 모두를 보호합니다.

독립 PC

  • 강력한 비밀번호; 업데이트된 안티바이러스; 신속한 소프트웨어 업데이트; 별도 매체에 대한 백업; 전체 디스크 암호화; 잠그진 화면.

네트워크 연결 PC

위의 모든 사항에 더해, firewall, 사용자별 권한(관리자 권한은 관리자만 보유), 사용자 계정의 중앙 관리, 및 감사 로그(누가 로그인했는지, 무엇을 건들었는지).

scheme에서 인정하는 표현으로 조치가 작동하는 방식:

  • firewall: 들어오는 및 나가는 모든 전송을 검사하여 설정된 기준(주소, 포트 및 프로토콜의 whitelist 또는 blacklist)과 비교합니다. 기준에 부합하지 않는 것을 차단하며, 특정 사이트로의 액세스를 방지하거나 비허가 접근 시도를 경고할 수 있습니다.
  • 암호화: 데이터는 키를 사용하여 암호화되어 ciphertext로 변형되므로, 키가 없으면 도청된 사본을 이해할 수 없습니다. 수신자는 복호화를 위해 키를 사용합니다. 전송 중 및 저장 중 데이터를 보호하지만, 데이터가 도청되거나 삭제되는 것을 막지는 못합니다.
  • 비밀번호 및 사용자 계정: 비밀번호를 아는 사용자만 로그인할 수 있습니다. 긴 길이, 혼합 문자, 정기 변경이 있는 강력한 비밀번호는 추측할 수 없으며, 반복 실패 후 계정이 잠깁니다. 각 계정은 자체 접근 권한을 가집니다.
  • 안티바이러스 및 안티스파이웨어 소프트웨어: 알려진 맬웨어 서명 데이터베이스를 기준으로 파일을 스캔하고, 행동을 확인하며, 발견된 것을 격리하거나 삭제하며, 새로운 맬웨어를 인식할 수 있도록 업데이트되어야 합니다.
  • 접근 권한: 각 사용자(또는 그룹)에게 각 파일이나 테이블에 대한 읽기 전용 또는 읽기 및 쓰기 등의 권한이 부여되어, 사용자는 자신의 것이 아닌 데이터를 보거나 변경할 수 없습니다. 데이터베이스 또한 각 사용자에게 필요한 필드만 포함된 뷰를 제공하여 표시할 수 있습니다.
  • biometrics: the device captures an image of the face, fingerprint or iris, converts it to digital data, compares it with the stored data for that user and allows access only on a match; it cannot be forgotten, lent or guessed like a password.
  • backups: a copy of the data on separate media, kept off-site, so that lost or corrupted data can be restored.

To restrict the risks of malware, in three marks: install anti-malware software and keep it updated; use a firewall; do not open attachments or download files from unknown sources; keep the operating system and applications patched; and train users.

A box diagram with the user's computer on the trusted side, then the firewall, then the internet on the untrusted side, connected by double-headed arrows
사용자의 컴퓨터와 인터넷 사이에 있는防火墙

인터넷 전반

  • VPN — 사용자와 기업 게이트웨이 사이의 트래픽을 암호화합니다.
  • HTTPS / TLS — 웹 트래픽을 암호화합니다.
  • 디지털 서명 — 메일 발송자를 확인하고 전송 중 변조되지 않았음을 증명합니다.
  • 침입 탐지 — 알려진 공격 패턴을 위한 트래픽을 모니터링합니다.

How a digital signature authenticates a document (five marks): the sender puts the message through a hash function to produce a digest; the sender encrypts the digest with their private key, and that encrypted digest is the digital signature; the message and the signature are sent together; the receiver decrypts the signature with the sender's public key to recover the digest; the receiver hashes the received message and compares the two digests; if they match, the message came from the sender (only they hold the private key) and was not altered in transmission. A signature proves who sent the message and that it is intact; it does not hide the contents, which is what encryption of the message is for.

두 개의 레인: 발신자가 메시지를 해싱하여 디제스트를 만들고 이를 비공개 키로 암호화하여 서명을 생성하며, 메시지 및 서명을 전송합니다. 수신자는 발신자의 공개 키로 서명을 복호화하여 디제스트 A를 얻고, 수신한 메시지를 해싱하여 디제스트 B를 얻어 두 값을 비교합니다
디지털 서명: 메시지를 해시한 결과물이며, 발신자의 비공개 키로 암호화되어 있으며, 수신자는 이를 새로운 해시 결과와 대조하여 검증합니다
탐색하기

Caesar 암호로 암호화

이동(shift)을 변경하는 것이 열쇠(key)입니다. 각 문자는 알파벳 상에서 그만큼 이동하여 ciphertext를 만들고, 동일한 열쇠로 다시 되돌립니다. 이 공유 열쇠는 미시적 대칭 암호화입니다.

English 한국어
backup/ˈbækʌp/ 백업
user accounts/ˈjuːzə əˈkaʊnts/ 사용자 계정
audit logs/ˈɔːdɪt lɒɡz/ 감사 로그
ciphertext/ˈsaɪfətekst/ 암호문
biometrics/ˌbaɪəʊˈmetrɪks/ 생체 인식
VPN/ˌviː piː ˈen/ VPN
digital signatures/ˈdɪdʒɪtl ˈsɪɡnɪtʃəz/ 디지털 서명
private key/ˈpraɪvət kiː/ 사钥
public key/ˈpʌblɪk kiː/ 공钥
6.1

위협에 대한 대응 조치 매칭

  • 전송 중 도청 → 데이터를 암호화합니다(HTTPS, VPN). 키가 없으면 도청된 ciphertext는 무용지물입니다.
  • unauthorised access → strong authentication (long passwords; two-factor authentication with a phone code or key); user authorisation; lock-out after failed logins.
  • 악성 소프트웨어(malware) → 실시간 스캔 기능이 있는 바이러스 차단 프로그램 및 스파이웨어 차단 프로그램; 패치 적용; 신뢰할 수 없는 다운로드 피하기.
  • 피싱(phishing) → 사용자 교육; 이메일 필터링; 비밀번호 입력 전 URL 확인.
  • 내부 위협 → 최소 권한 least-privilege 원칙 (사용자에게 필요한 것만 제공); 감사(auditing).
  • DDoS → 속도 제한(rate limiting) 및 트래픽 필터링.

인터넷을 통해 이동하는 기밀 데이터의 경우, 해당 시스템의 방법은 암호화입니다: 데이터는 키를 사용하여 ciphertext로 인코딩되므로, 도청한 무단 사용자는 읽을 수 없으며, 키를 가진 의도된 수신자만이 복호화할 수 있습니다. 테스트용 프로그램 파일을 이메일로 보낼 때에도 동일한 답변이 적용됩니다(파일 암호화 또는 암호화된 연결을 통한 전송), 그리고 파일 자체에 비밀번호를 포함해야 합니다.

English 한국어
authorisation/ˌɔːθəraɪˈzeɪʃn/ 권한 부여
least-privilege/liːst ˈprɪvɪlɪdʒ/ 최소 권한
6.1

데이터 자체 보호

  • encryption — turn plaintext into ciphertext with a key. Symmetric encryption (AES) uses one shared key; asymmetric encryption (RSA) uses a public key and a private key. Protects data at rest and in transit.
  • 접근 제어(access control) — 파일 권한(읽기/쓰기/실행) 및 **접근 권리(access rights)**는 운영체제(OS)에 의해 강제됩니다.
  • 인증(authentication) — 인증 기술/authentication techniques은 다음을 통해 사용자를 확인합니다: 아는 것(password), 가진 것(token, 휴대폰), 혹은 본질적 특성(생체 인식/biometrics — 지문, 얼굴, 망막); 가장 강력한 방식은NONE combine입니다.
  • 백업(backups) — 손실이나 손상 시 복구할 수 있도록 사본을 유지합니다(일부 원격 오프사이트(off-site)).
  • 물리적 보안(physical security) — 잠금된 서버룸, 케이블 잠금 장치.

데이터베이스의 접근 권리에 대한 설명 (3점): 각 사용자에게 사용자명 및 비밀번호가 포함된 계정을 부여합니다. 데이터베이스 관리자는 각 테이블에 대해 각 계정에 읽기 전용, 읽기 및 쓰기, 또는 접근 불가 등의 권한을 할당합니다. 사용자는 허용된 테이블과 필드만 볼 수 있으므로, 고객이 직원 테이블을 열 수 없고, 사원이 가격을 읽기는 하지만 변경할 수는 없습니다. DBMS는 접근 권리 및 **뷰(view)**를 통해 이를 강제하며, 저장된 데이터도 암호화할 수 있습니다.

대칭 암호화는 공유되는 하나의 키를 사용하여 메시지를 암호화하고 복호화하며, 비대칭 암호화는 수신자의 공개 키로 암호화하고 개인/private key로 복호화합니다
대칭 암호화는 하나의 공유 키를 사용하며, 비대칭 암호화는 공개 키로 암호화하고 비공개 키로 복호화합니다
LCD 화면에 6자리 코드가 표시된 회색 RSA SecurID 토큰(security token)
보안 토큰은 2단계 인증을 위해 변화하는 코드를 표시합니다("가지고 있는 것 something you have")
광학 센서 패드가 있는 작은 USB 지문 인식기 사진
지문 리더기는 "본질적 특성(something you are)" — 비밀번호가 아닌 개인의 특징 —을 확인합니다
탐색하기

Caesar 암호로 암호화

이동(shift)을 변경하는 것이 열쇠(key)입니다. 각 문자는 알파벳 상에서 그만큼 이동하여 ciphertext를 만들고, 동일한 열쇠로 다시 되돌립니다. 이 공유 열쇠는 미시적 대칭 암호화입니다.

English 한국어
access rights/ˈækses raɪts/ 접근 권한
anti-spyware/ˈænti ˈspaɪweə/ 안티스파이웨어
plaintext/ˈpleɪntekst/ 평문
Symmetric encryption/sɪˈmetrɪk enˈkrɪpʃn/ 대칭 암호화
asymmetric encryption/ˌeɪsɪˈmetrɪk enˈkrɪpʃn/ 비대칭 암호화
access control/ˈækses kənˈtrəʊl/ 접근 제어
6.2

데이터 무결성(data integrity)

Syllabus
응시자가 다음을 수행할 수 있어야 함: 참고 사항 및 가이드라인
데이터 검증과 데이터 확인이 데이터 무결성을 보호하는 방법을 설명하시오
데이터 검증의 방법을 설명하고 사용하기 포함: 범위 검사, 형식 검사, 길이 검사, 존재 여부 검사, existence check, 한도 검사, 검증 숫자
데이터 입력 및 전송 중 데이터 검증(datab verification) 방법을 설명하고 적용 데이터 입력 시 시각적 확인, 이중 입력(double entry). 데이터 전송 시 패리티 체크(parity check)(바이트 및 블록), 체크섬(checksum) 포함

출처: Cambridge International syllabus

데이터가 정확하고 완전할 때 무결성이 있습니다. 두 가지 기법: 데이터 검증(data validation) (저장 전에 불량 데이터 포착) 및 데이터 확인(data verification) (데이터가 올바르게 입력되거나 전송되었는지 확인).

검증(validation) — 데이터가 타당한가?

**검증(validation)**은 자동으로 합리적인 규칙에 따라 데이터를 확인합니다:

  • 범위 체크(range check) — 범위 내에 있는지 (예: 달은 1~12월).
  • 한계 체크(limit check) — 단일 한계의 올바른 쪽에 있는지 (예: 연령 ≥ 18세).
  • 존재 체크(existence check) — 참조 대상 항목이 존재하는지 (예: 제품 코드가 테이블에 있는지).
  • 길이 체크(length check) — 올바른 문자 수인지.
  • 유형/문자 체크(type / character check) — 올바른 종류의 데이터인지 (전화 번호 필드는 숫자만 허용).
  • 양식 체크(format check) — 양식에 부합하는지 (이메일은 @가 포함되어야 함).
  • 필수 체크(presence check) — 필수 필드가 비어 있지 않은지.
  • check digit — an extra digit computed from the others (ISBN, card numbers) that spots transcription errors.

Worked example. In a simple check-digit scheme the check digit is the remainder when the sum of the digits is divided by $10$, appended to the number. The number $4162$ has digit sum $13$, so it is stored as $41623$. A user types $14623$: the first two digits are swapped, but the sum is still $13$, so the check digit still matches and the error is not caught. A user who types $41523$ is caught, because $4 + 1 + 5 + 2 = 12$ gives check digit $2$. Weighted schemes can detect some transpositions that this unweighted rule misses. Detection depends on the weights, the positions and the modulus: an ISBN-13 rule, for example, does not detect every possible transposition. A check digit is validation: it tests the number against a rule at the moment it is entered.

  • 검색 확인(lookup check) 및 일관성 확인(consistency check) (예: 배송 날짜 ≥ 주문 날짜).

검증은 형식이 잘못된 데이터는 잡지만, 형식은 맞으나 사실적으로 틀린 데이터("Bib"에 "Bob")는 잡지 못합니다.

해설 예제. 각 가짜코드(pseudocode)가 수행하는 검증(check)을 식별하시오.

가짜 코드 확인 사항
IF x < 0 OR x > 10 THEN OUTPUT "Invalid" 범위 확인(range check): 값이 두 한계치 사이에 있어야 함
IF x = "" THEN OUTPUT "Invalid" 존재 확인(presence check): 필드가 비어 있어서는 안 됨
IF NOT(x = "Red" OR x = "Yellow" OR x = "Blue") THEN OUTPUT "Invalid" 검색 확인(lookup/existence check): 값이 특정 목록 중 하나여야 함
IF LENGTH(x) <> 6 THEN OUTPUT "Invalid" 길이 확인(length check): 올바른 개수의 문자이어야 함
IF MID(x, 1, 1) < "A" OR MID(x, 1, 1) > "Z" THEN OUTPUT "Invalid" 형식 확인(format check): 특정 문자가 영문자여야 함

영문자 1개, 숫자 3개, 영문자 2개로 이루어진 자동차 번호판이 Validation되도록 하기 위해: 형식 확인은 각 위치가 패턴에 부합하는지 테스트하고, 길이 확인은 6개의 문자임을 확인함. 생년월일(date of birth)을 Validation하기 위해: 형식 확인(DD/MM/YYYY), 범위 확인(월이 $1$부터 $12$ 사이이며, 연도는 미래가 아님), 존재 확인(비워두지 않음)을 수행함. $0$와 시험의 최대 점수 사이의 점수는 타입 확인(정수)과 범위 확인이 필요하며, 상한값은 해당 시험 기록(record)에서 읽는다. 이것이 바로 validation이 유효하지 않은 데이터를 거절함으로써 무결성을 보호하는 방법이다.

검증(Verification) — 데이터가 정확히 입력되거나 전송되었는가?

확인은 데이터를 한 위치에서 다른 위치로 이동할 때 변경되지 않았는지 확인합니다.

입력 중: 이중 입력(double entry) (새 비밀번호처럼 두 번 입력하여 비교) 또는 시각적 확인을 수행합니다.

In the scheme's words, double entry is entering the data twice, by the same person or by two people, and having the computer compare the two versions and report any difference; a visual check is the person comparing what is on the screen with the original source document and correcting any difference before saving. Both protect integrity by making sure the stored data matches the source. Even after validation and verification the data can still be wrong: it can be sensible and match the source, yet the source itself was wrong, or the user typed a different but valid value from the one intended.

전송 중(비트가 뒤바뀔 수 있음):

  • 패리티 체크 — 추가 비트가 1의 개수를 짝수(짝 패리티) 또는 홀수로 만듭니다. 수신자가 다시 세어 보며, 단일 비트 오류를 포착합니다.
  • 체크섬(checksum) — 송신자가 데이터의 요약 값을 보내면, 수신자가 이를 재계산하여 비교함.
  • 순환 redundancy check(CRC) — 다항식 나눗셈을 사용하는 더 강력한 체크섬으로, 많은 종류의 오류를 포착합니다.

패리티 블록 체크는 오류를 위치까지 파악합니다. 바이트를 격자 형태로 배치하고 각 바이트에 행 패리티 비트를 부여한 후, 위쪽 바이트들의 열 패리티를 조합하여 생성한 추가 패리티 바이트를 계산합니다. 단일 비트가 뒤바뀌으면 한 행과 한 열이 모두 실패하므로, 두 줄의 교차점이 정확히 어떤 비트가 변경되었는지 지목하며, 심지어 이를 수정할 수도 있습니다.

해설 예제. 네 개의 바이트가 짝수 패리티(even parity)로 전송되고, 그 다음 패리티 바이트가 온다. 손상된 비트를 찾으시오.

A grid of four received bytes and a parity byte under even parity, with the parity bit in the first column; the third byte's row has five 1s and the fourth column has three 1s, both odd, and the bit at their crossing is marked as the one that was flipped
패리티 블록 확인: 실패하는 행과 실패하는 열이 바뀐 비트에서 교차함

각 행과 각 열의 1의 개수를 세십시오. 모든 행과 열은 짝수여야 합니다; 바이트 3에는 5개, 열 4에는 3개가 있습니다. 해당 행과 열이 교차하는 위치의 비트가 바뀐 것이므로, 이를 1에서 0으로 초기화합니다. 패리티 확인만으로는 바이트 내 오류를 감지할 수는 있으나 어느 비트가 바뀐지는 알 수 없습니다. 같은 바이트 내에서 두 개의 오류는 서로 상쇄되어 unnoticed하게 통과합니다. 체크섬(checksum) 은 3점 문제 해설: 송신자는 데이터 블록을 알고리즘에 통해 체크섬 값을 생성하고; 데이터와 체크섬을 함께 보냅니다; 수신자는 받은 데이터에 동일한 알고리즘을 실행합니다; 두 체크섬이 일치하면 데이터를 수용하고, 그렇지 않으면 거부하여 다시 보냅니다.

동일한 7개의 데이터 비트가 두 번 표시되어 있음: 패리티 비트 0은 짝수 패리티에 대해 1이 4개, 패리티 비트 1은 홀수 패리티에 대해 1이 5개를 만듦
패리티 비트는 1의 개수를 짝수 또는 홀수로 만들기 위해 설정됨
송신자가 체크섬을 계산하여 데이터 블록과 함께 보내면, 수신자가 체크섬을 재계산하여 비교하며, 바이트 합계 mod-256 계산에 대한 해설 예제도 포함됨
데이터 블록에 대한 체크섬 계산하기

검증(verification)은 도착한 것이 보낸 것과 일치함을 증명할 뿐입니다 — 데이터가 정확한지, 혹은 고의적인 변조를 방지하는지는 증명하지 않습니다. 검증(validation) 은 "이것이 타당한가?"라고 묻습니다; 검증(verification) 은 "이것이 정확하게 복사되었는가?"라고 묻습니다 — 두 가지 모두 사용하십시오.

표는 데이터 입력 시(이중 입력 및 시각적 확인)와 데이터 전송 시(-parity check(바이트 또는 블록) 및 체크섬)- 사용 시점에 따라 방법을 분류합니다. 카메라에서 서버로 비디오 파일을 전송할 때는 체크섬을 사용합니다: 카메라가 계산하고, 서버가 다시 계산하며, 일치하지 않으면 재전송합니다.

Side by side: validation asks "is this data sensible?" and checks rules like range, type and format before storing (catching nonsense data); verification asks "was it copied correctly?" and uses double entry, parity and checksums (catching copying errors) *Validatio는 데이터가 타당한지 확인하고, Verification은 데이터가 변형 없이 복사되었는지 확인합니다.

풀이 예시. 사용자가 생일을 31/02/2009로 입력하고 이메일 주소를 두 번 입력했습니다. 각 오류를 어떤 검증이 포착하는지, 그리고 그 차이는 무엇인지 설명하십시오. Validation은 "이 데이터가 타당한가?"라고 묻습니다 - 컴퓨터는 규칙에 따라 테스트하며, 형식 또는 범위 검증은 2월에는 31일이라는 사실이 없기 때문에 31/02/2009를 거절합니다. Verification은 "이 데이터가 올바르게 입력되었는가?"라고 묻습니다 - 이메일을 두 번 입력하는 것은 이중 입력이며, 두 사본을 비교하여 타이핑 실수를 포착합니다. 이 문제의 핵심은 다음 점입니다: Validation은 데이터가 정확함을 절대 알 수 없으며, 오직 가능함만 알 수 있습니다 - 01/02/2009는 사용자가 실제로 다른 날에 태어났더라도 모든 Validation 규칙을 통과할 수 있습니다. 각 검증이 할 수 있는 것과 할 수 없는 것을 설명하십시오.

보안 답변에서의 프록시 서버

프록시 서버는 클라이언트를 대신하여 요청을 처리합니다. 조직은 이를 설정하여 웹사이트 접근을 필터링하거나, 요청을 로그로 남기거나, 응답을 캐시하게 할 수 있습니다. 설정된 보호 기능을 설명하십시오. 단순히 프록시를 언급만 하는 것은 그 threat를 어떻게 방지하는지 보여주지 않습니다. 라우터는 네트워크 간 패킷을 전달하며, 이러한 역할은 다릅니다.

탐색하기

컴퓨팅 개념 실험실

구체적인 예시를 그들이 시연하는 컴퓨팅 개념에 따라 분류하십시오.

English 한국어
validation/ˌvælɪˈdeɪʃn/ 검증
verification/ˌverɪfɪˈkeɪʃn/ 확인
check digit/tʃek ˈdɪdʒɪt/ 검증 digit
parity check/ˈpærɪti tʃek/ 패리티 체크
checksum/ˈtʃeksəm/ 체크섬
cyclic redundancy check/ˈsaɪklɪk rɪˈdʌndənsi tʃek/ 순환冗余 검사
parity block check/ˈpærɪti blɒk tʃek/ 패리티 블록 체크
수업 보기
6.2

출제자가 인정하는 정의

정의형 질문은 고정된 용어에 따라 채점됩니다. 이를 정확히 암기하십시오.

용어 정의
데이터 보안 손실 및 무단 접근, 변경, 삭제로부터 데이터를 보호함
데이터 개인정보 보호 데이터를 비공개로 유지하여, Viewing 권한이 있는 사람만이 볼 수 있게 함
데이터 무결성 데이터가 정확하고 일관되며 완전함을 의미함
말웨어 사용자의 동의 없이 설치되어 시스템을 손상시키거나 데이터를 도난하기 위한 악의적 소프트웨어
바이러스 자신을 복제하여 다른 파일에 부착되고 데이터를 손상시키거나 삭제하는 말웨어
스파이웨어 사용자의 키 입력이나 행동을 기록하여 제3자에게 전송하는 말웨어
피싱 정당한 기관을 위장한 이메일을 통해 사용자를 가짜 웹사이트로 유도하여 개인 정보를 수집하는 행위
파밍 올바른 주소가 입력되었음에도 불구하고 사용자를 가짜 웹사이트로 리다이렉트하는 악의적 코드
방화벽 시스템으로 들어오거나 나가는 모든 트래픽을 설정된 기준에 따라 검토하고 기준에 부합하지 않는 것을 차단하는 하드웨어 또는 소프트웨어
암호화 키를 사용하여 데이터를 난독화하여 복호화 키가 없으면 이해할 수 없게 만
디지털 서명 sender의 프라이빗 키로 암호화된 메시지 해시값으로, sender임을 증명하고 수정되지 않았음을 입증하는 데 사용됨
데이터 검증 입력된 데이터가 합리적이고 설정된 규칙을 따르는지 자동 검증
데이터 검증 소스나 재계산된 값과 비교하여 데이터가 올바르게 입력되거나 전송되었는지 검증
check digit an extra digit calculated from the other digits of a number and appended to it, so that an error in the number can be detected
패리티 체크 바이트에 추가된 비트로, 1의 개수가 짝수(또는 홀수)가 되도록 하여 수신자가 다시 세는 방식
체크섬 알고리즘을 통해 데이터 블록에서 계산되어 함께 전송되며, 수신자가 다시 계산하여 비교하는 값
6.2

시험 팁

  • 세 가지 개념을 명확히 구분하십시오: 보안(데이터 보호), 개인정보 보호(누가 볼 수 있는가), 무결성(정확성 유지).
  • 각 위협(말웨어, 해킹, 피싱, intercepted)을 대책(방화벽, 암호화, 인증, 접근 권한)에 매칭하십시오.
  • 암호화는 비밀유지를 보호할 뿐 무결성은 보호하지 않습니다 - 무결성을 위해서는 체크섬, 패리티 또는 체크 디지트를 사용하십시오.
  • 바이러스, 웜, 트로이목마를 구분하고 각각이 어떻게 확산되는지 설명하십시오.

흔한 실수

  • 두 위협에 동일한 대책을 제시하거나, 위협에 적합하지 않은 대책을 제시하는 경우. 표의 각 위협에는 이를 실제로 막을 수 있는 서로 다른 예방 조치가 필요합니다.
  • 작동 원리를 설명하지 않고 대책 명칭만 나열하는 경우. "방화벽"은 "설정된 기준에 따라 트래픽을 비교하여 실패한 것을 차단한다"가 뒤따를 때만 점수를 받습니다.
  • 데이터가 정확한지 검증한다는 이유로 Validation을 검증이라고 부르는 경우. Validation은 데이터가 합리적인지 확인하고, Verification은 소스와 일치하는지 확인합니다. 어느 것도 진위를 증명하지는 않습니다.
  • 디지털 서명이 메시지를 암호화한다고 말하는 것은 오해입니다. 이는 메시지의 해시를 개인 키로 암호화하고, 수신자는 공개 키로 복호화하여 해시를 비교합니다.
  • 체크 디지트를 Verification으로, 패리티 체크를 Validation으로 묘사하는 경우. 체크 디지트는 입력 시 검증 규칙이며, 패리티와 체크섬은 전송을 검증합니다.
  • 바이러스는 복제되고, 스파이웨어는 기록합니다—정의에서 두 가지를 혼동해서는 안 됩니다.

이 주제에 대한 인터랙티브 수업

즉시 체크 기능 exercises를 통해 단계별로 진행하세요.

과거 시험지

A-Level 컴퓨터 과학 내 추가 주제

로그인 또는 계정 만들기

IGCSE, A-Level & AP