Class KeymanagerUtil

java.lang.Object
io.mosip.kernel.keymanagerservice.util.KeymanagerUtil

@Component public class KeymanagerUtil extends Object
Utility class for Keymanager
Since:
1.0.0
Author:
Dharmesh Khandelwal, Urvil Joshi
  • Constructor Details

    • KeymanagerUtil

      public KeymanagerUtil()
  • Method Details

    • isValidTimestamp

      public boolean isValidTimestamp(LocalDateTime timeStamp, KeyAlias keyAlias, int preExpireDays)
      Function to check valid timestamp
      Parameters:
      timeStamp - timeStamp
      keyAlias - keyAlias
      Returns:
      true if timestamp is valid, else false
    • isOverlapping

      public boolean isOverlapping(LocalDateTime timeStamp, LocalDateTime policyExpiryTime, LocalDateTime keyGenerationTime, LocalDateTime keyExpiryTime)
      Function to check if timestamp is overlapping
      Parameters:
      timeStamp - timeStamp
      policyExpiryTime - policyExpiryTime
      keyGenerationTime - keyGenerationTime
      keyExpiryTime - keyExpiryTime
      Returns:
      true if timestamp is overlapping, else false
    • isValidReferenceId

      public boolean isValidReferenceId(String referenceId)
      Function to check is reference id is valid
      Parameters:
      referenceId - referenceId
      Returns:
      true if referenceId is valid, else false
    • setMetaData

      public <T extends BaseEntity> T setMetaData(T entity)
      Function to set metadata
      Type Parameters:
      T - is a type parameter
      Parameters:
      entity - entity of T type
      Returns:
      Entity with metadata
    • encryptKey

      public byte[] encryptKey(PrivateKey privateKey, PublicKey masterKey)
      Function to encrypt key
      Parameters:
      privateKey - privateKey
      masterKey - masterKey
      Returns:
      encrypted key
    • decryptKey

      public byte[] decryptKey(byte[] key, PrivateKey privateKey, PublicKey publicKey)
      Function to decrypt key
      Parameters:
      key - key
      privateKey - privateKey
      Returns:
      decrypted key
    • decryptKey

      public byte[] decryptKey(byte[] key, PrivateKey privateKey, PublicKey publicKey, String keystoreType)
    • 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
    • isCertificateValid

      public void isCertificateValid(io.mosip.kernel.core.keymanager.model.CertificateEntry<X509Certificate,PrivateKey> certificateEntry, Date inputDate)
    • privateKeyExtractor

      public PrivateKey privateKeyExtractor(InputStream privateKeyInputStream)
    • isValidResponseType

      public boolean isValidResponseType(String responseType)
    • isValidApplicationId

      public boolean isValidApplicationId(String appId)
    • isValidCertificateData

      public boolean isValidCertificateData(String certData)
    • convertToCertificate

      public Certificate convertToCertificate(String certData)
    • convertToCertificate

      public Certificate convertToCertificate(byte[] certDataBytes)
    • getPEMFormatedData

      public String getPEMFormatedData(Object anyObject)
    • getCertificateParameters

      public io.mosip.kernel.core.keymanager.model.CertificateParameters getCertificateParameters(X500Principal latestCertPrincipal, LocalDateTime notBefore, LocalDateTime notAfter)
    • getCertificateParameters

      public io.mosip.kernel.core.keymanager.model.CertificateParameters getCertificateParameters(KeyPairGenerateRequestDto request, LocalDateTime notBefore, LocalDateTime notAfter, String appId)
    • getCertificateParameters

      public io.mosip.kernel.core.keymanager.model.CertificateParameters getCertificateParameters(CSRGenerateRequestDto request, LocalDateTime notBefore, LocalDateTime notAfter)
    • getCertificateParameters

      public io.mosip.kernel.core.keymanager.model.CertificateParameters getCertificateParameters(String cName, LocalDateTime notBefore, LocalDateTime notAfter)
    • getCSR

      public String getCSR(PrivateKey privateKey, PublicKey publicKey, io.mosip.kernel.core.keymanager.model.CertificateParameters certParams, String keyAlgorithm)
    • destoryKey

      public void destoryKey(PrivateKey privateKey)
    • destoryKey

      public void destoryKey(SecretKey secretKey)
    • convertToUTC

      public LocalDateTime convertToUTC(Date anyDate)
    • getUniqueIdentifier

      public String getUniqueIdentifier(String inputStr)
    • checkAppIdAllowedForEd25519KeyGen

      public void checkAppIdAllowedForEd25519KeyGen(String applicationId)