그는 공인인증서 없는 한국인처럼 울었다. <div>이걸 번역하려면 정말 상상이상의 난이도일 정도로.. 공인인증서는 한국의 갈라파고스화의 상징입니다.</div> <div>공인인증서가 도대체 무엇이길래? 은행과 정부가 그렇게 목을 매는지. 한번 저의 짧은 지식을 끄적거려 보겠습니다.</div> <div><br></div> <div>먼저 공인인증서에 대해 이해를 하려면 공개키 암호화 방식에 대해 이해를 해야합니다.</div> <div>원리는 이렇습니다:</div> <div><br></div> <div>상황: 영희와 철수가 서로 암호화된 이메일을 주고받아야 합니다.<br>1. 영희와 철수는 각각 개인키와 공개키를 만듭니다.</div> <div>2. 개인키는 영희와 철수 자신만 볼 수 있게 꽁꽁 숨겨놓습니다.</div> <div>3. 영희와 철수 서로 공개키만을 주고받습니다.</div> <div><br></div> <div>공개키 암호화 방식은 개인키로 암호화하면 공개키로만 풀 수 있고, 개인키로 암호화하면 공개키로만 풀 수 있습니다.</div> <div><br></div> <div>4. 영희는 자신의 개인키로 암호화하여 철수한테 이메일을 보냅니다.</div> <div>5. 철수는 영희의 공개키로 이메일을 열어봅니다.</div> <div>6. 철수는 자신의 개인키로 암호화하여 영희한테 답장을 보냅니다.</div> <div>7. 영희는 철수의 공개키로 이메일을 열어봅니다.</div> <div><br></div> <div>이 과정에서 서로 교환하는것은 공개키 입니다. 개인키는 절대 외부에 드러나지 않습니다. 공개키만으로는 주고받는 데이터를 절대 알아볼 수 없습니다.</div> <div><br></div> <div>근데, 이 과정에서 부인방지 효과라는게 발생합니다. 영희의 개인키로 암호화된 이메일은 영희의 공개키로만 풀 수 있습니다. 그럼 영희의 공개키로만 열리는 이메일은 확실히 영희가 보냈다는 것이라고 신뢰할 수 있는거죠.</div> <div><br></div> <div>이게 공인인증서가 없어지지 않는 이유입니다.</div> <div><br></div> <div>바꿔 말하면 개인키가 유출될 경우, 이 보안 방식은 망가져버린다는 것 입니다. 한국식 공인인증서는 개인키를 안전하게 보관하지 않고 그냥 파일로 저장합니다. 이 글을 보는 여러분 컴퓨터의 NPKI폴더에요.</div> <div><br></div> <div>그러면 표준인 SSL방식은 어떨까요?</div> <div><br></div> <div>1. 웹 사이트는 인증 기관에 의뢰하여 사이트 정보를 검증하고(EV-SSL: 자물쇠가 녹색이며 관리 주체가 표시되는 인증서 입니다. 공인인증서는 EV-SSL이 대체할 수 있습니다.), 인증 기관은 웹 사이트를 철저히 검증하고, SSL인증서를 발급합니다. 인증서 안에는 사이트의 정보와, 사이트의 공개키가 들어 있습니다. 이 두 정보를 인증 기관의 개인키로 암호화한 것이 인증서 입니다.</div> <div><br></div> <div>2. 웹 브라우저 안에는 인증 기관의 공개키가 내장되어 있습니다.</div> <div><br></div> <div><div>그럼 공인인증서는 뭐가 다를까요?</div> <div><br></div> <div>1. 공인인증서를 받을때 우리는 공인인증 기관에 가서 우리의 신분을 증명합니다.</div> <div>2. 그러면 인증 기관은 개인키와 공개키 한 쌍을 발급하고, 공개키와 개인정보를 인증 기관의 개인키로 암호화하여 인증서를 만들고 개인키와 같이 줍니다.</div> <div>3. 그리고 이 공인인증서와 개인키는 컴퓨터 NPKI폴더에 허접하게 (...) 저장되어 있습니다.</div></div> <div><br></div> <div>공인인증서와 SSL은 서버를 인증하냐 사용자를 인증하냐 그 차이밖에 없어요.</div> <div>사실상 누가 누굴 인증하냐만 뒤바꼈을 뿐, 둘의 작동 원리는 같습니다.</div> <div>오히려, 서버는 개인키가 관리자 권한이 분리되어있어 엄격히 관리되는 반면, 개인 PC는 개인키 유출이 대단히 쉽기 때문에 공인인증서가 더 위험합니다.</div> <div>위에서 말씀드렸듯이, 공개키 암호화 방식에서는 개인키가 유출되면 보안이 망가진다는 뜻입니다.</div> <div><br></div> <div>한국 은행 사이트를 쓰는것과 외국 은행 사이트를 비교해볼까요?</div> <div><br></div> <div>한국:</div> <div>1. 공인인증서를 제시하고 비밀번호를 입력하여 로그인을 합니다.</div> <div>2. 이체할때 OTP나 보안카드를 사용합니다.<br><br>외국:</div> <div>1. 아이디와 비밀번호를 입력하고 로그인을 합니다.</div> <div>2. 이체할때 OTP나 보안카드를 사용합니다.</div> <div><br></div> <div>단순히 SSL과 공인인증서는 "연결의 보안"을 지켜주는 역할밖에 할 수가 없습니다.</div> <div><br>공인인증서는 추가해서 사용자의 개인키로 전자서명을 하게 하지만, 공인인증 방식이 안전하다면 보안카드와 OTP를 쓸 이유도 없습니다.</div> <div><br>그러니까, 이체할 때 본인이 직접 거래를 했다는것을 증명하는 것은 실물로 소유하고 있는 OTP나 보안카드라는 것 입니다. (이마저도 보안카드는 유출사고가 잦죠.. 절대 사진찍거나 보안카드 어플에 적어두시거나 메모하시면 안됩니다. 1년에 한번씩 교체발급도 권해드려요.)</div> <div><br></div> <div>위에서 부인방지 효과에 대해 말씀드렸습니다.</div> <div>우리가 이체할 때, 공인인증서 비밀번호를 입력함으로써 우리 개인키로 거래내역을 전자서명하여 은행에 전송하면 은행에서는 아! AAA님의 개인키로 서명하신걸로 봐서 AAA님의 거래가 틀림없습니다! 라고 면죄부를 쥐어주는 꼴이죠.</div> <div>이게... 공인인증서에 목을 매다는 이유입니다.</div> <div><br></div> <div>보안프로그램이요?</div> <div>간단하게만 말하겠습니다. 다 공인인증서의 개인키를 지키려고 하는 것들이지만, 다 쓸모없습니다.</div> <div><br></div> <div>요약:</div> <div>1. 공인인증서가 거래자를 증명하는게 아니라, 보안카드와 OTP가 진짜 거래자를 증명합니다.</div> <div>2. 쓸데없는 보안프로그램 전부 다 허술하기 짝이없는 공인인증서와 개인키를 지키기 위해서 까는겁니다.</div> <div>3. 부인방지? 다 그들의 헛소리죠.</div> <div><br></div> <div>뭐 그냥 장황하게 썼는데</div> <div>허...</div> <div>부디 쉬운 설명이였기를 바랍니다...</div> <div><br></div> <div>질문은 댓글로 해주시면 답변해드리겠습니다..어흑 나 글 너무 못쓰는거같아...</div>