JP4191170B2 - プログラム可能なゲートアレイのコピー防止方法及びシステム - Google Patents
プログラム可能なゲートアレイのコピー防止方法及びシステム Download PDFInfo
- Publication number
- JP4191170B2 JP4191170B2 JP2005149178A JP2005149178A JP4191170B2 JP 4191170 B2 JP4191170 B2 JP 4191170B2 JP 2005149178 A JP2005149178 A JP 2005149178A JP 2005149178 A JP2005149178 A JP 2005149178A JP 4191170 B2 JP4191170 B2 JP 4191170B2
- Authority
- JP
- Japan
- Prior art keywords
- fpga
- circuit
- activation key
- code string
- key code
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
- G06F21/76—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in application-specific integrated circuits [ASIC] or field-programmable devices, e.g. field-programmable gate arrays [FPGA] or programmable logic devices [PLD]
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Mathematical Physics (AREA)
- Storage Device Security (AREA)
Description
本発明の第1の実施の形態を図1に示す。システム1はフィールドプログラマブルゲートアレイ(FPGA)2と、ゲートアレイ(GA)4と、ROM(ROM)3とで構成される。FPGA2はユーザ側で内部論理をプログラムにより変更できる汎用のゲートアレイである。GA4はあらかじめ半導体ベンダの工場にてプログラムされたユーザ専用のゲートアレイである。ROM3はFPGA4の論理回路をユーザの希望する回路に変更するためのユーザ回路データ(FPGAプログラムとも呼称される)を記憶したROMである。
2 FPGA
3 ROM
4 GA
5 CPLD
10 ブート制御回路
11 第1ブート回路
12 第2ブート回路
13 解読処理回路
14 判定回路
15 起動キー情報
16 第1の起動キー情報
17 第2の起動キー情報
18 ブートコントローラ
20 ユーザプログラムデータ
21 起動制御プログラムデータ
22 認証回路データ
23、26 起動キー符号列
24 ユーザ回路データ
25 認証回路
27 ユーザ回路
30 第1の認証回路データ
31 第2の認証回路データ
32、36 第1の起動キー符号列
33、37 第2の起動キー符号列
34 第1の認証回路
35 第2の認証回路
40 ダミー通信回路データ
41、42 ダミー通信回路
43 汎用フラッシュメモリ
44 データ変換
45 データ蓄積装置
Claims (16)
- プログラム可能なゲートアレイ(FPGA)のコピー防止方法において、前記FPGAと、ユーザ回路データおよび第1の起動キー符号列を記憶したROMと、予め第1の起動キー情報が組み込まれたユーザ専用ゲートアレイ(GA)とを備え、前記GAは前記第1の起動キー符号列から導き出された情報と前記第1の起動キー情報とが一致した場合には、前記ユーザ回路データを前記FPGAにブートさせることを特徴とするプログラム可能なゲートアレイのコピー防止方法。
- 前記ROMは前記第1の起動キー符号列と第1の認証回路データとからなる起動制御プログラムデータを記憶し、前記GAは、前記起動制御プログラムデータを前記FPGAにブートし、前記FPGAから送られた前記第1の起動キー符号列を解読し、前記第1の起動キー符号列の解読結果と前記第1の起動キー情報とを比較判定し、その判定結果が正しい場合には前記ユーザ回路データを前記FPGAにブートし、前記判定結果が正しくない場合には前記FPGAをリセットすることを特徴とする請求項1記載のプログラム可能なゲートアレイのコピー防止方法。
- 前記ROMは第2の起動キー符号列と第2の認証回路データとをさらに記憶し、前記GAは、前記第2の起動キー符号列と前記第2の認証回路データとを前記FPGAにブートし、ブート完了後に前記第2の認証回路データによってFPGA内に実現した第2の認証回路が送り返した前記第2の起動キー符号列を解読し、前記第2の起動キー符号列の解読結果と前記GAに組み込まれた第2の起動キー情報とを比較判定し、その判定結果が正しい場合には、前記ユーザ回路データを前記FPGAにブートし、前記判定結果が正しくない場合には前記FPGAをリセットすることを特徴とする請求項2記載のプログラム可能なゲートアレイのコピー防止方法。
- 前記FPGAから前記GAに前記第2の起動キー符号列をさらに定期的な周期毎に、または不定期的な周期毎に送信し、前記GAは送られた前記第2の起動キー符号列を解読し、前記第2の起動キー符号列の解読結果と前記第2の起動キー情報とを比較判定し、その判定結果が正しくない場合には前記FPGAをリセットすることを特徴とする請求項3記載のプログラム可能なゲートアレイのコピー防止方法。
- 前記GAは、さらにダミー通信回路を備え、前記FPGAに生成されたダミー通信回路との間で通信することを特徴とする請求項3または請求項4に記載のプログラム可能なゲートアレイのコピー防止方法。
- 前記GAはさらにブートコントローラとして機能することを特徴とする請求項1乃至請求項5のいずれかに記載のプログラム可能なゲートアレイのコピー防止方法。
- 前記GAは複数のプログラム可能なゲートアレイ(FPGA)に対してそれぞれのユーザ回路データのブート、または前記ユーザ回路の動作を制御することを特徴とする請求項1乃至請求項6のいずれかに記載のプログラム可能なゲートアレイのコピー防止方法。
- プログラム可能なゲートアレイ(FPGA)を備えたシステムにおいて、前記FPGAと、ユーザ回路データおよび第1の起動キー符号列を記憶したROMと、予め第1の起動キー情報が組み込まれたユーザ専用ゲートアレイ(GA)とを備え、前記GAは前記第1の起動キー符号列から導き出された情報と前記第1の起動キー情報とが一致した場合に、前記ユーザ回路データを前記FPGAにブートさせる第1のブート回路を有することを特徴とするシステム。
- 前記ROMは前記第1の起動キー符号列と第1の認証回路データとからなる起動制御プログラムデータを記憶し、前記GAは、前記起動制御プログラムデータを前記FPGAにブートする第2のブート回路と、前記FPGAから送られた前記第1の起動キー符号列を解読する解読処理回路と、前記第1の起動キー符号列の解読結果と前記第1の起動キー情報とを比較判定する判定回路とを有し、その判定結果が正しい場合には前記第1のブート回路により前記ユーザ回路データを前記FPGAにブートし、前記判定結果が正しくない場合には前記FPGAをリセットすることを特徴とする請求項8記載のシステム。
- 前記ROMは、第2の起動キー符号列と第2の認証回路データとをさらに記憶し、前記第1のブート回路は、さらに前記第2の起動キー符号列と前記第2の認証回路データとを前記FPGAにブートし、前記解読処理回路は前記FPGAから送られた前記第2の起動キー符号列を解読し、前記判定回路は前記第2の起動キー符号列の解読結果と前記GAに組み込まれた第2の起動キー情報とを比較判定し、前記GAは、その判定結果が正しい場合には、前記ユーザ回路データを前記FPGAにブートし、前記判定結果が正しくない場合には前記FPGAをリセットすることを特徴とする請求項9記載のシステム。
- 前記GAは、さらに前記FPGAに生成されたダミー通信回路との間で通信するダミー通信回路を備えたことを特徴とする請求項10に記載のシステム。
- 前記GAはさらにブートコントローラとして機能するブートコントローラを備えることを特徴とする請求項8乃至請求項11のいずれかに記載のシステム。
- 前記FPGAが複数搭載されたことを特徴とする請求項8乃至請求項12のいずれかに記載のシステム。
- 前記ROMをフラッシュメモリに置き換えて実現したことを特徴とする請求項8乃至請求項13のいずれかに記載のシステム。
- 前記ROMをデータ蓄積装置に置き換えて実現したことを特徴とする請求項8乃至請求項13のいずれかに記載のシステム。
- 前記第1および第2の起動キー符号列が、暗号化された符号列であることを特徴とする請求項8乃至請求項15のいずれかに記載のシステム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005149178A JP4191170B2 (ja) | 2004-07-23 | 2005-05-23 | プログラム可能なゲートアレイのコピー防止方法及びシステム |
US11/186,967 US7613931B2 (en) | 2004-07-23 | 2005-07-22 | Copy protection method and system for programmable gate array |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004215904 | 2004-07-23 | ||
JP2005149178A JP4191170B2 (ja) | 2004-07-23 | 2005-05-23 | プログラム可能なゲートアレイのコピー防止方法及びシステム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2006059318A JP2006059318A (ja) | 2006-03-02 |
JP4191170B2 true JP4191170B2 (ja) | 2008-12-03 |
Family
ID=35658705
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005149178A Expired - Fee Related JP4191170B2 (ja) | 2004-07-23 | 2005-05-23 | プログラム可能なゲートアレイのコピー防止方法及びシステム |
Country Status (2)
Country | Link |
---|---|
US (1) | US7613931B2 (ja) |
JP (1) | JP4191170B2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006163522A (ja) * | 2004-12-02 | 2006-06-22 | Nec Electronics Corp | コピー防止回路装置およびコピー防止方法 |
US9372639B2 (en) | 2012-07-24 | 2016-06-21 | Casio Computer Co., Ltd. | System LSI capable of erasing internally stored program and program erasing method |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8464135B2 (en) | 2010-07-13 | 2013-06-11 | Sandisk Technologies Inc. | Adaptive flash interface |
US9069688B2 (en) | 2011-04-15 | 2015-06-30 | Sandisk Technologies Inc. | Dynamic optimization of back-end memory system interface |
US8990548B2 (en) * | 2011-04-11 | 2015-03-24 | Intel Corporation | Apparatuses for configuring programmable logic devices from BIOS PROM |
US9600291B1 (en) * | 2013-03-14 | 2017-03-21 | Altera Corporation | Secure boot using a field programmable gate array (FPGA) |
US9384128B2 (en) | 2014-04-18 | 2016-07-05 | SanDisk Technologies, Inc. | Multi-level redundancy code for non-volatile memory controller |
US9971910B2 (en) * | 2015-01-22 | 2018-05-15 | Raytheon Company | Multi-level security domain separation using soft-core processor embedded in an FPGA |
US9703973B2 (en) * | 2015-04-28 | 2017-07-11 | International Business Machines Corporation | Customer load of field programmable gate arrays |
CN109150499B (zh) * | 2018-08-29 | 2021-06-08 | 深圳市迷你玩科技有限公司 | 动态加密数据的方法、装置、计算机设备和存储介质 |
US11216411B2 (en) * | 2019-08-06 | 2022-01-04 | Micro Focus Llc | Transforming data associated with a file based on file system attributes |
JP2022059521A (ja) * | 2020-10-01 | 2022-04-13 | 富士フイルムビジネスイノベーション株式会社 | 半導体装置 |
CN112860275B (zh) * | 2021-01-26 | 2024-07-09 | 北京自动化控制设备研究所 | 一种嵌入式计算机的软硬件协同加密电路及方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5959466A (en) * | 1997-01-31 | 1999-09-28 | Actel Corporation | Field programmable gate array with mask programmed input and output buffers |
JP2001325153A (ja) | 2000-05-15 | 2001-11-22 | Toyo Commun Equip Co Ltd | フィールドプログラマブルゲートアレイの回路情報保護方法 |
JP2002050956A (ja) | 2000-07-13 | 2002-02-15 | Sun Microsyst Inc | フィールド・プログラマブル・ゲート・アレイ |
US6331784B1 (en) | 2000-07-28 | 2001-12-18 | Atmel Corporation | Secure programmable logic device |
US20020168067A1 (en) | 2001-05-08 | 2002-11-14 | Timofei Kouzminov | Copy protection method and system for a field-programmable gate array |
JP2004007472A (ja) | 2002-03-22 | 2004-01-08 | Toshiba Corp | 半導体集積回路、データ転送システム、及びデータ転送方法 |
US7162644B1 (en) * | 2002-03-29 | 2007-01-09 | Xilinx, Inc. | Methods and circuits for protecting proprietary configuration data for programmable logic devices |
JP2004070556A (ja) | 2002-08-05 | 2004-03-04 | Matsushita Electric Ind Co Ltd | プログラマブルロジックデバイス |
-
2005
- 2005-05-23 JP JP2005149178A patent/JP4191170B2/ja not_active Expired - Fee Related
- 2005-07-22 US US11/186,967 patent/US7613931B2/en active Active
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006163522A (ja) * | 2004-12-02 | 2006-06-22 | Nec Electronics Corp | コピー防止回路装置およびコピー防止方法 |
US9372639B2 (en) | 2012-07-24 | 2016-06-21 | Casio Computer Co., Ltd. | System LSI capable of erasing internally stored program and program erasing method |
Also Published As
Publication number | Publication date |
---|---|
US7613931B2 (en) | 2009-11-03 |
JP2006059318A (ja) | 2006-03-02 |
US20060020907A1 (en) | 2006-01-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4191170B2 (ja) | プログラム可能なゲートアレイのコピー防止方法及びシステム | |
KR100792287B1 (ko) | 자체 생성한 암호화키를 이용한 보안방법 및 이를 적용한보안장치 | |
US7702927B2 (en) | Securely field configurable device | |
US20080072068A1 (en) | Methods and apparatuses for securing firmware image download and storage by distribution protection | |
US6141756A (en) | Apparatus and method of reading a program into a processor | |
EP1273996B1 (en) | Secure bootloader for securing digital devices | |
US10819514B2 (en) | Electronic component of electronic device, method of starting electronic device and encryption method | |
US8418259B2 (en) | TPM-based license activation and validation | |
EP1785902B1 (en) | Decryption key table access control on ASIC or ASSP | |
JP6182371B2 (ja) | 半導体集積回路を含むシステム | |
CA2415334A1 (en) | System for persistently encrypting critical software data to control operation of an executable software program | |
RU2004133759A (ru) | Инициализация, поддержание, обновление и восстановление защищенного режима работы интегрированной системы, использующей функцию управления доступом к данным | |
JPWO2009013825A1 (ja) | 情報処理装置、及び改竄検証方法 | |
JP4537940B2 (ja) | 情報処理装置、及びプログラム実行制御方法 | |
US20070061595A1 (en) | Apparatus and method for protecting data | |
JP2002215256A5 (ja) | ||
JP2003084853A (ja) | プログラム可能なゲートアレイのためのコピー防止方法及びシステム | |
JP2008502969A (ja) | セキュリティモジュール内に組み込まれたソフトウェアのセキュアな更新方法 | |
JPWO2006046484A1 (ja) | 認証方法 | |
JP4592337B2 (ja) | データ記憶装置 | |
CN113343215A (zh) | 嵌入式软件的授权和认证方法及电子设备 | |
JP2000047866A (ja) | プログラム実行プロテクト方法およびicカード、並びに記録媒体 | |
JP2020202535A (ja) | 安全製造に適用される制御システム及び制御方法 | |
US20020029344A1 (en) | System and method for decrypting encrypted computer program | |
JP2008003774A (ja) | マイクロコンピュータ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070905 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20071114 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080115 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20080820 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080917 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110926 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110926 Year of fee payment: 3 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110926 Year of fee payment: 3 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120926 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130926 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |