| Michael Hanl | ca740d7 | 2015-06-16 10:04:58 +0200 | [diff] [blame] | 1 | package de.ids_mannheim.korap.interfaces; |
| 2 | |
| Michael Hanl | 482f30d | 2015-09-25 12:39:46 +0200 | [diff] [blame] | 3 | import de.ids_mannheim.korap.exceptions.KustvaktException; |
| Michael Hanl | ca740d7 | 2015-06-16 10:04:58 +0200 | [diff] [blame] | 4 | import de.ids_mannheim.korap.user.User; |
| 5 | |
| 6 | import java.io.UnsupportedEncodingException; |
| 7 | import java.security.NoSuchAlgorithmException; |
| 8 | import java.util.Map; |
| 9 | |
| 10 | public interface EncryptionIface { |
| 11 | |
| 12 | public enum Encryption { |
| margaretha | 35e1ca2 | 2023-11-16 22:00:01 +0100 | [diff] [blame] | 13 | @Deprecated |
| Michael Hanl | ca740d7 | 2015-06-16 10:04:58 +0200 | [diff] [blame] | 14 | SIMPLE, ESAPICYPHER, BCRYPT |
| 15 | } |
| 16 | |
| 17 | /** |
| 18 | * One-way hashing of String input. Used to canonicalize |
| Michael Hanl | 8abaf9e | 2016-05-23 16:46:35 +0200 | [diff] [blame] | 19 | * |
| Michael Hanl | ca740d7 | 2015-06-16 10:04:58 +0200 | [diff] [blame] | 20 | * @param input |
| 21 | * @param salt |
| 22 | * @return |
| Michael Hanl | ca740d7 | 2015-06-16 10:04:58 +0200 | [diff] [blame] | 23 | */ |
| Michael Hanl | cb2d3f9 | 2016-06-02 17:34:06 +0200 | [diff] [blame] | 24 | public String secureHash (String input, String salt) |
| margaretha | 6d61a55 | 2018-04-10 19:26:44 +0200 | [diff] [blame] | 25 | throws KustvaktException; |
| Michael Hanl | ca740d7 | 2015-06-16 10:04:58 +0200 | [diff] [blame] | 26 | |
| margaretha | 2618beb | 2020-01-24 14:12:28 +0100 | [diff] [blame] | 27 | public String secureHash (String input); |
| Michael Hanl | ca740d7 | 2015-06-16 10:04:58 +0200 | [diff] [blame] | 28 | |
| Michael Hanl | ca740d7 | 2015-06-16 10:04:58 +0200 | [diff] [blame] | 29 | /** |
| 30 | * @param plain |
| 31 | * @param hash |
| 32 | * @param salt |
| 33 | * @return |
| 34 | */ |
| Michael Hanl | 8abaf9e | 2016-05-23 16:46:35 +0200 | [diff] [blame] | 35 | public boolean checkHash (String plain, String hash, String salt); |
| Michael Hanl | ca740d7 | 2015-06-16 10:04:58 +0200 | [diff] [blame] | 36 | |
| Michael Hanl | 8abaf9e | 2016-05-23 16:46:35 +0200 | [diff] [blame] | 37 | public boolean checkHash (String plain, String hash); |
| 38 | |
| Michael Hanl | ca740d7 | 2015-06-16 10:04:58 +0200 | [diff] [blame] | 39 | /** |
| 40 | * create random String to be used as authentication token |
| Michael Hanl | 8abaf9e | 2016-05-23 16:46:35 +0200 | [diff] [blame] | 41 | * |
| Michael Hanl | ca740d7 | 2015-06-16 10:04:58 +0200 | [diff] [blame] | 42 | * @return |
| 43 | */ |
| Michael Hanl | 8abaf9e | 2016-05-23 16:46:35 +0200 | [diff] [blame] | 44 | public String createToken (boolean hash, Object ... obj); |
| Michael Hanl | ca740d7 | 2015-06-16 10:04:58 +0200 | [diff] [blame] | 45 | |
| Michael Hanl | 8abaf9e | 2016-05-23 16:46:35 +0200 | [diff] [blame] | 46 | public String createToken (); |
| 47 | |
| Michael Hanl | ca740d7 | 2015-06-16 10:04:58 +0200 | [diff] [blame] | 48 | /** |
| 49 | * create a random Integer to be used as ID for databases |
| Michael Hanl | 8abaf9e | 2016-05-23 16:46:35 +0200 | [diff] [blame] | 50 | * |
| Michael Hanl | ca740d7 | 2015-06-16 10:04:58 +0200 | [diff] [blame] | 51 | * @return |
| 52 | */ |
| Michael Hanl | 7ab5d10 | 2016-06-03 13:16:09 +0200 | [diff] [blame] | 53 | public String createRandomNumber (Object ... obj); |
| Michael Hanl | ca740d7 | 2015-06-16 10:04:58 +0200 | [diff] [blame] | 54 | |
| Michael Hanl | 8abaf9e | 2016-05-23 16:46:35 +0200 | [diff] [blame] | 55 | public String encodeBase (); |
| Michael Hanl | ca740d7 | 2015-06-16 10:04:58 +0200 | [diff] [blame] | 56 | |
| margaretha | 35e1ca2 | 2023-11-16 22:00:01 +0100 | [diff] [blame] | 57 | // @Deprecated |
| Michael Hanl | c0ed00f | 2016-06-23 14:33:10 +0200 | [diff] [blame] | 58 | //public Map<String, Object> validateMap (Map<String, Object> map) |
| 59 | // throws KustvaktException; |
| Michael Hanl | ca740d7 | 2015-06-16 10:04:58 +0200 | [diff] [blame] | 60 | |
| Michael Hanl | c0ed00f | 2016-06-23 14:33:10 +0200 | [diff] [blame] | 61 | //@Deprecated |
| 62 | //public String validateEntry (String input, String type) |
| 63 | // throws KustvaktException; |
| Michael Hanl | 8abaf9e | 2016-05-23 16:46:35 +0200 | [diff] [blame] | 64 | |
| Michael Hanl | ca740d7 | 2015-06-16 10:04:58 +0200 | [diff] [blame] | 65 | } |