今天遇到一个客户说他有个密码要破解,不是特别复杂,就14位数而已,问我50块钱能不能搞定?听到我震惊了,告诉说要破解14位数还是是随机的,我听了后觉得简直是天文数字,不可能能解开,就给50块钱的费用,我跑字典都不想跑。 我果断的拒绝了这个单,然后客户骂骂咧咧的说我们不行脏话就不写出来了,说我们同行18位数的都解开了, 所以写个 科普+吐槽的文章
14位数的所有密码组合有多少个?
今天遇到一个客户说他有个密码要破解,不是特别复杂,就14位数而已,问我50块钱能不能搞定?听到我震惊了,告诉说要破解14位数还是是随机的,我听了后觉得简直是天文数字,不可能能解开,就给50块钱的费用,我跑字典都不想跑。 我果断的拒绝了这个单,然后客户骂骂咧咧的说我们不行脏话就不写出来了,说我们同行18位数的都解开了, 所以写个 科普+吐槽的文章 14位数的所有密码组合有多少个?
要计算14位密码的所有可能组合数,首先需要明确以下几个因素:
字符集大小:密码的可能字符集(例如:数字、小写字母、大写字母、特殊字符等)。
下面我将分几种常见的字符集情况进行计算:
数字字符集有10个字符(0到9)。
总组合数为:
1014=100,000,000,000,00010^{14} = 100,000,000,000,0001014=100,000,000,000,000
即 100万亿 种可能的密码组合。
小写字母字符集有26个字符。
总组合数为:
2614≈6.7×101926^{14} \approx 6.7 \times 10^{19}2614≈6.7×1019
即 约67亿亿 种可能的密码组合。
大写字母字符集有26个字符。
总组合数与小写字母相同,为:
2614≈6.7×101926^{14} \approx 6.7 \times 10^{19}2614≈6.7×1019
即 约67亿亿 种可能的密码组合。
混合大小写字母的字符集有52个字符(26个小写字母 + 26个大写字母)。
总组合数为:
5214≈5.9×102352^{14} \approx 5.9 \times 10^{23}5214≈5.9×1023
即 约5900万亿亿 种可能的密码组合。
字符集大小为62个字符(10个数字 + 26个小写字母 + 26个大写字母)。
总组合数为:
6214≈3.5×102462^{14} \approx 3.5 \times 10^{24}6214≈3.5×1024
即 约350亿亿亿 种可能的密码组合。
假设特殊字符集有32个常用字符(例如!@#$%^&*()
等),总字符集大小为94个字符(10个数字 + 26个小写字母 + 26个大写字母 + 32个特殊字符)。
总组合数为:
9414≈3.8×102694^{14} \approx 3.8 \times 10^{26}9414≈3.8×1026
即 约380亿亿亿亿 种可能的密码组合。
已我们目前的速度,到地球毁灭都没办法解开!RAR格式的压缩包,我们服务器10几万一台的设备,也就每秒100多万的速度