) x- C, I# a( [+ O8 S$ s% p2 r9 f
! m. j0 @& e D* Q5 |4 n9 P# u * a9 x" q7 V( A, v
0 c8 O8 E w' u7 f
爱丽舍轿车仪表算法 ; o9 ]& O0 w$ ~) |, o3 |3 I; q' I
爱里舍液晶里程表数据 (7592KM)
/ D7 l% \. L8 u- K3 R芯片型号: 93C46 1 m" X; T2 v* G9 k+ _8 ]0 c& P4 @4 }
00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u. G+ h* J9 @3 Y1 W+ U1 x
00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
& t1 r2 r* M* f; w1 J% w00000020 17 00 75 92 F1 A2 FE 0C FE 0C 00 43 B5 20 00 43 ..u........C. .C
+ a c; z$ s0 Z* v) g00000030 0B E2 00 00 EC 78 0E 0C 1A AA 00 00 79 96 00 00 .....x......y...
) n0 o* l) Z- s3 A/ P- f/ X! J00000040 7F 7F 7F 7F 7F 7F 00 A0 74 89 29 7A 00 00 6B 00 ........t.)z..k.% x( M8 `5 j& P" y' [
00000050 00 02 00 12 00 00 00 00 00 00 00 01 00 00 00 00 ................
$ |7 g' @% d2 A+ J- m00000060 00 00 00 00 00 00 00 14 88 00 75 10 FB 10 13 01 ..........u.....
0 d/ t3 \5 n3 ^00000070 10 88 18 DB B4 12 CB 00 09 15 00 FF 00 00 00 00 ................# _; J2 @- t5 I& O1 n" f3 q' n# P
( M5 L4 J# [" a+ W00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u., E3 [: F( |; v7 y- ?) C8 S( |
重复四次,17为效验位。7为里程数的第一位。1为加密位。
6 `0 y( z/ M; v" m: ^+ p首先可以确定加密字节的低位数字(也就是公里数的最高位有效数字)在这里为 7
4 L+ a+ @( _- ^2 f然后用计算 7 个数字之和,所得结果 转换为 16 进制,接着取反,
" m8 h1 c6 c; A, f0 D# K: D6 |取反的结果的低位数字就是加密字节的高位数字! W2 G% y6 W7 a1 a
可能的数值为 0,1,2,3,4, ... E,F 合计16种可能。1 L2 D( G. C8 p v3 w
(7 个数字 指的是 :2 A* F, W S- p, H K8 u
加密字节的低位数字 7
8 p* J) E7 z% x% B) x% @公里数的十万位数字 0
: x3 U( ]# H* x" p2 P, G公里数的万位数字 0
& L& e! j' v, U! h) T" X/ }' B l4 o公里数的千位数字 7
2 u5 F" c5 H; W7 c/ D) @* v公里数的百位数字 5
1 d; Y8 ?: | C# j3 {: W7 V7 D公里数的十位数字 9 {8 c% U6 i2 ^: g: ?7 F8 L |
公里数的个位数字 2
9 N6 N4 {, f' _+ O K6 ~5 L/ v. `; Q: |7 P- O" W. |- t
7 0 0 7 5 9 26 Q n* V, e0 }0 S
)
( ]7 _4 v N0 {9 F, _看看这个数据的计算过程:
! U: [' m6 k& q. Z j7 a首先可以确定加密字节的低位数字 = 7
) @( @( B" T: p7 + 0 + 0 + 7 + 5 + 9 + 2 = 30 结果 转换为 16进制 = 1E 接着取反 =E1% i7 ^7 z6 E: }9 K( l: E0 U4 ^
因此加密字节的高位数字为 1
9 B& Q y1 f6 Y7 F |