* _! u( B) a6 r& \/ E( w* u
% \# r' w0 y# ?. N( j; _7 _
* J; }9 X4 c, T+ F$ b3 R . K: t+ ]% |3 `% Z$ r* |# A) [
爱丽舍轿车仪表算法
( S$ d. z6 ~2 f3 C爱里舍液晶里程表数据 (7592KM)
' X1 B/ \6 _; o" _# {6 o* ], k芯片型号: 93C46 & D: V7 q# ?; l7 s3 c
00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u.
. e) m. a8 t1 d7 I3 G6 t00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................- h5 Y- o K: @, i8 p, j: }0 e8 O
00000020 17 00 75 92 F1 A2 FE 0C FE 0C 00 43 B5 20 00 43 ..u........C. .C- U& m! }& |6 ]
00000030 0B E2 00 00 EC 78 0E 0C 1A AA 00 00 79 96 00 00 .....x......y...% |0 d) y) t% N* z. i+ D0 `0 _: n: I* d
00000040 7F 7F 7F 7F 7F 7F 00 A0 74 89 29 7A 00 00 6B 00 ........t.)z..k.* C/ g: R. q. m- C( P0 [
00000050 00 02 00 12 00 00 00 00 00 00 00 01 00 00 00 00 ................
8 K! \3 _8 X# {% r5 F00000060 00 00 00 00 00 00 00 14 88 00 75 10 FB 10 13 01 ..........u...... ~& M: t* d+ P- y K, F: P
00000070 10 88 18 DB B4 12 CB 00 09 15 00 FF 00 00 00 00 ................/ N: D1 Q% X+ s' L- m( T
0 H" y ?7 K4 n+ N7 {( Z' v00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u.
% z6 c% v, z/ l7 X重复四次,17为效验位。7为里程数的第一位。1为加密位。 ; o9 l& ?8 X! B! T( v/ S
首先可以确定加密字节的低位数字(也就是公里数的最高位有效数字)在这里为 79 k$ D. ?" I9 E- }/ \2 w2 p/ \
然后用计算 7 个数字之和,所得结果 转换为 16 进制,接着取反,. e! d4 `" c7 V/ l! t1 w( `
取反的结果的低位数字就是加密字节的高位数字8 x: _5 Y6 h0 P5 r! ]1 Z' y N
可能的数值为 0,1,2,3,4, ... E,F 合计16种可能。
+ P4 L- N' I+ s+ G; h(7 个数字 指的是 :
) }! A0 E3 r( L, I& h k加密字节的低位数字 7
) V9 P! {7 ]+ o" F2 ?: y' v公里数的十万位数字 0" @8 {- r3 J. P4 n& o4 ^- Z
公里数的万位数字 0 / E8 T! W$ N; p1 c1 G7 U
公里数的千位数字 7
! D3 ~# q5 f7 O, s. z公里数的百位数字 5" F$ p2 i" |, P! D; g$ W. r- d
公里数的十位数字 9
$ m& ^/ v: p7 _& T2 O9 X2 \2 \公里数的个位数字 2
4 c# m# j q1 j* L! o) [
' t( U$ |; Y" K3 c7 0 0 7 5 9 2, p/ u0 e5 l; c ]5 ^
)& D0 ^$ X- \1 X7 _8 M8 P
看看这个数据的计算过程:
: i- {/ m. {5 Z* P9 R g首先可以确定加密字节的低位数字 = 7
. c! A+ R. t, x( ?+ ?2 ~' w7 + 0 + 0 + 7 + 5 + 9 + 2 = 30 结果 转换为 16进制 = 1E 接着取反 =E1
# X j3 N1 U' W; S因此加密字节的高位数字为 1
, S" M+ f6 U/ ~+ E4 N |