25 lines
707 B
C
25 lines
707 B
C
#include "yespower-arm.h"
|
|
#include <arm_neon.h>
|
|
|
|
void yespower_arm_hash(const uint8_t *input, size_t input_len, uint8_t *output) {
|
|
uint8x16_t key = vdupq_n_u8(0xAA); // Beispiel-Key
|
|
for (size_t i = 0; i < input_len; i += 16) {
|
|
uint8x16_t data = vld1q_u8(input + i); // Lade Eingabedaten
|
|
data = veorq_u8(data, key); // XOR mit Key
|
|
vst1q_u8(output + i, data); // Ergebnis speichern
|
|
}
|
|
}
|
|
|
|
#else
|
|
|
|
#include <stdint.h>
|
|
#include <stddef.h>
|
|
|
|
void yespower_arm_hash(const uint8_t *input, size_t input_len, uint8_t *output) {
|
|
for (size_t i = 0; i < input_len; i++) {
|
|
output[i] = input[i] ^ 0xAA; // XOR-Verarbeitung als Ersatz
|
|
}
|
|
}
|
|
|
|
#endif
|