Расшифровать хэшированное значение - PullRequest
0 голосов
/ 11 июня 2011

Я просматривал документ о предпочтениях xml в видеоигре, и в качестве одного из его узлов он был


KEYxLjAKUydtZWRpdW1UYW5rJwpwMApTJ2luSGFuZ2FyJwpwMQp0cDIKLg ==
</ shop_vehicle>

Я предполагаю, что это какое-то хэшированное значение, но мне было любопытно, есть ли "КЛЮЧ" в начале или == в конце что-нибудь, поскольку есть другие узлы, которые начинаются с того же значения. Если бы он имел какое-то значение, был бы способ расшифровать это значение?

вот еще одно значение

KEY0LjAKUydBUk1PUl9QSUVSQ0lORycKcDAKUydBUk1PUl9QSUVSQ0lOR19DUicKcDEKUydIT0xMT1dfQ0hBUkdFJwpwMgpTJ0hJR0hfRVhQTE9TSVZFJwpwMwpTJ215VmVoaWNsZUd1bicKcDQKUyIobHAwXG5jZ3VpLlNjYWxlZm9ybS51dGlscy5ndWlfaXRlbXNcbkludmVudG9yeVZlaGljbGVcbnAxXG5hKFMnIVxceDAyXFx4MDNcXHgwMFxceDA0XFx4MDBcXHhjOVxceDAwXFx4MDRcXHgwMFxceDA0XFx4MDBcXHgwNlxceDAwXFx4MDAnXG5wMlxuSTNcbihscDNcbkk2XG5hSTdcbmF0cDRcbmEuIgpwNQp0cDYKLg ==
</ inventory_shell>

Ответы [ 2 ]

6 голосов
/ 11 июня 2011

Вы не можете "дешифровать" хэши - определяющее свойство хэша состоит в том, что единственный способ найти контент, хеш которого соответствует заданному значению хэша, - это грубая проверка всех возможных контентов.

К счастью, это не хеш, это просто base64 (кодировка ).В Python (или online ):

>>> import base64
>>> s = b'KEYxLjAKUydtZWRpdW1UYW5rJwpwMApTJ2luSGFuZ2FyJwpwMQp0cDIKLg=='
>>> base64.b64decode(s)
"(F1.0\nS'mediumTank'\np0\nS'inHangar'\np1\ntp2\n."

Если подумать, оба значения начинаются с KEY, поэтому, скорее всего, автор этого формата добавил некоторую домашнюю кодировку.Кроме того, содержимое представляет собой не просто строку, а двоичный формат данных.

0 голосов
/ 11 июня 2011

Это просто строка в кодировке Base64.Используйте инструмент, подобный этому, чтобы расшифровать его: http://www.opinionatedgeek.com/dotnet/tools/base64decode/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...