Подскажите пожалуйста генератор с помощью которого можно реализовать следующие: Есть несколько слов, например: Abc abc qwe А программа должна сгенетировать все возможные варианты порядка этих слов с фиксированной длинной (например 9-12), причем повторы разрешены. Т е в итоге должно получиться что-то типа этого (только список куда богаче): abcabcabcabc Abcabcabcabc abcqweAbc qweqweqweAbc Abcabcqweqwe
Когда-то вспоминал кенту пароль от контейнера truecrypt - он помнил, какие слова мог использовать, но не помнил, в каком порядке и для составления словаря для брута я искал такого рода прогу. Не нашел, накарябал как умею на сях. Вот код. Он генерит сочетания без повторений из набора слов по 1,2,3... элементов, можно ручками допилить до сочетаний с повторениями по n - твой случай.
когда то изучал яваскрипт. вот тебе исходник с комментариями. там легко подправить под свои нужды. HTML: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta http-equiv="content-type" content="text/html; charset=windows-1251"> <meta name="generator" content="PSPad editor, www.pspad.com"> <title>laba 6 na 4 & 5 </title> <style type="text/css"> body{ background-color: grey; font-family: Arial,Helvetica,sans-serif color: white; } TABLE { color: white;} td { border:white solid 1px cellspacing="0" } h1 {color:goldenrod } </style> <script type="text/javascript"> function getrandom() { var A = new Array ("A","B","C","D","E", "F","G","H","I","J","K","L", "M","N","O","P","Q","R","S", "T","U","V","W","Y","Z"); var b = new Array ("a","b","c","d","e", "f","g","h","i","j","k","l", "m","n","o","p","q","r","s", "t","u","v","w","y","z"); var dig = new Array ("0","1","2","3","4", "5","6","7","8","9"); var m = new Array(); var count = document.forms[0].elements['count'].value; var vsego = document.forms[0].elements['vsego'].value; var pass="" ; var r,i=0; var reg=/^\d+$/; if (!reg.test(count)) //проверяет, чтобы в поле были введены только десятичные цифры. { alert('Введите цифрами длину пароля!'); //если поле пустое алерт return; } if (count>25) //проверяем длину { alert('Введите число меньше 26'); return;} if (!reg.test(vsego)) //проверяет, чтобы в поле были введены только десятичные цифры. { alert('Введите цифрами сколько надо паролей!'); //если поле пустое алерт return; } if( document.getElementById("1").checked){m = m.concat(A);} //проверяем какие чекбоксы отметили if (document.getElementById("2").checked){ m = m.concat(b);} if (document.getElementById("3").checked){ m = m.concat(dig);} if (m.length==0) //если чекбоксы не отмечены алерт и ехит { alert('отметьте какие символы использовать'); return;} for (r=0;r<vsego;r++){ //выводим пароли while (i<count) { pass += m[Math.floor(Math.random() * m.length)] ; //рандомим пароль i++; } pass+= "<br>"; // переводим на следующую строку. иначе хз как document.getElementById('qqq').innerHTML =pass ; //выводим пароль в нужное поле i=0; } } //end fuction </script> </head> <body> <tr> <td colspan="2" > <h1 align="center" ><b>Генератор пароля </b> </h1> </td> </tr> <form> <table width="300" align="center" border="1" bgcolor="DarkRed" cellpadding="10" cellspacing="0" > <tbody> <tr> <td width='75%' align="right">Введите длину пароля:</td> <td > <input name="count" size="5" type="text" maxlength="2" > </td> </tr> <tr> <td width='75%' align="right">Сколько паролей:</td> <td > <input name="vsego" size="5" type="text" maxlength="2" > </td> </tr> <tr> <td align="right"> A-Z</td> <td> <input name="hi" type="checkbox" id="1"> <br> </td> </tr> <tr> <td align="right"> a-z</td> <td> <input name="slow" type="checkbox" id="2"> <br> </td> </tr> <tr> <td align="right"> 0-9</td> <td> <input name="num" type="checkbox" id="3"> <br> </td> </tr> <tr> <td colspan="2" align="right"> <input value="Сброс" type="reset"> <input value="Генерировать" type="button" name="generate" onClick="getrandom();"> </td> </tr> </tbody> </table> <br> <br> <table width="300" align="center" border="1" bgcolor="DarkRed" cellpadding="10" cellspacing="0" > <tbody> <tr> <td height="80px" solid=5px colspan="2" align="center" > <p id="qqq">Результат </p></td> </tr> </tbody> </table> </form> </body> </html>