renamed all variables in darc

This commit is contained in:
2024-05-23 09:21:36 -05:00
parent 895143e746
commit 4de3ece8c9

View File

@@ -173,20 +173,19 @@ def transmit_medium(medium: DarcKey, client_persistent_keys: ClientPersistentMed
inner_key_1 = mutual_inner_key_1 << mutual_inner_key_2 inner_key_1 = mutual_inner_key_1 << mutual_inner_key_2
client_shuffle_key_b = (~client_persistent_keys.inner_key_1) << mutual_persistent_keys.inner_key_2 inner_key_2 = (~client_persistent_keys.inner_key_1) << mutual_persistent_keys.inner_key_2
input_client_shuffle_key_b = client_inner_key_1 << client_shuffle_key_b inner_key_3 = client_inner_key_1 << inner_key_2
input_client_shuffle_key_b = input_client_shuffle_key_b < outer_key_2 inner_key_3 = inner_key_3 < outer_key_2
shuffled_items = medium << input_client_shuffle_key_b
outer_function_key_applied = mutual_persistent_keys.outer_key_1 << mutual_ephemeral_keys.outer_key_1
input_outer_function_key = outer_function_key_applied << outer_key_1
inner_function_key_applied = inner_key_1 medium = medium << inner_key_3
operand = shuffled_items mutual_outer_key_1 = mutual_persistent_keys.outer_key_1 << mutual_ephemeral_keys.outer_key_1
operand1 = client_ephemeral_keys.alpha_key_1 < input_outer_function_key outer_key_3 = mutual_outer_key_1 << outer_key_1
operand2 = client_persistent_keys.alpha_key_1 < input_outer_function_key
operand3 = mutual_ephemeral_keys.alpha_key_1 < input_outer_function_key
result = operand ^ (operand1 << inner_function_key_applied) ^ (operand2 << inner_function_key_applied) ^ (operand3 << inner_function_key_applied) operand1 = client_ephemeral_keys.alpha_key_1 < outer_key_3
operand2 = client_persistent_keys.alpha_key_1 < outer_key_3
operand3 = mutual_ephemeral_keys.alpha_key_1 < outer_key_3
result = medium ^ (operand1 << inner_key_1) ^ (operand2 << inner_key_1) ^ (operand3 << inner_key_1)
return result return result
@@ -244,69 +243,65 @@ def merge_message(alphabet: DarcKey, medium: DarcKey, client_keys: ClientKeys, m
def darc_phase_4(alphabet: AlphabetKey, darc_message: AlphabetKey, server_keys: ServerKeys, mutual_keys: MutualKeys): def darc_phase_4(alphabet: AlphabetKey, darc_message: AlphabetKey, server_keys: ServerKeys, mutual_keys: MutualKeys):
outer_position_function_ephemeral_key_applied = mutual_keys.persistent.medium.outer_key_6 << mutual_keys.ephemeral.medium.outer_key_6 mutual_med_outer_key_6 = mutual_keys.persistent.medium.outer_key_6 << mutual_keys.ephemeral.medium.outer_key_6
outer_position_shuffle_ephemeral_key_applied = mutual_keys.persistent.medium.outer_key_4 << mutual_keys.ephemeral.medium.outer_key_4 mutual_med_outer_key_4 = mutual_keys.persistent.medium.outer_key_4 << mutual_keys.ephemeral.medium.outer_key_4
outer_position_function_ephemeral_key_applied = ~(outer_position_shuffle_ephemeral_key_applied << outer_position_function_ephemeral_key_applied) outer_key_1 = ~(mutual_med_outer_key_4 << mutual_med_outer_key_6)
outer_position_shuffle_ephemeral_key_applied = ~outer_position_shuffle_ephemeral_key_applied mutual_med_outer_key_4 = ~mutual_med_outer_key_4
outer_position_shuffle_function_ephemeral_key_applied = mutual_keys.persistent.medium.outer_key_5 << mutual_keys.ephemeral.medium.outer_key_5 mutual_med_outer_key_5 = mutual_keys.persistent.medium.outer_key_5 << mutual_keys.ephemeral.medium.outer_key_5
outer_position_shuffle_function_ephemeral_key_applied = outer_position_shuffle_function_ephemeral_key_applied << outer_position_function_ephemeral_key_applied mutual_med_outer_key_5 = mutual_med_outer_key_5 << outer_key_1
outer_function_function_medium_ephemeral_key_applied = mutual_keys.persistent.medium.outer_key_2 << mutual_keys.ephemeral.medium.outer_key_2 mutual_med_outer_key_2 = mutual_keys.persistent.medium.outer_key_2 << mutual_keys.ephemeral.medium.outer_key_2
outer_server_shuffle_function_ephemeral_key_applied = mutual_keys.persistent.data.outer_key_3 << mutual_keys.ephemeral.data.outer_key_3 mutual_outer_key_3 = mutual_keys.persistent.data.outer_key_3 << mutual_keys.ephemeral.data.outer_key_3
outer_server_shuffle_function_medium_ephemeral_key_applied = mutual_keys.persistent.medium.outer_key_3 << mutual_keys.ephemeral.medium.outer_key_3 mutual_med_outer_key_3 = mutual_keys.persistent.medium.outer_key_3 << mutual_keys.ephemeral.medium.outer_key_3
function_medium_ephemeral_key_applied = mutual_keys.persistent.medium.inner_key_1 << mutual_keys.ephemeral.medium.inner_key_1 mutual_med_inner_key_1 = mutual_keys.persistent.medium.inner_key_1 << mutual_keys.ephemeral.medium.inner_key_1
client_shuffle_medium_key_x = mutual_keys.persistent.medium.inner_key_2 < outer_server_shuffle_function_medium_ephemeral_key_applied mutual_med_inner_key_2 = mutual_keys.persistent.medium.inner_key_2 < mutual_med_outer_key_3
client_shuffle_medium_key_x = (function_medium_ephemeral_key_applied < outer_function_function_medium_ephemeral_key_applied) << client_shuffle_medium_key_x inner_key_1 = (mutual_med_inner_key_1 < mutual_med_outer_key_2) << mutual_med_inner_key_2
position_shuffle_ephemeral_key_applied = mutual_keys.persistent.medium.inner_key_4 << mutual_keys.ephemeral.medium.inner_key_2 inner_key_2 = mutual_keys.persistent.medium.inner_key_4 << mutual_keys.ephemeral.medium.inner_key_2
position_shuffle_ephemeral_key_applied = position_shuffle_ephemeral_key_applied < outer_position_shuffle_function_ephemeral_key_applied inner_key_2 = inner_key_2 < mutual_med_outer_key_5
client_shuffle_medium_key_x = client_shuffle_medium_key_x << position_shuffle_ephemeral_key_applied inner_key_3 = inner_key_1 << inner_key_2
outer_function_medium_ephemeral_key_applied = mutual_keys.persistent.medium.outer_key_1 << mutual_keys.ephemeral.medium.outer_key_1 mutual_med_outer_key_1 = mutual_keys.persistent.medium.outer_key_1 << mutual_keys.ephemeral.medium.outer_key_1
rx_data = darc_message < outer_position_shuffle_ephemeral_key_applied message = darc_message < mutual_med_outer_key_4
inner_key = client_shuffle_medium_key_x operand1 = server_keys.persistent.medium.alpha_key_1 < mutual_med_outer_key_1
operand = rx_data operand2 = server_keys.ephemeral.medium.alpha_key_1 < mutual_med_outer_key_1
operand1 = server_keys.persistent.medium.alpha_key_1 < outer_function_medium_ephemeral_key_applied operand3 = mutual_keys.persistent.medium.alpha_key_1 < mutual_med_outer_key_1
operand2 = server_keys.ephemeral.medium.alpha_key_1 < outer_function_medium_ephemeral_key_applied operand4 = mutual_keys.ephemeral.medium.alpha_key_1 < mutual_med_outer_key_1
operand3 = mutual_keys.persistent.medium.alpha_key_1 < outer_function_medium_ephemeral_key_applied
operand4 = mutual_keys.ephemeral.medium.alpha_key_1 < outer_function_medium_ephemeral_key_applied
rx_data = operand ^ (operand1 << inner_key) ^ (operand2 << inner_key) ^ (operand3 << inner_key) ^ (operand4 << inner_key) message = message ^ (operand1 << inner_key_3) ^ (operand2 << inner_key_3) ^ (operand3 << inner_key_3) ^ (operand4 << inner_key_3)
position_function_ephemeral_key_applied = mutual_keys.persistent.medium.inner_key_3 << mutual_keys.ephemeral.medium.inner_key_3 mutual_med_inner_key_3 = mutual_keys.persistent.medium.inner_key_3 << mutual_keys.ephemeral.medium.inner_key_3
rx_data = rx_data << (~(position_shuffle_ephemeral_key_applied) << (~position_function_ephemeral_key_applied < outer_position_function_ephemeral_key_applied)) message = message << (~inner_key_2 << (~mutual_med_inner_key_3 < outer_key_1))
client_shuffle_key_x = mutual_keys.persistent.data.inner_key_2 < outer_server_shuffle_function_ephemeral_key_applied mutual_inner_key_2 = mutual_keys.persistent.data.inner_key_2 < mutual_outer_key_3
outer_function_function_ephemeral_key_applied = mutual_keys.persistent.data.outer_key_2 << mutual_keys.ephemeral.data.outer_key_2 mutual_outer_key_2 = mutual_keys.persistent.data.outer_key_2 << mutual_keys.ephemeral.data.outer_key_2
function_ephemeral_key_applied = mutual_keys.persistent.data.inner_key_1 << mutual_keys.ephemeral.data.inner_key_1 mutual_inner_key_1 = mutual_keys.persistent.data.inner_key_1 << mutual_keys.ephemeral.data.inner_key_1
function_ephemeral_key_applied = (function_ephemeral_key_applied < outer_function_function_ephemeral_key_applied) << client_shuffle_key_x inner_key_4 = (mutual_inner_key_1 < mutual_outer_key_2) << mutual_inner_key_2
server_shuffle_ephemeral_key_applied = ~(server_keys.persistent.data.inner_key_1 << mutual_keys.persistent.data.inner_key_2) << ~(server_keys.ephemeral.data.inner_key_1) inner_key_5 = ~(server_keys.persistent.data.inner_key_1 << mutual_keys.persistent.data.inner_key_2) << ~(server_keys.ephemeral.data.inner_key_1)
server_shuffle_ephemeral_key_applied = ~(server_shuffle_ephemeral_key_applied < outer_server_shuffle_function_ephemeral_key_applied) inner_key_5 = ~(inner_key_5 < mutual_outer_key_3)
outer_server_shuffle_ephemeral_key_applied = server_keys.persistent.data.outer_key_1 << server_keys.ephemeral.data.outer_key_1 server_outer_key_1 = server_keys.persistent.data.outer_key_1 << server_keys.ephemeral.data.outer_key_1
alpha_prep = (alphabet < outer_server_shuffle_ephemeral_key_applied) << server_shuffle_ephemeral_key_applied translated_alpha = (alphabet < server_outer_key_1) << inner_key_5
outer_function_ephemeral_key_applied = mutual_keys.persistent.data.outer_key_1 << mutual_keys.ephemeral.data.outer_key_1 mutual_outer_key_1 = mutual_keys.persistent.data.outer_key_1 << mutual_keys.ephemeral.data.outer_key_1
inner_key = function_ephemeral_key_applied operand1 = server_keys.persistent.data.alpha_key_1 < mutual_outer_key_1
operand = alpha_prep operand2 = server_keys.ephemeral.data.alpha_key_1 < mutual_outer_key_1
operand1 = server_keys.persistent.data.alpha_key_1 < outer_function_ephemeral_key_applied operand3 = mutual_keys.persistent.data.alpha_key_1 < mutual_outer_key_1
operand2 = server_keys.ephemeral.data.alpha_key_1 < outer_function_ephemeral_key_applied operand4 = mutual_keys.ephemeral.data.alpha_key_1 < mutual_outer_key_1
operand3 = mutual_keys.persistent.data.alpha_key_1 < outer_function_ephemeral_key_applied translated_alpha = translated_alpha ^ (operand1 << inner_key_4) ^ (operand2 << inner_key_4) ^ (operand3 << inner_key_4) ^ (operand4 << inner_key_4)
operand4 = mutual_keys.ephemeral.data.alpha_key_1 < outer_function_ephemeral_key_applied
alpha_prep = operand ^ (operand1 << inner_key) ^ (operand2 << inner_key) ^ (operand3 << inner_key) ^ (operand4 << inner_key)
return resolve_message(alpha_prep.matrix, rx_data.matrix) return resolve_message(translated_alpha.matrix, message.matrix)
def resolve_message(translated_alphabet, translated_messasge): def resolve_message(translated_alphabet, translated_messasge):
@@ -319,6 +314,7 @@ def resolve_message(translated_alphabet, translated_messasge):
message.append(alphabet_map[alpha]) message.append(alphabet_map[alpha])
else: else:
break break
return message return message
@@ -448,7 +444,6 @@ if __name__ == "__main__":
#) #)
#alphabet = AlphabetKey(**server_ephemeral_keys["Alphabet"]) #alphabet = AlphabetKey(**server_ephemeral_keys["Alphabet"])
server_keys = ServerKeys.random_init(height, width) server_keys = ServerKeys.random_init(height, width)
mutual_keys = MutualKeys.random_init(height, width) mutual_keys = MutualKeys.random_init(height, width)
client_keys = ClientKeys.random_init(height, width) client_keys = ClientKeys.random_init(height, width)