.tgz archive via SFTP.
Step-by-Step Process
Step 1 – Request the public key certificate
Contact Hellgate Support to request the public key certificate for token import encryption.
Include in your request:
- Target Cluster ID (the Guardian instance where tokens will be imported)
- Point of contact for follow-up questions
Step 2 – Prepare the import data
Prepare your PCI token data in JSONL format (JSON Lines), where each line is a complete JSON object.
Step 3 – Encrypt and package the data
Encrypt your data using the provided Starfish certificate and package it as a
.tgz archive.Step 4 – Upload the encrypted archive
Upload the encrypted
.tgz archive to a SFTP location.Verify that the upload completed successfully and that the file is accessible at the specified location.
Import Data Format
The imported.tgz archive must contain a manifest JSON file and encrypted JSONL records containing the PCI token data.
Encryption Details
The import uses a hybrid encryption scheme:- AES encryption is used to encrypt the JSONL records file
- The AES key is encrypted using RSA-OAEP-256 with Hellgate’s provided certificate’s public key
- The encrypted AES key, initialization vector (IV), and authentication tag must be stored in the manifest
Manifest Format
Themanifest.json file must contain metadata about the import and encryption parameters:
| Field | Description |
|---|---|
version | Import format version |
import_id | Unique identifier for this import |
created_at | Timestamp when the import was created |
target_guardian_instance | The target Guardian instance identifier |
encryption.algorithm | The RSA encryption algorithm used (RSA-OAEP-256) |
encryption.recipient.subject | Certificate subject (organization identity) |
encryption.recipient.issuer | Certificate issuer (CA) |
encryption.recipient.serial | Certificate serial number (hex) |
encryption.recipient.fingerprint | Certificate fingerprint (SHA-256) |
encryption.encrypted_key | AES key encrypted with Starfish’s public key |
encryption.iv | Initialization vector for AES encryption |
encryption.tag | Authentication tag for AES-GCM |
content.record_count | Total number of records in the import |
content.checksum | SHA-256 checksum of the decrypted JSONL content |
Record Format
Thetokens.jsonl.enc file must contain encrypted JSONL (JSON Lines) data. After decryption, each line is a JSON object representing a PCI token record.
Each record must follow this structure:
Common Issues & Troubleshooting
How do I request the public key certificate?
How do I request the public key certificate?
Contact Hellgate Support with your import request details. The certificate will be provided in PEM format.
What if my data format doesn't match?
What if my data format doesn't match?
Ensure your JSONL records follow the exact format specified. Each line must be a valid JSON object with the required card fields.
How long does the import process take?
How long does the import process take?
Import times vary based on the volume of data. Starfish will notify you once the import is complete or if any issues arise.
What happens if the SFTP upload fails?
What happens if the SFTP upload fails?
Contact Hellgate Support immediately. You may need to re-upload the archive or provide an alternative delivery method.