View Source QRNBU.Validators.DigitalSignature (NBU payment QR v0.3.3)

Validator for digital signature strings.

Validates digital signatures used to authenticate invoices in V003 format.

Summary

Functions

Validates digital signature.

Functions

@spec validate(String.t()) :: {:ok, String.t()} | {:error, String.t()}

Validates digital signature.

Rules

  • Maximum 1000 characters
  • Base64-encoded string format expected

Examples

iex> QRNBU.Validators.DigitalSignature.validate("SGVsbG8gV29ybGQ=")
{:ok, "SGVsbG8gV29ybGQ="}

iex> QRNBU.Validators.DigitalSignature.validate("")
{:error, "Digital signature cannot be empty"}

iex> QRNBU.Validators.DigitalSignature.validate(String.duplicate("A", 1001))
{:error, "Digital signature must not exceed 1000 characters"}