source: trunk/src-cryptopp/tiger.h

Last change on this file was e230cb0, checked in by David Stainton <dstainton415@…>, at 2016-10-12T13:27:29Z

Add cryptopp from tag CRYPTOPP_5_6_5

  • Property mode set to 100644
File size: 846 bytes
Line 
1#ifndef CRYPTOPP_TIGER_H
2#define CRYPTOPP_TIGER_H
3
4#include "config.h"
5#include "iterhash.h"
6
7// Clang 3.3 integrated assembler crash on Linux
8//  http://github.com/weidai11/cryptopp/issues/264
9#if defined(CRYPTOPP_LLVM_CLANG_VERSION) && (CRYPTOPP_LLVM_CLANG_VERSION < 30400)
10# define CRYPTOPP_DISABLE_TIGER_ASM
11#endif
12
13NAMESPACE_BEGIN(CryptoPP)
14
15/// <a href="http://www.cryptolounge.org/wiki/Tiger">Tiger</a>
16class Tiger : public IteratedHashWithStaticTransform<word64, LittleEndian, 64, 24, Tiger>
17{
18public:
19        static void InitState(HashWordType *state);
20        static void Transform(word64 *digest, const word64 *data);
21        void TruncatedFinal(byte *hash, size_t size);
22        CRYPTOPP_CONSTEXPR static const char *StaticAlgorithmName() {return "Tiger";}
23
24protected:
25        static const word64 table[4*256+3];
26};
27
28NAMESPACE_END
29
30#endif
Note: See TracBrowser for help on using the repository browser.