**Description:**
We are looking for an expert to configure a tool to sign PDF documents using a physical USB token that does not allow extraction of the certificate. The solution must work on a Linux command line interface. The only requirement for signing should be the token's PIN.
**Project Details:**
**Background:**
- We are company from Finland, and we have purchased a Comodo Document Signing Certificate. We received a USB token (SafeNet eToken 5100) from Comodo for document signing.
- The certificate cannot be extracted from the token, and it must be used directly from the physical USB token.
- Our goal is to sign PDF documents such that Adobe Acrobat Reader correctly recognizes them as signed.
**Requirements:**
- The solution must allow signing PDF documents using a physical USB token on a Linux command line.
- The command for signing should be in the format:
```
signpdf -i input.pdf -o output.pdf -p token_pin_aka_password
```
- The solution can be an open-source or affordable ready-to-download/buy option, but it must be proven to work on Ubuntu 20.04 via the command line.
- The configuration should utilize the following details discovered from our setup:
```plaintext
p11tool --provider /usr/lib/libeToken.so --list-keys --login
Token '[REMOVED]' with URL '[REMOVED]' requires user PIN
Enter PIN:
Object 0:
URL: [REMOVED]
Type: Private key (RSA-4096)
Label:
Flags: CKA_WRAP/UNWRAP; CKA_PRIVATE; CKA_NEVER_EXTRACTABLE; CKA_SENSITIVE;
ID: [REMOVED]
```
```plaintext
usb-devices:
T: Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 11 Spd=12 MxCh= 0
D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
P: Vendor=0529 ProdID=0620 Rev=00.01
S: Manufacturer=SafeNet
S: Product=Token JC
C: #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=50mA
I: If#=0x0 Alt= 0 #EPs= 3 Cls=0b(scard) Sub=00 Prot=00 Driver=usbfs
```
```plaintext
pkcs11-tool --list-slots --module /usr/lib/libeToken.so
Available slots:
Slot 0 (0x0): SafeNet eToken 5100 [eToken 5110 SC] 00 00
token label : [REMOVED]
token manufacturer : Gemalto
token model : ID Prime MD
token flags : login required, rng, token initialized, PIN initialized, other flags=0x200
hardware version : 0.0
firmware version : 0.0
serial num : [REMOVED]
pin min/max : 4/16
```
**Deliverables:**
1. **Configuration and setup instructions**: Detailed steps to configure the tool to work with the provided USB token on a Linux environment.
2. **Sample command**: A sample command to sign PDF documents using the physical USB token, matching the required format:
```bash
signpdf -i input.pdf -o output.pdf -p token_pin_aka_password
```
3. **Documentation**: Any additional documentation or scripts needed to ensure the signing process works seamlessly.
**Timeline:** We need this setup as soon as possible.
**Contact Information:**
Please contact us if you have any questions or need further details. We look forward to working with you to achieve this setup.