문제

비밀번호는 어떻게 생성하나요?

  • 임의의 문자?
  • 암호문?
  • 높은 아스키?

이 같은?

cat /dev/urandom | strings
도움이 되었습니까?

해결책

Mac OS X의 "Keychain Access" 응용 프로그램을 사용하면 멋진 OS X 비밀번호 생성기에 액세스할 수 있습니다.command-N을 누르고 열쇠 아이콘을 클릭하세요.비밀번호 스타일(기억 가능, 숫자, 영숫자, 무작위, FIPS-181)을 선택하고 길이를 선택할 수 있습니다.또한 취약한 비밀번호에 대해 경고합니다.

다른 팁

이것을 사용해 보세요 :)

cat /dev/urandom | tr -dc 'a-zA-Z0-9-!@#$%^&*()_+~' | fold -w 10 | head -n 1

비밀번호 수를 생성하려면 인원수를 변경하세요.

원래 Python 요리책에서 가져온 비밀번호를 생성하는 짧은 Python 스크립트입니다.

#!/usr/bin/env python

from random import choice
import getopt
import string
import sys

def GenPasswd():
    chars = string.letters + string.digits
    for i in range(8):
        newpasswd = newpasswd + choice(chars)
    return newpasswd

def GenPasswd2(length=8, chars=string.letters + string.digits):
    return ''.join([choice(chars) for i in range(length)])

class Options(object):
    pass

def main(argv):
    (optionList,args) = getopt.getopt(argv[1:],"r:l:",["repeat=","length="])

    options = Options()
    options.repeat = 1
    options.length = 8
    for (key,value) in optionList:
        if key == "-r" or key == "--repeat":
            options.repeat = int(value)
        elif key == "-l" or key == "--length":
            options.length = int(value)

    for i in xrange(options.repeat):
        print GenPasswd2(options.length)

if __name__ == "__main__":
    sys.exit(main(sys.argv))

오픈 소스 보관함 도구에는 향상된 무작위화를 포함하여 비밀번호 생성을 위한 몇 가지 뛰어난 기능이 있습니다.

나는 사용한다 비밀번호 안전 내 모든 비밀번호를 생성하고 저장하려면 매우 강력한 비밀번호를 기억할 필요가 없습니다(안전한 잠금을 해제하는 비밀번호는 제외).

귀하의 제안에 약간의 변형이 있습니다.

head -c 32 /dev/random | base64

선택적으로 후행을 다듬을 수 있습니다. = 그리고 사용 echo 개행을 얻으려면 :

echo $(head -c 32 /dev/random | base64 | head -c 32)

이는 인쇄 가능한 문자만 보장하면서 보다 예측 가능한 출력 길이 암호를 제공합니다.

알고리즘은 APG 꽤 멋지다.하지만 나는 대부분 내가 직접 정의한 목록에서 임의의 문자를 사용합니다.대부분 숫자, 대문자 및 소문자, 일부 구두점입니다.'1', 'l', 'I', 'O', '0' 등과 같이 다른 문자로 착각하기 쉬운 문자를 제거했습니다.

나는 임의의 문자 비밀번호를 좋아하지 않습니다.기억하기 어렵습니다.

일반적으로 내 비밀번호는 해당 정보가 나에게 얼마나 중요한지에 따라 계층으로 분류됩니다.

나의 가장 안전한 비밀번호는 내가 너무 어리고 멍청해서 변경하고 기억하는 방법을 알지 못했던 오래된 BBS 무작위 생성 비밀번호의 조합을 사용하는 경향이 있습니다.Shift 키를 자유롭게 사용하여 그 중 몇 가지를 추가하면 잘 작동합니다.이를 사용하지 않으면 암호 문구가 더 좋습니다.아마도 내가 좋아하는 어떤 책의 문구에 대소문자를 혼합하고 특수 기호를 넣어서 다시 한 번 쓴 것 같습니다.종종 나는 하나 이상의 문구를 사용하거나 한 문구의 여러 단어를 다른 문구의 여러 단어와 연결하여 사용합니다.

우선순위가 낮은 사이트에서 내 비밀번호는 매우 짧으며 일반적으로 몇 가지 친숙한 토큰의 조합입니다.

제가 가장 큰 문제를 겪는 곳은 직장입니다. 직장에서는 30일마다 비밀번호를 변경해야 하고 비밀번호를 반복할 수 없습니다.나는 다른 사람들처럼 비밀번호를 만들고 끝 부분에 계속 증가하는 색인을 추가합니다.그런 비밀번호 규칙은 터무니없습니다.

내가 사용하는 웹사이트의 경우 슈퍼젠패스, 해시 함수(MD5 기반)를 사용하여 마스터 비밀번호와 도메인 이름에서 사이트별 비밀번호를 파생합니다.해당 비밀번호를 어디에나 저장할 필요가 없습니다(SuperGenPass 자체는 북마크릿이며 완전히 클라이언트측입니다). 마스터 비밀번호만 기억하면 됩니다.

비밀번호를 사용하려는 대상과 데이터의 민감도에 따라 크게 달라질 수 있다고 생각합니다.클라이언트를 위해 다소 안전한 비밀번호를 생성해야 하는 경우 일반적으로 기억하기 쉬운 문장을 사용하고 각 단어의 첫 글자를 사용하고 숫자를 추가합니다.'Stackoverflow에서 사용하기 위한 일급 비밀 비밀번호' => 'tspfuos8'과 같은 것입니다.

그러나 대부분의 경우 Linux에서는 'pwgen' 유틸리티를 사용하여 비밀번호를 생성합니다. 복잡성과 길이를 지정할 수 있으므로 매우 유연합니다.

pwgen이라는 표준 UNIX 유틸리티입니다.거의 모든 유닉스 배포판에서 사용할 수 있습니다.

나는 사용한다 키패스 복잡한 비밀번호를 생성합니다.

나는 사용한다 https://www.grc.com/passwords.htm WPA 키와 같은 것에 대한 긴 비밀번호 문자열을 생성합니다.일종의 등록 사이트를 구현해야 하는 경우 이를 스크린스크래핑을 통해 사용하여 인증 비밀번호 해싱을 위한 솔트를 생성할 수도 있습니다.

어떤 상황에서는 단어 모음에 대한 Markov 체인 분석을 사용하는 Perl의 Crypt::PassGen 모듈을 사용합니다(예:/usr/share/dict/words(합당한 Unix 시스템의 경우).이를 통해 합리적으로 발음 가능하고 기억할 수 있는 비밀번호를 생성할 수 있습니다.

즉, $work에서는 하드웨어 챌린지/응답 토큰 메커니즘으로 전환하고 있습니다.

원하는 대로 강력한 마스터 비밀번호를 선택한 다음 cryptohash(masterpasword+sitename)를 사용하여 각 사이트에 대한 비밀번호를 생성하세요.사이트 B의 비밀번호가 다른 사람의 손에 들어가더라도(예: 악의적인 관리자, 무선랜 스니핑 또는 사이트 손상으로 인해) 사이트 A의 비밀번호를 잃지는 않지만 단일 비밀번호만 기억하면 됩니다.

최근에 비밀번호를 생성하는 특이한 방법을 사용했습니다.매우 강력할 필요는 없으며 임의의 비밀번호는 기억하기 너무 어렵습니다.내 응용 프로그램에는 북미 지역의 거대한 도시 테이블이 있습니다.비밀번호를 생성하기 위해 난수를 생성하고, 랜던 도시를 잡고, 또 다른 난수를 추가했습니다.

보스턴9934

숫자의 길이는 임의적이므로(마치 추가되거나 앞에 추가되거나 둘 다인 것처럼) 무차별 대입 공격이 너무 쉽지 않았습니다.

글쎄, 내 기술은 내가 좋아하는 노래 가사의 첫 글자를 사용하는 것입니다.예가 필요합니다:매일 밤 꿈속에서 당신을 보고, 당신을 느껴요...

나에게주세요:

enimdisyify

...예를 들어 약간의 숫자 삽입.i=1, o=0 등...

en1md1sy1fy

...자본화?항상 자신을 중요하게 생각하세요 :)

그리고 최종 비밀번호는...

en1Md1sy1fy

조엘 스폴스키 짧은 기사를 썼습니다: 드디어 비밀번호 관리가 가능해졌습니다

… 마지막으로 모든 암호를 관리하는 좋은 방법이 있습니다.이 시스템은 정기적으로 사용하는 컴퓨터 수에 관계없이 작동합니다.Mac, Windows 및 Linux에서 작동합니다.안전해요.비밀번호를 인터넷 사이트에 노출시키지 않습니다 (신뢰하든 아니든).각 사이트마다 매우 안전하고 임의의 비밀번호를 생성합니다. 모든 것을 설정하면 사용하기가 상당히 쉽습니다. 온라인으로 비밀번호 파일의 자동 백업을 유지하며 무료입니다.

그는 다음을 사용할 것을 권장합니다. 드롭 박스 그리고 비밀번호 안전 또는 비밀번호 고릴라.

import random

length = 12
charset = "abcdefghijklmnopqrstuvwxyz0123456789"

password = ""
for i in range(0, length):
    token += random.choice(charset)

print password

여기에서 훌륭한 답변 중 일부를 읽고 시험해 본 후에도 저는 여전히 쉽게 조정하고 매우 일반적인 Linux 유틸리티 및 리소스를 사용할 수 있는 생성 기술을 찾고 있었습니다.

나는 정말 좋아했다 gpg --gen-random 대답은 했는데 좀 투박한 느낌이 들었나요?

좀 더 검색한 끝에 이 보석을 발견했습니다

echo $(</dev/urandom tr -dc A-Za-z0-9 | head -c8)

비밀번호:

$ gpg --gen-random 1 20 | gpg --enarmor | sed -n 5p

암호:

http://en.wikipedia.org/wiki/Diceware

주로 타자를 쳐요 dd if=/dev/urandom bs=6 count=1 | mimencode 결과를 비밀번호 금고에 저장하세요.

내가 사용하는 Mac에서는 롤플레잉.

PHP에서는 ASCII 테이블에서 임의의 문자열을 생성합니다.보다 (의사) 무작위 영숫자 문자열 생성

나는 외국어로 된 문장의 이니셜부터 시작하는데, 그 중 일부는 대문자로 표기하는 관례가 있습니다.그런 다음 문장의 특정 부분에 애플리케이션이나 웹사이트 이름에서 파생된 숫자와 기호의 조합을 삽입합니다.

이 체계는 각 응용 프로그램에 대해 고유한 암호를 생성하므로 머리 속에서 매번 문제 없이 다시 파생할 수 있으며(그래서 암기할 필요도 없음), 암호의 어떤 부분도 사전에 표시될 가능성이 전혀 없습니다.

암호를 작성하려는 시스템에서 암호가 허용되는지 확인하려면 추가 규칙을 코딩해야 합니다.일부 시스템에는 "최소 두 자리 숫자와 두 대문자" 등과 같은 정책이 있습니다.문자별로 비밀번호를 생성할 때 필요에 따라 숫자/영문자/대문자 수를 유지하고 비밀번호 생성을 do..while로 래핑합니다. 그러면 (digitCount>1 && alphaCount>4 && upperCount까지 비밀번호 생성이 반복됩니다. >1) 또는 무엇이든.

Password Monkey, iGoogle 위젯!

Firefox 애드온 Password Hasher는 비밀번호 생성에 매우 훌륭합니다. 비밀번호 해셔

이 웹사이트는 또한 애드온에 대한 온라인 대체 기능을 제공합니다.온라인 비밀번호 해셔

Perl 프로그램을 사용하여 임의의 인쇄 가능한 ASCII 문자를 생성한 다음 보다 "안전한" 암호를 생성하는 데 도움이 되는 추가 규칙이 있으면 스크립트를 조정합니다.포스트잇에 비밀번호를 적어두었다가 1~2일 후에 파기할 수 있습니다.내 손가락은 그것을 기억할 것이고 내 비밀번호는 전혀 추측할 수 없을 것입니다.

이것은 제가 매일 사용하는 기본 로그인 비밀번호이며 실제로 하루에 여러 번 앉아서 화면을 잠금 해제할 때 사용하는 비밀번호입니다.이렇게 하면 빨리 암기하기 쉽습니다.분명히 다른 상황에 대한 비밀번호는 다른 메커니즘을 사용해야 합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top