summaryrefslogtreecommitdiff
path: root/python/helpers.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/helpers.py')
-rw-r--r--python/helpers.py25
1 files changed, 25 insertions, 0 deletions
diff --git a/python/helpers.py b/python/helpers.py
new file mode 100644
index 0000000..34949a4
--- /dev/null
+++ b/python/helpers.py
@@ -0,0 +1,25 @@
+from constants import BLOCK_BYTES
+
+
+def ArrayToBlockbytesMatrix(array) :
+ length = len(array)
+ pad = 0
+ if(length % BLOCK_BYTES == 0) :
+ number_blocks = int(length / BLOCK_BYTES)
+ else :
+ number_blocks = int((length + (BLOCK_BYTES - (length % BLOCK_BYTES))) / BLOCK_BYTES)
+ pad = 1
+
+ matrix = [[0] * BLOCK_BYTES for block in range(0, number_blocks - pad)]
+ if(pad == 1) :
+ matrix.append([0] * (length % BLOCK_BYTES))
+
+ for byte in range(0, length) :
+ matrix[int(byte / BLOCK_BYTES)][byte % BLOCK_BYTES] = array[byte]
+
+ return matrix
+
+
+def BlockbytesMatrixToBytes(matrix):
+ return bytes(byte for block in matrix for byte in block)
+