Baseline

Home

Lighting Speed Encryption

The Baseline project is a C program designed to implement a fundamental encryption algorithm. This algorithm demonstrates core cryptographic techniques, including key scheduling, permutation, XOR operations, and nonlinear transformations to securely encode input strings. This document offers a comprehensive overview of the algorithm's design, operational complexity, and additional technical insights.

Try Live Demo

Algorithm Description

Key Schedule Generation

The key schedule in this encryption algorithm is established using two 32-bit keys and a configurable number of rounds. For each round, a specific byte value is computed based on the provided keys and the round number. This byte value plays a crucial role in the permutation and XOR operations performed during the encryption process, ensuring a robust transformation of the input data.

Complexity Analysis

Time Complexity

The time complexity of the encryption algorithm is O(n * r), where n represents the size of the input array and r denotes the number of rounds. This complexity arises because each round requires processing the entire array, and the total number of rounds influences the overall time required for encryption.

Space Complexity

The space complexity of the algorithm is O(n), accounting for the storage needs of the input array, the encrypted output array, the random addition array, and the key schedule. This complexity assumes that the size of these arrays scales proportionally with n, the size of the input data.

Screenshots

Encryption Decryption