Esempio n. 1
0
def losujHaslo(n):
  need_length = n
  haslo = ""
  ready = False
  # Zakładam, że hasło musi mieć co najmniej dwa znaki
  if n <= 3:
    while True:
      haslo = losujFragment()
      if len(haslo) <= 3:
        break
  else:
    while True:
      wylosowane = losujFragment()
      haslo = haslo + wylosowane
      need_length = need_length - len(wylosowane)
      if need_length <= 1:
        haslo = ""
        need_length = n
      if need_length <= 2:
        while True:
          temp = losujFragment()
          if len(temp) == 2:
            haslo = haslo + temp
            ready = True
            break
        if ready == True:
          break
      if ready == True:
        break
  return haslo
Esempio n. 2
0
def losujHaslo(n):
  haslo = ""
  
  while len(haslo) < n:
    tmpHaslo = haslo + losujFragment()
    if len(tmpHaslo) <= n:
      if (n-len(tmpHaslo)) != 1:
        haslo = tmpHaslo 
 
  return haslo
Esempio n. 3
0
def losujHaslo(n):
    psswd = ""; #Dump hasła
    reml = 0; #Litery pozostałe do wypełnienia n miejsc w haśle - wypełniane dopiero w loopie

    while (len(psswd) < n):         #Dopóki len hasła < od wymaganej len hasła
        addpart = losujFragment();  #Nowa część hasła
        if (reml <= 1):
            psswd = "";
        elif (len(addpart) <= reml):  #Jeżeli len nowej części jest <= od ilości pozostałych w haśle miejsc na litery
            psswd += addpart;       #Połącz dotychczasowe hasło i nową część
        reml = n - len(psswd);      #Aktualizuj reml
    print psswd, len(psswd);           #len(psswd) - debug, TODO: DO USUNIECIA!!