เครื่องมือบรรทัดคำสั่งเพื่อสร้างรหัสผ่านที่น่าจดจำ?


20

ฉันกำลังมองหาเครื่องมือบรรทัดคำสั่งหรือ GUI สำหรับ Linux ที่สร้างรหัสผ่านที่น่าจดจำ

สิ่งที่ฉันกำลังมองหาคือรหัสผ่านที่พวงกุญแจ Mac OS X สามารถสร้างapples12$/fourteenได้ สิ่งที่แข็งแกร่ง แต่จดจำได้ง่ายโดยผู้ใช้

คำตอบ:


22

ฉันได้ย้ายไปยังวลีรหัสผ่านสไตล์ XCKDสำหรับรหัสผ่านส่วนใหญ่ของฉันแล้ว นี่คือซับ 1 จากcommandlinefuเพื่อสร้างวลีรหัสผ่าน:

shuf -n4 /usr/share/dict/words | tr -d '\n'

2
อันที่จริงมีปัญหากับซับในตัวนี้: มันอาจใช้คำเช่น "the", "พวกเขา", "พวกเขา" และ "คูเมือง", "ไอริส", "เขา" คุณเห็นปัญหาหรือไม่ มีการซ้อนทับกันระหว่างคำนำหน้าและคำต่อท้ายซึ่งช่วยลดการตั้งค่าเอนโทรปีของรหัสผ่านที่สร้างขึ้นและสามารถนำไปสู่รหัสผ่านที่ค่อนข้างอ่อนหากสตริงไม่ยาวพอ (โดยเฉพาะอย่างยิ่งกับ 4 คำ) นี่คือเหตุผลที่เครื่องกำเนิดรหัสผ่านตามคำใช้รายการคำที่สร้างขึ้น ได้รับรหัสผ่านที่สร้างขึ้นจากด้านบนค่อนข้างดี: ขั้นต่ำ 14 ตัวอักษรในการทดสอบของฉันด้วยขนาดมัธยฐาน 34 แต่เอนโทรปีของพวกเขาไม่น่าเชื่อถือ
Anarcat

ปัญหาของการมีคำนำหน้า / คำต่อท้ายที่ทับซ้อนกันคืออะไร ฉันเข้าใจจุดของคุณเกี่ยวกับความยาว แต่คุณจะต้องอธิบายอีกประเด็น
James McMahon

มาลดความซับซ้อนลงไปมาก คุณมี dictionnary ที่ทำจากสามคำ: the, และme themeโดยปกติคุณคาดหวังว่าคุณจะมีค่าเอนโทรปีเท่ากันจากสามคำนี้ แต่ในกรณีนี้คุณไม่สามารถนับได้themeเพราะเป็นการรวมกันของอีกสองคำ ผลthemeจริงเพิ่มศูนย์เอนโทรปีให้รหัสผ่าน
anarcat

แต่ไม่ใช่ "ตัวฉัน" ที่แตกต่างจาก "ธีม" ใช่ไหม ฉันได้รับตัวอักษรที่เป็นไปได้เพิ่มเอนโทรปี แต่วิธีการนี้เป็นเรื่องเกี่ยวกับขนาดของรหัสผ่าน ฉันไม่เข้าใจว่า "ธีมของฉัน" จะเป็นเรื่องง่ายกว่าที่จะคาดเดาจากนั้นลำดับที่ไม่มีตัวอักษรทับซ้อนกันเช่น "do ray music"
James McMahon

1
@wbg คำตอบของฉันอยู่ที่นี่superuser.com/a/1246245/177019
anarcat

11

2020: ฉันโพสต์คำตอบนี้ในปี 2011 ในปีที่ผ่านมาใบหน้าของการรักษาความปลอดภัยในโลกไซเบอร์และความต้องการที่จะมีการเปลี่ยนแปลงอย่างรวดเร็วและมหาศาล ตามที่ได้รับการชี้ให้เห็นโดย anarcat, pwgen อาจไม่เหมาะสำหรับการรักษาความปลอดภัยระบบความปลอดภัยสูง (หรือไม่อีกต่อไป) เขากำหนดไว้เพื่ออธิบายรายละเอียดทางเทคนิคว่า pwgen สามารถใช้วิธีการที่ไม่ปลอดภัยในการรับรหัสผ่านจากเอนโทรปีที่มีอยู่ในบทความของเขาได้อย่างไร แม้ว่าฉันจะไม่เชื่อในการสร้างรหัสผ่านอีกต่อไปแล้วลองและจดจำพวกเขาเองฉันไม่มีความสามารถทางเทคนิคในการตรวจสอบรับรองเอกสารรับรองเนื้อหาตามที่ยกมาดังนั้นโปรดอ่านและวาดข้อสรุปของคุณเอง ต้องบอกว่าฉันเชื่อว่า pwgen จะเพียงพอสำหรับระบบความปลอดภัยต่ำซึ่งการโจมตีไม่น่าเป็นไปได้มาก

คุณอาจต้องการตรวจสอบpwgenใบสมัคร ฉันรู้ว่ามันมีอยู่ในที่เก็บ Ubuntu, Fedora, Debian และ Suse

จากหน้าคน :

โปรแกรม pwgen สร้างรหัสผ่านที่ออกแบบมาเพื่อให้จดจำได้ง่ายในขณะที่ปลอดภัยที่สุด รหัสผ่านที่น่าจดจำของมนุษย์จะไม่ปลอดภัยเหมือนรหัสผ่านแบบสุ่มสมบูรณ์ โดยเฉพาะอย่างยิ่งรหัสผ่านที่สร้างโดย pwgen ที่ไม่มีตัวเลือก -s ไม่ควรใช้ในสถานที่ที่รหัสผ่านสามารถถูกโจมตีผ่านการโจมตีแบบ brute-force ในทางกลับกันรหัสผ่านที่สร้างขึ้นแบบสุ่มมีแนวโน้มที่จะถูกเขียนลงและอาจถูกบุกรุกในแบบนั้น

โปรแกรม pwgen ถูกออกแบบมาเพื่อใช้ทั้งแบบโต้ตอบและในเชลล์สคริปต์ ดังนั้นพฤติกรรมเริ่มต้นจึงแตกต่างกันไปขึ้นอยู่กับว่าเอาต์พุตมาตรฐานเป็นอุปกรณ์ tty หรือไพพ์ไปยังโปรแกรมอื่น ใช้แบบโต้ตอบ pwgen จะแสดงหน้าจอรหัสผ่านช่วยให้ผู้ใช้เลือกรหัสผ่านเดียวแล้วลบหน้าจออย่างรวดเร็ว วิธีนี้ป้องกันไม่ให้ใครบางคนสามารถ "เล่นกระดานโต้คลื่น" รหัสผ่านที่ผู้ใช้เลือก


3
รหัสผ่านเช่น 'Zei7jool' หรือ 'Oowee6ei' ดูเหมือนจะไม่น่าจดจำสำหรับฉัน บางทีฉันอาจจะพลาดธง?
James McMahon

3
@James พวกเขาถูกสร้างขึ้นตามอัลกอริทึมที่ทำให้ตัวอักษรไม่มีความรู้สึก แต่เป็นเพราะตรรกะในภาษาศาสตร์มนุษย์ลำดับที่จำได้ คุณอาจต้องใช้ความพยายามในการจำapples12$/fourteenรหัสผ่านที่คล้ายกัน ลองดูสิ
BloodPhilia

1
มันเปิดเผยรายชื่อรหัสผ่านขนาดยักษ์เพียงแค่เลือกสิ่งที่น่าจดจำที่สุด - มีอัญมณีอยู่ในนั้น ;-)
virtualeyes

4
รหัสผ่าน pwgen มีปัญหาด้านความปลอดภัยที่ร้ายแรงโดยค่าเริ่มต้นและไม่น่าจดจำมาก ใช้ diceware หรือ xkcdpass แทน
anarcat

1
@anarcat ขอบคุณ! ฉันเห็นด้วย pwgen อาจไม่ใช่ตัวเลือกที่ดีที่สุด (อีกต่อไป) แต่ฉันจะทิ้งคำตอบไว้กับข้อจำกัดความรับผิดชอบที่ฉันได้เพิ่มไว้เพื่อจัดการข้อกังวลของคุณเพื่อจุดประสงค์ทางประวัติศาสตร์
BloodPhilia

8

ฉันอยากจะแนะนำให้ผู้คนหยุดใช้ pwgen - ความสนใจหลักคือการสร้าง "รหัสผ่านที่จำได้โดยมนุษย์" แต่มันแสดงให้เห็นถึงช่องโหว่หลายอย่างในการทำเช่นนั้น และการใช้มันเพื่อสร้างสตริงการสุ่มอย่างสมบูรณ์ก็ไม่มีประโยชน์เช่นกัน

ผมเขียนบทความรายละเอียดในหัวข้อมากนั้น แต่โดยทั่วไปส่วนสำคัญของมันคือการใช้dicewareโปรแกรม (หรือถ้าคุณชอบลูกเต๋าที่เกิดขึ้นจริงระบบ diceware ) หรือxkcdpass เพื่อสร้างรหัสผ่านที่น่าจดจำอย่างมากฉันมักจะใช้ diceware กับไฟล์กำหนดค่าต่อไปนี้:

[diceware]
caps = off
delimiter = "-"
wordlist = en_eff

ตัวอย่าง:

$ diceware
turkey-eligibly-underwire-recite-lifter-wasp
$ diceware
lend-rubdown-cornflake-tint-shawl-ozone
$ diceware
syndrome-ramp-cresting-resolved-flinch-veneering
$ diceware
alto-badass-eclipse-surplus-rudder-quit

ฉันปิดตัวพิมพ์ใหญ่และช่องว่างเนื่องจากพวกเขาสร้างเสียงที่ชัดเจนที่สามารถโจมตีได้โดยผู้โจมตี -คั่นเป็นชั่วร้ายน้อย: มันจะดีกว่าที่จะไม่ใช้ตัวคั่นใด ๆ และen_effWordList สามารถสร้างขึ้นมาโดยเฉพาะอย่างยิ่งสำหรับวัตถุประสงค์ที่ แต่ฉันพบว่าการสื่อสารและแบ่งปันรหัสผ่านง่ายขึ้นเมื่อมีตัวคั่นบางตัว

ในการสร้างรหัสผ่านแบบสุ่มโดยสมบูรณ์ฉันใช้ฟังก์ชัน shell ต่อไปนี้:

# secure password generator or, as dkg puts it:
# high-entropy compact printable/transferable string generator
# a password generator would be pwqgen or diceware
pwg() {
    ENTROPY=${1:-20} # in bytes
    # strip possible newlines if output is wrapped and trailing = signs as they add nothing to the password's entropy
    head -c $ENTROPY /dev/random | base64 | tr -d '\n='
    echo
}

ฉันพูดถึงสิ่งนี้เพราะฉันเชื่อว่าการจำรหัสผ่านให้น้อยลงนั้นต้องอาศัยตัวจัดการรหัสผ่านแทนในการจัดเก็บสตริงจำนวนมากที่ยากต่อการคาดเดา รายละเอียดเพิ่มเติมเกี่ยวกับเหตุผลที่อยู่เบื้องหลังเลือกเหล่านั้นจะมีการอธิบายไว้ในบทความดังกล่าวข้างต้นของฉันและทบทวนผู้จัดการรหัสผ่าน


4

ลอง 'gpw' มันสร้างรหัสผ่านเช่นนี้: ubsonsin morimplo demenump esselymn kidentst anenterg essonsuf iesssssi bestruss tnestese

คำอธิบาย: เครื่องมือสร้างรหัสผ่าน Trigraph แพ็คเกจนี้สร้างรหัสผ่านที่ออกเสียงได้ มันใช้สถิติของชุดค่าผสมสามตัวอักษร (trigraphs) ที่นำมาจากพจนานุกรมที่คุณป้อน ดังนั้นการออกเสียงอาจแตกต่างกันในแต่ละภาษา อิงตามแนวคิดในตัวสร้างรหัสผ่านของ Morrie Gasser สำหรับ Multics และตัวสร้างของ Dan Edwards สำหรับ CTSS FIPS Standard 181 อธิบายตัวสร้างที่ใช้
digraph ที่คล้ายกันซึ่งได้มาจาก Gasser's


1

ตัวเลือกที่ดีที่ได้โผล่ขึ้นมาตั้งแต่ผมถามนี้คือการปกปิดของ XKCD-รหัสผ่านเครื่องกำเนิดไฟฟ้า

เป็นสคริปต์ Python ที่ดีในการสร้างรหัสผ่านสไตล์ XKCD ที่มีตัวเลือกล่วงหน้าเช่นการสนับสนุนแบบอะโครทิก


0

sf-pwgen เป็นเครื่องมือบรรทัดคำสั่งที่สร้างรหัสผ่านโดยใช้เฟรมเวิร์ก SecurityFoundation ใน OS X

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.