! U# C0 i2 D) E8 j9 I
3 x; H1 G) I* ~+ V. I
$ P, \/ P0 b: ~1 e$ x( W " k7 c& O5 ^7 J
爱丽舍轿车仪表算法
0 S# G" Z8 r/ \$ q4 w7 r爱里舍液晶里程表数据 (7592KM). {4 ]& g$ M) t; i: a, Y3 n$ g5 g
芯片型号: 93C46 3 c/ w0 A; Y, i; T4 H) b
00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u.
V. S# Z) E! h b/ x00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................! f+ x$ a$ d0 E! _) N4 D' }4 p
00000020 17 00 75 92 F1 A2 FE 0C FE 0C 00 43 B5 20 00 43 ..u........C. .C
5 W9 e; c5 p* j0 q00000030 0B E2 00 00 EC 78 0E 0C 1A AA 00 00 79 96 00 00 .....x......y...1 C" l. g. J9 m& j
00000040 7F 7F 7F 7F 7F 7F 00 A0 74 89 29 7A 00 00 6B 00 ........t.)z..k.
3 ~. a$ D# C0 o00000050 00 02 00 12 00 00 00 00 00 00 00 01 00 00 00 00 ................" @" F( E+ g0 d
00000060 00 00 00 00 00 00 00 14 88 00 75 10 FB 10 13 01 ..........u.....
. K6 G p7 U" f6 L00000070 10 88 18 DB B4 12 CB 00 09 15 00 FF 00 00 00 00 ................
0 n z8 ^3 i+ T9 g$ }! w4 ^% z1 D1 M' v6 {3 S- E+ V! ~3 E* Y& n
00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u." ]8 i3 ?& T2 w' z) x- B V
重复四次,17为效验位。7为里程数的第一位。1为加密位。 4 X- a. i& t; _- h1 C
首先可以确定加密字节的低位数字(也就是公里数的最高位有效数字)在这里为 7
# K, h* p3 C9 Y' s然后用计算 7 个数字之和,所得结果 转换为 16 进制,接着取反,
5 Q+ n% y( t( i: B N# T8 \取反的结果的低位数字就是加密字节的高位数字
/ X f# t* q' V# t# Z' [8 }可能的数值为 0,1,2,3,4, ... E,F 合计16种可能。
2 z4 u& Z& g M4 ?(7 个数字 指的是 :4 e" v5 O4 H, Q6 _
加密字节的低位数字 7
: _/ }6 w v7 H7 a# M公里数的十万位数字 0/ w( ?: _* l. @* p
公里数的万位数字 0 % }9 V1 t- Z7 O3 C
公里数的千位数字 7 3 V" [0 N1 P" S& D* O3 U, S# L
公里数的百位数字 5 a) r, y, P* m
公里数的十位数字 9
4 \& w. n2 Q8 S公里数的个位数字 2$ d. _; Y: j3 ?$ Z. M: f2 R$ P
7 E$ Z- ?1 C U
7 0 0 7 5 9 2* N I- I, ]/ f$ V( x' Z, z" _
)
P+ p6 l2 n% k* n" R) D* T4 w看看这个数据的计算过程:
( S& j" P8 i" W& \9 i& E* i" R! o A首先可以确定加密字节的低位数字 = 7* \/ N; H; e- _& u4 W2 f+ g
7 + 0 + 0 + 7 + 5 + 9 + 2 = 30 结果 转换为 16进制 = 1E 接着取反 =E1# y/ |# T: N' h1 Y. s
因此加密字节的高位数字为 1
6 b7 }6 S8 Q. S5 v6 d |