~ubuntu-branches/debian/sid/botan/sid

« back to all changes in this revision

Viewing changes to include/gost.h

  • Committer: Package Import Robot
  • Author(s): Laszlo Boszormenyi (GCS)
  • Date: 2018-03-01 22:23:25 UTC
  • mfrom: (1.2.2)
  • Revision ID: package-import@ubuntu.com-20180301222325-7p7vc45gu3hta34d
Tags: 2.4.0-2
* Don't remove .doctrees from the manual if it doesn't exist.
* Don't specify parallel to debhelper.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/*************************************************
2
 
* GOST Header File                               *
3
 
* (C) 1999-2007 The Botan Project                *
4
 
*************************************************/
5
 
 
6
 
#ifndef BOTAN_GOST_H__
7
 
#define BOTAN_GOST_H__
8
 
 
9
 
#include <botan/base.h>
10
 
 
11
 
namespace Botan {
12
 
 
13
 
/*************************************************
14
 
* GOST                                           *
15
 
*************************************************/
16
 
class GOST : public BlockCipher
17
 
   {
18
 
   public:
19
 
      void clear() throw() { EK.clear(); }
20
 
      std::string name() const { return "GOST"; }
21
 
      BlockCipher* clone() const { return new GOST; }
22
 
      GOST() : BlockCipher(8, 32) {}
23
 
   private:
24
 
      void enc(const byte[], byte[]) const;
25
 
      void dec(const byte[], byte[]) const;
26
 
      void key(const byte[], u32bit);
27
 
 
28
 
      static const u32bit SBOX1[256], SBOX2[256], SBOX3[256], SBOX4[256];
29
 
 
30
 
      SecureBuffer<u32bit, 32> EK;
31
 
   };
32
 
 
33
 
}
34
 
 
35
 
#endif