portainer/portainer · error

error decrypting file: %w

Error message

error decrypting file: %w

What it means

Error "error decrypting file: %w" thrown in portainer/portainer.

Source

Thrown at api/crypto/aes.go:79

	return aesDecrypt(input, passphrase, fips.FIPSMode())
}

func aesDecrypt(input io.Reader, passphrase []byte, fipsMode bool) (io.Reader, error) {
	// Read file header to determine how it was encrypted
	inputReader := bufio.NewReader(input)
	header, err := inputReader.Peek(len(aesGcmFIPSHeader))
	if err != nil {
		return nil, fmt.Errorf("error reading encrypted backup file header: %w", err)
	}

	if strings.HasPrefix(string(header), aesGcmFIPSHeader) {
		if !fipsMode {
			return nil, errors.New("fips encrypted file detected but fips mode is not enabled")
		}

		reader, err := aesDecryptGCMFIPS(inputReader, passphrase)
		if err != nil {
			return nil, fmt.Errorf("error decrypting file: %w", err)
		}

		return reader, nil
	}

	if strings.HasPrefix(string(header), aesGcmHeader) {
		if fipsMode {
			return nil, errors.New("fips mode is enabled but non-fips encrypted file detected")
		}

		reader, err := aesDecryptGCM(inputReader, passphrase)
		if err != nil {
			return nil, fmt.Errorf("error decrypting file: %w", err)
		}

		return reader, nil
	}

View on GitHub (pinned to 17e74456ff)

When it happens

Trigger: Thrown at api/crypto/aes.go:79 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of portainer/portainer@17e74456ff (2026-08-26). Data as JSON: /api/errors/a03dc63a973219be. Report an issue: GitHub.