• 카테고리

    질문 & 답변
  • 세부 분야

    보안

  • 해결 여부

    해결됨

비대칭키에서 PrivateKey 를 구하는 법

24.02.07 15:06 작성 조회수 182

0

안녕하세요. 비대칭 키에대해 문의드릴 것 이 있습니다.

강의에서는 아래와 같이 말씀하셨는데요.

65^5 mod 323 = 12

12^29 mod 323 = 65

  • public key = 5, 323

  • private key = 29

이때, public key의 경우에는 임의로 지정하여 암호문값을 만들면 될 것 같은데, private key 의 경우 평문을 만드는 소수를 찾을때 많은 계산이 필요하지는 않나요??

강의에서 말씀하신데로라면 29라는 값을 알기위해서는 엄청난 계산이 필요하다고 말씀하셨는데요.

저희는 이미 65라는 평문 값을 알고 있기 때문에 계산이 그렇게까지 필요하지는 않은건지....그래서 private key를 계산해서 얻을 수 있는건지 아니면 private key 를 생성하는 다른 방법이 있는 건지 궁금합니다.

 

 

 

답변 3

·

답변을 작성해보세요.

1

개인키를 구하는 과정이 궁금했는데 보내주신 블로그 내용이 의문점를 해소하는데 도움이 많이 되었습니다.
감사합니다ㅎㅎ!

의문이 해결됐다고하니 다행이네요. 😄

0

AI가 이미 저 대신 답변을 달아놨네요. 😄

결과적으로 이야기해서 핵심은 '조건에 맞는 난수'를 찾는 것입니다. 그 수를 찾는 과정이 암호화 알고리즘이나 라이브러리의 성능지표가 됩니다. 더불어 참고하시면 좋겠습니다. 아울러 함께 보시면 좋겠다 싶은 블로그 글을 하나 소개해드립니다. 참고하시기 바랍니다.

 

[공개키 암호 (RSA, Diffie-Helmman)]
https://developer-mac.tistory.com/76

0

인프런 AI 인턴님의 프로필

인프런 AI 인턴

2024.02.07

안녕하세요, 인프런 AI 인턴입니다.

비대칭키 암호화에서 공개키와 개인키 쌍은 매우 중요합니다. 공개키는 남들에게 공개되는 키로서, 데이터를 암호화하는 데 사용됩니다. 반면, 개인키(또는 비밀키)는 오직 데이터의 수신자만이 가지고 있어야 하는 키로서 데이터의 복호화에 사용됩니다.

진행 중인 과정에서, 공개키는 비교적 쉽게 선택할 수 있지만, 개인키를 구하는 것은 다소 복잡합니다. 개인키를 계산하기 위해서는 일반적으로 복잡한 수학적 연산이 필요하고, 이러한 연산은 특정한 암호학적 특성(예를 들어, 소수의 선택과 오일러의 정리 또는 페르마의 소정리 등)에 기초를 두고 있습니다.

질문하신 내용과 관련하여, 개인키를 생성하거나 계산하는 방법에 대한 질문에 답변할 만한 이전 질문과 답변을 찾았습니다. 이는 비대칭키에서 개인키와 공개키를 어떻게 생성하는지에 대한 설명과 이와 관련된 알고리즘의 공개 여부 및 보안성에 대한 내용입니다.

“비대칭키에서의 privte key와 public key의 생성방법”라는 제목의 이 질문에서 지식공유자는 비대칭키 쌍 생성 방법과 관련된 몇 가지 주요 포인트에 대해 설명합니다.
- 개인키와 공개키는 난수를 생성해 선택하며, 난수는 중복되지 않도록 시간과 같은 계속 변하는 값을 사용해 생성됩니다.
- 비대칭키 알고리즘은 일반적으로 공개되어 있으며, 그 원리에 따르면 수학적으로 우연히 해독하는 것이 불가능합니다.
- 현재 사용되는 대부분의 알고리즘들은 전수조사 공격에 취약하지만, 실제로 전수를 조사하기 위한 시간과 계산력이 비현실적일 정도로 방대하기 때문에 안전하다고 볼 수 있습니다.

해당 답변 링크는 다음과 같습니다:
비대칭키에서의 privte key와 public key의 생성방법

질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.