X-Git-Url: https://git.cryptolib.org/?a=blobdiff_plain;f=khazad%2Fkhazad.h;fp=khazad%2Fkhazad.h;h=1f1c3358581919bdfb8cd9d8ba4ee47b17ad09bd;hb=61b5214b9a948a74fe9c22586b84d19d24537fdb;hp=0000000000000000000000000000000000000000;hpb=6131049b56c13e49ea9546f18febf31c572917f4;p=arm-crypto-lib.git
diff --git a/khazad/khazad.h b/khazad/khazad.h
new file mode 100644
index 0000000..1f1c335
--- /dev/null
+++ b/khazad/khazad.h
@@ -0,0 +1,34 @@
+/* khazad.h */
+/*
+ This file is part of the AVR-Crypto-Lib.
+ Copyright (C) 2011 Daniel Otte (daniel.otte@rub.de)
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see .
+*/
+
+#ifndef KHAZAD_H_
+#define KHAZAD_H_
+
+#include
+
+typedef struct {
+ uint8_t k[9][8];
+}khazad_ctx_t;
+
+void khazad_enc(void* buffer, const khazad_ctx_t* ctx);
+void khazad_dec(void* buffer, const khazad_ctx_t* ctx);
+void khazad_init(const void* key, khazad_ctx_t* ctx);
+uint8_t khazad_sbox(uint8_t);
+
+#endif /* KHAZAD_H_ */