首页
社区
课程
招聘
[讨论]能否写出这个表的实现算法?
发表于: 2007-2-23 10:03 3919

[讨论]能否写出这个表的实现算法?

2007-2-23 10:03
3919
已知某加密芯片 能实现一个字节加密函数  A' = Encypt(A)

由于该芯片不能被破解,所以无法得到其内部算法
我跟踪出其加密表如下:

static BYTE EncTable[256] =
{
        0x76,0x3F,0xD9,0xE4,0xBB,0x92,0xDF,0xF4,0xF2,0xAF,0x97,0x34,0xE7,0xA8,0x20,0xF3,
        0xC3,0xBE,0xA1,0xB8,0x41,0x38,0x8B,0x59,0x26,0x94,0x74,0x96,0xA5,0xA6,0xC7,0xEA,
        0x16,0x3C,0x4E,0x88,0xD3,0x19,0x75,0x9F,0x03,0x15,0x54,0x42,0x8A,0xD7,0xCC,0x5A,
        0xD8,0xBC,0x43,0x00,0x5D,0xA2,0xF5,0xFA,0x40,0xC8,0x65,0xC2,0xCF,0x72,0xA4,0xFC,
        0xFB,0x77,0x33,0xF8,0x1B,0xF9,0xB3,0x80,0xF7,0x3D,0x45,0x9C,0xAB,0xE8,0xE1,0x58,
        0x3A,0xCE,0x2C,0xB5,0xB6,0x7A,0x30,0xF1,0x37,0x2B,0xC1,0x90,0x66,0x28,0xE6,0x82,
        0x56,0x46,0x4C,0x0C,0xCA,0x5F,0x4B,0x68,0x52,0x5E,0xC6,0xCD,0xB9,0x0E,0x81,0x1C,
        0x6F,0x07,0xEC,0x44,0x86,0x8C,0xDA,0x1A,0xDE,0x24,0xEF,0x10,0x27,0x63,0xDD,0x4A,
        0x53,0x9E,0x29,0x60,0x39,0xFD,0x73,0x0A,0xBF,0x3B,0xB0,0x1E,0x25,0x13,0x14,0x01,
        0x2A,0x6D,0x47,0x8D,0x09,0x5C,0xFF,0x0B,0xC4,0xC0,0x85,0x4D,0x23,0xA0,0x6C,0xA9,
        0x4F,0xEE,0x51,0xED,0xE9,0x49,0x70,0xF0,0x9B,0xFE,0x12,0xD6,0x32,0x7F,0x55,0x22,
        0xCB,0x87,0x8F,0x2D,0x48,0xE0,0x78,0x8E,0x67,0x62,0x5B,0x1D,0x1F,0x7E,0x04,0x61,
        0x7D,0xBD,0x57,0xF6,0x91,0x17,0xDB,0x69,0xA3,0x84,0x93,0x06,0xB4,0x11,0x6B,0x36,
        0xAA,0xAE,0x21,0x2F,0xAC,0x79,0x6E,0x98,0xA7,0xBA,0x05,0x71,0x0F,0xD2,0xB2,0x50,
        0x9A,0x95,0x31,0xDC,0xEB,0x99,0x3E,0xD4,0xD5,0x7C,0x83,0xD1,0x0D,0x02,0x18,0x9D,
        0x6A,0xAD,0x35,0xC5,0x08,0xC9,0x7B,0x2E,0xE5,0x64,0xB7,0xD0,0xE3,0xE2,0xB1,0x89,
};

例如 A = 0;

A'= EncTable[0] = 0x76;

能否不用查表法,用简单的程序实现 这个加密函数,各位兄弟能否看出来这是什么算法?

[课程]Linux pwn 探索篇!

收藏
免费 0
支持
分享
最新回复 (7)
雪    币: 208
活跃值: (40)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
2
楼主能讲讲为什么不能用查表法吗
2007-2-23 11:20
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
关注中...
2007-2-23 12:51
0
雪    币: 211
活跃值: (40)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
4
我要用单片机实现这个算法,由于我的单片机可用内存现在还不到1k字节,如果在嵌入这个表,其他代码就没有办法写了。

例如:CRC32 可以用算法实现,也可疑用查表法实现,只是执行速度不同罢了!
2007-2-23 14:25
0
雪    币: 331
活跃值: (56)
能力值: ( LV13,RANK:410 )
在线值:
发帖
回帖
粉丝
5
如果这个加密算法带入一个RoundKey就没法用查表法了。你确定查表法行得通?加密结果和加密顺序无关?
2007-2-24 04:28
0
雪    币: 101
活跃值: (12)
能力值: ( LV12,RANK:210 )
在线值:
发帖
回帖
粉丝
6
貌似不行。
如果是随机算法, 没见过那饿能这么恰巧256个数字完全填充完。
2007-2-24 05:20
0
雪    币: 207
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
如果片内存储区不够,扩展一下吧,只是多了一道地址译码和选址的事:)
2007-2-24 08:08
0
雪    币: 263
活跃值: (10)
能力值: ( LV9,RANK:210 )
在线值:
发帖
回帖
粉丝
8
如果是我
直接接几跟线实现外部查表!
2007-2-24 13:07
0
游客
登录 | 注册 方可回帖
返回
//