천발무금
966
2019-08-16 10:36:15 작성 2019-08-16 10:45:48 수정됨
3
453

RSA 암복호화 질문입니다


RSA 암복호화 할 때, 공개키와 비밀키를 고정으로 만들 수 있는 방법이 있나요?

지금 java에서 아래와 같이 키를 만들고 있는데, key spec 보면 키 값이 항상 바뀌더라구요



KeyPairGenerator clsKeyPairGenerator = KeyPairGenerator.getInstance(RSA);
clsKeyPairGenerator.initialize(2048);
keyPair = clsKeyPairGenerator.genKeyPair();



질문1)

JAVA에서 RSA 암복호화 할 때, 공개키와 비밀키를
제가 원하는 값으로 고정으로 만들 수 있는 방법이 있을까요?



질문2)

만약 공개키와 비밀키 고정이 안된다면,

클라이언트에서 암호화할 때 마다 서버한테 공개키를 호출해야하나요?


0
  • 답변 3

  • J0KER
    22
    2019-08-16 10:47:38

    1. genKeyPair()를 한번만 호출해서 가지고 계시면 될듯합니다


    2. 그렇죠



  • ssssssu12
    211
    2019-08-16 14:05:18

    일반적인 상황에선 키페어 생성은 한번만 하고 생성된 공개키를 클라이언트에게 전달해줍니다.

    클라이언트에서 암호화할때마다 해당 공개키를 이용하죠.

    구지 매번 키페어를 생성해야 하는 상황이라면 그때마다 공개키를 받아오는 API가 필요할 듯 한데, 서버에서 복호화 할 때  수없이 만든 키페어중 어느 공개키로 암호화한 것인지 구분할 수 있는 값이 또 필요하겠죠.

    비대칭 암호화를 그런 용도로 쓸 일이 있을지는 잘 모르겠네요. 만약 그럴수밖에 없는 상황이라면 내용을 좀 공유해주시면 다시 고민해보겠습니다.

  • 천발무금
    966
    2019-09-07 13:50:02

    답변 달아주신 모든 분들께 감사드립니다


    님 말씀처럼 키페어 생성 한번만 하고 암복호화 잘 진행했습니다


    감사드립니다

  • 로그인을 하시면 답변 을 등록할 수 있습니다.