0

我的意思是按顺序生成 8 个字母数字字符的所有组合。就像您将用于暴力破解 8 位密码一样。

4

2 回答 2

0

我没有彻底测试这个,但它应该是一个开始。

#!/bin/sh

declare -A aa=(
  [0]=1 [1]=2 [2]=3 [3]=4 [4]=5 [5]=6 [6]=7 [7]=8 [8]=9 [9]=A [A]=B [B]=C [C]=D
  [D]=E [E]=F [F]=G [G]=H [H]=I [I]=J [J]=K [K]=L [L]=M [M]=N [N]=O [O]=P [P]=Q
  [Q]=R [R]=S [S]=T [T]=U [U]=V [V]=W [W]=X [X]=Y [Y]=Z [Z]=a [a]=b [b]=c [c]=d
  [d]=e [e]=f [f]=g [g]=h [h]=i [i]=j [j]=k [k]=l [l]=m [m]=n [n]=o [o]=p [p]=q
  [q]=r [r]=s [s]=t [t]=u [u]=v [v]=w [w]=x [x]=y [y]=z [z]=0
)

bb=(0 0 0 0 0 0 0 0)

while :
do
  IFS= read ff <<< "${bb[*]}"
  echo $ff
  place=7
  while :
  do
    bb[place]=${aa[${bb[place]}]}
    if [ ${bb[place]} = 0 ]
    then
      (( place-- ))
    else
      break
    fi
  done
done
于 2013-02-19T08:33:51.533 回答
0

这不意味着你想要218,340,105,584,896组合吗?即62 ** 8,如果我们同意您在 3 个位置获得 1,000 个数字组合,即 10 ** 3 == 1,000。

我的数学可能不正确。://

如果是这种情况,您应该考虑在 Python/Perl 中进行

于 2013-02-19T16:58:53.053 回答