Я пишу скрипт для автоматизации включения DHCP камер HikVision. Для этого я пытаюсь сделать реверс-инжиниринг SADP Tool, чтобы узнать, как он работает. Я фиксирую связь между SADP Tool и камерой. И вот один из пакетов:
<?xml version="1.0" encoding="utf-8"?>
<Probe>
<Uuid>0000008A-00E6-0048-A54A-F64BE0AA9F26</Uuid>
<Types>update</Types>
<PWErrorParse>true</PWErrorParse>
<MAC>54-c4-15-1b-06-67</MAC>
<Password bSalt="true">DJ5WSs/jb1G1S1BQdB81HBFxxulih6kpzhajqN3/3jgnKmB9DKWwJqx0NnxejDhWO1j0bOoVubzQ7IvNeaxgVg==</Password>
<IPv4Address>192.168.1.64</IPv4Address>
<CommandPort>8000</CommandPort>
<HttpPort>80</HttpPort>
<IPv4SubnetMask>255.255.255.0</IPv4SubnetMask>
<IPv4Gateway>192.168.1.1</IPv4Gateway>
<IPv6Address>::</IPv6Address>
<IPv6Gateway>::</IPv6Gateway>
<IPv6MaskLen>64</IPv6MaskLen>
<DHCP>true</DHCP>
<SDKOverTLSPort>0</SDKOverTLSPort>
</Probe>
В приведенном выше пакете некоторая информация зашифрована в
<Password bSalt="true">DJ5WSs/jb1G1S1BQdB81HBFxxulih6kpzhajqN3/3jgnKmB9DKWwJqx0NnxejDhWO1j0bOoVubzQ7IvNeaxgVg==</Password>
что, я думаю, является base64-кодировкой хэшей, сгенерированных из:
- admin's password: simple123
- camera salt: b68053c65b06b1b322b6cbc53fce1f614eee9366384a12aa01188bdaa8f14ac3
- and uuid: 0000009A-0087-004C-A898-6E131DE7E584
- (and maybe other info like MAC, IP...)
Однако после многих попыток с некоторыми функциями хэширования я все еще не мог воспроизвести этот хэш. Кто-нибудь знает, как HikVision SADP генерирует этот пароль?