Разблокируйте пароль ZIP
Contents
[
Hide
Show
]Забытый пароль
Обычно забыть пароль «частично», т.е. эн. Помните некоторых персонажей этого, забывая других. Aspose.zip API позволяет вам играть с такими полузабоченными паролями, чтобы разблокировать архив. В этой статье показывается, что угадает пароль расшифровки архива с зашифрованным AES.
Идентификационный шаблон пароля
Допустим, ваш пароль начинается с символов “T0p $ ecret”, за которыми следуют капитальный английский буквы и две цифры. Итак, мы можем описать такой шаблон, как это:
1String Template = "t0p $ ecret {0} {1}";
Проверка одного пароля
Этот простой код дешифрования
1Archiveloadoptions Options = new ArchiveLodoptions ();
2Options.SetDecryptionPassword (пароль);
3Попробуйте (архив a = новый архив ("encrypted.zip", опции)))
4 A.ExtractTodirectory (".");
Атака грубой силы на архив
Так что составьте и протестируйте пароли один за другим. Если программа успеха печатает правильный пароль в консоли.
1String Template = "t0p $ ecret {0} {1}";
2для (char c = 'a'; c <'z'; c ++)
3{
4 логическое правильное = false;
5 для (int i = 10; i <99; i ++)
6 {
7 String password = messageFormat.format (шаблон, c, i);
8 Archiveloadoptions Options = new ArchiveLodoptions ();
9 Options.SetDecryptionPassword (пароль);
10 Попробуйте (архив a = new Archive ("encrypted.zip", Options)) {
11 A.ExtractTodirectory (".");
12 правильно = true;
13 }
14 Улов (InvalidDataException e)
15 {
16 правильно = false;
17 }
18
19 if (correct)
20 {
21 System.out.println("Proper password: " + password);
22 break;
23 }
24 }
25
26 if (correct)
27 break;
28}