@certchip/signer 0.1.15 → 0.1.19

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -48,11 +48,13 @@ signercli -logout
48
48
  # Login (certificate is installed to Windows certificate store)
49
49
  signer -login https://signer.example.com username
50
50
 
51
- # Sign using Windows signtool.exe
52
- signtool sign /n "Your Certificate CN" /fd sha256 /tr http://timestamp.digicert.com /td sha256 myapp.exe
51
+ # Sign directly with signer (same options as signercli)
52
+ signer myapp.exe # Default: hash-only mode
53
+ signer myapp.exe -o myapp_signed.exe # Specify output file
54
+ signer myapp.exe -file-upload -save-signed # Upload file, save with _signed suffix
53
55
 
54
- # Or sign directly with signer
55
- signer myapp.exe
56
+ # Or use Windows signtool.exe (after login)
57
+ signtool sign /n "Your Certificate CN" /fd sha256 /tr http://timestamp.digicert.com /td sha256 myapp.exe
56
58
 
57
59
  # Logout (removes certificate from store)
58
60
  signer -logout
@@ -76,10 +78,10 @@ This package provides two CLI tools with different purposes:
76
78
 
77
79
  | | signercli | signer |
78
80
  |---|-----------|--------|
79
- | **Purpose** | Direct file signing | Windows signtool integration |
81
+ | **Purpose** | Direct file signing | Direct signing + Windows signtool integration |
80
82
  | **Platform** | Windows, Linux, macOS | Windows only |
81
- | **How it works** | Signs files directly via server API | Provides certificates to Windows crypto system |
82
- | **Best for** | CI/CD, cross-platform, simple signing | Windows developers using signtool.exe |
83
+ | **How it works** | Signs files directly via server API | Signs files directly OR provides certificates to Windows crypto system |
84
+ | **Best for** | CI/CD, cross-platform, simple signing | Windows developers, signtool.exe integration |
83
85
 
84
86
  ### When to use which tool?
85
87
 
@@ -87,7 +89,8 @@ This package provides two CLI tools with different purposes:
87
89
  |----------|-------------|
88
90
  | CI/CD pipeline (any platform) | signercli |
89
91
  | Linux/macOS development | signercli |
90
- | Simple file signing | signercli |
92
+ | Simple file signing | signercli or signer |
93
+ | Windows direct signing | signer or signercli |
91
94
  | Using Windows signtool.exe | signer |
92
95
  | Windows certificate store integration | signer |
93
96
  | Visual Studio post-build signing | signercli or signer |
@@ -273,6 +276,33 @@ signercli <file> LOG_INF # Info output
273
276
  # Available: LOG_NON, LOG_ERR, LOG_WRN, LOG_DBG, LOG_INF
274
277
  ```
275
278
 
279
+ **Version Output:**
280
+
281
+ The `-version` command displays comprehensive version information:
282
+
283
+ ```
284
+ # signercli -version
285
+ Certchip Signer CLI v0.1.18
286
+ Cross-platform code and document signing tool
287
+ Copyright (c) 2025 Certchip. All rights reserved.
288
+
289
+ DLL Versions (Local):
290
+ otpkey.dll: 0.1.18.0
291
+ Certchip.dll: 0.1.18.0
292
+
293
+ DLL Versions (System32):
294
+ otpkey.dll: 0.1.18.0
295
+ Certchip.dll: 0.1.18.0
296
+ ```
297
+
298
+ | Information | Description |
299
+ |-------------|-------------|
300
+ | CLI Version | signercli/signer executable version |
301
+ | Local DLL | DLL versions in the same directory as the executable |
302
+ | System32 DLL | DLL versions installed in Windows System32 folder |
303
+
304
+ > **Note:** DLL version information is Windows-only. On Linux/macOS, only the CLI version is displayed.
305
+
276
306
  #### Output Format
277
307
 
278
308
  Both `signercli` and `signer` support structured output formats for scripting and automation.
@@ -361,19 +391,24 @@ $ signercli -login https://signer.example.com admin -pw secret -format json
361
391
 
362
392
  ### signer (Windows only)
363
393
 
364
- Windows-specific tool that integrates with the Windows cryptographic system via KSP (Key Storage Provider). Instead of signing files directly, it registers certificates in the Windows certificate store, allowing you to use standard Windows tools like `signtool.exe`.
394
+ Windows-specific tool that integrates with the Windows cryptographic system via KSP (Key Storage Provider). It can both sign files directly (like signercli) and register certificates in the Windows certificate store for use with `signtool.exe`.
365
395
 
366
- **How it works:**
367
- 1. Login fetches your certificate from the server
368
- 2. Certificate is registered in Windows certificate store
369
- 3. KSP provider enables private key operations via the server
370
- 4. Use `signtool.exe` or other Windows signing tools normally
396
+ **Two signing methods:**
397
+ 1. **Direct signing** - Sign files directly with `signer <file>` (same as signercli)
398
+ 2. **signtool integration** - Login to register certificate, then use Windows signtool.exe
371
399
 
372
400
  ```bash
373
401
  # Authentication (fetches certificate to Windows store)
374
402
  signer -login <url> [username] # Login and register certificate
375
403
  signer -logout # Logout and remove certificate
376
- signer -list # List available certificates
404
+
405
+ # File Signing (direct - same options as signercli)
406
+ signer <file> [options] # Sign a file directly
407
+ -o <path> # Output file path
408
+ -hash-only # Hash-based signing (default)
409
+ -file-upload # Upload entire file to server
410
+ -save-signed # Save with _signed suffix
411
+ -profile <name> # Use specific signing profile
377
412
 
378
413
  # Certificate Management
379
414
  signer -cert -list # List available certificates
@@ -393,11 +428,46 @@ signer -container # List key containers
393
428
  signer -install # Install DLLs to System32
394
429
  signer -uninstall # Remove DLLs from System32
395
430
 
396
- # After login, use standard Windows signing tools
431
+ # Version & Help
432
+ signer -version # Show version and DLL info
433
+ signer -help # Show usage help
434
+
435
+ # After login, use standard Windows signing tools (signtool integration)
397
436
  signtool sign /n "Certificate Name" /fd sha256 myapp.exe
398
437
  signtool sign /sha1 <thumbprint> /fd sha256 /tr http://timestamp.digicert.com myapp.exe
399
438
  ```
400
439
 
440
+ **Examples:**
441
+ ```bash
442
+ # Direct signing with output path
443
+ signer myapp.exe -o myapp_signed.exe
444
+
445
+ # Upload entire file for signing
446
+ signer myapp.exe -file-upload -o myapp_signed.exe
447
+
448
+ # Hash-only signing with _signed suffix
449
+ signer myapp.exe -save-signed
450
+ ```
451
+
452
+ **Version Output:**
453
+
454
+ ```
455
+ # signer -version
456
+ Certchip Signer v0.1.18
457
+ Windows Key Storage Provider and Code Signing Tool
458
+ Copyright (c) 2025 Certchip. All rights reserved.
459
+
460
+ DLL Versions (Local):
461
+ otpkey.dll: 0.1.18.0
462
+ Certchip.dll: 0.1.18.0
463
+
464
+ DLL Versions (System32):
465
+ otpkey.dll: 0.1.18.0
466
+ Certchip.dll: 0.1.18.0
467
+ ```
468
+
469
+ The version output helps diagnose DLL version mismatches between local and system-wide installations.
470
+
401
471
  ---
402
472
 
403
473
  ### DLL System Installation (Windows)
@@ -533,7 +603,7 @@ signercli -verify myapp.exe -profile automation # Outputs JSON automatically
533
603
  | **Platform** | Windows, Linux, macOS | Windows only |
534
604
  | **Dependencies** | None (static build) | otpkey.dll, Certchip.dll |
535
605
  | **Size** | 9.3 MB | 420 KB + 6.9 MB DLLs |
536
- | **Signing method** | Direct (via server API) | Indirect (via Windows crypto) |
606
+ | **Signing method** | Direct (via server API) | Direct OR via Windows crypto (signtool) |
537
607
  | **Windows KSP** | No | Yes |
538
608
  | **signtool compatible** | No | Yes |
539
609
  | **UAC auto-elevation** | Yes | Yes |
Binary file
Binary file
Binary file
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@certchip/signer",
3
- "version": "0.1.15",
3
+ "version": "0.1.19",
4
4
  "description": "Cross-platform code and document signing CLI tool",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",