Esempio n. 1
0
def build_deltas(db, algo, et):
    bare_cols = attacks_table_cols(algo)
    for bare_col in bare_cols:
        et["d" + bare_col] = models.vars.compute_ddelta(
            et["h1" + bare_col], et["h2" + bare_col])
        et["r" + bare_col] = models.vars.compute_rdelta(
            et["h1" + bare_col], et["h2" + bare_col])
    return et
Esempio n. 2
0
def table_cols(algo):
    cols = []
    bare_cols = attacks_table_cols(algo)
    for bare_col in bare_cols:
        cols.append("h" + bare_col)

    if algo.name == "md4" or algo.name == "md5":
        cols.append("family")
        cols.append("rounds")
        cols.append("min_round")
        cols.append("max_round")
    elif algo.name == "sha3":
        cols.append("rounds")
        cols.append("min_round")
        cols.append("max_round")
        cols.append("w")

    return cols
Esempio n. 3
0
def table_cols(algo):
    cols = []
    bare_cols = attacks_table_cols(algo)
    prefixes = ["h1", "h2", "d", "r"]
    for bare_col in bare_cols:
        for prefix in prefixes:
            cols.append(prefix + bare_col)

    if algo.name == "md4" or algo.name == "md5":
        cols.append("family")
        cols.append("input_family")
        cols.append("rounds")
    elif algo.name == "sha3":
        cols.append("rounds")
        cols.append("min_round")
        cols.append("max_round")
        cols.append("w")

    return cols