Форум » » Приобретение модуля для Huawei терминалов » Ответить

Приобретение модуля для Huawei терминалов

NZ: Коллеги! Может быть кто-то обладает рабочим модулем для Huawei ВКС терминалов ( Полнофункциональным) Готов рассмотреть сотрудничество в этом вопросе. )

Ответов - 48, стр: 1 2 3 All

gon3ales: olegny пишет: password: string consisting of 64 characters. The string is generated by encrypting the user name, password, and session ID using the SHA256 algorithm Я может чего-то не понимаю, но где здесь сказано каким образом замешивать?

olegny: В simpl+ не знаю (скорее всего нет), а в S# он есть. SHA256 (как наверное и все хэши) устроен так, что "замешивать" туда данные можно постепенно, т.е. добавлять поочереди. Так и делайте.

Вячеслав: А что там двусторонний обмен ключами? Может просто внешним онлайн калькулятором разок "замешать" и строго настрого сказать, чтоб пароль потом не меняли.


olegny: Там же Session Id присутствует для того как раз, чтобы хэш не был всякий раз один и тот же. Иначе его можно было бы стырить точно так же, как и пароль. P.S. И нет, обмен там скорее всего отсутствует и сам трафик нешифрованный. Потому и такие заморочки с паролем, что надо его передать one-way encrypted.

gon3ales: olegny пишет: а в S# он есть. Какими функциями реализуется, если не секрет?

gon3ales: olegny пишет: SHA256 (как наверное и все хэши) устроен так, что "замешивать" туда данные можно постепенно, т.е. добавлять поочереди. Так и делайте. Вот пример от производителя пришел: /* The sha256_digest function is a JavaScript implementation of the SHA256 encryption algorithm. */ data. password = sha256_digest("api"+ ':' + "api" + ':' + sessionId); И сколько, интересно по времени я должен "замешивать" исходя из "хорошего" руководства??? Вопрос, риторический...

olegny: Ну или так. Так конечно проще с точки зрения применения алгоритма хэширования. Не понятно только зачем им понадобились двоеточия... Приколисты! )) Могли бы обойтись простой конкатенацией. Из примера правда не понятно какого типа собственно "password", т.е. возвращаемое значение sha256_digest. Что значит сколько "замешивать"? В смысле сколько по времени эта функция будет работать над результатом?

gon3ales: olegny пишет: Что значит сколько "замешивать"? В смысле сколько по времени эта функция будет работать над результатом? Методом перебора я должен найти эту волшебную комбинацию?)) "api"+ ':' + "api" + ':' + sessionId. В документации об этом не слова, это к качеству документации и таких косяков там хоть отбавляй...

Вячеслав: А что за api? Логично было бы login:password. SessionID уже отдельно после процедуры авторизации к каждой команде

DmitriiP: "api" у них судя из корявого примера и логин и пароль. data.user = "api"; //User name data.password = sha256_digest("api"+ ':' + "api" + ':' + sessionId); data.password = sha256_digest(login+':'+password+':'+sessionId);

gon3ales: В примере, выше было написано - User - api, pass - api

olegny: gon3ales пишет: Методом перебора я должен найти эту волшебную комбинацию?)) "api"+ ':' + "api" + ':' + sessionId. В документации об этом не слова, это к качеству документации и таких косяков там хоть отбавляй... Ничего не понимаю. Зачем что-то перебирать? Они написали как они это делают на стороне сервера и, соответственно, вы должны делать все точно также на клиенте. Иначе хэши не будут одинаковыми.

olegny: Вячеслав пишет: А что за api? Логично было бы login:password. SessionID уже отдельно после процедуры авторизации к каждой команде Я уже говорил, что SessionID (как переменная) нужен для того, чтобы хэши были разными каждый раз. Вообще, это все их самодеятельность, ибо есть стандарт для этого - PBKDF2

olegny: gon3ales пишет: Какими функциями реализуется, если не секрет? Посмотрите на класс: Crestron.SimplSharp.Cryptography.HMACSHA256 P.S. Похоже облом. HMAC это о другом. Чистого SHA256 не дано так, что... надо пожаловаться, чтобы добавили! ))

DmitriiP: как вариант попробуте SSMonoCryptographyLibrary.dll http://www.nivloc.com/downloads/crestron/SSharp/include4.dat%20=%202.07.012%20-%20Plugin%202.x/ если есть доступ к железке, то через wireshark запрос/ответ у вас на руках будет логин, пароль, номер сессии + их SHA256 хэш. дальше методом тыка придётся понять какой ххх256(хрень1) генерирует хрень2 идентичную нужной

olegny: DmitriiP пишет: у вас на руках будет логин, пароль, номер сессии Каким образом у вас будет пароль? Если бы они передавали его открыто, то зачем тогда нужен был бы хэш?!

DmitriiP: из всего что я написал вы обратили внимание вообще не на то :))) пароль и логин ненужны (они вроде как известны) из wireshark нужны sessionId и конечный SHA256 hash, чтоб понять какой из алгоритмов SHA у крестрона подходит.

olegny: Ну как написали, так и понял! )) Создалось впечатление, что вы не знаете ничего и хотите их хакнуть... ;) А кто посчитает этот самый хэш, который вы хотите увидеть wireshark-ом? Есть какой-то работающий клиент, который может общаться с терминалом? Насчет алгоритмов... оный указан явно и сомнению не подлежит, а вот с Крестроном сложнее. Как я уже написал выше - облом! У них в S# только SHA1 и HMAC-256. Ни то, ни другое не подходит... (( Надо требовать чтобы довавили!

DmitriiP: olegny пишет: Ну как написали, так и понял! )) Создалось впечатление, что вы не знаете ничего и хотите их хакнуть... ;) А кто посчитает этот самый хэш, который вы хотите увидеть wireshark-ом? Есть какой-то работающий клиент, который может общаться с терминалом? Насчет алгоритмов... оный указан явно и сомнению не подлежит, а вот с Крестроном сложнее. Как я уже написал выше - облом! У них в S# только SHA1 и HMAC-256. Ни то, ни другое не подходит... (( Надо требовать чтобы довавили! а я и незнаю ;) я эту железку никогда не видел. хакать нехочу, но еслиб понадобилось :)))) в документации пример на JavaScript . если нет (работающего клиента) никто не мешает использовать броузер. P.S. в SSMonoCryptographyLibrary поболе алгоритмов SHA ;)

olegny: DmitriiP пишет: P.S. в SSMonoCryptographyLibrary поболе алгоритмов SHA ;) Ну это все левые библитеки так, что на любителя! ;)



полная версия страницы