, D! _! R: F/ X0 R- b' T0 x7 h/ h/ P/ D# W
0 ]' {7 p# U0 T2 m- I
! V I1 K3 d( Q( v$ s爱丽舍轿车仪表算法 ) {1 D9 @3 z. p6 _# w6 {2 U5 |
爱里舍液晶里程表数据 (7592KM)
* W2 a2 P0 z& Y/ ?1 a! J5 `8 F芯片型号: 93C46 7 Q! S0 o8 X3 M4 Y$ ]% P
00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u.% w- @% B/ L: n6 }4 q
00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................% j/ B/ P+ F! P* V( K7 x
00000020 17 00 75 92 F1 A2 FE 0C FE 0C 00 43 B5 20 00 43 ..u........C. .C
p1 Q5 ~* D" Q/ Y6 l/ o n6 M00000030 0B E2 00 00 EC 78 0E 0C 1A AA 00 00 79 96 00 00 .....x......y...1 d4 P1 n) Q' v" R: e9 a; G
00000040 7F 7F 7F 7F 7F 7F 00 A0 74 89 29 7A 00 00 6B 00 ........t.)z..k.4 I6 f8 u6 w3 v2 @
00000050 00 02 00 12 00 00 00 00 00 00 00 01 00 00 00 00 ................6 s+ C) n5 H( I' {2 C2 t) w1 b
00000060 00 00 00 00 00 00 00 14 88 00 75 10 FB 10 13 01 ..........u.....
6 @- [+ D5 J* @, x00000070 10 88 18 DB B4 12 CB 00 09 15 00 FF 00 00 00 00 ................
% m, z2 g0 u7 {" \0 |( F- G, t- F5 p
, F, D: o9 p8 v: V$ I00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u.; S/ V! g% K8 l1 A
重复四次,17为效验位。7为里程数的第一位。1为加密位。
8 R+ ~$ h/ T* Y: I5 y+ w3 h首先可以确定加密字节的低位数字(也就是公里数的最高位有效数字)在这里为 7
% E6 w+ D2 |/ H; a: {然后用计算 7 个数字之和,所得结果 转换为 16 进制,接着取反,! c3 K3 l* E# V. H. L
取反的结果的低位数字就是加密字节的高位数字, f/ ]4 ]6 |) S& c: H
可能的数值为 0,1,2,3,4, ... E,F 合计16种可能。
% ]. g5 i! y) ~; F6 o+ w(7 个数字 指的是 :
% x* S& l+ ]4 q6 f: u ]7 E加密字节的低位数字 7
& `; B0 N+ h ]; u1 j5 J U公里数的十万位数字 0; |, Y( B3 c' d& c
公里数的万位数字 0
9 ~* c Q( ]$ c+ W, b- P0 e. K公里数的千位数字 7 % D) z7 K8 [! c' J
公里数的百位数字 5# G. ]! d0 P) n" D
公里数的十位数字 99 @- P" K3 I( X7 M* ~4 R$ C
公里数的个位数字 2& k+ m4 f8 v% a6 T2 I: \$ d
9 \+ u+ ?8 ~+ v$ P; x
7 0 0 7 5 9 25 n- q% x- p& y& x
)3 B7 U; f9 C& y+ r$ W
看看这个数据的计算过程:
$ c# s2 I$ K' V, h, f9 }1 R- q首先可以确定加密字节的低位数字 = 7. ]0 x* [+ l9 S0 | J
7 + 0 + 0 + 7 + 5 + 9 + 2 = 30 结果 转换为 16进制 = 1E 接着取反 =E1+ m$ D( V4 C) D* K, v3 R. `9 ?% r
因此加密字节的高位数字为 1
& Y1 ]- J1 Z) i" f |