Skip to main content

ブートアプリケーションの暗号化および/または署名

ダウンロードコードとブートアプリケーションのノウハウ保護とコピー防止は、証明書ベースの暗号化が最も効果的です。署名を使用すると、信頼できるソースからのアプリケーションのみが PLC にダウンロードされるようにできます

必要に応じて、の暗号化ウィザードで適切な証明書をすぐに作成できます。 CODESYS Security Agent

注記

また、 CODESYS プロジェクト自体 (つまり、アプリケーションのソースコード) も、特定のユーザーだけが受け取る証明書で暗号化できます。証明書の詳細については、以下を参照してください。 の証明書 CODESYS および PLC

ヒント

の証明書に関する一般的な情報については CODESYS Development System 環境については、以下を参照してください。 の証明書 CODESYS および PLC

証明書によるアプリケーションの暗号化

ブートアプリケーションデータが判読できない形式で転送されるようにするには、証明書ベースの暗号化を使用してデータを暗号化する必要があります。ライセンスベースの暗号化

注:アプリケーションを別のコントローラにダウンロードする場合は、各コントローラに適した証明書が必要です。

要件:アプリケーションを含むプロジェクトがあります。

  1. デバイスツリーでアプリケーションを選択します。

  2. コンテキストメニューで、をクリックします プロパティ

    The プロパティ–<アプリケーション名> ダイアログが開きます。

  3. をクリックします [セキュリティ] タブ。

  4. にとって 保護対策、「」を選択します。 証明書による暗号化 オプション。

    注記

    もし ダウンロード、オンライン変更、および起動アプリケーションの暗号化を強制します。 でオプションが選択されています ユーザ のタブ セキュリティレベル のエリア セキュリティ画面 ビュー、次に 証明書による暗号化 オプションは既に恒久的に設定されています。

    ザ・ 暗号化用証明書 ダイアログフィールドは有効になっています。

  5. 表に証明書がリストされていない場合は、をクリックします。 _cds_icon_cert_store_open.png ボタン。

    The 証明書の選択 ローカルのWindows証明書ストアから証明書を選択するためのダイアログが開きます。

  6. 下部の領域で証明書を選択し、をクリックして上部の領域に追加します。 _cds_icon_arrow_up.png ボタン。クリック わかった 確認するために。

    証明書は次の場所に表示されます。 暗号化用証明書 のフィールド セキュリティ ダイアログ。

  7. まだ有効な証明書がない場合は、すぐに生成できます。 [プロパティ] アプリケーションのダイアログで、をクリックします。 暗号化ウィザード ボタン。 暗号化ウィザード ダイアログで、をクリックします。 開始 ボタン。

    ザ・ 暗号化ウィザード 入力を促すプロンプトが表示されます。 キーの長さ (ビット)有効期間 (日数)

    これで、指定された証明書を持つコントローラだけがアプリケーションを読み取ることができます。

  8. メモ:へ 署名 ブートアプリケーション:で Properties ダイアログで、 アプリケーションコードへのデジタル署名 オプションを選択し、以下の「証明書のみを使用してブートアプリケーションに署名する (暗号化なし)」の手順1~13を実行します。

ブートアプリケーションに証明書のみ署名し、暗号化しない。

を選択した場合 証明書で署名 / アプリケーションコードにデジタル署名する のオプション [プロパティ] アプリケーションでは、アプリケーションは暗号化されませんが、所有権と整合性を確保するために署名が使用されます。

要件:デジタル署名用の証明書が必要です。この証明書は、のユーザープロファイルに割り当てます。 ユーザ のタブ セキュリティ画面。ダイアログで選択できる証明書がまだない場合は、まず次の説明を参照してください ユーザープロファイルでデジタル署名用の証明書を設定する。適切な証明書がすでにある場合は、次の手順を実行してください

  1. の証明書をダブルクリックします デジタル署名ユーザー タブ。

    The 証明書 ダイアログが開きます。

  2. [詳細] タブをクリックし、 [ファイルにコピー] ボタン。

    The 証明書のエクスポートウィザード 開始します。

  3. の中に 秘密鍵のエクスポート プロンプトが表示されたら、 いいえ、秘密鍵をエクスポートしないでください オプション。

  4. ために エクスポートファイル形式、 を選択 DERエンコードされたバイナリX.509(.CER) オプション。

  5. 次の手順で、証明書のファイル名と場所を選択します。

  6. 最後のステップの後 終了、エクスポートが成功したことを示すメッセージが表示されます。

  7. へのエクスポートが成功した後 CODESYSデバイスツリーのコントローラをダブルクリックして開きます。 デバイスエディター そして選択してください [ファイル] ファイル転送用のタブ。

  8. を選択 cert/import の右側に ランタイム ダイアログ。

  9. ダイアログの左側にある 亭主、エクスポートされた証明書を保存したファイルシステム内のパスを選択し、証明書を選択します。

  10. クリック _cds_button_double_arrow_right.png

    証明書はにコピーされます cert/import フォルダ。

  11. クリック PLCシェル タブ。

  12. タブの入力行で、 cert-import trusted <file name.cer> コマンドを押して、 入力 鍵。ファイル名は拡張子で指定されていることに注意してください .cer;そうしないと、証明書が正常にインポートされません。

    証明書は、コントローラーで作成されます。 trusted。この証明書を使用すると、コントローラーはブートアプリケーションの整合性をテストできます。

  13. ステータスバーで、をダブルクリックします _cds_icon_cyber_screen_grey.png ボタンを開いて セキュリティ画面 表示。

    ユーザ タブをクリックし、次のことを確認してください。 ダウンロード、オンライン変更、および起動アプリケーションの暗号化を強制する 保護オプションが選択されていません。

  14. デバイスツリーでアプリケーションオブジェクトを選択し、コンテキストメニューで プロパティ —-アプリケーション名- ダイアログ、そして セキュリティ タブ。を選択します。 証明書で署名 オプション。ザの [プロパティ] ダイアログが開きます。別の方法として、このダイアログには以下からアクセスすることもできます。 セキュリティ画面 のビュー プロジェクト タブ。ウィンドウの下部にあるアプリケーションのエントリをダブルクリックします。

    注: ダウンロード、オンライン変更、およびブートアプリケーションの署名を強制します すべてのプロジェクトに適用されるオプションは、 セキュリティ画面 ビュー、次に 証明書で署名する オプションはすでに選択されています。

    これで、コントローラはアプリケーションの整合性をチェックできます。署名に使用した証明書が有効な場合のみ、アプリケーションをコントローラーに転送できます。

ダウンロード、オンライン変更、およびブートアプリケーションの暗号化

もし CODESYS Security Agent がインストールされている場合、 セキュリティ画面 ビューには追加の 1 つが含まれます。 デバイス タブ。これにより、コントローラとの暗号化通信用の証明書を設定できます。この場合は、のヘルプを参照してください。 CODESYS Security Agent: CODESYS セキュリティエージェント

PLC シェルによる代替:

あなたが CODESYS Security Agent が利用できない場合は、デバイスエディタのPLCシェルを使用して次のように進めることができます。

コントローラ上の証明書を使用してダウンロード、オンライン変更、およびブートアプリケーションを暗号化するには、まずこれらの証明書をコントローラで生成し、コントローラからロードして Windows 証明書ストアにインストールする必要があります。

要件:コントローラーに接続している。

  1. デバイスツリーで、コントローラをダブルクリックして開きます。 デバイスエディター を選択し、 PLC シェル タブ。

    タブは空のウィンドウで表示されます。その下にはコマンドラインがあります。

  2. 疑問符 () を入力します。?) をコマンドラインに入力し、 と入力します。 キー。

    すべてのコマンドが表示ウィンドウに一覧表示されます。

  3. 指定します cert-getapplist コマンドラインでコマンドを実行します。

    使用されているすべての証明書は、コンポーネントおよび証明書の可用性に関する情報とともに一覧表示されます。

  4. If no certificate is available for the CmpApp component, then type in the command cert-genselfsigned <number of the component in the applist>. If a suitable certificate is already available, then continue to Step 6.

  5. クリック ログ タブをクリックし、 _cds_icon_update.png 更新ボタン。

    ディスプレイには、証明書が正常に生成されたかどうかが表示されます。

  6. PLC シェルです。 タブをクリックし、コマンドを入力します cert-getcertlist そして、を押してください と入力します。 キー。

    暗号化に使用できる独自の証明書が一覧表示されます。 The NumberKey usage(s) 情報は次のステップで役立ちます。

    Number:次のステップでパラメータとして数値を指定します。

    Key usage(s): Data encryption これは、ダウンロード、オンライン変更、およびブートアプリケーションのコントローラーの証明書であることを意味します。

  7. コマンドを入力して、必要な証明書をエクスポートします cert-export own 0 を押して 入力 鍵。 0 それは Number 証明書の Key usage(s):Data encryption

    ディスプレイには、証明書がにエクスポートされたことが示されます。 cert ディレクトリ。

  8. クリック ファイル デバイスエディタのタブ。

  9. ダイアログの右側にある ランタイム、 クリック _cds_icon_update.png 更新ボタン。

    ファイルとディレクトリのリストが更新されます。

  10. を開きます 証明書 リスト内のフォルダ、次に 輸出 サブフォルダー。

  11. ダイアログの左側にある 亭主、コントローラの証明書がロードされるディレクトリを開きます。

  12. ダイアログの右側で、エクスポートした証明書を選択して、[ _cds_button_double_arrow_left.png

    証明書が選択したディレクトリにコピーされます。

  13. ファイルエクスプローラーで、証明書がコピーされたディレクトリに移動し、証明書をダブルクリックします。

    The 証明書 ダイアログが開き、この証明書に関する情報が表示されます。

  14. 全般的 タブをクリックします 証明書をインストールする

    The 証明書のインポートウィザード 開始します。

  15. の中に 証明書の保管 ダイアログ、 証明書のインポートウィザード、 を選択 すべての証明書を次のストアに保存します オプションを選択し、 コントローラー証明書 フォルダ。

    コントローラ証明書は、Windows証明書ストアのWindows証明書ストアにインポートされます。 コントローラー証明書 フォルダ。これで、ブートアプリケーション、ダウンロード、およびオンライン変更の暗号化に証明書を使用できるようになりました。

  16. ステータスバーで、をダブルクリックします _cds_icon_cyber_screen_grey.png ボタンを開いて セキュリティ画面

  17. プロジェクトのダウンロード、オンライン変更、および起動アプリケーションを常に暗号化する場合は、[ ダウンロード、オンライン変更、およびブートアプリケーションの暗号化を適用します のオプション セキュリティレベル 上のグループ ユーザー タブ。

  18. を開きます 計画 タブをクリックし、アプリケーションをダブルクリックします。 ブートアプリケーションの暗号化、ダウンロード、オンライン変更 範囲。

    アプリケーションのプロパティダイアログが開きます。

  19. クリック 安全 タブで、 証明書による暗号化 の中に 暗号化技術 リストボックスをクリックし、をクリックします _cds_icon_cert_store_open.png

    注:もし ダウンロード、オンライン変更、起動アプリケーションの暗号化を強制する で、すべてのプロジェクトに適用されるオプションが選択されています セキュリティ画面そして 証明書による暗号化 は既に選択されています。

  20. の中に 証明書の選択 ダイアログで、からそれぞれの証明書を選択します コントローラー証明書 フォルダをクリックしてクリックします _cds_icon_arrow_up.png

  21. クリック わかった ダイアログを確認します。

    証明書がプロパティダイアログに表示されます。

  22. アプリケーションのプロパティダイアログを確認します。

    証明書は プロジェクト の [] タブ セキュリティ画面ブートアプリケーション、ダウンロード、オンライン変更の暗号化 グループ。

    起動アプリケーション、ダウンロード、およびオンライン変更は暗号化されます。

ブートアプリケーションの暗号化、ダウンロード、およびオンライン変更のための証明書の削除

要件: CODESYS Security Agent アドオン製品がインストールされています。 「暗号化されたアプリケーション」という情報が記載された証明書は、すでにコンピューターにインストールされています。

  1. の中に セキュリティ画面 ビュー、 プロジェクト タブの下部ビューで、アプリケーションのエントリをクリックします。

    The プロパティ アプリケーションのダイアログが開き、 暗号化 タブ。

  2. ために 暗号化技術、 選択する 証明書による暗号化。の中に 証明書 グループをクリックします _cds_icon_cert_store_open.png

  3. の中に 証明書の選択 ダイアログで、上記のように証明書を削除します。

  4. クリック わかった を閉じるには 証明書の選択 ダイアログ。

    証明書は表示されなくなります プロパティ ダイアログ。

ドングルによる暗号化

重要

ドングルを使用した暗号化は、安全な暗号化方法として分類されなくなりました。

代わりに証明書で暗号化することをお勧めします。

要件:暗号化されたブートアプリケーションとしてコントローラーにダウンロードするアプリケーションを含むプロジェクトがあります。ライセンス管理用のセキュリティキーがコンピュータに接続されています。

  1. デバイスツリーでアプリケーションを選択します。

  2. コンテキストメニューで、をクリックします プロパティ

    The プロパティ–<アプリケーション名> ダイアログが開きます。

  3. クリック 安全 タブ。

  4. ために 暗号化技術、 を選択 単純な暗号化 オプションを入力し、 製品コード コントローラのハードウェアメーカーから受け取ったもの。コントローラに応じて、セキュリティキー(確定コードが自動的に表示されます)または統合されたWibuSDカードなどによって保護されます。

  5. をクリックします オンライン → ログイン コマンドを実行し、アプリケーションをダウンロードします。

    一致するセキュリティキーおよび/または有効なライセンスが利用可能な場合は、アプリケーションをコントローラーにダウンロードできます。デフォルトでは、ブートアプリケーションはこの時点でコントローラーディレクトリに自動的に作成されます。デフォルト設定はアプリケーションで定義されています プロパティ、 の中に ブートアプリケーション カテゴリー。

  6. ログアウトし、アプリケーションを変更して、再度ログインします。

    オンライン変更を実行するように求められます。ダイアログには、PLCのブートアプリケーションを更新するオプションがあります。セキュリティキーとライセンスが一致する場合はログインできます。一致しない場合は、対応するメッセージが表示されます。