Class OtpUtilities

java.lang.Object
es.kukenan.smartfi.microservice.firm.utils.OtpUtilities

@Component public class OtpUtilities extends Object
Service utilities class for OTP operations.
  • Field Details

    • codeLength

      @Value("${opt.generated.code.length}") private int codeLength
      length for otp.
    • totpGenerator

      @Autowired(required=false) private es.kukenan.smartfi.common.utils.otp.TotpGenerator totpGenerator
      TOTP generator, if one is configured.
  • Constructor Details

    • OtpUtilities

      public OtpUtilities()
  • Method Details

    • generateOtp

      public String generateOtp() throws NoSuchAlgorithmException
      Generates a random OTP. NativePRNG is used as algorithm for generating a secure random. Read all about the algorithms here: http://www.moi.vonos .net/java/securerandom/ and http
      Returns:
      the generated OTP
      Throws:
      NoSuchAlgorithmException - exception.
    • createExternalOtpValidation

      public ExternalOtpValidation createExternalOtpValidation(User user, FirmControl signature, String operationId, int backoffice, OperationType operationType, String challengeInput, Status status, String tppId) throws NoSuchAlgorithmException
      Create an External OTP Validation.
      Parameters:
      user - user.
      signature - signature.
      operationId - operation identifier.
      backoffice - backoffice.
      operationType - operation type.
      challengeInput - challenge input.
      status - status.
      tppId - tpp id.
      Returns:
      an External OTP Validation
      Throws:
      NoSuchAlgorithmException - No cryptographic algorithm
    • createOperationReferenceDataDto

      public es.kukenan.smartfi.microservice.firm.api.externalotp.response.OperationReferenceDataDto createOperationReferenceDataDto(String uuid, String operationReference)
      Create DTO for Operation Reference Data.
      Parameters:
      uuid - uuid.
      operationReference - operation reference.
      Returns:
      a DTO for Operation Reference Data.