% c. m8 U# K5 m) T$ ?& T, k+ J& l& m8 y
# N* q1 G! R/ y( [6 B) Y
4 F+ E% B# ^5 F: `爱丽舍轿车仪表算法
' r! l1 U' \2 F: z爱里舍液晶里程表数据 (7592KM)
, [" ~$ u# I0 J7 P, d* u' _) p芯片型号: 93C46 : p( J- ]7 f' V8 r7 Q, p+ k! T
00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u.
4 K E, _: Q) m6 h1 c00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................3 h1 o/ s9 Z/ l O5 E* ~! L2 f
00000020 17 00 75 92 F1 A2 FE 0C FE 0C 00 43 B5 20 00 43 ..u........C. .C1 r: Y' l3 ^# c) v( S; @
00000030 0B E2 00 00 EC 78 0E 0C 1A AA 00 00 79 96 00 00 .....x......y...
% R6 a* o; \$ X4 y! N% N$ m c: M00000040 7F 7F 7F 7F 7F 7F 00 A0 74 89 29 7A 00 00 6B 00 ........t.)z..k.
( l! s+ u( b$ V* L) P( M00000050 00 02 00 12 00 00 00 00 00 00 00 01 00 00 00 00 ................; U- d5 X: R7 a" z. ]
00000060 00 00 00 00 00 00 00 14 88 00 75 10 FB 10 13 01 ..........u....." t7 V4 ]9 W. G: I; `7 Q) d2 [
00000070 10 88 18 DB B4 12 CB 00 09 15 00 FF 00 00 00 00 ................
: ^+ O/ e6 o! y. }' Z4 b3 @/ S/ F' A
00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u.
& L! V$ a m" f J6 s重复四次,17为效验位。7为里程数的第一位。1为加密位。 & d/ G4 A& u0 a; L/ B7 L& o K, R
首先可以确定加密字节的低位数字(也就是公里数的最高位有效数字)在这里为 70 U) D! T- D- C
然后用计算 7 个数字之和,所得结果 转换为 16 进制,接着取反,* F" _# f# D& | q/ Z4 Z! B
取反的结果的低位数字就是加密字节的高位数字/ ^6 Y& g1 z& Y6 M
可能的数值为 0,1,2,3,4, ... E,F 合计16种可能。: o$ R4 U5 B; J$ G m1 g8 M6 ?
(7 个数字 指的是 :! }- p1 R, j; Y& ~: d! J
加密字节的低位数字 7
) j% n: R0 g! o+ R3 J4 t% B公里数的十万位数字 09 d5 c9 l5 q! `! }" h; v5 t1 ]
公里数的万位数字 0 4 C4 h2 ]: o! P% q6 d
公里数的千位数字 7
0 h: L0 y4 R" e公里数的百位数字 50 x' [, N/ ^& f4 M4 L# ]: L
公里数的十位数字 98 i$ w, z+ }% Z/ o8 H
公里数的个位数字 2
. ^/ T$ i/ W3 f# K
/ _9 o( b" E( [; G) C1 U! C7 0 0 7 5 9 20 Z% a/ ?8 M$ M! L1 K, o W
)& z4 L$ w3 `5 [* s/ v, j' e
看看这个数据的计算过程:- L1 \) `5 c& d, {3 M
首先可以确定加密字节的低位数字 = 7& U3 h1 F& u7 K
7 + 0 + 0 + 7 + 5 + 9 + 2 = 30 结果 转换为 16进制 = 1E 接着取反 =E17 r; O' ?9 g4 a) c& P
因此加密字节的高位数字为 1
; ?* Z& e& q" w |