. r( M1 c& w4 H* H$ t) s- i# x( G: r! A* X
7 {6 F7 y( a0 i5 [# q# i6 k
- l1 O" f9 @# c0 N) R p
爱丽舍轿车仪表算法 + A9 t- t' I- \
爱里舍液晶里程表数据 (7592KM): f* i) w5 ]0 e
芯片型号: 93C46
7 ^/ k- O- {6 F' g' l00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u.
% |% ~( J; U [, K# g00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................" p) T0 B" N( b* o
00000020 17 00 75 92 F1 A2 FE 0C FE 0C 00 43 B5 20 00 43 ..u........C. .C d( ]9 _- ~. q3 K/ U7 d$ t6 j
00000030 0B E2 00 00 EC 78 0E 0C 1A AA 00 00 79 96 00 00 .....x......y...9 ?' [8 R1 v3 K* Z* A' p
00000040 7F 7F 7F 7F 7F 7F 00 A0 74 89 29 7A 00 00 6B 00 ........t.)z..k.& t# ?! l& S: p9 K e& c! r
00000050 00 02 00 12 00 00 00 00 00 00 00 01 00 00 00 00 ................
9 k. A7 v# x! Y4 L5 d0 H( g: A. A) r00000060 00 00 00 00 00 00 00 14 88 00 75 10 FB 10 13 01 ..........u.....
/ a6 B: U' _4 t00000070 10 88 18 DB B4 12 CB 00 09 15 00 FF 00 00 00 00 ................, F5 u% f* u6 P: [
* x1 L* H7 G2 G7 i4 T7 r6 e* p00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u.& N: R' u1 `- l0 V
重复四次,17为效验位。7为里程数的第一位。1为加密位。 ; u2 D$ l* t; P/ ^
首先可以确定加密字节的低位数字(也就是公里数的最高位有效数字)在这里为 72 S& x: z. G" ]1 w$ E: F" j
然后用计算 7 个数字之和,所得结果 转换为 16 进制,接着取反,
) I- U5 w* @) o. _取反的结果的低位数字就是加密字节的高位数字
0 _: a) D5 p' [& R: q, u% ]3 m可能的数值为 0,1,2,3,4, ... E,F 合计16种可能。( Y8 s, u( Q; O# w* ^% ]4 g9 F7 }" k/ G- D
(7 个数字 指的是 :: m3 j0 B5 G& s6 A2 B! N& Q/ _# v
加密字节的低位数字 7& \, v% S) w/ w' T: a B$ A0 v" G
公里数的十万位数字 0: B9 \ J$ M# J1 S" H# b0 J
公里数的万位数字 0 s5 \- Z. F2 K! C/ N
公里数的千位数字 7 + J5 p( z# I- z; m3 Z
公里数的百位数字 51 s1 ^9 y" Z! a2 D9 d
公里数的十位数字 9
" s4 F* I3 T. u2 T9 s0 h5 k公里数的个位数字 28 D' D% j! a6 C7 R5 [4 y
0 q' C+ i: o2 j9 u N: K( w2 r9 x8 M
7 0 0 7 5 9 2. G/ F) z( s* g/ t: F/ R& N; ?
)
& z. _, C' u, ^( y, j" r看看这个数据的计算过程:) H3 E) O F; ?) u) `, l
首先可以确定加密字节的低位数字 = 7" Z' v8 C J: X; c$ q& u- W0 @7 D
7 + 0 + 0 + 7 + 5 + 9 + 2 = 30 结果 转换为 16进制 = 1E 接着取反 =E1
3 _' R& y$ T5 \因此加密字节的高位数字为 1
, Y' C2 y3 w8 A0 M/ f; @: i |