def make_word_schedule(block):
    """
    This function takes the initial 512 bit block and divides it up into 16 x 32 bit words.
    It then appends a further 48 x 16 bit words (all set to zero) to bring the word schedule
    up to 64 words each of 32 bits.
    :param block:
    :return:
    """
    words = []

    for i in range(16):
        word = ''
        for j in range(i * 32, i * 32 + 32):
            word += block[j]
        words.append(word)

    for i in range(48):
        word = ''
        for j in range(32):
            word += '0'
        words.append(word)

    return words