From 7d9b0f5ecb2332e7516ecc676f0275294359c952 Mon Sep 17 00:00:00 2001 From: Keshan Withanage Date: Mon, 26 Aug 2019 23:05:55 +1000 Subject: [PATCH 1/4] Updated CommunicationFacadeBean.java --- .../facade/impl/CommunicationFacadeBean.java | 33 ++++++++++--------- 1 file changed, 18 insertions(+), 15 deletions(-) diff --git a/rest_api/src/main/java/com/scorelab/ioe/security/communication/facade/impl/CommunicationFacadeBean.java b/rest_api/src/main/java/com/scorelab/ioe/security/communication/facade/impl/CommunicationFacadeBean.java index de0422e..c3200fb 100644 --- a/rest_api/src/main/java/com/scorelab/ioe/security/communication/facade/impl/CommunicationFacadeBean.java +++ b/rest_api/src/main/java/com/scorelab/ioe/security/communication/facade/impl/CommunicationFacadeBean.java @@ -20,12 +20,19 @@ import com.scorelab.ioe.security.communication.service.impl.RedisSentinelServiceBean; public class CommunicationFacadeBean implements CommunicationFacade { + + @Override - public String requestKafkaBrokers() { - KafkaBrokersService kafkaBrokersService = new KafkaBrokersServiceBean(); - return kafkaBrokersService.requestKafkaBrokers(); + public String post(String target, String find, LinkedHashMap microservice, LinkedHashMap parameters) throws InvalidResponseException { + JSONObject service = new JSONObject(post(target, find, microservice)); + return post(service.getString("target"), service.getString("path"), parameters); } - + @Override + public String get(String server, String path) throws InvalidResponseException { + GETService getService = new GETServiceBean(); + return getService.get(server, path); + } + @Override public Set requestRedisSentinelsHosts() { RedisSentinelService redisSentinelService = new RedisSentinelServiceBean(); @@ -39,26 +46,22 @@ public LinkedHashMap requestNodeConfigs() { } @Override - public String get(String server, String path) throws InvalidResponseException { - GETService getService = new GETServiceBean(); - return getService.get(server, path); + public String requestKafkaBrokers() { + KafkaBrokersService kafkaBrokersService = new KafkaBrokersServiceBean(); + return kafkaBrokersService.requestKafkaBrokers(); } - @Override - public String get(String target, String find, LinkedHashMap microservice) throws InvalidResponseException { - JSONObject service = new JSONObject(post(target, find, microservice)); - return get(service.getString("target"), service.getString("path")); - } - @Override public String post(String server, String path, LinkedHashMap parameters) throws InvalidResponseException { POSTService postService = new POSTServiceBean(); return postService.post(server, path, parameters); } + + @Override - public String post(String target, String find, LinkedHashMap microservice, LinkedHashMap parameters) throws InvalidResponseException { + public String get(String target, String find, LinkedHashMap microservice) throws InvalidResponseException { JSONObject service = new JSONObject(post(target, find, microservice)); - return post(service.getString("target"), service.getString("path"), parameters); + return get(service.getString("target"), service.getString("path")); } } \ No newline at end of file From fe26449e5d21ee48316ede5e68623089212c8bb7 Mon Sep 17 00:00:00 2001 From: Keshan Withanage Date: Mon, 26 Aug 2019 23:07:22 +1000 Subject: [PATCH 2/4] Updated CommunicationFacade.java --- .../communication/facade/api/CommunicationFacade.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/rest_api/src/main/java/com/scorelab/ioe/security/communication/facade/api/CommunicationFacade.java b/rest_api/src/main/java/com/scorelab/ioe/security/communication/facade/api/CommunicationFacade.java index c29ca05..898728d 100644 --- a/rest_api/src/main/java/com/scorelab/ioe/security/communication/facade/api/CommunicationFacade.java +++ b/rest_api/src/main/java/com/scorelab/ioe/security/communication/facade/api/CommunicationFacade.java @@ -11,13 +11,13 @@ public interface CommunicationFacade { LinkedHashMap requestNodeConfigs(); - String get(String server, String path) throws InvalidResponseException; - + String post(String target, String find, LinkedHashMap microservice, LinkedHashMap parameters) throws InvalidResponseException; + String get(String target, String find, LinkedHashMap microservice) throws InvalidResponseException; + + String get(String server, String path) throws InvalidResponseException; String post(String server, String path, LinkedHashMap parameters) throws InvalidResponseException; - String post(String target, String find, LinkedHashMap microservice, LinkedHashMap parameters) throws InvalidResponseException; - String requestKafkaBrokers(); } \ No newline at end of file From 44d1402ddf57b2813797960af8e452cd29f29ac3 Mon Sep 17 00:00:00 2001 From: Keshan Withanage Date: Mon, 26 Aug 2019 23:09:49 +1000 Subject: [PATCH 3/4] Updated TokenProvider.java --- .../ioe/security/jwt/TokenProvider.java | 43 ++++++++++--------- 1 file changed, 22 insertions(+), 21 deletions(-) diff --git a/rest_api/src/main/java/com/scorelab/ioe/security/jwt/TokenProvider.java b/rest_api/src/main/java/com/scorelab/ioe/security/jwt/TokenProvider.java index c5ddfd1..64e6433 100644 --- a/rest_api/src/main/java/com/scorelab/ioe/security/jwt/TokenProvider.java +++ b/rest_api/src/main/java/com/scorelab/ioe/security/jwt/TokenProvider.java @@ -45,26 +45,6 @@ public void init() { 1000 * jHipsterProperties.getSecurity().getAuthentication().getJwt().getTokenValidityInSecondsForRememberMe(); } - public String createToken(Authentication authentication, Boolean rememberMe) { - String authorities = authentication.getAuthorities().stream() - .map(authority -> authority.getAuthority()) - .collect(Collectors.joining(",")); - - long now = (new Date()).getTime(); - Date validity; - if (rememberMe) { - validity = new Date(now + this.tokenValidityInSecondsForRememberMe); - } else { - validity = new Date(now + this.tokenValidityInSeconds); - } - - return Jwts.builder() - .setSubject(authentication.getName()) - .claim(AUTHORITIES_KEY, authorities) - .signWith(SignatureAlgorithm.HS512, secretKey) - .setExpiration(validity) - .compact(); - } public Authentication getAuthentication(String token) { Claims claims = Jwts.parser() @@ -82,7 +62,6 @@ public Authentication getAuthentication(String token) { return new UsernamePasswordAuthenticationToken(principal, "", authorities); } - public boolean validateToken(String authToken) { try { Jwts.parser().setSigningKey(secretKey).parseClaimsJws(authToken); @@ -92,4 +71,26 @@ public boolean validateToken(String authToken) { return false; } } + + public String createToken(Authentication authentication, Boolean rememberMe) { + String authorities = authentication.getAuthorities().stream() + .map(authority -> authority.getAuthority()) + .collect(Collectors.joining(",")); + + long now = (new Date()).getTime(); + Date validity; + if (rememberMe) { + validity = new Date(now + this.tokenValidityInSecondsForRememberMe); + } else { + validity = new Date(now + this.tokenValidityInSeconds); + } + + return Jwts.builder() + .setSubject(authentication.getName()) + .claim(AUTHORITIES_KEY, authorities) + .signWith(SignatureAlgorithm.HS512, secretKey) + .setExpiration(validity) + .compact(); + } + } From 27186eb7d0d9ec1e98f2adf5dbeafc6591f992e2 Mon Sep 17 00:00:00 2001 From: Keshan Withanage Date: Mon, 26 Aug 2019 23:12:48 +1000 Subject: [PATCH 4/4] Updated intel header --- .../scorelab/ioe/security/libaesc/intel-aes.h | 31 +++++++++++-------- .../ioe/security/libaesc/jcrypto_jni.c | 8 +++-- 2 files changed, 23 insertions(+), 16 deletions(-) diff --git a/rest_api/src/main/java/com/scorelab/ioe/security/libaesc/intel-aes.h b/rest_api/src/main/java/com/scorelab/ioe/security/libaesc/intel-aes.h index a19e250..eacd96d 100755 --- a/rest_api/src/main/java/com/scorelab/ioe/security/libaesc/intel-aes.h +++ b/rest_api/src/main/java/com/scorelab/ioe/security/libaesc/intel-aes.h @@ -80,8 +80,6 @@ int intel_aes_decrypt_cbc_256(aes_ctx_t cx, unsigned char *output, unsigned int inputLen, unsigned int blocksize); - - #define intel_aes_ecb_worker(encrypt, keysize) \ ((encrypt) \ ? ((keysize) == 16 ? intel_aes_encrypt_ecb_128 : \ @@ -91,17 +89,6 @@ int intel_aes_decrypt_cbc_256(aes_ctx_t cx, unsigned char *output, (keysize) == 24 ? intel_aes_decrypt_ecb_192 : \ intel_aes_decrypt_ecb_256)) - -#define intel_aes_cbc_worker(encrypt, keysize) \ - ((encrypt) \ - ? ((keysize) == 16 ? intel_aes_encrypt_cbc_128 : \ - (keysize) == 24 ? intel_aes_encrypt_cbc_192 : \ - intel_aes_encrypt_cbc_256) \ - : ((keysize) == 16 ? intel_aes_decrypt_cbc_128 : \ - (keysize) == 24 ? intel_aes_decrypt_cbc_192 : \ - intel_aes_decrypt_cbc_256)) - - #define intel_aes_init(encrypt, keysize, ctx) \ do { \ if (encrypt) { \ @@ -120,3 +107,21 @@ int intel_aes_decrypt_cbc_256(aes_ctx_t cx, unsigned char *output, intel_aes_decrypt_init_256(key, ctx->expandedKey); \ } \ } while (0) + + +void intel_aes_gcmDEC(const unsigned char* CT, + unsigned char* PT, + void *Gctx, + unsigned long len); + +#define intel_aes_cbc_worker(encrypt, keysize) \ + ((encrypt) \ + ? ((keysize) == 16 ? intel_aes_encrypt_cbc_128 : \ + (keysize) == 24 ? intel_aes_encrypt_cbc_192 : \ + intel_aes_encrypt_cbc_256) \ + : ((keysize) == 16 ? intel_aes_decrypt_cbc_128 : \ + (keysize) == 24 ? intel_aes_decrypt_cbc_192 : \ + intel_aes_decrypt_cbc_256)) + + + diff --git a/rest_api/src/main/java/com/scorelab/ioe/security/libaesc/jcrypto_jni.c b/rest_api/src/main/java/com/scorelab/ioe/security/libaesc/jcrypto_jni.c index 3debd5e..5354654 100755 --- a/rest_api/src/main/java/com/scorelab/ioe/security/libaesc/jcrypto_jni.c +++ b/rest_api/src/main/java/com/scorelab/ioe/security/libaesc/jcrypto_jni.c @@ -133,9 +133,7 @@ JNIEXPORT errno_t JNICALL Java_br_com_dojot_jcrypto_jni_JCrypto_aes_1gcm_1init /* Check if context is valid */ result = gcmCheckContext(ctx); - if(result != SUCCESSFULL_OPERATION) { - goto FAIL; - } + /* If there is any IV, maps it to C variable */ if(iv_buf != NULL) { @@ -151,6 +149,10 @@ JNIEXPORT errno_t JNICALL Java_br_com_dojot_jcrypto_jni_JCrypto_aes_1gcm_1init goto FAIL; } + if(result != SUCCESSFULL_OPERATION) { + goto FAIL; + } + FAIL: if(result != SUCCESSFULL_OPERATION) { memset(ctx, 0, sizeof(aes_gcm_ctx_st));