2 e7 |7 a1 y; I# F/ |5 Z
) b4 H \* K' _+ }% J& C ' {/ @0 B6 Q* s, }7 j; w
9 t5 B- }+ _; {0 \爱丽舍轿车仪表算法
+ J L J* C. a% H( \爱里舍液晶里程表数据 (7592KM)
- a& ? s" M0 G! f2 e; j. Z芯片型号: 93C46
. x( Z, g% V# j1 ?. W% s: ~00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u.
4 u5 R" ^: ?1 M- ?5 p1 s$ R: H00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................8 |; |6 H. ?4 z9 M
00000020 17 00 75 92 F1 A2 FE 0C FE 0C 00 43 B5 20 00 43 ..u........C. .C
^1 P8 ]' Y8 }$ C* |1 U; b" y0 l/ d00000030 0B E2 00 00 EC 78 0E 0C 1A AA 00 00 79 96 00 00 .....x......y...
. o/ ~& C: z/ {) l00000040 7F 7F 7F 7F 7F 7F 00 A0 74 89 29 7A 00 00 6B 00 ........t.)z..k.
2 Z7 q: ~3 b% V, z! ]: u00000050 00 02 00 12 00 00 00 00 00 00 00 01 00 00 00 00 ................5 d5 V* r/ m" ?
00000060 00 00 00 00 00 00 00 14 88 00 75 10 FB 10 13 01 ..........u.....
4 ]' f; N w8 e8 P2 W" y" c* v00000070 10 88 18 DB B4 12 CB 00 09 15 00 FF 00 00 00 00 ................
# [3 ^$ {: N; t' h
. S _9 I! p, T; x4 p; ]00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u.
. j3 V2 N- O, c, O" y' g/ f; l( b" U2 i重复四次,17为效验位。7为里程数的第一位。1为加密位。 0 w C: q+ u- x" p. S& k: z# l: y
首先可以确定加密字节的低位数字(也就是公里数的最高位有效数字)在这里为 7
7 ]: \. g2 A) `) I然后用计算 7 个数字之和,所得结果 转换为 16 进制,接着取反,
$ ]1 w2 M1 H8 N4 ^2 G+ {' @取反的结果的低位数字就是加密字节的高位数字
! W$ K0 b& s* E: m2 N可能的数值为 0,1,2,3,4, ... E,F 合计16种可能。* c% M& E' u( }! S: u! }
(7 个数字 指的是 :0 H/ ] ]# W5 i8 S
加密字节的低位数字 7( M( z) | \ ^+ _! y: f
公里数的十万位数字 0; G7 R1 H" h" Q6 g& Q
公里数的万位数字 0
# g5 _! k- i8 l# s公里数的千位数字 7 - {& H6 H! V, s- W' M
公里数的百位数字 5! z) g6 g4 o. l i s( _
公里数的十位数字 9
0 F, E7 Y- K) o$ g5 D8 \- T公里数的个位数字 2
/ ]" G3 A' F, s; F0 R8 o: O1 f9 @# V; Q/ ^7 v8 K/ Q) @
7 0 0 7 5 9 26 D4 P$ p5 G8 z5 B" Q
)0 p: [ U4 i8 z/ F9 J
看看这个数据的计算过程:% S b+ ]) v% i' B5 [2 T
首先可以确定加密字节的低位数字 = 7) R1 a( p1 q, K p! n l/ P& Q
7 + 0 + 0 + 7 + 5 + 9 + 2 = 30 结果 转换为 16进制 = 1E 接着取反 =E14 J8 x# _6 f* J4 S$ i
因此加密字节的高位数字为 1
9 P/ E$ O+ Z( ?8 G5 N1 W. Z |