Navigation

  • index
  • modules |
  • next |
  • previous |
  • CLAASP: Cryptographic Library for Automated Analysis of Symmetric Primitives v3.1.0 documentation »
  • Division trail search

Division trail search¶

class MilpDivisionTrailModel(cipher)¶

Bases: object

Given a number of rounds of a chosen cipher and a chosen output bit, this module produces a model that can either: - obtain the ANF of this chosen output bit, - find the degree of this ANF, - or check the presence or absence of a specified monomial.

This module can only be used if the user possesses a Gurobi license.

add_and_constraints(component)¶
add_constraints(predecessors, input_id_link_needed, block_needed)¶
add_linear_layer_constraints(component)¶
add_modadd_constraints(component)¶
add_not_constraints(component)¶
add_sbox_constraints(component)¶
add_xor_constraints(component)¶
build_generic_model_for_specific_output_bit(output_bit_index_ciphertext, fixed_degree=None, chosen_cipher_output=None)¶
build_gurobi_model()¶
check_presence_of_particular_monomial_in_all_anf(monomial, fixed_degree=None, chosen_cipher_output=None)¶
check_presence_of_particular_monomial_in_specific_anf(monomial, output_bit_index, fixed_degree=None, chosen_cipher_output=None)¶
create_copies(nb_copies, var_to_copy)¶
create_copies_for_linear_layer(binary_matrix, input_vars_concat)¶
create_gurobi_vars_from_all_components(predecessors, input_id_link_needed, block_needed)¶
create_gurobi_vars_sbox(component, input_vars_concat)¶
find_anf_of_specific_output_bit(output_bit_index, fixed_degree=None, chosen_cipher_output=None)¶
find_copy_indexes(input_bit_positions)¶
find_degree_of_all_output_bits(chosen_cipher_output=None)¶
find_degree_of_specific_output_bit(output_bit_index, chosen_cipher_output=None, cube_index=[])¶
find_index_second_input()¶
get_all_variables_as_list()¶
get_anfs_from_sbox(component)¶
get_cipher_output_component_id()¶
get_input_vars(component)¶
get_monomial_occurences(component)¶
get_output_bit_index_previous_component(output_bit_index_ciphertext, chosen_cipher_output=None)¶
get_output_vars(component)¶
get_solutions()¶
get_unused_variables()¶
get_where_component_is_used(predecessors, input_id_link_needed, block_needed)¶
optimize_model()¶
order_predecessors(used_predecessors)¶
re_init()¶
set_as_used_variables(variables)¶
set_unused_variables_to_zero()¶

Previous topic

Generic functions vectorized byte

Next topic

Report

This Page

  • Show Source

Quick search

Navigation

  • index
  • modules |
  • next |
  • previous |
  • CLAASP: Cryptographic Library for Automated Analysis of Symmetric Primitives v3.1.0 documentation »
  • Division trail search
© Copyright 2005--2022, The Sage Development Team.