ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

[javascript] помогите дописать скрипт с регулярными выражениями
  #1  
Старый 14.08.2007, 14:02
Аватар для Thanat0z
Thanat0z
Постоянный
Регистрация: 06.12.2006
Сообщений: 762
Провел на форуме:
5352530

Репутация: 2062


По умолчанию [javascript] помогите дописать скрипт с регулярными выражениями

Ниже вы можете видеть скрипт для браузера, который по нажатию Shift+Enter преобразует строку в форме ввода (в форме быстрого ответа для отправки текста)

из
04b2539eecc816ecb9af7adb9ce60493:пароль
в
Код:
04b2539eecc816ecb9af7adb9ce60493:пароль
То есть текст после последнего двоточия выделятся красным цветом.

Что нужно
1) чтоб он корректно воспринимал DES и mysql3 хеши 2) тоже самое для freebsd md5
3) корректная работа с записями
хеш:пароль
логин:хеш:пароль
хеш:соль:пароль
логин:хеш:соль:пароль

От чего можно отталкиваться

Mysql - 16 символов
Как и md5 состоит из символов abcdef0987654321

DES - 13 символов

freebsd md5 - 32 символа (пример $1$12345678$tDiEmRj8eI0HYEz5Z9P3L/)
Начинается с $1, между $ идет соль до 8 символов (выделил синим цветом), далее 22 символа

ЗЫ для сальтовых мд5 соль обычно 3 или 5 символов, но пока и без этих заморочек стабильно работает

Сам не шарю, на многое не способен

Код:
// Ctrl+Enter RedHash Submits
// version 0.2
// 09.08.2007
// Это Greasemonkey user script.
// Скачать Greasemonkey можно тут: http://greasemonkey.mozdev.org/
// Инсталируйте Greasemonkey
// В вкладке Tools будет новое меню "Install User Script".
// Инсталируте скрипт с дефолтными настройками
// Тестировалось с https://addons.mozilla.org/ru/firefox/downloads/file/16465/greasemonkey-0.7.20070607.0-fx.xpi
// --------------------------------------------------------------------
// Opera 8/9 совместимый скрипт.
// Для инсталяции разместите скрипт в какой-то папке и укажите к ней путь как к папке с пользовательскими скриптами
// Tools > Preferences > Advanced > Content > Javascript Options
// для https в Опере нужно специальное разрешение 
// opera:config#UserPrefs|UserJavaScriptonHTTPS
// ---------------------------------------------------------------------
// тестировалось на Firefox 2.0 и Opera 9.21
// ---------------------------------------------------------------------
// ==UserScript==
// @name          Ctrl+Enter RedHash Submits
// @description   Allows submitting on Ctrl+Enter in any input and textarea
// @include        *
// ==/UserScript==

function redhash(text) {

    replacements = [

  [/(\w{31,32}\:)([^\s\r]+\:)([^\s\r]+)/mig, '$1$2$3'],
  [/(\w{31,32}\:)([^\s\r\:]+$)/mig, '$1$2'],

    ];

    s = text
    for( i=0; i < replacements.length; i++) {
	s = s.replace(replacements[i][0], replacements[i][1])
    }
    
    return s
}

function trigger_submit_on_ctrl_enter(e) {
    if ((e.keyCode==13) && (e.ctrlKey || e.shiftKey)) {
	p = this.parentNode
	i = 0
	if (this.nodeName == 'TEXTAREA')
	    this.value = redhash(this.value)

	while (p.nodeName != 'FORM' && i++ < 100) 
	    p = p.parentNode

	if (p.nodeName == 'FORM' && e.ctrlKey) 
	    p.submit()
    }
}

if (document.evaluate) { // Firefox
    allInps = document.evaluate("//textarea[not(@id='instant_comment_textarea')] | //select | //input", document, null, 
				    XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null);
    for (var i = 0; i < allInps.snapshotLength; i++) {
	t = allInps.snapshotItem(i);
	t.addEventListener("keydown", trigger_submit_on_ctrl_enter, 0);
    }
} else { // Opera 8 does not support XPath
    elemTags = ['textarea', 'select', 'input']
    for(j = 0; j< elemTags.length; j++) {
	inps = document.getElementsByTagName(elemTags[j])
	for (var i = 0; i < inps.length; i++)
	    inps[i].addEventListener("keydown", trigger_submit_on_ctrl_enter, 0);
    }
}

Последний раз редактировалось Thanat0z; 22.08.2007 в 18:47..
 
Ответить с цитированием

  #2  
Старый 21.08.2007, 22:13
Аватар для Thanat0z
Thanat0z
Постоянный
Регистрация: 06.12.2006
Сообщений: 762
Провел на форуме:
5352530

Репутация: 2062


По умолчанию

делаю ап. Кто следелает хотя бы корректное распознавание хеша по длине в

13, 16, 31-32, 40

тому +20
 
Ответить с цитированием

  #3  
Старый 21.08.2007, 23:12
Аватар для Basurman
Basurman
Постоянный
Регистрация: 10.11.2006
Сообщений: 416
Провел на форуме:
5636868

Репутация: 849
Отправить сообщение для Basurman с помощью ICQ
По умолчанию

добавить имхо в replacements = [

Код:
[/(\w{16}\:)([^\s\r\:]+$)/mig, '$1$2'],
- mysql (это к примеру)
для DES туда надо вписывать спец. символы (слеши, точки и тд)

Пока не проверить, надо скачивать гризмонкей и тд

Точно так же делаются:
Цитата:
хеш:пароль
логин:хеш:пароль
хеш:соль:пароль
логин:хеш:соль:пароль

Последний раз редактировалось Basurman; 22.08.2007 в 00:09..
 
Ответить с цитированием

  #4  
Старый 21.08.2007, 23:13
Аватар для Thanat0z
Thanat0z
Постоянный
Регистрация: 06.12.2006
Сообщений: 762
Провел на форуме:
5352530

Репутация: 2062


По умолчанию

когда я в тупую делал реплейсы

16, 32, 13

и в тексте были разные хеши, то для хешей в 32 делалась тройная окраска, что не есть гут
 
Ответить с цитированием

  #5  
Старый 21.08.2007, 23:16
Аватар для Basurman
Basurman
Постоянный
Регистрация: 10.11.2006
Сообщений: 416
Провел на форуме:
5636868

Репутация: 849
Отправить сообщение для Basurman с помощью ICQ
По умолчанию

кстати а нафига там
Код:
[/(\w{31,32}\:)([^\s\r]+\:)([^\s\r]+)/mig, '$1$2$3'],
это получается 32симв:непробелнеCR:непробел неCR
Типа соль?

P.S. ок, сейчас посмотрю поставлю

Последний раз редактировалось Basurman; 21.08.2007 в 23:23..
 
Ответить с цитированием

  #6  
Старый 21.08.2007, 23:19
Аватар для Thanat0z
Thanat0z
Постоянный
Регистрация: 06.12.2006
Сообщений: 762
Провел на форуме:
5352530

Репутация: 2062


По умолчанию

Цитата:
Сообщение от Basurman  
Типа соль?
да, скрипт задумывался для работы без логина, но пока проблем не было
 
Ответить с цитированием

  #7  
Старый 22.08.2007, 01:05
Аватар для Red_Red1
Red_Red1
Участник форума
Регистрация: 12.01.2007
Сообщений: 262
Провел на форуме:
4608122

Репутация: 874
Отправить сообщение для Red_Red1 с помощью ICQ
По умолчанию

Танатоз хочу уточнить что будет входнымы данными для скрипта. Т.е. какого вида будет переменная (text) в function redhash(text). Это будет текст вида
Цитата:
хеш:пароль
логин:хеш:пароль
хеш:соль:пароль
логин:хеш:соль:пароль
в любых сочетаниях, или же ЛЮБОЙ текст в котором встречаються записи вида хеш:пароль и т.д. по условию задачи и уже в этом тексте нужно найти записи, определить что из них какой хеш и только тогда подсветить пароль.
Читая пост я понял что основное это
Цитата:
То есть текст после последнего двоточия выделятся красным цветом.
У меня есть скрипт на ПХП который может взять файл вида
Цитата:
хеш:пароль
логин:хеш:пароль
хеш:соль:пароль
логин:хеш:соль:пароль
в любых сочетаниях, и на выходе создать файл с подсвечеными паролями. Если это оно могу выложить. Если не так понял задачку сильно не бить, лучше раскажите что не так понял.
 
Ответить с цитированием

  #8  
Старый 22.08.2007, 01:28
Аватар для Thanat0z
Thanat0z
Постоянный
Регистрация: 06.12.2006
Сообщений: 762
Провел на форуме:
5352530

Репутация: 2062


По умолчанию

нужен яваскрипт, чтоб на стороне клиента делать действия

ЗЫ если грубо взять, то надо выделять текст именно после последнего двоеточия, тут правильно заметил
 
Ответить с цитированием

  #9  
Старый 22.08.2007, 12:13
Аватар для Red_Red1
Red_Red1
Участник форума
Регистрация: 12.01.2007
Сообщений: 262
Провел на форуме:
4608122

Репутация: 874
Отправить сообщение для Red_Red1 с помощью ICQ
По умолчанию

Танатоз есть такая штука
Код:
Исходный текст<br>
 aaaaaaaa:bbbb!cbbb sdfsdfs     sdf   aaaaaa aa:yb@#%$%bbbbbaaaaaaaa:ybbbbbb aaaaaaaa:ubbbb@%^bb aaaaaaaa:ibbbbbb Привет Мир!Я делаю скрипт....         aaaaaaa:ibbbbbb 
<br>
<script>
function redhash(text) {
var re = /:([^ \f\n\r\t\v:]+)\s/mig;
var str = text;
document.write(str.replace(re,':<b>$1</b> '));
}


var r = " aaaaaaaa:bbbb!cbbb sdfsdfs     sdf   aaa#$aaa aWR$%a:bbbbbaaaaaaaa:ybbbbbb $aaa$aaaaa:ubbbb@%^bb aaaaaaaa:ibbbbbb Привет Мир!Я делаю скрипт....         aaaaaaa:ibbbbbb ";
</script>
Готовый текст<br>
<script>
redhash(r) ;
</script>
Скрипт ищет в тексте записи вида символы:символы:.........:симво лы:пароль и подсвечивает пароль. Пример сдесь http://maksrusya.narod.ru/java.html
Если подходит можно адаптировать под твой скрипт. Но есть проблемка я не могу запустить исходный (твой) скрипт.

Последний раз редактировалось Red_Red1; 22.08.2007 в 13:30..
 
Ответить с цитированием

  #10  
Старый 22.08.2007, 17:59
Аватар для inv
inv
Banned
Регистрация: 03.08.2007
Сообщений: 313
Провел на форуме:
951141

Репутация: 291
По умолчанию

Если вдруг кто-то не понял автор темы просит изменить\написать userjs (Opera и Мозилла (работает при установке плагина) смотри operafan.net)

Последний раз редактировалось inv; 22.08.2007 в 17:59.. Причина: опечатки
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ПомогитЕ !!! подалуста найти кряк гейлордфакерЪ Болталка 2 30.08.2007 14:48
Помогите с регулярными выражениями. kdk PHP, PERL, MySQL, JavaScript 8 25.07.2007 14:49
Помогите мне найти скрипт чата Bratan PHP, PERL, MySQL, JavaScript 3 10.03.2007 14:18
ПоМоГиТе! ПЛЗ!!! farik.aka E-Mail 1 17.09.2006 13:00



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ