Exemplo n.º 1
0
 def __init__(self):
     Md4.__init__(self)
     self.block_length = 1024
     self.nb_rounds = 80
     self.hv_size = 64
     self.padding_size_encoding_length = 128
     self.output_big_endianness = self.block_big_endianness = self.padding_big_endianness = True
     self.IVs = Sha512_u.IVs
     self.K = Sha512_u.K
Exemplo n.º 2
0
    def __init__(self):
        Md4.__init__(self)
        self.hv_size = 64

        hex_ = "0123456789ABCDEF"
        IVhex = hex_ + hex_[::-1]
        self.IVs = qwords(list(struct.unpack(">2Q", hex2bin(IVhex)))  + [0xF090A0B0C0B0E080 | 0x0006050403020107])
        self.pad_bit_7 = False

        self.S = tiger_const.Ss_test
        self.nb_pass = 3 # standard tiger uses 3 passes
        self.sboxes = self.S
        self.Sboxes = self.S[::-1]
Exemplo n.º 3
0
    def __init__(self):
        Md4.__init__(self)
        self.hv_size = 64

        hex_ = "0123456789ABCDEF"
        IVhex = hex_ + hex_[::-1]
        self.IVs = qwords(
            list(struct.unpack(">2Q", hex2bin(IVhex))) +
            [0xF090A0B0C0B0E080 | 0x0006050403020107])
        self.pad_bit_7 = False

        self.S = tiger_const.Ss_test
        self.nb_pass = 3  # standard tiger uses 3 passes
        self.sboxes = self.S
        self.Sboxes = self.S[::-1]
Exemplo n.º 4
0
 def __init__(self):
     Md4.__init__(self)
     self.IVs = Sha_u.IVs
     self.output_big_endianness = self.block_big_endianness = self.padding_big_endianness = True
Exemplo n.º 5
0
 def __init__(self):
     Md4.__init__(self)
     self.IVs = Sha_u.IVs
Exemplo n.º 6
0
 def __init__(self):
     Md4.__init__(self)
     self.IVs = Sha_u.IVs
     self.output_big_endianness = self.block_big_endianness = self.padding_big_endianness = True
Exemplo n.º 7
0
#Kabopan - Readable Algorithms. Public Domain, 2007-2009
"""tests for MD4 and MD5"""

from kbp._misc import rol, hex2bin
from kbp.crypt.md4 import Md4, Md4_u, Md5, Md5_u
from kbp.types import add_string
from kbp.test.common import check_test_vectors

hashmd4 = lambda x: Md4().compute(x).digest()

md4_IVs = [0x67452301, 0xEFCDAB89, 0x98BADCFE, 0x10325476]

md4_test_vectors = [
    0x31d6cfe0d16ae931b73c59d7e0c089c0, 0xbde52cb31de33e46245e05fbdbd6fb24,
    0xa448017aaf21d8525fc10ae87aa6729d, 0xd9130a8164549fe818874806e1c7014b,
    0xd79e1c308aa5bbcdeea8ed63df412da9, 0x043f8582f241db351ce627e153e7f0e4,
    0xe33b4ddc9c38f2199c3e7b164fcc0536
]

# collision, XiaoyunWang, Dengguo Feng, Xuejia Lai, Hongbo Yu, 2004

a4 = \
 "839c7a4d 7a92cb56 78a5d5b9 eea5a757 3c8a74de b366c3dc 20a083b6 9f5d2a3b"\
 "b3719dc6 9891e9f9 5e809fd7 e8b23ba6 318edd45 e51fe397 08bf9427 e9c3e8b9"

delta4 = \
 "_______________d________2______________________________________________"\
 "_________________________________________c_____________________________"

b4 = add_string(a4, delta4)
b4 = b4.replace(" ", "")