simplify message merge
This commit is contained in:
@@ -214,7 +214,6 @@ def transceive_medium(medium_phase1: DarcKey, client_persistent_keys: ClientPers
|
|||||||
|
|
||||||
def merge_message(alphabet: DarcKey, medium: DarcKey, client_keys: ClientKeys, mutual_keys: MutualKeys, input_sequence: list[int]):
|
def merge_message(alphabet: DarcKey, medium: DarcKey, client_keys: ClientKeys, mutual_keys: MutualKeys, input_sequence: list[int]):
|
||||||
msg_len = len(input_sequence)
|
msg_len = len(input_sequence)
|
||||||
eof_arr = AlphabetKey.init_matrix(width, height, 255).matrix[0]
|
|
||||||
|
|
||||||
if msg_len < height:
|
if msg_len < height:
|
||||||
padded_input_sequence = OuterKey.init_matrix(height)
|
padded_input_sequence = OuterKey.init_matrix(height)
|
||||||
@@ -223,32 +222,25 @@ def merge_message(alphabet: DarcKey, medium: DarcKey, client_keys: ClientKeys, m
|
|||||||
padded_input_sequence = OuterKey(matrix=[input_sequence])
|
padded_input_sequence = OuterKey(matrix=[input_sequence])
|
||||||
|
|
||||||
input_seq = padded_input_sequence
|
input_seq = padded_input_sequence
|
||||||
|
|
||||||
|
|
||||||
a_i = alphabet < input_seq
|
a_i = alphabet < input_seq
|
||||||
|
|
||||||
|
eof_arr = AlphabetKey.init_matrix(width, height, 255).matrix[0]
|
||||||
if msg_len < height:
|
if msg_len < height:
|
||||||
a_i.matrix[msg_len] = eof_arr
|
a_i.matrix[msg_len] = eof_arr
|
||||||
|
|
||||||
mmi3 = mutual_keys.persistent.medium.inner_key_3 << mutual_keys.ephemeral.medium.inner_key_3
|
mmi3 = mutual_keys.persistent.medium.inner_key_3 << mutual_keys.ephemeral.medium.inner_key_3
|
||||||
mmo6 = mutual_keys.persistent.medium.outer_key_6 << mutual_keys.ephemeral.medium.outer_key_6
|
mmo6 = mutual_keys.persistent.medium.outer_key_6 << mutual_keys.ephemeral.medium.outer_key_6
|
||||||
mmo4 = mutual_keys.persistent.medium.outer_key_4 << mutual_keys.ephemeral.medium.outer_key_4
|
mmo4 = mutual_keys.persistent.medium.outer_key_4 << mutual_keys.ephemeral.medium.outer_key_4
|
||||||
|
|
||||||
nmmo6_nmmo4 = ~(mmo4 << mmo6)
|
|
||||||
|
|
||||||
nmmo6_nmmo4_co1_co2 = nmmo6_nmmo4
|
|
||||||
|
|
||||||
mmi3_nmmo6_nmmo4_co1_co2 = (mmi3 < nmmo6_nmmo4_co1_co2)
|
|
||||||
|
|
||||||
message = (medium ) ^ ((a_i << mmi3_nmmo6_nmmo4_co1_co2))
|
|
||||||
|
|
||||||
mmo5 = mutual_keys.persistent.medium.outer_key_5 << mutual_keys.ephemeral.medium.outer_key_5
|
mmo5 = mutual_keys.persistent.medium.outer_key_5 << mutual_keys.ephemeral.medium.outer_key_5
|
||||||
mpmi4_memi2 = mutual_keys.persistent.medium.inner_key_4 << mutual_keys.ephemeral.medium.inner_key_2
|
mpmi4_memi2 = mutual_keys.persistent.medium.inner_key_4 << mutual_keys.ephemeral.medium.inner_key_2
|
||||||
|
|
||||||
mmo5_nmmo6_nmmo4 = mmo5 << nmmo6_nmmo4
|
nmmo6 = ~mmo6
|
||||||
|
message = medium ^ (a_i << (mmi3 < ~(mmo4 << mmo6)))
|
||||||
|
|
||||||
|
mmo5_nmmo6 = mmo5 << nmmo6
|
||||||
|
|
||||||
|
message = (message < mmo4) << (mpmi4_memi2 < mmo5_nmmo6)
|
||||||
|
|
||||||
message = message << ((mpmi4_memi2 < mmo5_nmmo6_nmmo4))
|
|
||||||
message = (message ) < mmo4
|
|
||||||
return message
|
return message
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user