안전한 비밀번호 만들기 Tip 3
며일 전 네이버 메일로 보내지도 않은 메일이 자꾸 날라와서 문의했다는 글을 썼습니다. 대처하는 과정에서 네이버 사이트 비밀번호를 두세번 바꿨습니다. 막상 새로 비밀번호를 만들려고하니 쉽게 되지 않았습니다. 그래서 최대한 안전한 비밀번호를 만드는 방법을 다시 한 번 정리해봤습니다.
2016/05/30 - [2016/iOS & OS X & IT] - 네이버 해킹의심 신고 및 문의하기
안전한 비밀번호를 만들기 위해서는 우선 비밀번호 해킹이 어떻게 이루어지는지 알 필요가 있습니다. 물론 해킹의 방법은 다양하겠지만, 비밀번호를 만들기 위해서 알아야 할 부분은 크게 두 가지 입니다.
가장 간단한 비밀번호 해킹의 방법은 무작위로 비밀번호를 입력해보는 방법입니다. 사진 속의 세 자리 숫자를 비밀번호로 하는 자물쇠의 경우에 비밀번호를 모른다고해도 000부터 999까지 모두 천 개의 숫자를 모두 시도해보면 그 중에 무조건 비밀번호가 있을 수 밖에 없습니다. 모르는 비밀번호를 알아내기 위해서 가장 확실한 방법이면서 동시에 가장 비효율적인 방법이라고 할 수 있습니다.
그 다음으로 가능한 해킹의 방법은 사용자가 비밀번호를 설정한 사이트를 통해서 비밀번호를 알아내는 것입니다. 하지만, 대부분의 사이트는 사용자가 설정한 비밀번호를 입력한 그대로 저장하지 않습니다. A라는 비밀번호가 입력되면 특정한 방식으로 변환을 해서 변환된 값인 A'만 저장을 합니다. 이후에 사용자가 맞는지 확인을 할 때 사용자가 비밀번호 X를 입력하면 특정한 방식으로 변환을 해서 X'라는 값을 얻게되고 기존에 저장되어있던 A'값과 X'가 일치하는지 확인을 합니다.
이 경우에 중요한 것은 사이트에서 비밀번호를 저장하기전에 변환하는 방법이 A를 A'로 만들 수는 있어도 거꾸로는 불가능 해야한다는 점입니다. 아무리 A'값을 알고있어도 원래 비밀번호인 A를 얻을 수는 없어야 합니다. 그렇기 때문에 비밀번호를 잊은 경우에 사이트에서 비밀번호 찾기를 시행하면 기존의 비밀번호를 알려주지 않고 사이트에서 임의로 새로운 비밀번호를 알려우면서 로그인한 후에 새로운 비밀번호로 바로 바꾸라고 하는 것입니다.
어떤 식으로든 사이트에서는 비밀번호를 보호하려 하지만, 여기서 우리가 알아야 하는 부분은 내가 비밀번호를 입력한 사이트가 털리는 바람에 비밀번호가 노출될 수도 있다는 점입니다.
자 이제 최대한 안전한 비밀번호를 만드는 방법에 대해서 생각을 해봅시다. 단도직입적으로 해킹에 강한 비밀번호를 만들려면 다음 세 가지 조건을 최대한 지켜서 만들면 됩니다.
1. 최대한 길게 만든다.
2. 여러 문자를 섞어준다.
3. 각종 사이트별로 다르게 설정한다.
비밀번호를 최대한 길게 만든다
비밀번호를 길게 만드는건 무작위법으로 해킹하려는 상대에 대응하는 가장 좋은 방법입니다. 위에 올린 세 자리 숫자를 비밀번호로 하는 자물쇠보다 네 자리 숫자를 비밀번호로 하는 자물쇠가 풀어내기 어려울꺼라는건 조금만 생각해보면 금방 알 수 있습니다. 우리나라 사이트들은 몇 년 전만해도 비밀번호를 8자리로 제한하는 경우가 많았습니다. 여기저기 사용자 정보 유출이 많아서인지 비밀번호의 길이 제한이 많이 여유로워 졌습니다.
여러 문자를 섞어서 만든다
비밀번호를 만드실 때 무조건 숫자,영어 대·소문자, 특수기호를 섞어서 만드시기 바랍니다. 이 또한 무작위법에 대항하는 좋은 방법입니다. 첫 번째 사진 속의 자물쇠가 세 자리 숫자를 비밀번호로 하는데, 만약에 각 자리별로 숫자말고 영어 알파벳도 사용이 가능하다면 어떻게 될까요? 숫자 세 자리인 경우에는 모두 비밀번호가 1000가지이지만, 대·소문자 구분이 없이 단지 영어 알파벳이 추가되기만 해도 비밀번호의 종류가 46,646가지로 늘어고, 대문자와 소문자를 구분해주면 238,328가지가 됩니다.
사이트별로 다른 암호를 사용한다
마지막으로 명심할 조건은 사이트별로 다른 암호를 사용해야 한다는 것입니다. 우리가 비밀번호를 설정한 사이트가 내 비밀번호를 잘 간수해주면 좋겠지만, 그렇지 않은 경우가 생깁니다. 제가 위에 설명한 것처럼 최소한의 암호화도 없이 저장해두는 바람에 비밀번호의 일부가 그대로 노출되는 경우도 생길 수 있습니다. 비밀번호가 그대로 노출되지 않더라도 암호화된 형태의 비밀번호를 가지고 기존의 비밀번호를 유추하는 방식으로 해킹을 할 수도 있습니다. 때문에 사이트별로 무조건 다른 암호를 사용해야 합니다.
여러가지 문자를 섞어서 최대한 길게 사이트별로 다른 암호를 만들어서 사용하면 최대한 안전하게 쓸 수 있습니다. 그런데 이런 경우에 여러가지 문자가 섞인 사이트별로 다른 긴 암호를 기억할 수 있어야 합니다. 기억력이 아무리 좋아도 쉽지 않은 일입니다. 그래서 아예 1Password나 애플의 키체인 처럼 개인의 비밀번호를 관리해주는 서비스를 이용할 수도 있습니다. 애플의 키체인은 무료지만 윈도우에서 사용이 힘들고, 1password는 유료라 굳이 쓸 필요를 느끼지 못할 수도 있습니다. 이런 경우에 잊지않고 기억할 수 있는 여러가지 문자가 섞인 사이트별로 다른 긴 암호를 만드는 방법이 있습니다.
간단하게 설명하면 내가 잘 기억할 수 있는 부분을 만들고 사이트별로 꼬리를 붙이면 됩니다. 직접 티스토리 암호를 하나 만들어 보겠습니다.
우선 내가 잘 기억할 수 있는 부분을 만듭니다. 만들 때 안전한 비밀번호의 첫번째와 두 번째 조건에 부합하도록 만들어야 합니다. 일반적으로라면 사용하지 않겠지만, 예를 드는 경우이니 저는 제 블로그 주소인 bluejong을 우선 쓰도록 하겠습니다. 거기에 매일 하나의 글을 쓰겠다는 다짐을 뜻하는 3651이라는 숫자도 넣어주겠습니다. 두 개를 그냥 더해주면 bluejong3651이 됩니다. 이것만으로도 12자리나 되기 때문에 충분히 긴 편입니다. 여기에 특수문자를 더하기 위해서 3651중에 마지막자리인 1 대신 !를 넣으면 암호는 bluejong365!가 됩니다. 영어 대문자를 넣어주기 위해서 제일 첫글자를 대문자로 바꿔서 Bluejong365!를 얻었습니다. 이렇게 만들어진 Bluejong365!는 다른 사람은 몰라도 저는 잘 기억할 수 있습니다. 이 부분을 암호의 기본 뼈대로 합니다.
구글에서 무작위로 검색한 비밀번호 안전성 테스트 사이트에서 확인해보니 Bluejong365! 자체로도 해킹하는데 3만4천년이 걸린다고 합니다. 이 자체로 나쁘지 않은 암호인 셈입니다. 하지만, 이걸 사이트마다 동일하게 사용하는건 위험합니다. 그래서 사이트별로 조금씩 달리해줄 필요가 있습니다. 복잡하게 생각할 필요 없이 티스토리에서 암호로 사용할 때는 맨 마지막에 t 하나만 붙여주면 됩니다. 다음에서 사용할 때는 d를 붙여주는겁니다. 그러니까 티스토리 암호는 Bluejong365!t 가 되고, 다음 암호는 Bluejong365!d가 되는겁니다.
안전한 비밀번호 만들기
1. 나만이 알 수 있는 방법으로 숫자,영어 대·소문자, 특수기호를 섞어서 기본 뼈대를 만든다.
2. 사이트별로 나만 알 수 있는 꼬리를 붙인다.
실제 암호를 만들면서 최대한 간단하게 설명해봤습니다. 나만이 알 수 있는 방법으로 조금만 꼬아주면 더 좋은 암호를 만들 수 있습니다. 제가 알려준 방식으로만 기본 뼈대를 만들 필요도 없고, 사이트별로 붙이는걸 꼬리라고 표현했다고 끝에만 붙이라는 법도 없습니다. 되도록이면 잘 기억할 수 있는 부분을 만들 때 사전에 있는 단어를 그대로 사용하지 마시고, 사이트별로 다는 꼬리도 너무 간단하게 하지 마시기 바랍니다.
얼마전에 어떤 사이트에 가입했더니 가입할 때 기록한 이메일로 아이디와 비밀번호가 그대로 찍혀서 날라온 적이 있습니다. 그 곳는 나쁜 뜻으로 만들어진 사이트는 아니었지만, 간혹 여러 사람들의 암호를 알아내려는 목적으로 만들어진 사이트도 있다고 합니다. 관리가 너무 부실해보이는 사이트에 가입할 때나 임시로 잠시 써야하는 사이트의 경우에는 기존에 사용하는 암호 말고 전혀 다른 방식으로 만든 암호를 사용하는것도 생각해보시기 바랍니다.
마지막으로 고대로부터 지금까지 비밀번호가 유출된 가장 고전적인 방법을 알려드리려고 합니다. 그것은 바로 비밀번호를 입력하는걸 직접 보고 알아내는 것입니다. 한 번에 모두 보려하지않고 한번에 한자리 정도씩 본다면 비밀번호 전체를 알아내는것도 불가능은 아니라고 합니다. 언젠가 스파이에 관한 책을 읽었는데 거기에서 알려주더군요. 얼마전 정부종합청사에 들어가서 공무원시험 합격자 명단에 자기 이름을 올린 사람이 들어갈 때도 각 방마다 설치되어있는 보안시스템 바로 옆에 비밀번호가 적혀있었다고 합니다. 결국 기본뼈대와 꼬리 방법을 써서 비밀번호를 아무리 잘 만들어도 만든 이후에 잘 지키는 못하면 아무소용 없다는 것을 잊지 말아야겠습니다.
'2016 > iOS & OS X & IT' 카테고리의 다른 글
[iOS 어플소개] 시계 프로 free (0) | 2016.06.22 |
---|---|
[WWDC2016] macOS의 탄생 (0) | 2016.06.14 |
네이버 해킹의심 신고 및 문의하기 (0) | 2016.05.30 |
[Apple Special Event. March 21, 2016] 키노트 간단정리 (0) | 2016.03.22 |
블로그 주소를 변경했습니다. (0) | 2016.03.06 |