본문 바로가기
728x90

암호화2

[JAVA] RSA 비대칭키 양방향 암호화 구현 비대칭키 양방향 암호화에 대해서 글을 정리한 적이 있다. 이번에는 Java에서 RSA를 구현해보고 테스트도 진행해보고자 한다. 1. 비대칭키 PublicKey, PrivateKey 생성 private static final int KEY_SIZE = 2048; private Pair createKeyPair() throws NoSuchAlgorithmException { SecureRandom secureRandom = new SecureRandom(); KeyPairGenerator keyPairGenerator = KeyPairGenerator.getInstance("RSA"); keyPairGenerator.initialize(KEY_SIZE, secureRandom); KeyPair keyPair.. 2022. 12. 2.
비대칭키 양방향 암호화 (feat. RSA) 두 개의 키를 만들어서 암호화할 때의 키와 복호화할 때의 키를 분리하여 사용할 수 있는 암호화 방식이다. 키 목적 public key (공개키) 공개 할 수 있으며 메시지를 보내는 발신자는 이 공개키를 이용하여 암호화 하는데 사용된다. private key (비공개키) 노출하면 안되는 키이며 공개키로 암호화 된 메시지를 복호화 하는데 사용된다. 평문을 암호화를 할 때 공개키를 이용하면 암호문을 만들어낼 수 있고 암호문은 비공개키를 이용하면 다시 평문을 만들어 낼 수 있는 방식이다. 근데 공개키를 암호화하고 비공개키로만 복호화할 수 있는 것이 아니라 비공개키로도 암호화가 가능하다 그렇게 되면 공개키로 복호화할 수 있다. 라는 것이 비대칭키 또는 공개키 방식의 암호화이다. 왜 이렇게 복잡하게 하는 걸까? 그.. 2022. 11. 30.
300x250