공개 키 암호화 초보자 가이드

게시 됨: 2022-09-20

데이터는 오늘날의 경쟁적인 비즈니스 환경에서 매우 귀중한 자원입니다. 따라서 기업은 데이터에 대한 액세스를 제어하는 ​​동시에 데이터 보안 및 보안을 유지해야 합니다. 또한 디지털화가 표준이 되고 조직이 데이터 처리 작업을 자동화함에 따라 민감한 데이터에 대한 무단 액세스 가능성이 높아집니다. 따라서 기업은 귀중한 데이터를 보호하고 잠재적인 데이터 위협을 완화하는 안전한 환경을 구축해야 합니다.

암호화는 데이터 보안에서 기밀성과 무결성을 유지하는 데 중요한 역할을 합니다. 암호화의 하위 유형인 공개 키 암호화 또는 공개 키 암호화 는 전 세계 대부분의 데이터 보안 정책에서 중요한 구성 요소를 형성합니다.

이 기사에서는 암호화에서 공개 키의 개념 과 데이터 보호에 대한 유용성을 탐구합니다.

세계 최고의 대학에서 온라인으로 소프트웨어 개발 과정을 배우십시오. 이그 제 큐 티브 PG 프로그램, 고급 인증 프로그램 또는 석사 프로그램을 획득하여 경력을 빠르게 추적하십시오.

목차

데이터 보안에서 암호화란 무엇입니까?

암호화는 의도된 수신자만 내용을 처리하고 읽을 수 있도록 데이터를 위장하여 정보 및 통신을 보호하는 일련의 기술을 말합니다. 승인된 개인만 해독할 수 있는 데이터를 암호화하는 알고리즘에 의존합니다. 따라서 암호화는 주로 평문 또는 일반 텍스트를 암호문으로 스크램블링(암호화)한 다음 되돌리기(복호화)를 포함합니다.

암호학이라는 단어는 '숨겨진'을 의미하는 그리스어 'Kryptos'에 그 뿌리를 두고 있습니다. 암호 사용에 대한 초기 기록 중 일부는 Julius Caesar의 유명한 Caesar 암호를 포함하여 고대 이집트와 로마로 거슬러 올라갑니다. 옛날에 사용된 기술이 오늘날과 같은 시대에 원시적이고 간단해 보이지만 고대 암호는 민감한 정보를 보호해야 할 필요성을 일깨워줍니다. 기술의 발전으로 오늘날 암호화는 디지털 서명, 인터넷 브라우징, 메신저 앱, 이메일, 신용 카드 거래, 온라인 확인 및 암호화 키 생성을 포함한 수많은 응용 프로그램을 가지고 있습니다.

암호화에서 키는 무엇입니까?

암호화에서 키는 암호화 알고리즘 내에서 데이터를 변경하거나 스크램블하는 데 사용되는 정의된 순서의 임의 문자 문자열입니다. 즉, 암호화의 는 유효한 키를 가진 사람만 암호를 해독하거나 잠금을 해제할 수 있도록 데이터를 암호화하거나 잠급니다. 평문은 원본 데이터이고 암호문은 키가 암호화한 후의 데이터입니다.

암호화는 데이터 보안 시스템에서 중요한 역할을 합니다. 암호화 알고리즘에는 대칭 키 알고리즘(비밀 키 알고리즘)과 비대칭 키 알고리즘(공개 키 알고리즘)의 두 가지 광범위한 분류가 있습니다.

소프트웨어 엔지니어링에 대한 인기 코스 및 기사

인기 프로그램
소프트웨어 개발의 이그 제 큐 티브 PG 프로그램 - IIIT B 블록체인 인증 프로그램 - PURDUE 사이버 보안 인증 프로그램 - PURDUE 컴퓨터 과학 석사 - IIIT B
기타 인기 기사
미국의 클라우드 엔지니어 급여 2021-22 미국의 AWS 솔루션 아키텍트 급여 미국의 백엔드 개발자 급여 미국의 프론트엔드 개발자 급여
미국 웹 개발자 급여 2022년 스크럼 마스터 인터뷰 질문 2022년 사이버 보안 분야에서 경력을 시작하는 방법은 무엇입니까? 공학도를 위한 미국에서의 직업 선택

공개 키 암호화의 의미

공개 키 암호화 또는 비대칭 키 암호화는 다른 키를 사용하여 데이터를 암호화하고 해독하는 암호화 프로세스입니다. 키는 다르지만 암호문을 해독하여 일반 텍스트 검색을 용이하게 하는 것과 수학적으로 관련이 있습니다. 가장 일반적으로 사용되는 공개 키 암호화 형식 은 RSA 알고리즘을 기반으로 합니다.

비대칭 암호화 프로세스에서 하나의 키는 데이터를 암호화하고 다른 하나의 해당 키는 데이터를 복호화합니다. 데이터를 암호화하는 키는 공개 키이고 개인 키는 정보를 해독합니다.

또한 공개 키는 널리 알려져 있지만 개인 키는 비밀입니다. 즉, 다른 사람들이 귀하의 공개 키를 사용하여 암호화된 정보를 보낼 수 있지만 귀하만 개인 또는 비밀 키에 액세스하여 텍스트를 해독할 수 있습니다.

공개 키 암호화의 장점

공개 키 암호화 에는 다음과 같은 기능이 있습니다.

  • 암호화 및 암호 해독: 암호화 및 암호 해독 기능을 사용하면 두 당사자가 교환하는 정보를 위장하여 서로 통신할 수 있습니다. 발신자는 데이터를 보내기 전에 스크램블하거나 암호화하고, 받는 사람은 데이터를 받은 후 데이터를 스크램블 해제하거나 해독합니다. 한편, 전송 중인 암호화된 데이터는 제3자가 이해할 수 없는 상태로 남아 있습니다.
  • 부인 방지: 공개 키 암호화 에는 부인 방지라는 보안 메커니즘이 있어 데이터 변경을 방지하고 암호화를 통해 메시지를 수신/보낸 당사자가 거부할 수 없도록 합니다.

공개 키 암호화와 개인 키 암호화

공개 키 암호화 시스템 과 달리 대칭 또는 개인 키 암호화에는 보낸 사람과 받는 사람이 메시지를 암호화하고 해독하는 단일 공통 키를 공유하는 것이 포함됩니다. 따라서 대칭 키 암호화 알고리즘은 보낸 사람이 데이터를 암호화하는 데 사용하고 받는 사람이 데이터를 해독하거나 해독하는 데 사용하는 비밀 키로 고정된 길이의 비트 블록 암호를 만듭니다. 개인 키 암호화의 전형적인 예는 2001년 11월에 NIST(National Institute of Standards and Technology)에서 제정한 AES 또는 고급 암호화 표준입니다.

그렇다면 공개 키 암호화 와 개인 키 암호화 의 주요 차이점은 무엇 입니까? 다음 표는 차이점을 강조 표시합니다.

공개 키 암호화 개인 키 암호화
2개의 키를 포함하는 공개 키/2개의 키 암호화 시스템. 하나의 키만 사용하는 비밀/단일 키 암호화 시스템.
누구나 공개 키를 사용하여 데이터를 암호화할 수 있지만 수신자만 개인 키를 알고 데이터 암호 해독에 사용합니다. 발신자와 수신자 모두 동일한 키를 공유합니다.
당사자는 동등하지 않으므로 비대칭입니다. 당사자가 평등하기 때문에 대칭입니다.
메시지를 암호화하는 당사자는 메시지를 해독할 수 없습니다. 당사자가 동일하기 때문에 수신자는 메시지를 위조하고 발신자가 보낸 메시지를 허위로 주장할 수 있습니다.

공개 키 암호화 이면의 RSA 알고리즘

RSA 알고리즘은 공개 키와 개인 키를 사용하여 메시지를 암호화하고 해독하는 널리 사용되는 비대칭 암호화 알고리즘입니다. 1978년에 만들어진 RSA 알고리즘은 발명가인 Ron Rivest, Adi Shamir 및 Leonard Adleman의 이름을 따서 명명되었습니다.

다음은 공개 키 암호화 의 RSA 알고리즘이 작동하는 방식에 대한 간단한 설명입니다 .

1. 키 생성

  • 두 개의 큰 소수 'p'와 'q'를 선택합니다.
  • 계산 n = p*q
  • totient 함수 찾기: Φ(n) = (p-1)(q-1)
  • 이제 Φ(n) 및 1 < e < Φ(n)에 대해 공소인 정수 'e'를 선택합니다.
  • 쌍(n,e)은 공개 키입니다.
  • 이제 de = 1 mod Φ(n) 또는 1 mod (p-1)(q-1)가 되도록 'd'를 계산합니다.
  • 확장된 유클리드 알고리즘을 사용하여 d. 개인 키는 (n,d) 쌍입니다.

2. 암호화

  • 주어진 평문 'P'는 n보다 작은 일련의 숫자입니다. 암호문이 'C'인 경우 암호화는 다음 수학 단계를 사용하여 수행됩니다.

C = P e mod n

3. 복호화

  • 일반 텍스트는 다음 단계에서 개인 키(n,d)를 사용하여 검색할 수 있습니다.

P = Cd mod n

다음 의사 코드는 실행 중인 RSA 알고리즘의 예입니다.

정수 x = 61, 정수 y = 53;

정수 n = x * y;

// n = 3233.

// totient phi를 계산합니다.

정수 파이 = (x-1)*(y-1);

// 파이 = 3120.

정수 e = findCoprime(파이);

// 1보다 크고 phi의 공소인 'e'를 찾습니다.

// e = 17은 현재 값을 만족합니다.

// 확장 유클리드 알고리즘을 사용하여 다음을 만족하는 'd'를 찾습니다.

// 이 방정식:

d = (1 mod(파이))/e;

// 예제 값의 경우 d = 2753입니다.

공개 키 = (e=17, n=3233);

private_key = (d=2753, n=3233);

// 일반 텍스트 P=123이 주어지면 암호문 C는 다음과 같습니다.

C = (123^17) % 3233 = 855;

// 암호문 C를 해독하려면:

P = (855^2753) % 3233 = 123;

결론

개인 키 암호화는 전통적인 암호화 시스템입니다. 그러나 단일 비밀 키가 데이터를 암호화하고 해독하기 때문에 전송된 메시지가 제3자의 가로채기에 취약한 상태로 남습니다. 따라서 암호학자들은 기존 시스템의 한계를 해결하기 위해 공개 키 암호 시스템을 개발했습니다. 공개 키 암호화 에서 발신자는 공개 키로 메시지를 암호화하는 반면 수신자는 수신자만 사용할 수 있는 개인 키로 메시지를 해독할 수 있습니다. 결과적으로 수신자의 개인 키만 해독할 수 있기 때문에 제3자는 전송 중인 메시지를 읽을 수 없습니다. 공개 키 암호화 시스템은 대부분 RSA 알고리즘을 사용하며 현대 암호화 기술에서 중요한 역할을 합니다.

데이터 보안 전문가가 되기 위한 여정에서 upGrad와 함께하세요.

데이터 보안을 배울 수 있는 포괄적인 플랫폼을 찾고 계십니까? 귀하의 검색은 Purdue University와 협력하여 upGrad의 사이버 보안 인증 프로그램으로 끝납니다. 8개월 온라인 과정은 초급에서 중급 IT 전문가, 기술 전문가, 기술 지원 전문가, 분석가, 엔지니어 및 신입생에게 적합합니다.

프로그램 하이라이트:

  • upGrad 및 Purdue University의 인정 증명서
  • 300시간 이상의 학습 시간, 15개 이상의 라이브 세션 및 4개의 프로젝트
  • 암호화 및 암호화 를 다루는 포괄적인 강의 계획서
  • 관련 프로그래밍 언어 및 도구 배우기
  • 산업 및 피어 네트워킹
  • 360도 학습 지원

공개 키는 무엇을 의미합니까?

공개키는 암호화에서 데이터를 암호화하기 위한 큰 수치를 의미한다. 즉, 암호화의 공개 키는 데이터를 읽을 수 없는 형식으로 변환합니다. 그러면 다르지만 수학적으로 연결된 private은 데이터를 해독합니다.

비밀 키는 공개 키와 어떻게 다릅니까?

단일 공유 키는 비밀 키 암호화에서 메시지를 암호화 및 디코딩합니다. 반대로 공개 키 암호화는 암호화 및 암호 해독 프로세스에 대해 수학적으로 관련된 두 개의 다른 키(공개 및 개인)를 사용합니다.

공개 키 암호화의 응용 프로그램은 무엇입니까?

공개 키 암호화의 주요 응용 프로그램은 데이터 암호화와 디지털 서명입니다. 공개 키 암호화는 인증 및 부인 방지를 통해 데이터 보안을 보장합니다.