2 W+ @: w1 f; K% w1 V
$ ~& g- j8 u7 ]# V 9 `- d% \! z! i5 J( A1 Y! }6 ?( I" [* X
+ a9 Y6 R$ ^7 z7 x爱丽舍轿车仪表算法 % \' ^5 n4 l9 ^
爱里舍液晶里程表数据 (7592KM) ]3 p# \/ f) @8 u2 \
芯片型号: 93C46
5 x' A" o* v0 |2 o# U00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u.% R- y; \$ }2 z
00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................) L x6 f0 ^4 F* m, y V8 V
00000020 17 00 75 92 F1 A2 FE 0C FE 0C 00 43 B5 20 00 43 ..u........C. .C
$ { q8 R. {) A( i4 s E00000030 0B E2 00 00 EC 78 0E 0C 1A AA 00 00 79 96 00 00 .....x......y...) s" c& m" D5 |- H9 S3 v8 o
00000040 7F 7F 7F 7F 7F 7F 00 A0 74 89 29 7A 00 00 6B 00 ........t.)z..k.
: k, ?% l$ v3 i+ z3 h) E00000050 00 02 00 12 00 00 00 00 00 00 00 01 00 00 00 00 ................
t: Z d7 p% m00000060 00 00 00 00 00 00 00 14 88 00 75 10 FB 10 13 01 ..........u.....& V8 L' [% }; w5 ]3 h
00000070 10 88 18 DB B4 12 CB 00 09 15 00 FF 00 00 00 00 ................. o5 v% z3 w3 l6 b( E4 Q- M3 A
6 x1 U. K$ _' m! A, |
00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u.
7 j; C3 M1 O, Z0 V/ ^+ _$ s' n+ D重复四次,17为效验位。7为里程数的第一位。1为加密位。 $ \! p: H' Q8 ^% `& C0 c$ d& Q4 n
首先可以确定加密字节的低位数字(也就是公里数的最高位有效数字)在这里为 7: t2 ?- d; u4 M& u8 V$ B
然后用计算 7 个数字之和,所得结果 转换为 16 进制,接着取反,
, M6 u: j& p4 ]- y+ d$ a取反的结果的低位数字就是加密字节的高位数字9 d3 l+ ?2 Q9 F: N; l3 Y
可能的数值为 0,1,2,3,4, ... E,F 合计16种可能。
# g8 W* f: \% n; S8 M7 h) k8 c(7 个数字 指的是 :0 u" L- z* w4 ? S
加密字节的低位数字 7
4 i& I7 R# ]9 a' S" J3 h公里数的十万位数字 0
' x" P: V/ ^9 r4 ?# i公里数的万位数字 0 6 T2 z2 Q8 d* o8 O: r
公里数的千位数字 7 % A c z% P) C& [$ T6 q# v$ }
公里数的百位数字 5
6 ?) v% e& x* _# C( i公里数的十位数字 9
" \' P" U# V' ?* u- I) h% r公里数的个位数字 2
[1 f- w' c( {; ~
8 D2 K9 W% @8 T4 I4 b7 0 0 7 5 9 2
# r7 [3 |9 i& h. D# A! t)
" z) ~0 X+ u0 q! \看看这个数据的计算过程:
# M" C, b) u) ^6 J# X首先可以确定加密字节的低位数字 = 7
- |+ m* X3 e3 O' f& | i7 + 0 + 0 + 7 + 5 + 9 + 2 = 30 结果 转换为 16进制 = 1E 接着取反 =E1( C$ n5 d T/ \+ p9 }- h4 p
因此加密字节的高位数字为 1# |) j0 h8 n: m4 C
|