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 Summary
Constructors Constructor Description KeymanagerUtil()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description CertificateconvertToCertificate(byte[] certDataBytes)CertificateconvertToCertificate(String certData)LocalDateTimeconvertToUTC(Date anyDate)byte[]decryptKey(byte[] key, PrivateKey privateKey, PublicKey publicKey)Function to decrypt keybyte[]decryptKey(byte[] key, PrivateKey privateKey, PublicKey publicKey, String keystoreType)voiddestoryKey(PrivateKey privateKey)voiddestoryKey(SecretKey secretKey)byte[]encryptKey(PrivateKey privateKey, PublicKey masterKey)Function to encrypt keyio.mosip.kernel.core.keymanager.model.CertificateParametersgetCertificateParameters(CSRGenerateRequestDto request, LocalDateTime notBefore, LocalDateTime notAfter)io.mosip.kernel.core.keymanager.model.CertificateParametersgetCertificateParameters(KeyPairGenerateRequestDto request, LocalDateTime notBefore, LocalDateTime notAfter, String appId)io.mosip.kernel.core.keymanager.model.CertificateParametersgetCertificateParameters(String cName, LocalDateTime notBefore, LocalDateTime notAfter)io.mosip.kernel.core.keymanager.model.CertificateParametersgetCertificateParameters(X500Principal latestCertPrincipal, LocalDateTime notBefore, LocalDateTime notAfter)StringgetCSR(PrivateKey privateKey, PublicKey publicKey, io.mosip.kernel.core.keymanager.model.CertificateParameters certParams)StringgetPEMFormatedData(Object anyObject)StringgetUniqueIdentifier(String inputStr)voidisCertificateValid(io.mosip.kernel.core.keymanager.model.CertificateEntry<X509Certificate,PrivateKey> certificateEntry, Date inputDate)booleanisOverlapping(LocalDateTime timeStamp, LocalDateTime policyExpiryTime, LocalDateTime keyGenerationTime, LocalDateTime keyExpiryTime)Function to check if timestamp is overlappingbooleanisValidApplicationId(String appId)booleanisValidCertificateData(String certData)booleanisValidReferenceId(String referenceId)Function to check is reference id is validbooleanisValidResponseType(String responseType)booleanisValidTimestamp(LocalDateTime timeStamp, KeyAlias keyAlias, int preExpireDays)Function to check valid timestampLocalDateTimeparseToLocalDateTime(String dateTime)Parse a date string of pattern UTC_DATETIME_PATTERN intoLocalDateTimePrivateKeyprivateKeyExtractor(InputStream privateKeyInputStream)<T extends BaseEntity>
TsetMetaData(T entity)Function to set metadata
-
-
-
Method Detail
-
isValidTimestamp
public boolean isValidTimestamp(LocalDateTime timeStamp, KeyAlias keyAlias, int preExpireDays)
Function to check valid timestamp- Parameters:
timeStamp- timeStampkeyAlias- 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- timeStamppolicyExpiryTime- policyExpiryTimekeyGenerationTime- keyGenerationTimekeyExpiryTime- 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- privateKeymasterKey- masterKey- Returns:
- encrypted key
-
decryptKey
public byte[] decryptKey(byte[] key, PrivateKey privateKey, PublicKey publicKey)Function to decrypt key- Parameters:
key- keyprivateKey- 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 intoLocalDateTime- Parameters:
dateTime- of typeStringof pattern UTC_DATETIME_PATTERN- Returns:
- a
LocalDateTimeof 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)
-
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)
-
destoryKey
public void destoryKey(PrivateKey privateKey)
-
destoryKey
public void destoryKey(SecretKey secretKey)
-
convertToUTC
public LocalDateTime convertToUTC(Date anyDate)
-
-