2012-10-14 2 views
3

base64로 인코딩 된 웹 서비스를 통해 데이터가 전송됩니다.Base64 인코딩 변형? base64로 인코딩 된 데이터가 올바르게 디코딩되지 않습니다.

예 :이 내가 예상했던 것 결과와 함께 오지 않아 디코딩을 시도하지만 AgAOAAAAQQEA3AcKDhIyCNwHCg4SMgyYIzSWoACP1T2TRRw1MTExMDUwMTE2ICAAAAAAAAAAAAAA3AAjU1QsKzAyMjEuMGxiDQo=

:

그것은 디코딩 된 문자열의 끝처럼 보이는
>>> base64.b64decode('AgAOAAAAQQEA3AcKDhIyCNwHCg4SMgyYIzSWoACP1T2TRRw1MTExMDUwMTE2ICAAAAAAAAAAAAAA3AAjU1QsKzAyMjEuMGxiDQo=') 
'\x02\x00\x0e\x00\x00\x00A\x01\x00\xdc\x07\n\x0e\x122\x08\xdc\x07\n\x0e\x122\x0c\x98#4\x96\xa0\x00\x8f\xd5=\x93E\x1c5111050116 \x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xdc\x00#ST,+0221.0lb\r\n' 

가 좀-그렇다고 내가 찾고있는 라인을 따라. 이론적으로는 MT=2012-10-14 18:50:08, TT=2012-10-14 18:50:12, BT=00:A0:96:34:23:98, SN=5111050116 , BL=6.30V, S/H=4/3, Weight=221.0lb(100.24kg)과 비슷한 것으로 변형 가능해야하지만 여기서 인코딩이 어떻게 진행되고 있는지 알 수 없습니다.

+0

복구하려는 mysql binlog 덤프입니까? – xception

+0

Nope, Qualcomm 장치의 POST 된 장치 판독 값 – ashgromnies

+0

지금 당장 말할 수있는 모든 내용으로 내 대답이 업데이트되었습니다. BL 또는 S/H를 디코딩하는 방법을 알지 못하고 해당 필드가 나타내는 내용에 대한 정보가 전혀 없습니다. 인코딩 방법을 추측하거나 중요하지 않거나 더 많은 정보를 얻을 수 있기를 바랍니다. – xception

답변

2

는 지금까지, 나는 아마 모든 것을 디코딩 더 많은 정보를 필요로 한 어떤 그러나 여기 간다 :

>>> t = base64.b64decode('AgAOAAAAQQEA3AcKDhIyCNwHCg4SMgyYIzSWoACP1T2TRRw1MTExMDUwMTE2ICAAAAAAAAAAAAAA3AAjU1QsKzAyMjEuMGxiDQo=') 

날짜 시간 순서대로 MT 및 TT 필드는 다음과 같습니다

>>> print int(t[9:11][::-1].encode("hex"), 16), int(t[11].encode("hex"), 16), int(t[12].encode("hex"), 16), int(t[13].encode("hex"), 16), int(t[14].encode("hex"), 16), int(t[15].encode("hex"), 16) 
2012 10 14 18 50 8 

>>> print int(t[16:18][::-1].encode("hex"), 16), int(t[18].encode("hex"), 16), int(t[19].encode("hex"), 16), int(t[20].encode("hex"), 16), int(t[21].encode("hex"), 16), int(t[22].encode("hex"), 16) 
2012 10 14 18 50 12 

BT, 당신입니다 단지를 추가해야 ':'각 두 글자 :

>>> t[23:29][::-1].encode("hex") 
'00a096342398' 

SN은 다음과 같습니다

>>> t[35:47] 
'5111050116 ' 

무게는 다음과 같습니다

>>> t[63:72] 
'+0221.0lb' 

미안하지만 난 나머지가 저장되는 방법을 순간에 어떤 생각이 없어, 나는 그의 범위가 무엇인지 알 수 없기 때문에 I 중 나머지 부분을 디코딩 할 수있는 방법이 없으므로 그 필드에 저장해야하는 정보를 조금 더 공개 할 수 있는지 알려 주시기 바랍니다.

관련 문제