RSA 암호화
RSA 암호는 공개키 암호시스템으로 암호화와 서명이 가능한 알고리즘으로 공개키(public key)와 개인키(private key)를 사용합니다.
공개키는 누구나 데이터를 암호화할 수 있지만 그것을 복호화하기 위해서는 개인키가 필요합니다. 또한 개인키(private key)로 암호화 할 수도 있으며개인키로 암호화 데이터를 복호화 하기 위해서는 공개키를 사용해야 합니다. 공개키로 암호화된 데이터를 중간에 가로채도 개인키가 없다면 해독할 수 없지만 데이터와 공개키를 알고 있으면 변조된 메시지를 보낼 수 있기 때문에 데이터가 변조되었을 때 위험한 경우에는 송수신측은 송신측 개인키로 암호화한 다음 수신측의 공개키로 한번 더 암호화 해서 송신해야하고, 수신측은 수신측 개인키로 복호화한 다음 송신측의 공개키로 복호화해야 합니다.
만약 변조된 데이터가 수신된다고 해도 무관할 경우에는 송신측에서 수신측의 공개키로 암호화해서 전송하고 수신측에서 개인키로 복호화하여 사용해도 됩니다. 예를 들어 로그인 요청하는 경우에 공개키로 암호화된 아이디, 비밀번호를 중간에 해커가 가로채도 정보노출이 되지 않으며 실제 아이디와 비밀번호를 모른다면 변조할 수가 없습니다. (물론 SSL을 사용한다면 굳이 RSA 암호화를 적용안해도 됩니다만…)
댓글남기기