% J0 {2 d: {8 e1 n$ H0 t
; a$ y% U9 P$ G4 L. V n
. t2 [8 O" N1 @- O! x& J% ^
# a% E: x7 ]7 }9 b
爱丽舍轿车仪表算法
% z; l( u; F; l$ K3 c7 v爱里舍液晶里程表数据 (7592KM)
' h6 }( r# b1 c" x芯片型号: 93C46
% R2 N+ A! c( ]% s5 ]00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u.0 E( ?, n1 n) I7 |) s) T7 X, J
00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
4 G- ~9 i9 F9 g' C8 p00000020 17 00 75 92 F1 A2 FE 0C FE 0C 00 43 B5 20 00 43 ..u........C. .C
) t+ Q8 \5 ]) j3 D9 W/ s1 G2 Y6 z00000030 0B E2 00 00 EC 78 0E 0C 1A AA 00 00 79 96 00 00 .....x......y...
q1 W/ t) ?" L( y( Z00000040 7F 7F 7F 7F 7F 7F 00 A0 74 89 29 7A 00 00 6B 00 ........t.)z..k.1 y7 M* e8 o6 ^6 a' R
00000050 00 02 00 12 00 00 00 00 00 00 00 01 00 00 00 00 ................7 D7 V+ `& D3 v* k
00000060 00 00 00 00 00 00 00 14 88 00 75 10 FB 10 13 01 ..........u....., z% \8 ?) A( u- ~
00000070 10 88 18 DB B4 12 CB 00 09 15 00 FF 00 00 00 00 ................
3 g8 i) i* p/ K# _9 k4 f9 }4 `9 n
/ T# s4 }1 g8 h# g& l6 ?00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u.$ C# v2 s: x d& l# Z, r
重复四次,17为效验位。7为里程数的第一位。1为加密位。 : z+ |- `3 r! D' \. |
首先可以确定加密字节的低位数字(也就是公里数的最高位有效数字)在这里为 7
/ k; p2 C2 `# a# ]! \: u然后用计算 7 个数字之和,所得结果 转换为 16 进制,接着取反,
2 w+ J- h$ ]: \" u. N+ _3 \$ I取反的结果的低位数字就是加密字节的高位数字
/ F. ^( @5 _0 @0 s可能的数值为 0,1,2,3,4, ... E,F 合计16种可能。" [8 ]4 [! B. x' a# p
(7 个数字 指的是 :. S' _7 [; `. e
加密字节的低位数字 79 S. K0 N$ |. W5 ?1 O2 a" D
公里数的十万位数字 0
& |6 t& Q n- K- c. D/ T公里数的万位数字 0
" K. m3 @9 |3 ~, w1 Y( n公里数的千位数字 7 ) h$ F. V7 o+ T% N8 f' {! M1 ?7 C0 }
公里数的百位数字 5. o2 H2 e0 p0 J5 {$ o
公里数的十位数字 9" s0 M! s/ e4 i b
公里数的个位数字 2
$ s( y' @1 D8 \
4 l) V0 j1 \ e$ L+ e- U7 ~+ x1 S7 0 0 7 5 9 20 z; k0 M* [( p( T
)/ `, J" x, Z# e3 T$ K5 p: J
看看这个数据的计算过程:( ~% }; f4 I/ q
首先可以确定加密字节的低位数字 = 7
2 ]9 {/ i: g h3 G: j7 + 0 + 0 + 7 + 5 + 9 + 2 = 30 结果 转换为 16进制 = 1E 接着取反 =E1
1 p6 e$ p5 W' n0 w因此加密字节的高位数字为 14 N3 e, X% o, n# ]. ]
|