- u/ U" C9 ~6 I: _4 @9 |
' Y! h' ?2 w7 M5 ]
+ t8 R, Z7 Q6 e# |
% ~& v, ]& E2 _( e' K8 j爱丽舍轿车仪表算法 ! h2 B. S( `: k A0 T+ G
爱里舍液晶里程表数据 (7592KM)
9 f& v( A$ w, {# b2 P芯片型号: 93C46
q; n7 ^! I8 H. j% Z/ f' s00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u.
# x+ [8 H% L9 {4 z; E3 _: G00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................) ^+ C) [ i% ?% s \
00000020 17 00 75 92 F1 A2 FE 0C FE 0C 00 43 B5 20 00 43 ..u........C. .C
. z; e4 T# v7 f0 {: p" V5 ~00000030 0B E2 00 00 EC 78 0E 0C 1A AA 00 00 79 96 00 00 .....x......y..." A8 z: V, R. F; z) n2 \
00000040 7F 7F 7F 7F 7F 7F 00 A0 74 89 29 7A 00 00 6B 00 ........t.)z..k.
, w1 z5 T: r& Z$ d! y( _00000050 00 02 00 12 00 00 00 00 00 00 00 01 00 00 00 00 ................" `' j% Y" [% L ?$ F
00000060 00 00 00 00 00 00 00 14 88 00 75 10 FB 10 13 01 ..........u.....2 Y* @; }+ i( d& e2 y
00000070 10 88 18 DB B4 12 CB 00 09 15 00 FF 00 00 00 00 ................' R# {" a& Z8 Y! e! c4 n
% }- y- C7 f: ^( r( I9 k1 q
00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u.
1 B' O: A4 e+ o3 C重复四次,17为效验位。7为里程数的第一位。1为加密位。 + Q4 Z2 I$ t, O) ~
首先可以确定加密字节的低位数字(也就是公里数的最高位有效数字)在这里为 7
% I, A2 Q5 X# A8 f2 y然后用计算 7 个数字之和,所得结果 转换为 16 进制,接着取反,, M9 p" I1 Q9 b5 R( }. V
取反的结果的低位数字就是加密字节的高位数字
4 y: J( {! x) `: ^! n可能的数值为 0,1,2,3,4, ... E,F 合计16种可能。7 v* m! |4 a9 }. ~5 Q1 ?4 [
(7 个数字 指的是 :
% u+ B7 k6 r/ e7 S# J5 M4 N加密字节的低位数字 7
8 [7 i. w4 U& a6 b- x6 a& v公里数的十万位数字 09 _2 `5 H. w: t' m
公里数的万位数字 0
. b2 R* }4 H/ x# r% |公里数的千位数字 7 ( i% @+ x+ `8 c' r
公里数的百位数字 53 c2 D& B% i' S* m- S# B9 E4 ]
公里数的十位数字 96 L& s" c' L( O2 D5 ~- z8 m c% I0 O
公里数的个位数字 25 m. E+ E$ U3 |5 }8 i2 Z& D5 V4 [0 B
9 ? o- ?5 \3 T% {9 C: Y) c0 j
7 0 0 7 5 9 2
7 D! F# @" P5 j); \2 U( M, Y0 D8 t6 f7 Z
看看这个数据的计算过程:
1 q/ z3 j: u3 s% `首先可以确定加密字节的低位数字 = 7
" r" p: b' I; [7 + 0 + 0 + 7 + 5 + 9 + 2 = 30 结果 转换为 16进制 = 1E 接着取反 =E13 E ~; g+ K7 h9 O
因此加密字节的高位数字为 1
! o; H+ Y6 u( V. J; C1 J1 b! r/ p |