dummy crypto
authorLaurent Mazet <mazet@softndesign.org>
Sun, 4 May 2025 21:53:16 +0000 (23:53 +0200)
committerLaurent Mazet <mazet@softndesign.org>
Sun, 4 May 2025 21:53:16 +0000 (23:53 +0200)
function.c

index 9dc31ee52176c7e0e901931437e5aec254154d02..c9f1f6192e8a2147bf0742d8094f3dea620c1a1b 100644 (file)
@@ -42,6 +42,23 @@ int encrypt_func (CLEAR_DATA_t *in, ENCRYPTED_DATA_t *out)
 {
     state = working_e;
 
+    int iv_len = sizeof (out->iv);
+    for (int i = 0, r = 0; i < iv_len; i++) {
+        if (i % 4) {
+            r = rand ();
+        }
+        out->data[i] = r & 0xff;
+        r >>= 8;
+    }
+
+    memcpy (out->bypass, in->bypass, in->bypass_len * sizeof (uint8_t));
+    out->bypass_len = in->bypass_len;
+
+    for (int i = 0; i < in->data_len; i++) {
+        out->data[i] = (in->data[i] ^ out->iv[i % iv_len]) & 0xff;
+    }
+    out->data_len = in->data_len;
+
     state = ready_e;
 
     return 0;
@@ -51,6 +68,15 @@ int decrypt_func (ENCRYPTED_DATA_t *in, CLEAR_DATA_t *out)
 {
     state = working_e;
 
+    memcpy (out->bypass, in->bypass, in->bypass_len * sizeof (uint8_t));
+    out->bypass_len = in->bypass_len;
+
+    int iv_len = sizeof (in->iv);
+    for (int i = 0; i < in->data_len; i++) {
+        out->data[i] = (in->data[i] ^ in->iv[i % iv_len]) & 0xff;
+    }
+    out->data_len = in->data_len;
+
     state = ready_e;
 
     return 0;