保捱科技网
您的当前位置:首页BASE和加密算法

BASE和加密算法

来源:保捱科技网
一、Base编码说明 “ABC” 字符 位 二进制 Base位 A 0 1 0 0 0 0 0 1 B 0 1 0 0 0 0 1 0 C 0 1 0 0 0 0 1 1 1B7 1B6 1B5 1B4 1B3 1B2 1B1 1B0 1B7 1B6 1B5 1B4 1B3 1B2 1B1 1B0 1B7 1B6 1B5 1B4 1B3 1B2 1B1 1B0 2b1 2b0 1b5 1b4 1b3 1b2 1b1 1b0 3b3 3b2 3b1 3b0 2b5 2b4 2b3 2b2 4b5 4b4 4b3 4b2 4b1 4b0 3b5 3b4

即:1b 为十进制数 1 ;2b 为十进制数 9 ;3b 为十进制数 52 ;4b 为十进制数 16 ; 1b-4b :范围0-63

再分别以1b-4b 为标号 从Base码表取出字符 形成 BJ0Q Base编码

解码过程相反 :1、根据BJ0Q Base编码 找到1b-4b 标号 ;2、再恢复 ABC

char BaseData[]=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz01234567+/\";

B :原数字节; nB :第n个字节; nBx:第n个字节x位; nBH:第n个字节高4位; nBL:第n个字节低4位; T :中间数字节; nT :第n个字节;

nTx:第n个字节x位; D :结果数字节; nD :第n个字节; nDx:第n个字节x位; (1)编码过程

处理:1T 0——1T5 = 1B 0——1B5 ;1T6 = 0 ; 1T7 = 0;

2T 0——2T1 = 1B 6——1B7 ;2T 2——2T5 = 2B0——2B3 ;2T6 = 0 ; 2T7 = 0;

3T 0——3T3 = 2B4——2B7 ;2T 4——2T5 = 3B0——3B1 ;3T6 = 0 ; 3T7 = 0; 4T 0——4T5 = 3B2——3B7 ;4T6 = 0 ; 4T7 = 0; 查表:nD = BaseData[nT]; (2)解码过程

反查表:nD = BaseData[nT] 求出nT 处理:

1B 0——1B5 = 1T 0——1T5;1B 6——1B7 = 2T 0——2T1; 2B0——2B3 = 2T 2——2T5; 2B4——2B7 = 3T 0——3T3; 3B0——3B1 = 2T 4——2T5; 3B2——3B7 = 4T 0——4T5。 二、射频卡密码算法说明

密码A(6B)由卡ID(4B)+表ID(4B)经处理后计算得6位密码, 密码B(6B)由表ID(4B)+卡ID(4B)经处理后计算得6位密码。 B :原数字节; nB :第n个字节; nBx:第n个字节x位; nBH:第n个字节高4位; nBL:第n个字节低4位; T :中间数字节; nT :第n个字节;

nTx:第n个字节x位; C :结果数字节; nC :第n个字节; nCx:第n个字节x位;

处理: nT = nBH×2+ nBL

计算:1C0——1C5 = 1T0——1T5 、1C6——1C7 = 2T0——2T1; 2C0——2C3 = 2T3——2T5 、2C4——2C7 = 3T0——1T3;

3C0——3C1 = 3T4——3T5 、3C2——3C7 = 4T0——4T5;

因篇幅问题不能全部显示,请点此查看更多更全内容