概要
デジタル技術と相互接続性に駆動された世界に生きており、ソフトウェアアプリケーションは個人・仕事のあらゆる側面に浸透しています。世界中の何百万もの人々が、毎日スマートフォンやタブレット、ノートパソコンでソフトウェアアプリをダウンロードし、利用し、更新しています。企業もまた、日々の業務や取引を円滑にするために、さまざまなサードパーティ製ソフトウェアに大きく依存しています。
ソフトウェアへの依存が高まる中、デジタルトラストの問題はこれまで以上に重要になっています。ソフトウェアの利用者は、自分たちがダウンロードしてインストールするソフトウェアが正当で信頼できるものであるという確証を求めています。ソフトウェア提供者は、自ら開発したソフトウェアの真正性と完全性をエンドユーザーに保証する必要があります。この信頼の連鎖がなければ、インターネット上でソフトウェアを安全に販売・利用する方法は成り立ちません。
信頼はあらゆるデジタル取引の基盤であり、サイバー攻撃やデータ侵害が増加する中で、信頼は戦略的な必須事項です。信頼こそがユーザーの自信を生み、ブランドの評価を高め、経済成長を牽引します。だからこそ、組織はデジタルトラストを確立・維持できるセキュリティの実践とソリューションを優先すべきです。ここで重要な役割を果たすのがコード署名です。
ソフトウェアサプライチェーンを守るにはコード署名が不可欠です
コード署名は、ソフトウェアやファームウェア、モバイルアプリケーションにデジタル署名を施し、その真正性と完全性をエンドユーザーに保証するためのプロセスです。開発者は、固有の秘密鍵とコード署名証明書でコードにデジタル署名し、コードが検証済みの発行元に由来し、署名後に改ざんされていないことの証拠とします。
コードにデジタル署名を行うことで、エンドユーザーはデジタル署名を検証し、インストールまたは実行しようとしているソフトウェアを信頼できるようになります。署名後にソフトウェアやコードが改ざんされた場合、デジタル署名は無効化され、ユーザーにはそのコードやソフトウェアを信頼しないよう警告が表示されます。
コード署名の主な目的は、ソフトウェアの真正性、完全性、否認防止の証拠を提供することで、ソフトウェア提供者とエンドユーザーの間に信頼関係を確立することです。ユーザーの信頼を高めるだけでなく、コード署名は、ソフトウェア提供者による知的財産の保護、コンプライアンスの確保、ソフトウェアサプライチェーンのセキュリティ強化、ブランドレピュテーションの維持にも役立ちます。
ここ数年、クラウドへの移行とDevOpsの採用が進む中で、コード署名の必要性は急速に高まり、幅広いエンタープライズ用途へと拡大しています。
- DevOps: コンパイル済みコード、コンテナ、PowerShellスクリプトなどのソフトウェア成果物が本番環境へデプロイされる前に署名されていることを確実にするため。
- SecOps: 組織内で稼働するすべてのソフトウェアが適切に署名され、信頼できるソースに由来していることを保証するため。
- ソフトウェア配布: デスクトップアプリ、モバイルアプリ、ソフトウェアアップデートに署名し、ユーザーがソフトウェアの真正性と完全性を検証できるようにするため。
- ソフトウェア開発キット(SDK)やフレームワーク: 開発者に配布するSDKやフレームワークに署名します。これにより、開発者はその真正性を検証し、改ざんされていないことを確認できます。
- インフラプロビジョニング: 構成スクリプト、自動化コード、Infrastructure as Codeのテンプレートの完全性を検証するため。
- 仮想化およびクラウド環境: 仮想マシンイメージ、コンテナ、クラウドベースのソフトウェアコンポーネントの完全性を検証するため。
- ソフトウェア連携およびAPI: 連携モジュールやAPIライブラリに署名し、異なるシステムやサービスをつなぐコードが信頼でき、改ざんされていないことを保証するため。
- IoTセキュリティ: ファームウェアに署名し、IoTデバイスのライフサイクル全体にわたりセキュリティを維持するため。
信頼性の低いコード署名はセキュリティリスクを増幅させます
コード署名は強力なプラクティスですが、安全に実装されて初めて効果を発揮します。現在でも、多くの組織が場当たり的で分断されたプロセスにより、組織とソフトウェアを攻撃にさらしてしまい、コード署名に苦慮しています。
不十分で安全でないコード署名の実践は、重大かつ深刻な影響をもたらします。コード署名の侵害は、マルウェアの注入、ソフトウェアやコードの改ざん、なりすまし攻撃につながり、結果としてランサムウェア攻撃やデータ侵害、顧客信頼の喪失、財務的損害、コンプライアンス問題を引き起こす可能性があります。SolarWindsのサプライチェーン攻撃は、コードへの攻撃が引き起こし得る影響の大きさを明確に示しました。正規品に見せかけたマルウェア感染のソフトウェアアップデートが一つあるだけで、三万を超える高度に安全な組織へ侵入し、これまでで最大規模のサプライチェーン攻撃を引き起こしました。
安全かつ効率的なコード署名を阻む一般的な障害
秘密鍵の不適切な管理
秘密鍵はコード署名プロセスの中核であり、常に保護されなければなりません。コード署名証明書に紐づく秘密鍵が盗まれると、攻撃者は侵害されたコード署名証明書を用いてマルウェアに署名し、検証済みの発行者名のもとでそのソフトウェアを配布できてしまいます。認識が広まっているにもかかわらず、開発者がローカルマシンやビルドサーバーにコード署名鍵を保存し続けており、組織は秘密鍵の窃取や不正使用にさらされています。
秘密鍵の不適切管理が蔓延していること、そしてコード署名攻撃の増加を受け、CA/Browser Forumは最近、公開信頼のコード署名秘密鍵はすべて、少なくともFIPS 140-2 Level 2またはCommon Criteria EAL 4+に準拠したハードウェアセキュリティモジュール(HSM)などの安全なハードウェア暗号モジュールで生成・保管し、ローカルマシンには保存しないことを義務付けました。
DevOpsのスピードに追いつかない
秘密鍵保護に関する新たな義務化は、コード署名をより安全にするための大きな前進ですが、スピードと俊敏性の観点でDevOpsには依然として負担となり得ます。現在、秘密鍵保護の手段として、組織が選択できるアプローチはハードウェアトークンかHSMの2つです。
ハードウェアトークンの課題: 既定では、ほとんどの認証局(CA)は秘密鍵の保管にハードウェアトークンを提供しますが、いくつかの理由によりコード署名プロセスを困難にする可能性があります。通常、複数の地域にまたがる複数の開発者が、署名のためにコード署名証明書へのアクセスを必要とします。
パスワード漏洩や侵害のリスクを考えると、トークンを複数の開発者間で共有することは現実的でも安全でもありません。同時に、分散した開発者に対してトークンベースのコード署名証明書を複数発行すると、セキュリティチームがリモートのコード署名イベントを監視することが困難になります。
HSMの複雑さ: HSMなどの暗号ハードウェアに秘密鍵を保管することは最高レベルのセキュリティを提供しますが、署名目的でシステムやDevOpsツールをHSMに接続するのは非常に複雑になり得ます。分散した開発チームはしばしば複数のツールを用いてコード署名を行うため、署名ツールとHSMの統合が不十分だと、コード署名へのアクセスが複雑化し、署名プロセスが遅延します。自社でHSMを調達する場合は、準拠要件やオンプレミスHSMの保守が必要となり、コストと複雑さがさらに増します。
さらに、開発者は異なる署名ツールやプラットフォームを扱い、コード署名の要件もさまざまです。配布チャネルやデバイス間での互換性を確保するため、開発者は多様なファイルタイプやプロセスに署名する必要があります。これらの要件を踏まえると、コード署名は開発者にとって使いやすく、理想的には自動化されている必要があり、そのためにはCI/CDパイプラインを含むDevOpsツールやプロセスと統合されていなければなりません。統合されていない場合、開発者はネイティブのツールセット外で署名により多くの時間と労力を割かざるを得ず、ワークフローが乱され、生産性が低下します。
コード署名イベントの可視性や統制の欠如
今日の大企業では、開発チームが世界各地、リモートを含む複数拠点で活動しています。各チームは異なる署名ツールを使っており、過去には開発者のワークステーションやビルドサーバー上で秘密鍵を露出させたままにしていたこともあります。開発者がそれぞれ異なる署名ツールを用い、秘密鍵を自主管理する状況は、コード署名の不整合やセキュリティリスクを招きがちです。一方で、セキュリティチームはコード署名イベントの可視性を持てません。誰が秘密鍵にアクセスしているのか、どこに保管されているのか、どのコードに署名したのかを追跡・制御できず、セキュリティ上の死角や監査・コンプライアンス上の課題を生みます。
これらの課題があるにもかかわらず、コード署名は重要なセキュリティ実践であり、多くの課題は効率的で統合・自動化されたコード署名ソリューションによって克服できます。
AppViewX SIGN+ がDevOpsのコード署名を簡素化し、セキュリティを確保する方法
AppViewX SIGN+は、コード、コンテナ、ファームウェア、ソフトウェアの完全性を保護するために設計された、高速・信頼性・安全性に優れたコード署名ソリューションです。集中管理かつ統合的なアプローチにより、AppViewX SIGN+はDevOpsのためのコード署名を簡素化し、セキュリティを合理化します。
AppViewX SIGN+は、ネイティブの署名ツール、CI/CDパイプラインやワークフローとシームレスに統合され、DevOpsチームがより迅速かつ自由に、安全にコードへ署名できるようにします。セキュリティチームは、秘密鍵の保管、コード署名証明書の管理、アクセスと利用に対して、完全な可視性とポリシー駆動の制御を得られます。
1. セキュアなコード署名
秘密鍵の堅牢なHSM保護
強固な秘密鍵保護
AppViewX SIGN+では、秘密鍵はCA/Browser Forumで義務付けられている通り、FIPS 140-2認定のHSMで生成・安全に保管されます。AppViewX SIGN+は、セキュアな署名のために、クラウド型・オンプレミス型の両方のHSMと裏側で直接かつシームレスに統合します。お客様は、準拠したHSM(オンプレミスまたはクラウド)を選択して使用することも、コード署名をサービスとして利用することも可能です。開発者が個別に秘密鍵を管理する場当たり的なコード署名ではなく、セキュリティチームが準拠HSM上で署名鍵を集中かつ安全に保管できるようになります。
幅広いアルゴリズム対応
コード署名では、デジタル署名の生成、ハッシュ値の作成、署名プロセスの安全性確保に様々な暗号アルゴリズムが用いられます。AppViewX SIGN+は、現在広く使用されている標準的な非対称暗号アルゴリズム(RSA、ECDSA、DSA)すべてに対応します。さらに、PQC(耐量子暗号)アルゴリズムについても、標準化されHSMで有効化され次第、対応を開始します。
セキュアなタイムスタンプ
コード署名証明書には有限の有効期限(通常1〜3年)があるため、タイムスタンプは、署名に用いた証明書の有効期限切れや失効後であっても、コード署名の正当性を検証できるようにする重要なベストプラクティスです。AppViewX SIGN+は、タイムスタンプ認証局と統合し、コード署名中にシームレスにタイムスタンプを付与して、デジタル署名の長期的な有効性を確保します。
2. シームレスなコード署名
開発チームのための効率的で手間のかからない署名プロセス
AppViewX SIGN+は、柔軟かつ統合的なアプローチにより、分散した開発チームにとってコード署名をシンプルかつスムーズにします。開発者が多様なファイル形式に署名する必要があることを踏まえ、AppViewX SIGN+はWindowsアプリケーション、ライブラリ、OCXファイル、カーネルドライバ、Appleソフトウェア、Microsoft OfficeのVBAオブジェクト、JARファイル、.air/.airiファイル、コンテナ、Android APKファイルなど、幅広いファイルタイプをサポートします。さらに、以下の方法から、柔軟で統合された署名手段を提供します。
ネイティブ署名ツール
AppViewX SIGN+は、ソフトウェア開発で使用される一般的な署名ツール(Microsoft SigntoolやJarSignerなど)とシームレスに統合します。この統合により、高い互換性が担保され、開発者は署名ツール内からそのまま署名を実行できます。これは、カスタムのAppViewX CSP(Cryptographic Service Provider)およびPKCS11プロバイダを用いて、署名ツールがHSM上に安全に保管されたコード署名証明書へ接続・アクセスできるようにすることで実現しています。集中かつセキュアなコード署名サービスとして、AppViewX SIGN+は、開発者が場所や使用ツールを問わず、鍵管理や保管を気にせずに、容易かつストレスなくコードに署名できる環境を提供します。
CI/CDパイプライン
AppViewX SIGN+が提供するカスタムCSP/PKCS11インターフェースは、各種DevOpsツールチェーン、CI/CDツール、ワークフロー(GitHub、GitLab、Jenkins、Bitbucket、Azure DevOpsなど)とシームレスに統合し、ビルドプロセス中に自動でコード署名をトリガーできます。
APIワークフロー
AppViewX SIGN+は柔軟なAPIベースの署名を提供し、開発者が既存のワークフロー、アプリケーション、または自動ビルド/デプロイプロセスにプログラム的にコード署名機能を組み込めるようにします。
3. コントロールされたコード署名
コード署名イベントの集中可視化、ポリシー管理、鍵と証明書のアクセスに対する包括的な統制
可視性と制御
AppViewX SIGN+が集中型のコード署名サービスを提供することで、セキュリティチームは、企業全体におけるコード署名の鍵・証明書および署名イベントについて、完全な可視性と制御を獲得できます。開発者はどこからでも効率的にコードへ署名でき、同時にセキュリティチームは全体統制を維持できます。
直感的なAppViewX SIGN+のダッシュボードでは、署名された各種ファイル、署名時刻、タイムスタンプの利用状況、使用された証明書と鍵などの重要情報を提供します。セキュリティチームは、コード署名イベントの履歴を追跡する詳細な監査ログやレポートも生成でき、監査の簡素化と継続的なコンプライアンスの確保に役立ちます。
ポリシー管理
AppViewX SIGN+は、鍵の使用権限、承認、鍵の有効期限、CAタイプ、鍵長、署名アルゴリズムの種類などを含む署名ポリシーを定義・マッピングすることで、セキュリティチームがコード署名プロセスを標準化できるよう支援します。また、ポリシーの自動適用により、すべてのファイルが設定済みの署名ポリシーに基づいて署名され、業界標準に準拠していることを保証します。
ユーザー認証とアクセス制御
不正な署名を防ぐため、AppViewX SIGN+はロールベースアクセス制御(RBAC)によるユーザー認証・認可を可能にし、誰が証明書へアクセスできるか、何に署名できるか、どの署名ツールを使用できるかを定義します。RBACを実装することで、特定のユーザーロールが割り当てられたユーザーのみが、AppViewX SIGN+内のモジュールへアクセスし、署名作業を行えるようになり、署名鍵・証明書へのアクセスが適切に制御されます。
AppViewX SIGN+ を選ぶ理由
- シンプルでシームレスなコード署名: 分散した開発チーム、プロセス、企業のあらゆるコード署名ニーズを一つの集中サービスで支援。
- 統合されたコード署名: ネイティブ署名ツールやDevOpsプロセス(CI/CDパイプライン)と容易に統合し、簡単・迅速・安全な署名を実現。
- 強固な秘密鍵保護: CA/B Forumで義務付けられたHSMで秘密鍵を生成・保管し、オンプレ機器の導入・保守なしで運用可能。
- セキュリティとコンプライアンス: セキュリティチームに、コード署名の鍵・証明書のポリシー、アクセス、利用に対する集中可視化と統制を提供。
- スピードとスケーラビリティ: 開発者の生産性を損なわず、セキュリティを妥協することなく、DevOpsのスピードで高信頼・大量署名を実現。
AppViewX SIGN+ の柔軟なデプロイモデル
AppViewX SIGN+は、AppViewX Digital Trust Platformの一部として、柔軟なデプロイオプションを提供します。具体的には次のとおりです。
AppViewX運用のSaaS
サービスとして提供されるAppViewX SIGN+は、AppViewXにより完全に管理・更新されます。お客様はアカウントを作成するだけで、すぐに利用を開始できます。非公開の社内ネットワークセグメントへ、企業ファイアウォールに穴を開けずに接続するために、AppViewXはプライベートネットワーク内にインストールするCloud Connectorを提供します。
オンプレミスおよびホスト型デプロイ
AppViewX SIGN+は、お客様管理の環境(ハイパーバイザーベースのVM、プライベートクラウド、AWS・GCP・Microsoft Azure等のパブリッククラウド)にもデプロイ可能です。AppViewX SIGN+は、CentOSまたはRHELを実行する任意の仮想マシンインスタンスにインストールできます。AppViewX SIGN+はKubernetesベースのアプリケーションであるため、EKS、AKS、GKE、Red Hat OpenShift、RancherなどのマネージドKubernetes環境にもインストール可能です。
Code Signing Is Indispensable to Safeguarding the Software Supply Chain
Code Signing is a process of digitally signing software, firmware, or mobile applications to assure the end users of their authenticity and integrity. Developers digitally sign the code with a unique private key and a code signing certificate that serve as proof that the code originates from a verified source and has not been tampered with since it was signed.
Digitally signing code helps end users trust the software they are installing or running by verifying the digital signature. If the software or code is tampered with after it has been digitally signed, the digital signature will be invalidated and users will be warned not to trust the code and software.
The primary purpose of code signing is to establish trust between software providers and end users by providing proof of software authenticity, integrity, and non-repudiation. In addition to promoting user trust, code signing helps software providers protect intellectual property, ensure compliance, strengthen software supply chain security, and uphold their brand reputation.
Over the past several years, with the migration to the Cloud and adoption of DevOps, the need for code signing has rapidly grown, expanding to a wide range of enterprise use cases.
- DevOps: To ensure that the software artifacts, such as compiled code, containers, or PowerShell scripts, are signed before being deployed to production environments.
- SecOps: To ensure that all software running within the organization is properly signed and comes from trusted sources.
- Software Distribution: To sign desktop applications, mobile apps, or software updates to allow users to verify the authenticity and integrity of software.
- Software Development Kits (SDKs) and Frameworks: To sign SDKs and frameworks that are distributed to developers. By signing these components, developers can verify their authenticity and ensure they have not been tampered with.
- Infrastructure Provisioning: To validate and verify the integrity of configuration scripts, automation code, or infrastructure-as-code templates.
- Virtualization and Cloud Environments: To validate the integrity of virtual machine images, containers, and cloud-based software components.
- Software Integration and APIs: To sign software integration modules or API libraries and ensure that the code used to connect different systems or services is trustworthy and has not been tampered with.
- IoT Security: To sign firmware and ensure that IoT devices remain secure throughout their lifecycle.
Unreliable Code Signing Practices Amplify Security Risks
Although code signing is a powerful practice, it is only effective when securely implemented. Even today, many organizations struggle with code signing due to ad-hoc and fragmented processes that leave their organizations and software vulnerable to attacks.
Inadequate and insecure code signing practices have severe and far-reaching consequences. Code signing compromises can lead to malware injection, software and code tampering, and impersonation attacks that can, in turn, result in ransomware attacks, data breaches, loss of customer trust, financial damages, and compliance issues. The SolarWinds supply chain attack clearly demonstrated the magnitude of impact code attacks can cause. A malware-infected software update masquerading as legitimate was enough to break into more than thirty-thousand highly secure organizations, causing the biggest supply chain attack known to date.
Common Obstacles That Stand in the Way of Secure and Efficient Code Signing
Private Key Mismanagement
Private keys are the heart of the code signing process and must always be protected. If the private keys linked to the code signing certificates are stolen, attackers could use the compromised code signing certificate to sign malware and then distribute the software under a verified publisher name. Despite the awareness, developers have continued storing code signing keys on their local machines, or build servers, exposing organizations to private key theft and misuse.
Given how prevalent private key mismanagement is and the increase in the number of code signing attacks, the CA/Browser Forum recently passed a mandate that requires all publicly trusted code signing private keys to be generated and stored in secure hardware crypto modules such as hardware security modules (HSMs) that are at least FIPS 140-2 Level 2 or Common Criteria EAL 4+ and not on local machines.
Not Up to DevOps Speed
While the new mandate around private key protection is a great step towards making code signing more secure, it can still make things difficult for DevOps in terms of speed and agility. Currently, there are two approaches organizations can opt for private key protection - hardware tokens or HSMs.
Hardware Token Challenges: By default, most Certificate Authorities (CAs) will offer hardware tokens for storing private keys, however this can make the code signing process challenging for several reasons. Multiple developers across regions usually need access to the code signing certificate for signing.
Sharing tokens between multiple developers is not practical or secure, given the risk of password leaks or compromises. At the same time, issuing multiple token-based code signing certificates to dispersed developers makes it difficult for security teams to monitor remote code signing events.
HSM Complexities: While storing private keys in crypto hardware like HSMs provides the highest level of security, connecting systems and DevOps tools to HSMs for signing purposes can be highly complex. As distributed development teams often use multiple tools for code signing, the lack of HSM integration with signing tools can complicate code signing access and slow down the signing process. Sourcing your own HSM adds to the cost and complexity, given it needs to be compliant and on-premises HSMs require maintenance.
Additionally, developers often work with different signing tools and platforms with varying code signing requirements. Developers also need to sign various file types and processes to ensure compatibility across different distribution channels and devices. Given these requirements, code signing must be easy for developers to use and ideally automated, which means it needs to be integrated with DevOps tools and processes including within the CI/CD pipeline. When it's not, developers are forced to invest more time and effort in signing code outside of their native tool sets, disrupting their workflows and cutting into their productivity.
Lack of Visibility or Control Over Code Signing Events
Modern enterprises have their development teams working in several locations across the world, including remotely. Different teams use different tools for signing, and in the past have left private keys exposed on developer workstations or build servers. Developers using different signing tools and managing private keys on their own often leads to inconsistencies and security risks in code signing. On the other hand, security teams have no visibility into code signing events. They cannot track or control who is accessing the private key, where they are stored, and what code was signed - which creates security blind spots and auditing and compliance issues.
Despite these challenges, code signing remains a critical security practice, and many of the challenges can be overcome with an efficient, integrated, and automated code signing solution.
How AppViewX SIGN+ Helps Simplify Code Signing for DevOps and Ensure Security
AppViewX SIGN+ is a fast, reliable, and secure code signing solution built to protect the integrity of code, containers, firmware, and software. With a centralized and integrated approach, AppViewX SIGN+ simplifies code signing for DevOps and streamlines security.
AppViewX SIGN+ seamlessly integrates with native signing tools, CI/CD pipeline and workflows to empower DevOps teams to securely sign code faster and more freely. Security teams can rest assured with full visibility and policy-driven control over private key storage, code signing certificate management, and access and usage.
1. Secure Code Signing
Robust HSM Protection for Private Keys
Strong Private Key Protection
With AppViewX SIGN+, private keys are generated and stored securely in FIPS 140-2 certified HSMs as mandated by the CA/Browser Forum. AppViewX SIGN+ integrates seamlessly and directly with both cloud-based and on-premises HSMs behind the scenes for secure signing. Customers have the flexibility to use a compliant HSM of their choice (on-premises or cloud based) or opt for code signing as a service. Instead of ad hoc code signing practices with developers individually managing private keys, security teams can ensure that signing keys are centrally and securely stored on compliant HSMs.
Extensive Algorithm Support
Code signing relies on various cryptographic algorithms to generate digital signatures, create hash values, and ensure the security of the signing process. AppViewX SIGN+ supports all standard asymmetric cryptographic algorithms used today, such as RSA, ECDSA, and DSA. AppViewX SIGN+ will also begin supporting Post Quantum Cryptography (PQC) algorithms once they are standardized and enabled by HSMs.
Secure Timestamping
As code signing certificates have limited validity periods (usually from one to three years), timestamping is a critical best practice to help consumers verify the legitimacy of the code signing signature even after the certificate used for signing expires or is revoked. AppViewX SIGN+ integrates with timestamping authorities to enable seamless timestamping during the code signing process and ensure the long term validity of digital signatures.
2. Seamless Code Signing
Streamlined and Effortless Signing Processes for Development Teams
AppViewX SIGN+ offers a flexible and integrated approach to code signing, making it simple and streamlined for distributed development teams. Given developers often need to sign a variety of file formats, AppViewX SIGN+ supports a wide range of file types, including Windows Applications, libraries, OCX files, Kernel drivers, Apple software, Microsoft Office VBA objects, JAR files, .air or .airi files, containers, and Android APK files. Furthermore, AppViewX SIGN+ offers flexible and integrated methods for signing including directly from:
Native Signing Tools
AppViewX SIGN+ seamlessly integrates with popular signing tools (such as Microsoft Signtool or JarSigner) used in software development. The integration ensures seamless compatibility and allows developers to carry out signing from within their signing tools, using custom AppViewX CSP (Cryptographic Service Provider) and PKCS11 providers (that enable the signing tools to talk to and access the code signing certificate that is securely stored on the HSM). As a centralized and secure code signing service, AppViewX SIGN+ makes it easy and frictionless for developers to sign code from anywhere and from any signing tool without worrying about key management and storage.
CI/CD Pipeline
The custom CSP/PKCS11 interfaces provided by AppViewX SIGN+ also integrate seamlessly with the CI/CD pipeline— with various DevOps toolchains, CI/CD tools, and workflows, such as GitHub, GitLab, Jenkins, Bitbucket, and Azure DevOps— to automatically trigger code signing during the build process.
API Workflows
AppViewX SIGN+ provides flexible API-based signing that allows developers to interact with AppViewX to programmatically incorporate code signing capabilities into their existing workflows, applications, or automated build/deployment processes.
3. Controlled Code Signing
Centralized Visibility Of Code Signing Events, Policy Management, and Overall Control Over Key and Certificate Access
Visibility and Control
With AppViewX SIGN+ offering centralized code signing services, security teams can gain complete visibility into and control over code signing keys and certificates and signing events across the enterprise. Developers can efficiently sign code from anywhere, while security teams maintain overall control.
The intuitive AppViewX SIGN+ dashboard provides essential information, such as different files being signed, time of signing, timestamping usage, and the certificate and key used for signing. Security teams can also generate detailed audit logs and reports that historically track code signing events to simplify audits and ensure continuous compliance.
Policy Management
AppViewX SIGN+ helps security teams standardize the code signing process by defining and mapping signing policies, including key usage permissions, approvals, key expiry, CA type, key size, signing algorithm type, and more. It can also automate policy enforcement to ensure all files are signed based on the configured signing policy, and are compliant with the industry standards.
User Authentication and Access control
To prevent unauthorized signing, AppViewX SIGN+ enables user authentication and authorization through Role-based Access Control (RBAC), which defines who can access the certificates, what they can sign, and what signing tools they can use. Implementing RBAC ensures that only users with specific user roles assigned to them have the access to modules within AppViewX SIGN+ for signing and providing controlled access to signing keys and certificates.
Why AppViewX SIGN+
- Simple and Seamless Code Signing: One centralized service to support distributed development teams, process, and all enterprise code signing needs.
- Integrated Code Signing: Easily integrate code signing with native signing tools and DevOps processes (CI/CD pipeline) to make signing simple, fast, and secure.
- Strong Private Key Protection: Generate and store private keys in CA/B Forum mandated HSMs, without having to install and maintain on-premises hardware.
- Security and Compliance: Give security teams centralized visibility and control over policy, access and usage of code signing keys and certificates.
- Speed and Scalability: Enable reliable, high volume code signing at the speed of DevOps without impacting developer productivity or compromising on security.
AppViewX SIGN+ Flexible Deployment Models
AppViewX SIGN+ as part of the AppViewX Digital Trust Platform has flexible deployment options, including:
SaaS Operated by AppViewX
Available as a service, AppViewX SIGN+ is fully managed and updated by AppViewX. Customers can directly set up an account and start using it. For connecting to the non-public corporate network segments without poking a hole into the corporate firewall, AppViewX provides a Cloud Connector that needs to be installed in the private network.
On-Prem and Hosted Deployment
AppViewX SIGN+ can also be deployed within a customer-managed environment, including hypervisor-based VMs, private clouds, or public clouds using AWS, GCP, Microsoft Azure, and others. AppViewX SIGN+ can be installed on any virtual machine instance running CentOS or RHEL operating system. As AppViewX SIGN+ is a Kubernetes-based application, it can also be installed in a managed Kubernetes environment like EKS, AKS, GKE, RedHat Openshift, Rancher, and others.




