在 Python 中生成所有可能的十六进制字节
Generate all possible hex bytes in Python
我正在尝试生成所有可能的十六进制字节并将它们设置为字节字符串。这是,
我有这个:
iv = b"\x14\x42\x31\xB5\xFE\x52\xA3\x32\x3E\xEA\xA4\x30\x00\x11\x23\xFE"
例如,我想尝试字节 7 的所有可能值:
b"\x14\x42\x31\xB5\xFE\x52\xA3\ + x00\ + x3E\xEA\xA4\x30\x00\x11\x23\xFE"
b"\x14\x42\x31\xB5\xFE\x52\xA3\ + x01\ + x3E\xEA\xA4\x30\x00\x11\x23\xFE"
b"\x14\x42\x31\xB5\xFE\x52\xA3\ + x02\ + x3E\xEA\xA4\x30\x00\x11\x23\xFE"
(...)
b"\x14\x42\x31\xB5\xFE\x52\xA3\ + xFF\ + x3E\xEA\xA4\x30\x00\x11\x23\xFE"
如何在 python 中迭代和操作这些结构?
感谢您的宝贵时间
您可以使用for loop
all_combination = []
for i in range(256):
all_combination.append(iv[:7] + bytes([i]) + iv[8:])
[b'\x14B1\xb5\xfe\x00\xa32>\xea\xa40\x00\x11#\xfe',
b'\x14B1\xb5\xfe\x01\xa32>\xea\xa40\x00\x11#\xfe',
b'\x14B1\xb5\xfe\x02\xa32>\xea\xa40\x00\x11#\xfe',
b'\x14B1\xb5\xfe\x03\xa32>\xea\xa40\x00\x11#\xfe',
b'\x14B1\xb5\xfe\x04\xa32>\xea\xa40\x00\x11#\xfe',
b'\x14B1\xb5\xfe\x05\xa32>\xea\xa40\x00\x11#\xfe',
b'\x14B1\xb5\xfe\x06\xa32>\xea\xa40\x00\x11#\xfe',
b'\x14B1\xb5\xfe\x07\xa32>\xea\xa40\x00\x11#\xfe',
b'\x14B1\xb5\xfe\x08\xa32>\xea\xa40\x00\x11#\xfe',
b'\x14B1\xb5\xfe\t\xa32>\xea\xa40\x00\x11#\xfe',
b'\x14B1\xb5\xfe\n\xa32>\xea\xa40\x00\x11#\xfe',
b'\x14B1\xb5\xfe\x0b\xa32>\xea\xa40\x00\x11#\xfe',
b'\x14B1\xb5\xfe\x0c\xa32>\xea\xa40\x00\x11#\xfe',
b'\x14B1\xb5\xfe\r\xa32>\xea\xa40\x00\x11#\xfe',
b'\x14B1\xb5\xfe\x0e\xa32>\xea\xa40\x00\x11#\xfe',
b'\x14B1\xb5\xfe\x0f\xa32>\xea\xa40\x00\x11#\xfe'
.
.
.
b'\x14B1\xb5\xfeR\xa3\xfd>\xea\xa40\x00\x11#\xfe',
b'\x14B1\xb5\xfeR\xa3\xfe>\xea\xa40\x00\x11#\xfe',
b'\x14B1\xb5\xfeR\xa3\xff>\xea\xa40\x00\x11#\xfe']
我正在尝试生成所有可能的十六进制字节并将它们设置为字节字符串。这是,
我有这个:
iv = b"\x14\x42\x31\xB5\xFE\x52\xA3\x32\x3E\xEA\xA4\x30\x00\x11\x23\xFE"
例如,我想尝试字节 7 的所有可能值:
b"\x14\x42\x31\xB5\xFE\x52\xA3\ + x00\ + x3E\xEA\xA4\x30\x00\x11\x23\xFE"
b"\x14\x42\x31\xB5\xFE\x52\xA3\ + x01\ + x3E\xEA\xA4\x30\x00\x11\x23\xFE"
b"\x14\x42\x31\xB5\xFE\x52\xA3\ + x02\ + x3E\xEA\xA4\x30\x00\x11\x23\xFE"
(...)
b"\x14\x42\x31\xB5\xFE\x52\xA3\ + xFF\ + x3E\xEA\xA4\x30\x00\x11\x23\xFE"
如何在 python 中迭代和操作这些结构?
感谢您的宝贵时间
您可以使用for loop
all_combination = []
for i in range(256):
all_combination.append(iv[:7] + bytes([i]) + iv[8:])
[b'\x14B1\xb5\xfe\x00\xa32>\xea\xa40\x00\x11#\xfe',
b'\x14B1\xb5\xfe\x01\xa32>\xea\xa40\x00\x11#\xfe',
b'\x14B1\xb5\xfe\x02\xa32>\xea\xa40\x00\x11#\xfe',
b'\x14B1\xb5\xfe\x03\xa32>\xea\xa40\x00\x11#\xfe',
b'\x14B1\xb5\xfe\x04\xa32>\xea\xa40\x00\x11#\xfe',
b'\x14B1\xb5\xfe\x05\xa32>\xea\xa40\x00\x11#\xfe',
b'\x14B1\xb5\xfe\x06\xa32>\xea\xa40\x00\x11#\xfe',
b'\x14B1\xb5\xfe\x07\xa32>\xea\xa40\x00\x11#\xfe',
b'\x14B1\xb5\xfe\x08\xa32>\xea\xa40\x00\x11#\xfe',
b'\x14B1\xb5\xfe\t\xa32>\xea\xa40\x00\x11#\xfe',
b'\x14B1\xb5\xfe\n\xa32>\xea\xa40\x00\x11#\xfe',
b'\x14B1\xb5\xfe\x0b\xa32>\xea\xa40\x00\x11#\xfe',
b'\x14B1\xb5\xfe\x0c\xa32>\xea\xa40\x00\x11#\xfe',
b'\x14B1\xb5\xfe\r\xa32>\xea\xa40\x00\x11#\xfe',
b'\x14B1\xb5\xfe\x0e\xa32>\xea\xa40\x00\x11#\xfe',
b'\x14B1\xb5\xfe\x0f\xa32>\xea\xa40\x00\x11#\xfe'
.
.
.
b'\x14B1\xb5\xfeR\xa3\xfd>\xea\xa40\x00\x11#\xfe',
b'\x14B1\xb5\xfeR\xa3\xfe>\xea\xa40\x00\x11#\xfe',
b'\x14B1\xb5\xfeR\xa3\xff>\xea\xa40\x00\x11#\xfe']