무작위 암호 생성기를 사용하는 방법
게시 됨: 2022-01-29귀하가 방문하는 거의 모든 웹사이트는 보안이 철저한 금융 거래를 위한 것이든 구피 동물 게임을 위한 것이든 계정을 만들기를 원합니다. 모든 사이트에 대해 동일한 비밀번호를 사용하는 것만으로는 벗어날 수 없습니다. 한 사이트에서 위반이 발생하면 모두가 위험에 처할 수 있기 때문입니다. 그리고 사이트마다 다른 비밀번호를 쉽게 외울 수 없습니다. 유일한 현명한 해결책은 암호 관리자를 설치하고 이를 사용하여 암호를 저장하고 개선하는 것입니다. 너무 단순한 암호를 길고 강력한 임의의 암호로 바꿀 때마다 전반적인 보안이 향상됩니다. 하지만 그 길고 강력하며 임의의 암호는 어디서 얻습니까?
거의 모든 암호 관리자에는 암호 생성기 구성 요소가 포함되어 있으므로 이러한 임의의 암호를 직접 만들 필요가 없습니다. (하지만 DIY 솔루션을 원하는 경우 고유한 임의 암호 생성기를 구축하는 방법을 보여 드리겠습니다.) 그러나 모든 암호 생성기가 동일하게 생성되는 것은 아닙니다. 작동 방식을 알면 가장 적합한 것을 선택하고 가지고 있는 것을 지능적으로 사용할 수 있습니다.
암호 생성기—임의인가 아닌가?
한 쌍의 주사위를 던질 때 정말 무작위 결과를 얻습니다. 스네이크 아이즈, 박스카 또는 럭키 세븐을 얻을지 아무도 예측할 수 없습니다. 그러나 컴퓨터 영역에서는 주사위와 같은 물리적 랜더마이저를 사용할 수 없습니다. 예, 방사성 붕괴를 기반으로 하는 몇 가지 난수 소스가 있지만 일반적인 소비자 측 암호 관리자에서는 이러한 소스를 찾을 수 없습니다.
암호 관리자 및 기타 컴퓨터 프로그램은 의사 무작위 알고리즘을 사용합니다. 이 알고리즘은 시드라고 하는 숫자로 시작합니다. 알고리즘은 시드를 처리하고 이전 번호와 추적 가능한 연결이 없는 새 번호를 가져오고 새 번호는 다음 시드가 됩니다. 다른 모든 숫자가 나올 때까지 원래 종자는 다시 나타나지 않습니다. 시드가 32비트 정수인 경우 알고리즘이 반복되기 전에 4,294,967,295개의 다른 숫자를 통해 실행됨을 의미합니다.
이것은 일상적인 사용에 적합하고 대부분의 사람들의 암호 생성 요구 사항에 적합합니다. 그러나 이론적으로 숙련된 해커가 사용된 의사 무작위 알고리즘을 결정할 수 있습니다. 해당 정보와 시드가 주어지면 해커는 난수 시퀀스를 복제할 수 있습니다(어려울지라도).
그런 종류의 직접적인 해킹은 국가 전용 공격이나 기업 스파이 활동을 제외하고는 극히 가능성이 낮습니다. 이러한 공격의 대상이 되는 경우 보안 제품군이 사용자를 보호하지 못할 수 있습니다. 다행히도 당신은 이런 종류의 사이버 스파이 행위의 표적이 아닌 것이 거의 확실합니다.
그럼에도 불구하고 소수의 암호 관리자는 이러한 집중 공격의 원격 가능성조차 제거하기 위해 적극적으로 노력하고 있습니다. 자신의 마우스 움직임이나 임의의 문자를 임의의 알고리즘에 통합하여 진정한 임의의 결과를 얻습니다. 이 실제 무작위화를 제공하는 것 중에는 AceBIT Password Depot, KeePass 및 Steganos Password Manager가 있습니다. 위의 스크린샷은 Password Depot의 매트릭스 스타일 랜더마이저를 보여줍니다. 예, 마우스를 움직이면 문자가 떨어집니다.
실제 무작위화를 추가해야 합니까? 아마 아닐 것입니다. 하지만 그것이 당신을 행복하게 한다면, 그것을 위해 가십시오!
암호 관리자는 무작위성을 줄입니다.
물론 암호 생성기는 문자 그대로 임의의 숫자를 반환하지 않습니다. 오히려 사용 가능한 문자 집합에서 선택하기 위해 임의의 숫자를 사용하여 문자열을 반환합니다. 특수 문자를 허용하지 않는 웹 사이트의 암호를 생성하지 않는 한 항상 사용 가능한 모든 문자 집합을 사용할 수 있도록 설정해야 합니다.
사용 가능한 문자 풀에는 대문자 26개, 소문자 26개, 숫자 10개가 포함됩니다. 또한 제품마다 다를 수 있는 특수 문자 모음도 포함되어 있습니다. 간단하게 18개의 특수 문자를 사용할 수 있다고 가정해 보겠습니다. 선택할 수 있는 총 80자의 멋진 라운드가 됩니다. 완전히 임의의 암호에서는 모든 문자에 대해 80개의 가능성이 있습니다. 8자리 암호를 선택하면 가능한 수는 80의 8승, 즉 1,677,721,600,000,000(천조 개 이상)입니다. 그것은 무차별 대입 크래킹 공격에 대한 힘든 슬로깅이며 무차별 대입 추측은 실제로 진정한 무작위 암호를 푸는 유일한 방법입니다.
최고의 비밀번호 관리자 추천
모두 보기(4개 항목)물론 완전히 무작위 생성기는 결국 "aaaaaaaa" 및 "Covfefe!"를 생성합니다. 및 "12345678"이 있습니다. 이는 8개 문자의 다른 시퀀스와 마찬가지로 가능성이 높기 때문입니다. 일부 암호 생성기는 이러한 암호를 피하기 위해 출력을 능동적으로 필터링합니다. 괜찮습니다. 하지만 해커가 이러한 필터에 대해 알고 있다면 실제로 가능성의 수를 줄이고 무차별 대입 크래킹을 더 쉽게 만듭니다.
여기 극단적인 예가 있습니다. 80자 모음에서 40,960,000개의 가능한 4자 암호가 있습니다. 그러나 일부 암호 생성기는 각 유형의 문자에서 최소한 하나를 선택하도록 강제하므로 가능성이 크게 줄어듭니다. 첫 번째 캐릭터에는 아직 80개의 가능성이 있습니다. 대문자라고 가정합니다. 두 번째 문자의 풀은 54(80에서 26 대문자를 뺀 것)입니다. 또한 두 번째 문자가 소문자라고 가정합니다. 세 번째 문자의 경우 숫자와 특수 문자만 남아 28개 선택이 가능합니다. 그리고 세 번째 문자가 구두점인 경우 마지막 문자는 숫자여야 하며 10개 선택이 가능합니다. 4천만 개의 가능성이 1,209,600개로 줄어듭니다.
모든 문자 집합을 사용하는 것은 많은 웹사이트에서 필수입니다. 해당 요구 사항으로 인해 암호 풀이 축소되지 않도록 하려면 암호 길이를 높게 설정하십시오. 암호가 충분히 길면 모든 문자 유형을 강제로 적용하는 효과는 무시할 수 있습니다.
암호 관리자가 적용하는 다른 제한은 가능한 암호 풀을 불필요하게 줄입니다. 예를 들어, RememBear Premium은 4자 세트 각각에서 정확한 수의 문자를 지정하므로 풀이 크게 줄어듭니다. 기본적으로 대문자 2개, 숫자 2개, 소문자 14개, 기호 없이 총 18자가 필요합니다. 그 결과 단순히 각 문자 유형 중 하나 이상이 필요한 경우보다 수억 배 더 작은 암호 풀이 생성됩니다. 여기서도 더 긴 암호 길이를 설정하여 이 문제를 상쇄할 수 있습니다.
LastPass와 다른 몇몇 사람들은 기본적으로 숫자 0과 문자 O와 같은 모호한 문자 쌍을 피합니다. 암호를 기억할 필요가 없으면 이것은 필요하지 않습니다. 이 옵션을 끕니다. 마찬가지로 "bogafewazepa"와 같이 발음 가능한 암호를 생성하는 옵션을 선택하지 마십시오. 이 옵션은 기억해야 하는 암호인 경우에만 중요합니다. 이 옵션을 적용하면 소문자로 제한될 뿐만 아니라 암호 생성기가 발음할 수 없다고 간주하는 수많은 가능성을 거부합니다.
편집자 추천
긴 암호 생성
우리가 보았듯이 비밀번호 생성기는 사용자가 선택한 길이 및 문자 세트와 일치하는 모든 가능한 비밀번호 풀에서 반드시 선택하지는 않습니다. 모든 문자 집합을 사용하는 4자 암호의 극단적인 예에서는 가능한 4자 암호의 약 97%가 나타나지 않습니다. 해결책은 간단합니다. 오래 가다! 이 암호는 기억할 필요가 없으므로 매우 클 수 있습니다. 적어도 문제의 웹사이트가 허용하는 만큼 거대합니다. 일부는 제한을 부과합니다.
검색 공간(사용 가능한 비밀번호 풀이라고 부름)이 클수록 비밀번호에 대한 무차별 대입 공격이 더 오래 걸립니다. Gibson Research 웹 사이트에서 암호 건초 더미 계산기(건초 더미의 바늘과 같이)를 사용하여 길이의 가치를 느낄 수 있습니다.
암호를 입력하기만 하면 크래킹에 걸리는 시간을 확인할 수 있습니다. (사이트는 "여기서 하는 모든 작업은 브라우저를 떠나지 않습니다. 여기서 일어나는 일은 여기에 그대로 유지됩니다."라고 약속하지만 실제 비밀번호는 사용하지 않는 것이 좋습니다.) 해커가 온라인으로 추측을 보내야 하는 경우 9kM$와 같은 4자리 암호를 해독하는 데 하루가 걸리지 않습니다. 그러나 해커가 고속으로 추측을 시도할 수 있는 오프라인 시나리오에서는 크래킹 시간이 1초 미만입니다.
기억에 남는 강력한 암호 생성에 관한 내 기사(암호 관리자의 마스터 암호와 같은 경우)에서 시나 희곡의 한 줄을 무작위로 보이는 암호로 변환하는 니모닉 기술을 제안합니다. 예를 들어, Romeo and Juliet, Act 2, Scene 2의 라인은 "bS,wLtYdWdB?A2S2"가 되었습니다. 이것은 임의의 암호가 아니지만 크래커는 그것을 모릅니다. 이를 Gibson의 계산기에 넣으면 대규모 크래킹 배열을 사용하더라도 이를 무차별 대입하는 데 141억 세기가 걸린다는 것을 알 수 있습니다.
정보에 입각한 암호 관리자 선택
이제 알다시피 강력하고 임의의 암호를 생성하는 가장 중요한 요소는 암호를 길게 만드는 것입니다. 일부 암호 생성기는 모든 문자 집합을 포함하지 않는 암호를 거부하고, 일부는 사전 단어가 포함된 암호를 거부하고, 일부는 소문자 l 및 숫자 1과 같은 모호한 문자를 포함하는 암호를 버립니다. 이러한 모든 제한 사항은 가능한 암호 풀을 제한하지만 길이가 충분히 높지만 이 제한은 중요하지 않습니다.
물론 이론적으로(실제로는 아니지만) 어떤 악의적인 요소가 좋아하는 암호 관리자의 암호 생성 체계를 해킹하여 제공할 의사 무작위 암호를 예측하는 기능을 얻을 수 있습니다. 그늘진 암호 관리자 프로그램이 임의의 암호를 회사 본사로 다시 보낼 수 있습니다. 이것은 실제로 은박지 모자 편집증 수준의 우려입니다. 그러나 임의의 암호에 대해 다른 사람에게 의존하고 싶지 않다면 Excel에서 임의의 암호 생성기를 만들 수 있습니다.