- f2 o2 d1 \7 j: ^
* c/ y. ~. v: S, b
$ ? |$ S( V+ k6 X8 ?- _
' c: F7 d* h% S爱丽舍轿车仪表算法
& N0 ]# @# k8 P& q S爱里舍液晶里程表数据 (7592KM)
: Z: T5 g" Q; }# E' M% h芯片型号: 93C46 / N7 t/ o9 q" ?: @) V
00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u.
2 Y- Y; X. {0 M& U" L1 A% [ Z00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................2 k3 i, @; E" Q6 n2 H W! S
00000020 17 00 75 92 F1 A2 FE 0C FE 0C 00 43 B5 20 00 43 ..u........C. .C
/ B6 f) C# T1 @ @' F00000030 0B E2 00 00 EC 78 0E 0C 1A AA 00 00 79 96 00 00 .....x......y...$ y2 {- I0 T7 C8 {. H4 n* Z. B$ \
00000040 7F 7F 7F 7F 7F 7F 00 A0 74 89 29 7A 00 00 6B 00 ........t.)z..k.
( d) B, g1 d/ ^& `$ d, i& i# e( O$ p00000050 00 02 00 12 00 00 00 00 00 00 00 01 00 00 00 00 ................
8 f a" m+ B# ^! K, q5 Y3 F00000060 00 00 00 00 00 00 00 14 88 00 75 10 FB 10 13 01 ..........u.....; e3 P- X* o& N8 C* x" W
00000070 10 88 18 DB B4 12 CB 00 09 15 00 FF 00 00 00 00 ................6 f! G5 k! K1 b, f8 E! O
p, T' O# r2 W* m) h+ ~& t00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u.
" {) Y: `3 d5 j0 g% Q1 [1 F) y9 U重复四次,17为效验位。7为里程数的第一位。1为加密位。
! C& T6 O% ?% O1 Y首先可以确定加密字节的低位数字(也就是公里数的最高位有效数字)在这里为 75 B: A$ G; Y8 p' D( g
然后用计算 7 个数字之和,所得结果 转换为 16 进制,接着取反,
& G _; G4 G6 \' U取反的结果的低位数字就是加密字节的高位数字
( c! W3 M; `# A' }可能的数值为 0,1,2,3,4, ... E,F 合计16种可能。
* z3 O) e6 ]$ w4 p4 _6 t(7 个数字 指的是 :4 J1 W) p% ]; S* A* M; U% Q
加密字节的低位数字 7; v& b$ O( n; F/ G8 q5 y4 ]
公里数的十万位数字 01 L' I9 W/ r+ c3 ^# o! i/ G% u
公里数的万位数字 0 : l- g2 \ P; F: A' _
公里数的千位数字 7
) t7 {3 }! w* E: E公里数的百位数字 5
+ Z/ U% \2 z9 ?9 k9 f+ c公里数的十位数字 9
2 A' U, z) C. l; U% X1 ]公里数的个位数字 2# q( Z: d! W2 H( b
- x/ @5 S5 P7 S( I
7 0 0 7 5 9 2
1 u. j) Z/ ~$ P+ X8 u7 z) E) K7 h)
8 L& p+ I: I. M" }; s4 g" {看看这个数据的计算过程:
& o0 A" h# ?8 c+ |3 p6 z首先可以确定加密字节的低位数字 = 7& I' c k6 } [( G2 Y/ x
7 + 0 + 0 + 7 + 5 + 9 + 2 = 30 结果 转换为 16进制 = 1E 接着取反 =E1
0 }$ \8 E1 t1 L) J! L因此加密字节的高位数字为 1
% s1 G3 s2 X; j! Q |