(key)
| 35 | |
| 36 | |
| 37 | def get_table(key): |
| 38 | m = hashlib.md5() |
| 39 | m.update(key) |
| 40 | s = m.digest() |
| 41 | a, b = struct.unpack('<QQ', s) |
| 42 | table = maketrans(b'', b'') |
| 43 | table = [table[i: i + 1] for i in range(len(table))] |
| 44 | for i in range(1, 1024): |
| 45 | table.sort(key=lambda x: int(a % (ord(x) + i))) |
| 46 | return table |
| 47 | |
| 48 | |
| 49 | def init_table(key): |