Class CryptomanagerUtils

java.lang.Object
io.mosip.kernel.cryptomanager.util.CryptomanagerUtils

@RefreshScope @Component public class CryptomanagerUtils extends Object
Util class for this project.
Since:
1.0.0
Author:
Urvil Joshi, Manoj SP
  • Constructor Details

    • CryptomanagerUtils

      public CryptomanagerUtils()
  • Method Details

    • getCertificate

      public Certificate getCertificate(CryptomanagerRequestDto cryptomanagerRequestDto)
      Calls Key-Manager-Service to get public key of an application.
      Parameters:
      cryptomanagerRequestDto - CryptomanagerRequestDto instance
      Returns:
      Certificate returned by Key Manager Service
    • getDecryptedSymmetricKey

      public SecretKey getDecryptedSymmetricKey(CryptomanagerRequestDto cryptomanagerRequestDto)
      Calls Key-Manager-Service to decrypt symmetric key.
      Parameters:
      cryptomanagerRequestDto - CryptomanagerRequestDto instance
      Returns:
      Decrypted SecretKey from Key Manager Service
    • nullOrTrim

      public static String nullOrTrim(String parameter)
      Change Parameter form to trim if not null.
      Parameters:
      parameter - parameter
      Returns:
      null if null;else trimmed string
    • isValidSalt

      public boolean isValidSalt(String salt)
      Function to check is salt is valid.
      Parameters:
      salt - salt
      Returns:
      true if salt is valid, else false
    • parseToLocalDateTime

      public LocalDateTime parseToLocalDateTime(String dateTime)
      Parse a date string of pattern UTC_DATETIME_PATTERN into LocalDateTime.
      Parameters:
      dateTime - of type String of pattern UTC_DATETIME_PATTERN
      Returns:
      a LocalDateTime of given pattern
    • hexDecode

      public byte[] hexDecode(String hexData)
      hex decode string to byte array
      Parameters:
      hexData - type String
      Returns:
      a
      invalid reference
      byte[]
      of given data
    • getCertificateThumbprint

      public byte[] getCertificateThumbprint(Certificate cert)
    • getCertificateThumbprintInHex

      public String getCertificateThumbprintInHex(Certificate cert)
    • concatCertThumbprint

      public byte[] concatCertThumbprint(byte[] certThumbprint, byte[] encryptedKey)
    • generateRandomBytes

      public byte[] generateRandomBytes(int size)
    • concatByteArrays

      public byte[] concatByteArrays(byte[] array1, byte[] array2)
    • parseEncryptKeyHeader

      public byte[] parseEncryptKeyHeader(byte[] encryptedKey)
    • isDataValid

      public boolean isDataValid(String anyData)
    • decodeBase64Data

      public byte[] decodeBase64Data(String anyBase64EncodedData)
    • hasKeyAccess

      public boolean hasKeyAccess(String applicationId)
    • validateKeyIdentifierIds

      public void validateKeyIdentifierIds(String applicationId, String referenceId)
    • getCertificate

      public Certificate getCertificate(String applicationId, String referenceId)
    • validateEncKeySize

      public void validateEncKeySize(Certificate encCert)
    • validateEncryptData

      public void validateEncryptData(String reqDataToEncrypt)
    • checkForValidJsonData

      public void checkForValidJsonData(String decodedDataToEncrypt)
    • isJsonValid

      public boolean isJsonValid(String jsonInString)
    • isIncludeAttrsValid

      public boolean isIncludeAttrsValid(Boolean includes, Boolean defaultValue)
    • convertToCertificate

      public Certificate convertToCertificate(String certData)
    • validateInputData

      public void validateInputData(String reqDataToDigest)