1 
2 // DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
3 
4 #ifndef __gnu_javax_crypto_cipher_DES__
5 #define __gnu_javax_crypto_cipher_DES__
6 
7 #pragma interface
8 
9 #include <gnu/javax/crypto/cipher/BaseCipher.h>
10 #include <gcj/array.h>
11 
12 extern "Java"
13 {
14   namespace gnu
15   {
16     namespace javax
17     {
18       namespace crypto
19       {
20         namespace cipher
21         {
22             class DES;
23         }
24       }
25     }
26   }
27 }
28 
29 class gnu::javax::crypto::cipher::DES : public ::gnu::javax::crypto::cipher::BaseCipher
30 {
31 
32 public:
33   DES();
34   static void adjustParity(JArray< jbyte > *, jint);
35   static jboolean isParityAdjusted(JArray< jbyte > *, jint);
36   static jboolean isWeak(JArray< jbyte > *);
37   static jboolean isSemiWeak(JArray< jbyte > *);
38   static jboolean isPossibleWeak(JArray< jbyte > *);
39 private:
40   static void desFunc(JArray< jbyte > *, jint, JArray< jbyte > *, jint, JArray< jint > *);
41 public:
42   virtual ::java::lang::Object * clone();
43   virtual ::java::util::Iterator * blockSizes();
44   virtual ::java::util::Iterator * keySizes();
45   virtual ::java::lang::Object * makeKey(JArray< jbyte > *, jint);
46   virtual void encrypt(JArray< jbyte > *, jint, JArray< jbyte > *, jint, ::java::lang::Object *, jint);
47   virtual void decrypt(JArray< jbyte > *, jint, JArray< jbyte > *, jint, ::java::lang::Object *, jint);
48   static const jint BLOCK_SIZE = 8;
49   static const jint KEY_SIZE = 8;
50 private:
51   static JArray< jint > * SP1;
52   static JArray< jint > * SP2;
53   static JArray< jint > * SP3;
54   static JArray< jint > * SP4;
55   static JArray< jint > * SP5;
56   static JArray< jint > * SP6;
57   static JArray< jint > * SP7;
58   static JArray< jint > * SP8;
59   static JArray< jbyte > * PARITY;
60   static JArray< jbyte > * ROTARS;
61   static JArray< jbyte > * PC1;
62   static JArray< jbyte > * PC2;
63 public:
64   static JArray< JArray< jbyte > * > * WEAK_KEYS;
65   static JArray< JArray< jbyte > * > * SEMIWEAK_KEYS;
66   static JArray< JArray< jbyte > * > * POSSIBLE_WEAK_KEYS;
67   static ::java::lang::Class class$;
68 };
69 
70 #endif // __gnu_javax_crypto_cipher_DES__
71