mirror of
https://github.com/MikroWizard/mikroman.git
synced 2025-07-10 14:04:29 +02:00
1099 lines
27 KiB
Python
1099 lines
27 KiB
Python
|
# This file is part of 'NTLM Authorization Proxy Server' http://sourceforge.net/projects/ntlmaps/
|
||
|
# Copyright 2001 Dmitry A. Rozmanov <dima@xenon.spb.ru>
|
||
|
#
|
||
|
# This library is free software: you can redistribute it and/or
|
||
|
# modify it under the terms of the GNU Lesser General Public
|
||
|
# License as published by the Free Software Foundation, either
|
||
|
# version 3 of the License, or (at your option) any later version.
|
||
|
|
||
|
# This library is distributed in the hope that it will be useful,
|
||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||
|
# Lesser General Public License for more details.
|
||
|
#
|
||
|
# You should have received a copy of the GNU Lesser General Public
|
||
|
# License along with this library. If not, see <http://www.gnu.org/licenses/> or <http://www.gnu.org/licenses/lgpl.txt>.
|
||
|
from .U32 import U32
|
||
|
|
||
|
# static unsigned long des_SPtrans[8][64]={
|
||
|
|
||
|
des_SPtrans = [
|
||
|
# nibble 0
|
||
|
[
|
||
|
U32(0x00820200),
|
||
|
U32(0x00020000),
|
||
|
U32(0x80800000),
|
||
|
U32(0x80820200),
|
||
|
U32(0x00800000),
|
||
|
U32(0x80020200),
|
||
|
U32(0x80020000),
|
||
|
U32(0x80800000),
|
||
|
U32(0x80020200),
|
||
|
U32(0x00820200),
|
||
|
U32(0x00820000),
|
||
|
U32(0x80000200),
|
||
|
U32(0x80800200),
|
||
|
U32(0x00800000),
|
||
|
U32(0x00000000),
|
||
|
U32(0x80020000),
|
||
|
U32(0x00020000),
|
||
|
U32(0x80000000),
|
||
|
U32(0x00800200),
|
||
|
U32(0x00020200),
|
||
|
U32(0x80820200),
|
||
|
U32(0x00820000),
|
||
|
U32(0x80000200),
|
||
|
U32(0x00800200),
|
||
|
U32(0x80000000),
|
||
|
U32(0x00000200),
|
||
|
U32(0x00020200),
|
||
|
U32(0x80820000),
|
||
|
U32(0x00000200),
|
||
|
U32(0x80800200),
|
||
|
U32(0x80820000),
|
||
|
U32(0x00000000),
|
||
|
U32(0x00000000),
|
||
|
U32(0x80820200),
|
||
|
U32(0x00800200),
|
||
|
U32(0x80020000),
|
||
|
U32(0x00820200),
|
||
|
U32(0x00020000),
|
||
|
U32(0x80000200),
|
||
|
U32(0x00800200),
|
||
|
U32(0x80820000),
|
||
|
U32(0x00000200),
|
||
|
U32(0x00020200),
|
||
|
U32(0x80800000),
|
||
|
U32(0x80020200),
|
||
|
U32(0x80000000),
|
||
|
U32(0x80800000),
|
||
|
U32(0x00820000),
|
||
|
U32(0x80820200),
|
||
|
U32(0x00020200),
|
||
|
U32(0x00820000),
|
||
|
U32(0x80800200),
|
||
|
U32(0x00800000),
|
||
|
U32(0x80000200),
|
||
|
U32(0x80020000),
|
||
|
U32(0x00000000),
|
||
|
U32(0x00020000),
|
||
|
U32(0x00800000),
|
||
|
U32(0x80800200),
|
||
|
U32(0x00820200),
|
||
|
U32(0x80000000),
|
||
|
U32(0x80820000),
|
||
|
U32(0x00000200),
|
||
|
U32(0x80020200),
|
||
|
],
|
||
|
# nibble 1
|
||
|
[
|
||
|
U32(0x10042004),
|
||
|
U32(0x00000000),
|
||
|
U32(0x00042000),
|
||
|
U32(0x10040000),
|
||
|
U32(0x10000004),
|
||
|
U32(0x00002004),
|
||
|
U32(0x10002000),
|
||
|
U32(0x00042000),
|
||
|
U32(0x00002000),
|
||
|
U32(0x10040004),
|
||
|
U32(0x00000004),
|
||
|
U32(0x10002000),
|
||
|
U32(0x00040004),
|
||
|
U32(0x10042000),
|
||
|
U32(0x10040000),
|
||
|
U32(0x00000004),
|
||
|
U32(0x00040000),
|
||
|
U32(0x10002004),
|
||
|
U32(0x10040004),
|
||
|
U32(0x00002000),
|
||
|
U32(0x00042004),
|
||
|
U32(0x10000000),
|
||
|
U32(0x00000000),
|
||
|
U32(0x00040004),
|
||
|
U32(0x10002004),
|
||
|
U32(0x00042004),
|
||
|
U32(0x10042000),
|
||
|
U32(0x10000004),
|
||
|
U32(0x10000000),
|
||
|
U32(0x00040000),
|
||
|
U32(0x00002004),
|
||
|
U32(0x10042004),
|
||
|
U32(0x00040004),
|
||
|
U32(0x10042000),
|
||
|
U32(0x10002000),
|
||
|
U32(0x00042004),
|
||
|
U32(0x10042004),
|
||
|
U32(0x00040004),
|
||
|
U32(0x10000004),
|
||
|
U32(0x00000000),
|
||
|
U32(0x10000000),
|
||
|
U32(0x00002004),
|
||
|
U32(0x00040000),
|
||
|
U32(0x10040004),
|
||
|
U32(0x00002000),
|
||
|
U32(0x10000000),
|
||
|
U32(0x00042004),
|
||
|
U32(0x10002004),
|
||
|
U32(0x10042000),
|
||
|
U32(0x00002000),
|
||
|
U32(0x00000000),
|
||
|
U32(0x10000004),
|
||
|
U32(0x00000004),
|
||
|
U32(0x10042004),
|
||
|
U32(0x00042000),
|
||
|
U32(0x10040000),
|
||
|
U32(0x10040004),
|
||
|
U32(0x00040000),
|
||
|
U32(0x00002004),
|
||
|
U32(0x10002000),
|
||
|
U32(0x10002004),
|
||
|
U32(0x00000004),
|
||
|
U32(0x10040000),
|
||
|
U32(0x00042000),
|
||
|
],
|
||
|
# nibble 2
|
||
|
[
|
||
|
U32(0x41000000),
|
||
|
U32(0x01010040),
|
||
|
U32(0x00000040),
|
||
|
U32(0x41000040),
|
||
|
U32(0x40010000),
|
||
|
U32(0x01000000),
|
||
|
U32(0x41000040),
|
||
|
U32(0x00010040),
|
||
|
U32(0x01000040),
|
||
|
U32(0x00010000),
|
||
|
U32(0x01010000),
|
||
|
U32(0x40000000),
|
||
|
U32(0x41010040),
|
||
|
U32(0x40000040),
|
||
|
U32(0x40000000),
|
||
|
U32(0x41010000),
|
||
|
U32(0x00000000),
|
||
|
U32(0x40010000),
|
||
|
U32(0x01010040),
|
||
|
U32(0x00000040),
|
||
|
U32(0x40000040),
|
||
|
U32(0x41010040),
|
||
|
U32(0x00010000),
|
||
|
U32(0x41000000),
|
||
|
U32(0x41010000),
|
||
|
U32(0x01000040),
|
||
|
U32(0x40010040),
|
||
|
U32(0x01010000),
|
||
|
U32(0x00010040),
|
||
|
U32(0x00000000),
|
||
|
U32(0x01000000),
|
||
|
U32(0x40010040),
|
||
|
U32(0x01010040),
|
||
|
U32(0x00000040),
|
||
|
U32(0x40000000),
|
||
|
U32(0x00010000),
|
||
|
U32(0x40000040),
|
||
|
U32(0x40010000),
|
||
|
U32(0x01010000),
|
||
|
U32(0x41000040),
|
||
|
U32(0x00000000),
|
||
|
U32(0x01010040),
|
||
|
U32(0x00010040),
|
||
|
U32(0x41010000),
|
||
|
U32(0x40010000),
|
||
|
U32(0x01000000),
|
||
|
U32(0x41010040),
|
||
|
U32(0x40000000),
|
||
|
U32(0x40010040),
|
||
|
U32(0x41000000),
|
||
|
U32(0x01000000),
|
||
|
U32(0x41010040),
|
||
|
U32(0x00010000),
|
||
|
U32(0x01000040),
|
||
|
U32(0x41000040),
|
||
|
U32(0x00010040),
|
||
|
U32(0x01000040),
|
||
|
U32(0x00000000),
|
||
|
U32(0x41010000),
|
||
|
U32(0x40000040),
|
||
|
U32(0x41000000),
|
||
|
U32(0x40010040),
|
||
|
U32(0x00000040),
|
||
|
U32(0x01010000),
|
||
|
],
|
||
|
# nibble 3
|
||
|
[
|
||
|
U32(0x00100402),
|
||
|
U32(0x04000400),
|
||
|
U32(0x00000002),
|
||
|
U32(0x04100402),
|
||
|
U32(0x00000000),
|
||
|
U32(0x04100000),
|
||
|
U32(0x04000402),
|
||
|
U32(0x00100002),
|
||
|
U32(0x04100400),
|
||
|
U32(0x04000002),
|
||
|
U32(0x04000000),
|
||
|
U32(0x00000402),
|
||
|
U32(0x04000002),
|
||
|
U32(0x00100402),
|
||
|
U32(0x00100000),
|
||
|
U32(0x04000000),
|
||
|
U32(0x04100002),
|
||
|
U32(0x00100400),
|
||
|
U32(0x00000400),
|
||
|
U32(0x00000002),
|
||
|
U32(0x00100400),
|
||
|
U32(0x04000402),
|
||
|
U32(0x04100000),
|
||
|
U32(0x00000400),
|
||
|
U32(0x00000402),
|
||
|
U32(0x00000000),
|
||
|
U32(0x00100002),
|
||
|
U32(0x04100400),
|
||
|
U32(0x04000400),
|
||
|
U32(0x04100002),
|
||
|
U32(0x04100402),
|
||
|
U32(0x00100000),
|
||
|
U32(0x04100002),
|
||
|
U32(0x00000402),
|
||
|
U32(0x00100000),
|
||
|
U32(0x04000002),
|
||
|
U32(0x00100400),
|
||
|
U32(0x04000400),
|
||
|
U32(0x00000002),
|
||
|
U32(0x04100000),
|
||
|
U32(0x04000402),
|
||
|
U32(0x00000000),
|
||
|
U32(0x00000400),
|
||
|
U32(0x00100002),
|
||
|
U32(0x00000000),
|
||
|
U32(0x04100002),
|
||
|
U32(0x04100400),
|
||
|
U32(0x00000400),
|
||
|
U32(0x04000000),
|
||
|
U32(0x04100402),
|
||
|
U32(0x00100402),
|
||
|
U32(0x00100000),
|
||
|
U32(0x04100402),
|
||
|
U32(0x00000002),
|
||
|
U32(0x04000400),
|
||
|
U32(0x00100402),
|
||
|
U32(0x00100002),
|
||
|
U32(0x00100400),
|
||
|
U32(0x04100000),
|
||
|
U32(0x04000402),
|
||
|
U32(0x00000402),
|
||
|
U32(0x04000000),
|
||
|
U32(0x04000002),
|
||
|
U32(0x04100400),
|
||
|
],
|
||
|
# nibble 4
|
||
|
[
|
||
|
U32(0x02000000),
|
||
|
U32(0x00004000),
|
||
|
U32(0x00000100),
|
||
|
U32(0x02004108),
|
||
|
U32(0x02004008),
|
||
|
U32(0x02000100),
|
||
|
U32(0x00004108),
|
||
|
U32(0x02004000),
|
||
|
U32(0x00004000),
|
||
|
U32(0x00000008),
|
||
|
U32(0x02000008),
|
||
|
U32(0x00004100),
|
||
|
U32(0x02000108),
|
||
|
U32(0x02004008),
|
||
|
U32(0x02004100),
|
||
|
U32(0x00000000),
|
||
|
U32(0x00004100),
|
||
|
U32(0x02000000),
|
||
|
U32(0x00004008),
|
||
|
U32(0x00000108),
|
||
|
U32(0x02000100),
|
||
|
U32(0x00004108),
|
||
|
U32(0x00000000),
|
||
|
U32(0x02000008),
|
||
|
U32(0x00000008),
|
||
|
U32(0x02000108),
|
||
|
U32(0x02004108),
|
||
|
U32(0x00004008),
|
||
|
U32(0x02004000),
|
||
|
U32(0x00000100),
|
||
|
U32(0x00000108),
|
||
|
U32(0x02004100),
|
||
|
U32(0x02004100),
|
||
|
U32(0x02000108),
|
||
|
U32(0x00004008),
|
||
|
U32(0x02004000),
|
||
|
U32(0x00004000),
|
||
|
U32(0x00000008),
|
||
|
U32(0x02000008),
|
||
|
U32(0x02000100),
|
||
|
U32(0x02000000),
|
||
|
U32(0x00004100),
|
||
|
U32(0x02004108),
|
||
|
U32(0x00000000),
|
||
|
U32(0x00004108),
|
||
|
U32(0x02000000),
|
||
|
U32(0x00000100),
|
||
|
U32(0x00004008),
|
||
|
U32(0x02000108),
|
||
|
U32(0x00000100),
|
||
|
U32(0x00000000),
|
||
|
U32(0x02004108),
|
||
|
U32(0x02004008),
|
||
|
U32(0x02004100),
|
||
|
U32(0x00000108),
|
||
|
U32(0x00004000),
|
||
|
U32(0x00004100),
|
||
|
U32(0x02004008),
|
||
|
U32(0x02000100),
|
||
|
U32(0x00000108),
|
||
|
U32(0x00000008),
|
||
|
U32(0x00004108),
|
||
|
U32(0x02004000),
|
||
|
U32(0x02000008),
|
||
|
],
|
||
|
# nibble 5
|
||
|
[
|
||
|
U32(0x20000010),
|
||
|
U32(0x00080010),
|
||
|
U32(0x00000000),
|
||
|
U32(0x20080800),
|
||
|
U32(0x00080010),
|
||
|
U32(0x00000800),
|
||
|
U32(0x20000810),
|
||
|
U32(0x00080000),
|
||
|
U32(0x00000810),
|
||
|
U32(0x20080810),
|
||
|
U32(0x00080800),
|
||
|
U32(0x20000000),
|
||
|
U32(0x20000800),
|
||
|
U32(0x20000010),
|
||
|
U32(0x20080000),
|
||
|
U32(0x00080810),
|
||
|
U32(0x00080000),
|
||
|
U32(0x20000810),
|
||
|
U32(0x20080010),
|
||
|
U32(0x00000000),
|
||
|
U32(0x00000800),
|
||
|
U32(0x00000010),
|
||
|
U32(0x20080800),
|
||
|
U32(0x20080010),
|
||
|
U32(0x20080810),
|
||
|
U32(0x20080000),
|
||
|
U32(0x20000000),
|
||
|
U32(0x00000810),
|
||
|
U32(0x00000010),
|
||
|
U32(0x00080800),
|
||
|
U32(0x00080810),
|
||
|
U32(0x20000800),
|
||
|
U32(0x00000810),
|
||
|
U32(0x20000000),
|
||
|
U32(0x20000800),
|
||
|
U32(0x00080810),
|
||
|
U32(0x20080800),
|
||
|
U32(0x00080010),
|
||
|
U32(0x00000000),
|
||
|
U32(0x20000800),
|
||
|
U32(0x20000000),
|
||
|
U32(0x00000800),
|
||
|
U32(0x20080010),
|
||
|
U32(0x00080000),
|
||
|
U32(0x00080010),
|
||
|
U32(0x20080810),
|
||
|
U32(0x00080800),
|
||
|
U32(0x00000010),
|
||
|
U32(0x20080810),
|
||
|
U32(0x00080800),
|
||
|
U32(0x00080000),
|
||
|
U32(0x20000810),
|
||
|
U32(0x20000010),
|
||
|
U32(0x20080000),
|
||
|
U32(0x00080810),
|
||
|
U32(0x00000000),
|
||
|
U32(0x00000800),
|
||
|
U32(0x20000010),
|
||
|
U32(0x20000810),
|
||
|
U32(0x20080800),
|
||
|
U32(0x20080000),
|
||
|
U32(0x00000810),
|
||
|
U32(0x00000010),
|
||
|
U32(0x20080010),
|
||
|
],
|
||
|
# nibble 6
|
||
|
[
|
||
|
U32(0x00001000),
|
||
|
U32(0x00000080),
|
||
|
U32(0x00400080),
|
||
|
U32(0x00400001),
|
||
|
U32(0x00401081),
|
||
|
U32(0x00001001),
|
||
|
U32(0x00001080),
|
||
|
U32(0x00000000),
|
||
|
U32(0x00400000),
|
||
|
U32(0x00400081),
|
||
|
U32(0x00000081),
|
||
|
U32(0x00401000),
|
||
|
U32(0x00000001),
|
||
|
U32(0x00401080),
|
||
|
U32(0x00401000),
|
||
|
U32(0x00000081),
|
||
|
U32(0x00400081),
|
||
|
U32(0x00001000),
|
||
|
U32(0x00001001),
|
||
|
U32(0x00401081),
|
||
|
U32(0x00000000),
|
||
|
U32(0x00400080),
|
||
|
U32(0x00400001),
|
||
|
U32(0x00001080),
|
||
|
U32(0x00401001),
|
||
|
U32(0x00001081),
|
||
|
U32(0x00401080),
|
||
|
U32(0x00000001),
|
||
|
U32(0x00001081),
|
||
|
U32(0x00401001),
|
||
|
U32(0x00000080),
|
||
|
U32(0x00400000),
|
||
|
U32(0x00001081),
|
||
|
U32(0x00401000),
|
||
|
U32(0x00401001),
|
||
|
U32(0x00000081),
|
||
|
U32(0x00001000),
|
||
|
U32(0x00000080),
|
||
|
U32(0x00400000),
|
||
|
U32(0x00401001),
|
||
|
U32(0x00400081),
|
||
|
U32(0x00001081),
|
||
|
U32(0x00001080),
|
||
|
U32(0x00000000),
|
||
|
U32(0x00000080),
|
||
|
U32(0x00400001),
|
||
|
U32(0x00000001),
|
||
|
U32(0x00400080),
|
||
|
U32(0x00000000),
|
||
|
U32(0x00400081),
|
||
|
U32(0x00400080),
|
||
|
U32(0x00001080),
|
||
|
U32(0x00000081),
|
||
|
U32(0x00001000),
|
||
|
U32(0x00401081),
|
||
|
U32(0x00400000),
|
||
|
U32(0x00401080),
|
||
|
U32(0x00000001),
|
||
|
U32(0x00001001),
|
||
|
U32(0x00401081),
|
||
|
U32(0x00400001),
|
||
|
U32(0x00401080),
|
||
|
U32(0x00401000),
|
||
|
U32(0x00001001),
|
||
|
],
|
||
|
# nibble 7
|
||
|
[
|
||
|
U32(0x08200020),
|
||
|
U32(0x08208000),
|
||
|
U32(0x00008020),
|
||
|
U32(0x00000000),
|
||
|
U32(0x08008000),
|
||
|
U32(0x00200020),
|
||
|
U32(0x08200000),
|
||
|
U32(0x08208020),
|
||
|
U32(0x00000020),
|
||
|
U32(0x08000000),
|
||
|
U32(0x00208000),
|
||
|
U32(0x00008020),
|
||
|
U32(0x00208020),
|
||
|
U32(0x08008020),
|
||
|
U32(0x08000020),
|
||
|
U32(0x08200000),
|
||
|
U32(0x00008000),
|
||
|
U32(0x00208020),
|
||
|
U32(0x00200020),
|
||
|
U32(0x08008000),
|
||
|
U32(0x08208020),
|
||
|
U32(0x08000020),
|
||
|
U32(0x00000000),
|
||
|
U32(0x00208000),
|
||
|
U32(0x08000000),
|
||
|
U32(0x00200000),
|
||
|
U32(0x08008020),
|
||
|
U32(0x08200020),
|
||
|
U32(0x00200000),
|
||
|
U32(0x00008000),
|
||
|
U32(0x08208000),
|
||
|
U32(0x00000020),
|
||
|
U32(0x00200000),
|
||
|
U32(0x00008000),
|
||
|
U32(0x08000020),
|
||
|
U32(0x08208020),
|
||
|
U32(0x00008020),
|
||
|
U32(0x08000000),
|
||
|
U32(0x00000000),
|
||
|
U32(0x00208000),
|
||
|
U32(0x08200020),
|
||
|
U32(0x08008020),
|
||
|
U32(0x08008000),
|
||
|
U32(0x00200020),
|
||
|
U32(0x08208000),
|
||
|
U32(0x00000020),
|
||
|
U32(0x00200020),
|
||
|
U32(0x08008000),
|
||
|
U32(0x08208020),
|
||
|
U32(0x00200000),
|
||
|
U32(0x08200000),
|
||
|
U32(0x08000020),
|
||
|
U32(0x00208000),
|
||
|
U32(0x00008020),
|
||
|
U32(0x08008020),
|
||
|
U32(0x08200000),
|
||
|
U32(0x00000020),
|
||
|
U32(0x08208000),
|
||
|
U32(0x00208020),
|
||
|
U32(0x00000000),
|
||
|
U32(0x08000000),
|
||
|
U32(0x08200020),
|
||
|
U32(0x00008000),
|
||
|
U32(0x00208020),
|
||
|
],
|
||
|
]
|
||
|
|
||
|
# static unsigned long des_skb[8][64]={
|
||
|
|
||
|
des_skb = [
|
||
|
# for C bits (numbered as per FIPS 46) 1 2 3 4 5 6
|
||
|
[
|
||
|
U32(0x00000000),
|
||
|
U32(0x00000010),
|
||
|
U32(0x20000000),
|
||
|
U32(0x20000010),
|
||
|
U32(0x00010000),
|
||
|
U32(0x00010010),
|
||
|
U32(0x20010000),
|
||
|
U32(0x20010010),
|
||
|
U32(0x00000800),
|
||
|
U32(0x00000810),
|
||
|
U32(0x20000800),
|
||
|
U32(0x20000810),
|
||
|
U32(0x00010800),
|
||
|
U32(0x00010810),
|
||
|
U32(0x20010800),
|
||
|
U32(0x20010810),
|
||
|
U32(0x00000020),
|
||
|
U32(0x00000030),
|
||
|
U32(0x20000020),
|
||
|
U32(0x20000030),
|
||
|
U32(0x00010020),
|
||
|
U32(0x00010030),
|
||
|
U32(0x20010020),
|
||
|
U32(0x20010030),
|
||
|
U32(0x00000820),
|
||
|
U32(0x00000830),
|
||
|
U32(0x20000820),
|
||
|
U32(0x20000830),
|
||
|
U32(0x00010820),
|
||
|
U32(0x00010830),
|
||
|
U32(0x20010820),
|
||
|
U32(0x20010830),
|
||
|
U32(0x00080000),
|
||
|
U32(0x00080010),
|
||
|
U32(0x20080000),
|
||
|
U32(0x20080010),
|
||
|
U32(0x00090000),
|
||
|
U32(0x00090010),
|
||
|
U32(0x20090000),
|
||
|
U32(0x20090010),
|
||
|
U32(0x00080800),
|
||
|
U32(0x00080810),
|
||
|
U32(0x20080800),
|
||
|
U32(0x20080810),
|
||
|
U32(0x00090800),
|
||
|
U32(0x00090810),
|
||
|
U32(0x20090800),
|
||
|
U32(0x20090810),
|
||
|
U32(0x00080020),
|
||
|
U32(0x00080030),
|
||
|
U32(0x20080020),
|
||
|
U32(0x20080030),
|
||
|
U32(0x00090020),
|
||
|
U32(0x00090030),
|
||
|
U32(0x20090020),
|
||
|
U32(0x20090030),
|
||
|
U32(0x00080820),
|
||
|
U32(0x00080830),
|
||
|
U32(0x20080820),
|
||
|
U32(0x20080830),
|
||
|
U32(0x00090820),
|
||
|
U32(0x00090830),
|
||
|
U32(0x20090820),
|
||
|
U32(0x20090830),
|
||
|
],
|
||
|
# for C bits (numbered as per FIPS 46) 7 8 10 11 12 13
|
||
|
[
|
||
|
U32(0x00000000),
|
||
|
U32(0x02000000),
|
||
|
U32(0x00002000),
|
||
|
U32(0x02002000),
|
||
|
U32(0x00200000),
|
||
|
U32(0x02200000),
|
||
|
U32(0x00202000),
|
||
|
U32(0x02202000),
|
||
|
U32(0x00000004),
|
||
|
U32(0x02000004),
|
||
|
U32(0x00002004),
|
||
|
U32(0x02002004),
|
||
|
U32(0x00200004),
|
||
|
U32(0x02200004),
|
||
|
U32(0x00202004),
|
||
|
U32(0x02202004),
|
||
|
U32(0x00000400),
|
||
|
U32(0x02000400),
|
||
|
U32(0x00002400),
|
||
|
U32(0x02002400),
|
||
|
U32(0x00200400),
|
||
|
U32(0x02200400),
|
||
|
U32(0x00202400),
|
||
|
U32(0x02202400),
|
||
|
U32(0x00000404),
|
||
|
U32(0x02000404),
|
||
|
U32(0x00002404),
|
||
|
U32(0x02002404),
|
||
|
U32(0x00200404),
|
||
|
U32(0x02200404),
|
||
|
U32(0x00202404),
|
||
|
U32(0x02202404),
|
||
|
U32(0x10000000),
|
||
|
U32(0x12000000),
|
||
|
U32(0x10002000),
|
||
|
U32(0x12002000),
|
||
|
U32(0x10200000),
|
||
|
U32(0x12200000),
|
||
|
U32(0x10202000),
|
||
|
U32(0x12202000),
|
||
|
U32(0x10000004),
|
||
|
U32(0x12000004),
|
||
|
U32(0x10002004),
|
||
|
U32(0x12002004),
|
||
|
U32(0x10200004),
|
||
|
U32(0x12200004),
|
||
|
U32(0x10202004),
|
||
|
U32(0x12202004),
|
||
|
U32(0x10000400),
|
||
|
U32(0x12000400),
|
||
|
U32(0x10002400),
|
||
|
U32(0x12002400),
|
||
|
U32(0x10200400),
|
||
|
U32(0x12200400),
|
||
|
U32(0x10202400),
|
||
|
U32(0x12202400),
|
||
|
U32(0x10000404),
|
||
|
U32(0x12000404),
|
||
|
U32(0x10002404),
|
||
|
U32(0x12002404),
|
||
|
U32(0x10200404),
|
||
|
U32(0x12200404),
|
||
|
U32(0x10202404),
|
||
|
U32(0x12202404),
|
||
|
],
|
||
|
# for C bits (numbered as per FIPS 46) 14 15 16 17 19 20
|
||
|
[
|
||
|
U32(0x00000000),
|
||
|
U32(0x00000001),
|
||
|
U32(0x00040000),
|
||
|
U32(0x00040001),
|
||
|
U32(0x01000000),
|
||
|
U32(0x01000001),
|
||
|
U32(0x01040000),
|
||
|
U32(0x01040001),
|
||
|
U32(0x00000002),
|
||
|
U32(0x00000003),
|
||
|
U32(0x00040002),
|
||
|
U32(0x00040003),
|
||
|
U32(0x01000002),
|
||
|
U32(0x01000003),
|
||
|
U32(0x01040002),
|
||
|
U32(0x01040003),
|
||
|
U32(0x00000200),
|
||
|
U32(0x00000201),
|
||
|
U32(0x00040200),
|
||
|
U32(0x00040201),
|
||
|
U32(0x01000200),
|
||
|
U32(0x01000201),
|
||
|
U32(0x01040200),
|
||
|
U32(0x01040201),
|
||
|
U32(0x00000202),
|
||
|
U32(0x00000203),
|
||
|
U32(0x00040202),
|
||
|
U32(0x00040203),
|
||
|
U32(0x01000202),
|
||
|
U32(0x01000203),
|
||
|
U32(0x01040202),
|
||
|
U32(0x01040203),
|
||
|
U32(0x08000000),
|
||
|
U32(0x08000001),
|
||
|
U32(0x08040000),
|
||
|
U32(0x08040001),
|
||
|
U32(0x09000000),
|
||
|
U32(0x09000001),
|
||
|
U32(0x09040000),
|
||
|
U32(0x09040001),
|
||
|
U32(0x08000002),
|
||
|
U32(0x08000003),
|
||
|
U32(0x08040002),
|
||
|
U32(0x08040003),
|
||
|
U32(0x09000002),
|
||
|
U32(0x09000003),
|
||
|
U32(0x09040002),
|
||
|
U32(0x09040003),
|
||
|
U32(0x08000200),
|
||
|
U32(0x08000201),
|
||
|
U32(0x08040200),
|
||
|
U32(0x08040201),
|
||
|
U32(0x09000200),
|
||
|
U32(0x09000201),
|
||
|
U32(0x09040200),
|
||
|
U32(0x09040201),
|
||
|
U32(0x08000202),
|
||
|
U32(0x08000203),
|
||
|
U32(0x08040202),
|
||
|
U32(0x08040203),
|
||
|
U32(0x09000202),
|
||
|
U32(0x09000203),
|
||
|
U32(0x09040202),
|
||
|
U32(0x09040203),
|
||
|
],
|
||
|
# for C bits (numbered as per FIPS 46) 21 23 24 26 27 28
|
||
|
[
|
||
|
U32(0x00000000),
|
||
|
U32(0x00100000),
|
||
|
U32(0x00000100),
|
||
|
U32(0x00100100),
|
||
|
U32(0x00000008),
|
||
|
U32(0x00100008),
|
||
|
U32(0x00000108),
|
||
|
U32(0x00100108),
|
||
|
U32(0x00001000),
|
||
|
U32(0x00101000),
|
||
|
U32(0x00001100),
|
||
|
U32(0x00101100),
|
||
|
U32(0x00001008),
|
||
|
U32(0x00101008),
|
||
|
U32(0x00001108),
|
||
|
U32(0x00101108),
|
||
|
U32(0x04000000),
|
||
|
U32(0x04100000),
|
||
|
U32(0x04000100),
|
||
|
U32(0x04100100),
|
||
|
U32(0x04000008),
|
||
|
U32(0x04100008),
|
||
|
U32(0x04000108),
|
||
|
U32(0x04100108),
|
||
|
U32(0x04001000),
|
||
|
U32(0x04101000),
|
||
|
U32(0x04001100),
|
||
|
U32(0x04101100),
|
||
|
U32(0x04001008),
|
||
|
U32(0x04101008),
|
||
|
U32(0x04001108),
|
||
|
U32(0x04101108),
|
||
|
U32(0x00020000),
|
||
|
U32(0x00120000),
|
||
|
U32(0x00020100),
|
||
|
U32(0x00120100),
|
||
|
U32(0x00020008),
|
||
|
U32(0x00120008),
|
||
|
U32(0x00020108),
|
||
|
U32(0x00120108),
|
||
|
U32(0x00021000),
|
||
|
U32(0x00121000),
|
||
|
U32(0x00021100),
|
||
|
U32(0x00121100),
|
||
|
U32(0x00021008),
|
||
|
U32(0x00121008),
|
||
|
U32(0x00021108),
|
||
|
U32(0x00121108),
|
||
|
U32(0x04020000),
|
||
|
U32(0x04120000),
|
||
|
U32(0x04020100),
|
||
|
U32(0x04120100),
|
||
|
U32(0x04020008),
|
||
|
U32(0x04120008),
|
||
|
U32(0x04020108),
|
||
|
U32(0x04120108),
|
||
|
U32(0x04021000),
|
||
|
U32(0x04121000),
|
||
|
U32(0x04021100),
|
||
|
U32(0x04121100),
|
||
|
U32(0x04021008),
|
||
|
U32(0x04121008),
|
||
|
U32(0x04021108),
|
||
|
U32(0x04121108),
|
||
|
],
|
||
|
# for D bits (numbered as per FIPS 46) 1 2 3 4 5 6
|
||
|
[
|
||
|
U32(0x00000000),
|
||
|
U32(0x10000000),
|
||
|
U32(0x00010000),
|
||
|
U32(0x10010000),
|
||
|
U32(0x00000004),
|
||
|
U32(0x10000004),
|
||
|
U32(0x00010004),
|
||
|
U32(0x10010004),
|
||
|
U32(0x20000000),
|
||
|
U32(0x30000000),
|
||
|
U32(0x20010000),
|
||
|
U32(0x30010000),
|
||
|
U32(0x20000004),
|
||
|
U32(0x30000004),
|
||
|
U32(0x20010004),
|
||
|
U32(0x30010004),
|
||
|
U32(0x00100000),
|
||
|
U32(0x10100000),
|
||
|
U32(0x00110000),
|
||
|
U32(0x10110000),
|
||
|
U32(0x00100004),
|
||
|
U32(0x10100004),
|
||
|
U32(0x00110004),
|
||
|
U32(0x10110004),
|
||
|
U32(0x20100000),
|
||
|
U32(0x30100000),
|
||
|
U32(0x20110000),
|
||
|
U32(0x30110000),
|
||
|
U32(0x20100004),
|
||
|
U32(0x30100004),
|
||
|
U32(0x20110004),
|
||
|
U32(0x30110004),
|
||
|
U32(0x00001000),
|
||
|
U32(0x10001000),
|
||
|
U32(0x00011000),
|
||
|
U32(0x10011000),
|
||
|
U32(0x00001004),
|
||
|
U32(0x10001004),
|
||
|
U32(0x00011004),
|
||
|
U32(0x10011004),
|
||
|
U32(0x20001000),
|
||
|
U32(0x30001000),
|
||
|
U32(0x20011000),
|
||
|
U32(0x30011000),
|
||
|
U32(0x20001004),
|
||
|
U32(0x30001004),
|
||
|
U32(0x20011004),
|
||
|
U32(0x30011004),
|
||
|
U32(0x00101000),
|
||
|
U32(0x10101000),
|
||
|
U32(0x00111000),
|
||
|
U32(0x10111000),
|
||
|
U32(0x00101004),
|
||
|
U32(0x10101004),
|
||
|
U32(0x00111004),
|
||
|
U32(0x10111004),
|
||
|
U32(0x20101000),
|
||
|
U32(0x30101000),
|
||
|
U32(0x20111000),
|
||
|
U32(0x30111000),
|
||
|
U32(0x20101004),
|
||
|
U32(0x30101004),
|
||
|
U32(0x20111004),
|
||
|
U32(0x30111004),
|
||
|
],
|
||
|
# for D bits (numbered as per FIPS 46) 8 9 11 12 13 14
|
||
|
[
|
||
|
U32(0x00000000),
|
||
|
U32(0x08000000),
|
||
|
U32(0x00000008),
|
||
|
U32(0x08000008),
|
||
|
U32(0x00000400),
|
||
|
U32(0x08000400),
|
||
|
U32(0x00000408),
|
||
|
U32(0x08000408),
|
||
|
U32(0x00020000),
|
||
|
U32(0x08020000),
|
||
|
U32(0x00020008),
|
||
|
U32(0x08020008),
|
||
|
U32(0x00020400),
|
||
|
U32(0x08020400),
|
||
|
U32(0x00020408),
|
||
|
U32(0x08020408),
|
||
|
U32(0x00000001),
|
||
|
U32(0x08000001),
|
||
|
U32(0x00000009),
|
||
|
U32(0x08000009),
|
||
|
U32(0x00000401),
|
||
|
U32(0x08000401),
|
||
|
U32(0x00000409),
|
||
|
U32(0x08000409),
|
||
|
U32(0x00020001),
|
||
|
U32(0x08020001),
|
||
|
U32(0x00020009),
|
||
|
U32(0x08020009),
|
||
|
U32(0x00020401),
|
||
|
U32(0x08020401),
|
||
|
U32(0x00020409),
|
||
|
U32(0x08020409),
|
||
|
U32(0x02000000),
|
||
|
U32(0x0A000000),
|
||
|
U32(0x02000008),
|
||
|
U32(0x0A000008),
|
||
|
U32(0x02000400),
|
||
|
U32(0x0A000400),
|
||
|
U32(0x02000408),
|
||
|
U32(0x0A000408),
|
||
|
U32(0x02020000),
|
||
|
U32(0x0A020000),
|
||
|
U32(0x02020008),
|
||
|
U32(0x0A020008),
|
||
|
U32(0x02020400),
|
||
|
U32(0x0A020400),
|
||
|
U32(0x02020408),
|
||
|
U32(0x0A020408),
|
||
|
U32(0x02000001),
|
||
|
U32(0x0A000001),
|
||
|
U32(0x02000009),
|
||
|
U32(0x0A000009),
|
||
|
U32(0x02000401),
|
||
|
U32(0x0A000401),
|
||
|
U32(0x02000409),
|
||
|
U32(0x0A000409),
|
||
|
U32(0x02020001),
|
||
|
U32(0x0A020001),
|
||
|
U32(0x02020009),
|
||
|
U32(0x0A020009),
|
||
|
U32(0x02020401),
|
||
|
U32(0x0A020401),
|
||
|
U32(0x02020409),
|
||
|
U32(0x0A020409),
|
||
|
],
|
||
|
# for D bits (numbered as per FIPS 46) 16 17 18 19 20 21
|
||
|
[
|
||
|
U32(0x00000000),
|
||
|
U32(0x00000100),
|
||
|
U32(0x00080000),
|
||
|
U32(0x00080100),
|
||
|
U32(0x01000000),
|
||
|
U32(0x01000100),
|
||
|
U32(0x01080000),
|
||
|
U32(0x01080100),
|
||
|
U32(0x00000010),
|
||
|
U32(0x00000110),
|
||
|
U32(0x00080010),
|
||
|
U32(0x00080110),
|
||
|
U32(0x01000010),
|
||
|
U32(0x01000110),
|
||
|
U32(0x01080010),
|
||
|
U32(0x01080110),
|
||
|
U32(0x00200000),
|
||
|
U32(0x00200100),
|
||
|
U32(0x00280000),
|
||
|
U32(0x00280100),
|
||
|
U32(0x01200000),
|
||
|
U32(0x01200100),
|
||
|
U32(0x01280000),
|
||
|
U32(0x01280100),
|
||
|
U32(0x00200010),
|
||
|
U32(0x00200110),
|
||
|
U32(0x00280010),
|
||
|
U32(0x00280110),
|
||
|
U32(0x01200010),
|
||
|
U32(0x01200110),
|
||
|
U32(0x01280010),
|
||
|
U32(0x01280110),
|
||
|
U32(0x00000200),
|
||
|
U32(0x00000300),
|
||
|
U32(0x00080200),
|
||
|
U32(0x00080300),
|
||
|
U32(0x01000200),
|
||
|
U32(0x01000300),
|
||
|
U32(0x01080200),
|
||
|
U32(0x01080300),
|
||
|
U32(0x00000210),
|
||
|
U32(0x00000310),
|
||
|
U32(0x00080210),
|
||
|
U32(0x00080310),
|
||
|
U32(0x01000210),
|
||
|
U32(0x01000310),
|
||
|
U32(0x01080210),
|
||
|
U32(0x01080310),
|
||
|
U32(0x00200200),
|
||
|
U32(0x00200300),
|
||
|
U32(0x00280200),
|
||
|
U32(0x00280300),
|
||
|
U32(0x01200200),
|
||
|
U32(0x01200300),
|
||
|
U32(0x01280200),
|
||
|
U32(0x01280300),
|
||
|
U32(0x00200210),
|
||
|
U32(0x00200310),
|
||
|
U32(0x00280210),
|
||
|
U32(0x00280310),
|
||
|
U32(0x01200210),
|
||
|
U32(0x01200310),
|
||
|
U32(0x01280210),
|
||
|
U32(0x01280310),
|
||
|
],
|
||
|
# for D bits (numbered as per FIPS 46) 22 23 24 25 27 28
|
||
|
[
|
||
|
U32(0x00000000),
|
||
|
U32(0x04000000),
|
||
|
U32(0x00040000),
|
||
|
U32(0x04040000),
|
||
|
U32(0x00000002),
|
||
|
U32(0x04000002),
|
||
|
U32(0x00040002),
|
||
|
U32(0x04040002),
|
||
|
U32(0x00002000),
|
||
|
U32(0x04002000),
|
||
|
U32(0x00042000),
|
||
|
U32(0x04042000),
|
||
|
U32(0x00002002),
|
||
|
U32(0x04002002),
|
||
|
U32(0x00042002),
|
||
|
U32(0x04042002),
|
||
|
U32(0x00000020),
|
||
|
U32(0x04000020),
|
||
|
U32(0x00040020),
|
||
|
U32(0x04040020),
|
||
|
U32(0x00000022),
|
||
|
U32(0x04000022),
|
||
|
U32(0x00040022),
|
||
|
U32(0x04040022),
|
||
|
U32(0x00002020),
|
||
|
U32(0x04002020),
|
||
|
U32(0x00042020),
|
||
|
U32(0x04042020),
|
||
|
U32(0x00002022),
|
||
|
U32(0x04002022),
|
||
|
U32(0x00042022),
|
||
|
U32(0x04042022),
|
||
|
U32(0x00000800),
|
||
|
U32(0x04000800),
|
||
|
U32(0x00040800),
|
||
|
U32(0x04040800),
|
||
|
U32(0x00000802),
|
||
|
U32(0x04000802),
|
||
|
U32(0x00040802),
|
||
|
U32(0x04040802),
|
||
|
U32(0x00002800),
|
||
|
U32(0x04002800),
|
||
|
U32(0x00042800),
|
||
|
U32(0x04042800),
|
||
|
U32(0x00002802),
|
||
|
U32(0x04002802),
|
||
|
U32(0x00042802),
|
||
|
U32(0x04042802),
|
||
|
U32(0x00000820),
|
||
|
U32(0x04000820),
|
||
|
U32(0x00040820),
|
||
|
U32(0x04040820),
|
||
|
U32(0x00000822),
|
||
|
U32(0x04000822),
|
||
|
U32(0x00040822),
|
||
|
U32(0x04040822),
|
||
|
U32(0x00002820),
|
||
|
U32(0x04002820),
|
||
|
U32(0x00042820),
|
||
|
U32(0x04042820),
|
||
|
U32(0x00002822),
|
||
|
U32(0x04002822),
|
||
|
U32(0x00042822),
|
||
|
U32(0x04042822),
|
||
|
],
|
||
|
]
|