คู่มือคำสั่ง eSigner CodeSignTool

CodeSignTool เป็นยูทิลิตี้บรรทัดคำสั่ง Java แบบหลายแพลตฟอร์มที่ปลอดภัยและเน้นความเป็นส่วนตัวสำหรับการเซ็นชื่อจากระยะไกล Microsoft Authenticode และวัตถุโค้ด Java ด้วย eSigner ใบรับรองการลงนามรหัส EV แฮชของไฟล์จะถูกส่งไปยัง SSL.com เพื่อลงนามเพื่อไม่ให้รหัสนั้นถูกส่งไป เหมาะอย่างยิ่งในกรณีที่ต้องมีการเซ็นชื่อไฟล์ที่ละเอียดอ่อน แต่ไม่ควรส่งผ่านการต่อสายเพื่อเซ็นชื่อ CodeSignTool ยังเหมาะอย่างยิ่งสำหรับกระบวนการแบทช์อัตโนมัติสำหรับการเซ็นชื่อปริมาณมากหรือการรวมเข้ากับเวิร์กโฟลว์ไปป์ไลน์ CI/CD ที่มีอยู่

หากคุณต้องการลองใช้ CodeSignTool ด้วยบัญชีทดลองและใบรับรอง โปรดอ่าน eSigner Demo Credentials และใบรับรอง สำหรับข้อมูลประจำตัวและข้อมูลการกำหนดค่า

หากต้องการทราบประเภทไฟล์ทั้งหมดที่ CodeSignTool สามารถลงนามได้ โปรดดูบทความนี้: ประเภทไฟล์ที่รองรับ eSigner

หมายเหตุ: ใน CodeSignTool เวอร์ชัน v1.3.2 การลงนามไฟล์ mscab จะดำเนินการโดยใช้การประมวลผลในหน่วยความจำ แทนที่จะใช้ไดเร็กทอรี tmp

สำหรับคำแนะนำวิธีการ ทำการลงนามรหัส EV โดยอัตโนมัติโดยใช้ signtool.exe หรือ certutil.exe กรุณาตรวจสอบ วิธีการนี้.

หากคุณต้องการใช้ esigner ในการเซ็นเอกสารแทน โปรด อ้างถึงคู่มือ DocSignTool นี้.

การติดตั้ง CodeSignTool

ในการติดตั้ง CodeSignTool เวอร์ชันปัจจุบันเพียงดาวน์โหลดและคลายซิปไฟล์ที่ถูกต้องสำหรับระบบปฏิบัติการของคุณ:

โปรดทราบว่าการดาวน์โหลดของ Windows มีรันไทม์ Java แต่เวอร์ชัน Linux/macOS ต้องมีการติดตั้งรันไทม์ Java บนคอมพิวเตอร์ของคุณ คำสั่งเวอร์ชัน Windows เป็นไฟล์แบตช์ (CodeSignTool.bat) และเวอร์ชัน Linux / macOS คือเชลล์สคริปต์ (CodeSignTool.sh).

ภาพรวมการใช้งาน CodeSignTool

การใช้งาน: CodeSignTool [-hV] [COMMAND] [PARAMETERS]

ตัวเลือก:

  • -h, --help: แสดงข้อความช่วยเหลือและออก
  • -V, --version: แสดงข้อมูลเวอร์ชันและออก

คำสั่ง:

  • get_credential_ids: ส่งออกรายการรหัสประจำตัว eSigner ที่เชื่อมโยงกับผู้ใช้รายใดรายหนึ่ง
  • credential_info: คีย์เอาต์พุตและข้อมูลใบรับรองที่เกี่ยวข้องกับรหัสประจำตัว
  • sign: เซ็นชื่อและรหัสประทับเวลาวัตถุ
  • batch_sign: ลงชื่อและประทับเวลาออบเจ็กต์โค้ดหลายรายการด้วย OTP เดียว
  • hash: ประมวลผลแฮชล่วงหน้าเพื่อใช้ในภายหลังกับ batch_hash_sign คำสั่ง
  • batch_sign_hash: ลงชื่อเข้าใช้แฮช (es) ที่คำนวณไว้ล่วงหน้าด้วย hash คำสั่ง

พารามิเตอร์:

  • -access_token=<TOKEN>: OAuth โทเค็นการเข้าถึง.
  • -credential_id=<CREDENTIAL_ID>: รหัสประจำตัวสำหรับใบรับรองการลงนาม
  • -input_dir_path=<PATH>: ไดเร็กทอรีอินพุตสำหรับอ็อบเจ็กต์โค้ดที่จะลงนาม คำนวณแฮช หรือเลือกไฟล์ที่ไม่ได้ลงชื่อและแฮชที่เกี่ยวข้องสำหรับการเซ็นชื่อ
  • -input_file_path=<PATH>: เส้นทางของรหัสวัตถุที่จะลงนาม
  • -otp=<OTP>: ค่า OAuth OTP จากแอปตรวจสอบสิทธิ์
  • -output_dir_path=<PATH>: ไดเร็กทอรีที่จะเขียนโค้ดอ็อบเจ็กต์
  • -password=<PASSWORD>: รหัสผ่านบัญชี SSL.com
  • -program_name=<PROGRAM_NAME>: ชื่อโปรแกรม (สำหรับโปรแกรมติดตั้ง MSI เท่านั้น)
  • -totp_secret=<TOTP_SECRET>: OAuth ความลับของ TOTP
  • -username=<USERNAME>: ชื่อผู้ใช้บัญชี SSL.com
  • -override="true": เขียนทับไฟล์ที่ลงชื่อ
หากรหัสผ่านของคุณมีอักขระพิเศษให้ใส่เครื่องหมายคำพูด (เช่น -password="P!@^^ssword12").

คำสั่ง CodeSignTool

get_credential_ids

ส่งออกรายการรหัสประจำตัว eSigner ที่เชื่อมโยงกับผู้ใช้รายใดรายหนึ่ง พารามิเตอร์ -username และ -password จะต้อง

การใช้งาน: CodeSignTool [-hV] get_credential_ids -username=<USERNAME> -password=<PASSWORD>

ตัวอย่าง:

CodeSignTool get_credential_ids -username=john.doe@example.com -password="P0z9@lxo41"
Credential ID(s):
- fe537ace-e132-52a9-c2e7-egcd2ac3f1e6

เข้า CodeSignTool get_credential_ids หากไม่มีพารามิเตอร์ที่ต้องการจะแสดงข้อมูลการใช้งานสำหรับคำสั่ง

ข้อมูลประจำตัว_info

คีย์เอาต์พุตและข้อมูลใบรับรองที่เกี่ยวข้องกับ ID ข้อมูลรับรอง พารามิเตอร์ -credential_id, -usernameและ -password จะต้อง

การใช้งาน: CodeSignTool [-hV] credential_info -credential_id=<CREDENTIAL_ID> -username=<USERNAME> -password=<PASSWORD>

ตัวอย่าง:

CodeSignTool credential_info -credential_id=fe537ace-e132-52a9-c2e7-egcd2ac3f1e6 -username=john.doe@example.com -password="P0z9@lxo41" EVCS Certificate Subject Information: - Subject DN: OID.1.3.6.1.4.1.311.60.2.1.3 .1.3.6.1.4.1.311.60.2.1.2=US, OID.2.5.4.15=Nevada, OID.20081614243=Private Organization, CN=SSL Corp, SERIALNUMBER=NV26, O=SSL Corp, L=Houston, ST=Texas, C=US - ใบรับรองหมดอายุ: จันทร์ 21 กุมภาพันธ์ 21:37:2024 EST 3 - ผู้ออก DN: CN=SSL.com EV Code Signing Intermediate CA RSA RXNUMX, O=SSL Corp, L=Houston, ST=Texas , C=US

เข้า CodeSignTool credential_info หากไม่มีพารามิเตอร์ที่ต้องการจะแสดงข้อมูลการใช้งานสำหรับคำสั่ง

scan_code

เปิดใช้งานการสแกนมัลแวร์ด้วยการลงนามล่วงหน้า ซึ่งจะสแกนไฟล์ของคุณเพื่อหามัลแวร์ที่อาจเกิดขึ้นได้ เพื่อหลีกเลี่ยงการบุกรุกโค้ด และป้องกันการลงนามโค้ดหากตรวจพบมัลแวร์

การใช้งาน: CodeSignTool scan_code [-hV] -credential_id=<credentialId> -input_file_path=<inputFilePath> -password=<password> [-program_name=<programName>] -username=<username>

สำหรับข้อมูลโดยละเอียดเพิ่มเติมเกี่ยวกับประโยชน์ด้านความปลอดภัยของบริการสแกนมัลแวร์ของ SSL.com คุณสามารถเยี่ยมชมเราได้ที่ หน้าเฉพาะ.

ลงชื่อ

เซ็นชื่อและรหัสประทับเวลาวัตถุ พารามิเตอร์ -username, -passwordและ -input_file_path จะต้อง -credential_id จำเป็นสำหรับผู้ใช้ที่มีใบรับรองการลงนามรหัส eSigner มากกว่าหนึ่งรายการเท่านั้น -output_dir_path, -program_nameและ -totp_secret เป็นตัวเลือก

การใช้งาน: CodeSignTool sign [-hV] [-credential_id=<CREDENTIAL_ID>] -username=<USERNAME> -password=<PASSWORD> -input_file_path=<PATH> [-output_dir_path=<PATH>] [-program_name=<PROGRAM_NAME>] [-totp_secret=<TOTP_SECRET>]

พารามิเตอร์เสริม:

  • If -credential_id ถูกละไว้และผู้ใช้มีใบรับรองการลงนามรหัส eSigner เพียงใบเดียว CodeSignTool จะเป็นค่าเริ่มต้น หากผู้ใช้มีใบรับรองการลงนามรหัสมากกว่าหนึ่งรายการจำเป็นต้องมีพารามิเตอร์นี้
  • If -output_dir_path ถูกละไว้ไฟล์ที่ระบุใน -input_file_path จะถูกเขียนทับด้วยไฟล์ที่เซ็นชื่อ CodeSignTool จะแจ้งผู้ใช้ก่อนที่จะเขียนทับไฟล์
  • If -program_name ปรากฏขึ้นเมื่อลงนามโปรแกรมติดตั้ง MSI ค่าจะแสดงในกล่องโต้ตอบการยืนยันเป็นชื่อโปรแกรม
  • If -totp_secret ปัจจุบัน CodeSignTool จะคำนวณ OTP ตามเวลาสำหรับการลงนามเพื่อให้สามารถใช้เครื่องมือได้โดยอัตโนมัติ หากไม่มีพารามิเตอร์นี้ผู้ใช้จะได้รับแจ้งให้ป้อน OTP ด้วยตนเอง
สำหรับข้อมูลเกี่ยวกับการลงทะเบียนใบรับรองการลงนามรหัส EV ใน eSigner และการตั้งค่าการรับรองความถูกต้องด้วยสองปัจจัยโปรดอ่าน การลงนามรหัส EV ระยะไกลด้วย eSigner. สำหรับข้อมูลเกี่ยวกับค่าลับ TOTP โปรดดูที่ การลงนาม eSigner EV Code โดยอัตโนมัติ.

ตัวอย่าง:

รายการ OTP ด้วยตนเอง:

CodeSignTool sign -credential_id=fe537ace-e132-52a9-c2e7-egcd2ac3f1e6 -username=john.doe@example.com -password="P0z9@lxo41" -output_dir_path=signed -input_file_path=test.exe Enter the OTP - กด Enter เพื่อดำเนินการต่อ : 884646 เซ็นรหัสสำเร็จแล้ว: C:\Users\John Doe\Desktop\CodeSignTool-v1.0-windows\signed\test.exe

การสร้าง OTP อัตโนมัติ:

CodeSignTool sign -credential_id=fe537ace-e132-52a9-c2e7-egcd2ac3f1e6 -username=john.doe@example.com -password="P0z9@lxo41" -totp_secret=ii5gVvZ9G+WkxB3FauAnoL/z14AXSMistcE0jZMWWNSjQDlql2kt2D6Z+l8= -output_dir_path=signed -input_file_path=test.exe
Code signed successfully: C:\Users\John Doe\Desktop\CodeSignTool-v1.0-windows\signed\test.exe

เข้า CodeSignTool sign หากไม่มีพารามิเตอร์ที่ต้องการจะแสดงข้อมูลการใช้งานสำหรับคำสั่ง

หากคุณได้รับข้อความแสดงข้อผิดพลาด Error: invalid otp เมื่อพยายามเซ็นชื่อไฟล์อาจเกิดจากปัญหาเหล่านี้อย่างน้อยหนึ่งอย่าง:

  • รหัส QR ที่คุณสแกนในแอปตรวจสอบสิทธิ์ของคุณไม่ตรงกับชื่อผู้ใช้รหัสผ่านและ / หรือรหัสข้อมูลรับรองจากคำสั่งของคุณ สิ่งนี้อาจเกิดขึ้นได้หาก:
    • คุณมีบัญชีหลายบัญชีที่กำหนดค่าไว้สำหรับ 2FA บนอุปกรณ์ของคุณและเลือกบัญชีที่ไม่ถูกต้อง
    • คุณกำลังพยายามใช้ข้อมูลรับรองการเข้าสู่ระบบของคุณสำหรับไฟล์ ใบรับรองที่ใช้ร่วมกันแต่สแกนโค้ด QR ที่เพื่อนร่วมทีมแชร์จากบัญชีของพวกเขา
  • OTP ที่คุณป้อนหมดอายุแล้ว
  • คำสั่งของคุณมีข้อมูลลับ TOTP ที่ไม่ถูกต้อง
ผู้ใช้ eSigner บางรายได้รายงานปัญหาเกี่ยวกับลายเซ็นที่ไม่ถูกต้องเมื่อลงนามโปรแกรมติดตั้ง MSI ที่สร้างด้วย Microsoft Visual Studio เพื่อเป็นการแก้ปัญหาชั่วคราว เราแนะนำให้สร้างไฟล์ MSI ของคุณด้วย ชุดเครื่องมือ WiX. เพื่อความสะดวกของผู้ใช้ Visual Studio a WiX Toolset VS ส่วนขยาย สามารถใช้ได้

แบทช์_เซ็น

หมายเหตุ: 100 คือจำนวนไฟล์โค้ดสูงสุดที่อนุญาตให้เซ็นชื่อต่อแบตช์

ลงชื่อและประทับเวลาไฟล์โค้ดสูงสุด 100 ไฟล์ด้วย OTP เดียว พารามิเตอร์ -username, -passwordและ -input_dir_path จะต้อง -credential_id จำเป็นสำหรับผู้ใช้ที่มีใบรับรองการลงนามรหัส eSigner มากกว่าหนึ่งรายการเท่านั้น -output_dir_path, -program_nameและ -totp_secret เป็นตัวเลือก

การใช้งาน: CodeSignTool [-hV] batch_sign [-credential_id=<CREDENTIAL_ID>] -username=<USERNAME> -password=<PASSWORD> -input_dir_path=<PATH> [-output_dir_path=<PATH>] [-program_name=<PROGRAM_NAME>] [-totp_secret=<TOTP_SECRET>]

หากผู้ใช้ต้องการดำเนินการเซ็นชื่อเป็นชุดพร้อมการตรวจสอบมัลแวร์ จะต้องสแกนออบเจ็กต์โค้ดแต่ละรายการในชุดก่อนด้วย scan_code คำสั่งแล้วหลังจากนั้น. batch_sign สามารถรันคำสั่งได้

พารามิเตอร์เสริม:

  • If -credential_id ถูกละไว้และผู้ใช้มีใบรับรองการลงนามรหัส eSigner เพียงใบเดียว CodeSignTool จะเป็นค่าเริ่มต้น หากผู้ใช้มีใบรับรองการลงนามรหัสมากกว่าหนึ่งรายการจำเป็นต้องมีพารามิเตอร์นี้
  • If -output_dir_path ถูกละไว้ ไฟล์ที่ระบุใน -input_dir_path จะถูกเขียนทับด้วยไฟล์ที่ลงนามแล้ว CodeSignTool จะแจ้งให้ผู้ใช้ทราบก่อนที่จะเขียนทับไฟล์
  • If -program_name ปรากฏขึ้นเมื่อลงนามโปรแกรมติดตั้ง MSI ค่าจะแสดงในกล่องโต้ตอบการยืนยันเป็นชื่อโปรแกรม
  • If -totp_secret ปัจจุบัน CodeSignTool จะคำนวณ OTP ตามเวลาสำหรับการลงนามเพื่อให้สามารถใช้เครื่องมือได้โดยอัตโนมัติ หากไม่มีพารามิเตอร์นี้ผู้ใช้จะได้รับแจ้งให้ป้อน OTP ด้วยตนเอง

ตัวอย่าง:

CodeSignTool batch_sign -username=john.doe@example.com -password="P0z9@lxo41" -credential_id=fe537ace-e132-52a9-c2e7-egcd2ac3f1e6 -input_dir_path=input -output_dir_path=output ป้อน OTP455145 - กด Enter เพื่อดำเนินการต่อ: คำสั่งแบทช์ดำเนินการสำเร็จ ไดเร็กทอรีเอาต์พุตสำหรับไฟล์ที่ลงนาม: output

เข้า CodeSignTool batch_sign หากไม่มีพารามิเตอร์ที่ต้องการจะแสดงข้อมูลการใช้งานสำหรับคำสั่ง

กัญชา

คำนวณแฮชล่วงหน้าเพื่อใช้ในภายหลังกับ batch_hash_sign คำสั่ง พารามิเตอร์ -input_dir_path จำเป็นต้องมี -program_name เป็นตัวเลือก

การใช้งาน: CodeSignTool [-hV] hash -input_dir_path=<PATH> [-program_name=<PROGRAM_NAME>]

พารามิเตอร์เสริม:

  • If -program_name ปรากฏขึ้นเมื่อลงนามโปรแกรมติดตั้ง MSI ค่าจะแสดงในกล่องโต้ตอบการยืนยันเป็นชื่อโปรแกรม

ตัวอย่าง:

CodeSignTool hash -input_dir_path=คำสั่งแฮชอินพุตดำเนินการสำเร็จ สร้างไฟล์แฮชที่: input

เข้า CodeSignTool hash หากไม่มีพารามิเตอร์ที่ต้องการจะแสดงข้อมูลการใช้งานสำหรับคำสั่ง

Batch_sign_hash

เข้าสู่ระบบแฮช (es) ที่คำนวณไว้ล่วงหน้าด้วย hash คำสั่ง พารามิเตอร์ -access_token, input_dir_path, -otpและ output_dir_path จะต้อง -credential_id จำเป็นสำหรับผู้ใช้ที่มีใบรับรองการลงนามรหัส eSigner มากกว่าหนึ่งรายการเท่านั้น

การใช้งาน: CodeSignTool [-hV] batch_sign_hash -access_token=<ACCESS_TOKEN> [-credential_id=<CREDENTIAL_ID>] -input_dir_path=<PATH> -output_dir_path=<PATH> -otp=<OTP>

พารามิเตอร์เสริม:

  • If -credential_id ถูกละไว้และผู้ใช้มีใบรับรองการลงนามรหัส eSigner เพียงใบเดียว CodeSignTool จะเป็นค่าเริ่มต้น หากผู้ใช้มีใบรับรองการลงนามรหัสมากกว่าหนึ่งรายการจำเป็นต้องมีพารามิเตอร์นี้

ตัวอย่าง:

CodeSignTool batch_sign_hash -access_token=eyJraWQiOiJmUE1yYUdlbXVMWGUtcG9JWUtLem1CMEYwYXlFczktUEpiN29lTWFlY2I0IiwiYWxnIjoiUlMyNTYifQ.eyJpc3MiOiJTU
0wuY29tIEF1dGhlbnRpY2F0aW9uIFNlcnZpY2UiLCJleHAiOjE2MTQ4OTcxNDIsImlhdCI6MTYxNDg5MzU0MiwianRpIjoiZmI2OTZlNDUtMTIzOS00ZGE4LW
I1MmYtODNkZDE2MTY3ZTM3IiwidXNlciI6eyJ1c2VyX2lkIjoxMzIyODU4LCJ1c2VyX2VtYWlsIjoiYWFyb24uZS5ydXNzZWxsQGdtYWlsLmNvbSIsInNzbF9
hY2NvdW50X2lkIjo0NzQzMDJ9LCJjbGllbnQiOnsiaWQiOiJmUE1yYUdlbXVMWGUtcG9JWUtLem1CMEYwYXlFczktUEpiN29lTWFlY2I0In19.fCKDs1igjsI
UDG2sUN_2OTb90Jw1nKNPHcD1MyEUR6sHCv_aJmcvcaFRne_eKLHzeQ9WtT5y3Fb2ppc50kMnjPG6JgX5gnFMptMn-ySsI277CtKbkSn3u-WSDSovn51jPm82
4wTeJmuXEzdv9clRjTwp6VoM9eqHCIaDAd3MP2xpMaa35cZbDaaAFKQ7jxWo9dUuTZY7DsKK0p1LloUEnmNxtNimQ3GDwkj_M600WB1zYrhDL9_3oZKaXcUx9
qzHcBCLzGgeaZ0xdpZtADxmXDUCcmkZi20yQ53bxqVL2w00sJ73efKB7JGeGWVehO-ZlGs3PUQwooox1JgEgcsA -credential_id=fe537ace-e132-52a9
-c2e7-egcd2ac3f1e6 -input_dir_path=input -output_dir_path=output -otp=142392
Batch sign hash command executed successfully. Output directory for signed files: output

เข้า CodeSignTool batch_sign_hash หากไม่มีพารามิเตอร์ที่ต้องการจะแสดงข้อมูลการใช้งานสำหรับคำสั่ง

วิดีโอ: การลงนามโค้ด Cloud EV ด้วย eSigner และ CodeSignTool

https://youtu.be/Br25mZIlKdU
ขอบคุณที่เลือกใช้ SSL.com! หากคุณมีคำถามใด ๆ โปรดติดต่อเราทางอีเมลที่ Support@SSL.com, โทร 1-877-SSL-SECUREหรือคลิกลิงก์แชทที่ด้านล่างขวาของหน้านี้ คุณยังสามารถค้นหาคำตอบสำหรับคำถามการสนับสนุนทั่วไปได้ใน ฐานความรู้.
Twitter
Facebook
LinkedIn
Reddit
อีเมล

รับทราบข้อมูลและปลอดภัย

SSL.com เป็นผู้นำระดับโลกในด้านความปลอดภัยทางไซเบอร์ PKI และใบรับรองดิจิทัล ลงทะเบียนเพื่อรับข่าวสารอุตสาหกรรม เคล็ดลับ และประกาศผลิตภัณฑ์ล่าสุดจาก SSL.com.

เราชอบความคิดเห็นของคุณ

ทำแบบสำรวจของเราและแจ้งให้เราทราบความคิดเห็นของคุณเกี่ยวกับการซื้อครั้งล่าสุดของคุณ