JP2019192220A - Pufに基づく真性乱数生成システム - Google Patents

Pufに基づく真性乱数生成システム Download PDF

Info

Publication number
JP2019192220A
JP2019192220A JP2019044341A JP2019044341A JP2019192220A JP 2019192220 A JP2019192220 A JP 2019192220A JP 2019044341 A JP2019044341 A JP 2019044341A JP 2019044341 A JP2019044341 A JP 2019044341A JP 2019192220 A JP2019192220 A JP 2019192220A
Authority
JP
Japan
Prior art keywords
sequence
random number
sequences
number sequences
random
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.)
Granted
Application number
JP2019044341A
Other languages
English (en)
Other versions
JP6775846B2 (ja
Inventor
志明 王
Shimei O
志明 王
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
eMemory Technology Inc
Original Assignee
eMemory Technology Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by eMemory Technology Inc filed Critical eMemory Technology Inc
Publication of JP2019192220A publication Critical patent/JP2019192220A/ja
Application granted granted Critical
Publication of JP6775846B2 publication Critical patent/JP6775846B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/582Pseudo-random number generators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/588Random number generators, i.e. based on natural stochastic processes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3271Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
    • H04L9/3278Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response using physically unclonable functions [PUF]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

【課題】長い真性乱数ビット・ストリームを生成するために物理的複製困難機能(PUF)を実行することが可能な真性乱数生成システムを提供する。【解決手段】真性乱数生成システム100は、PUFエントロピー・デバイスPUFEDと、擬似乱数生成器PRNGと、エンコーディング回路EN1とを含む。PUFエントロピー・デバイスは、乱数プールを生成するために使用される。擬似乱数生成器は、複数の第1ナンバー・シーケンスを生成するために使用される。エンコーディング回路は、PUFエントロピー・デバイスと擬似乱数生成器とに結合され、複数の第1ナンバー・シーケンスと乱数プールから選択された複数の第3ナンバー・シーケンスとに応じて、複数の第2ナンバー・シーケンスを生成する。【選択図】図1

Description

1.発明の分野
本発明は真性乱数生成システム、特に、長い真性乱数ビット・ストリームを生成するために物理的複製困難機能(a physical unclonable function:PUF)を実行することが可能な真性乱数生成システムを開示する。
2.従来技術の説明
技術の進歩とともに、ネットワーク・セキュリティ、データ伝送セキュリティ、及びプライバシー・セキュリティは重要な問題となっている。セキュリティ・レベルを向上させるため、データが、個人情報を担うプライバシー・データと考えられる場合、様々な暗号化方法が必要とされる。例えば、指紋データは、指の個人的な生理学的な特徴を担う固有のプライバシー・データと考えられる。虹彩認識データは、両目の個人的な生理学的な特徴を担う固有のプライバシー・データと考えられる。
一般に、プライバシー・データの規則性を減らし、データ流出のリスクを減らすために、何らかのセキュリティ・メカニズムが使用される。例えば、セキュア・クイック・レスポンス・コード(a secured quick response code:SQRC)は、暗号キーを導入することによりプライバシー・データを保護するために使用される。暗号キーはデータ盗用者には未知であるので、SQRCの規則性は予測困難である。しかしながら、それでも如何なるセキュリティ・メカニズムも突破される機会を有し、なぜならセキュリティ・キー(即ち、暗号キー)、スクランブル多項式、乱数コードワード・セット、及びマッピング・シーケンスは、数値に基づく関数を利用することにより生成されるからである。言い換えれば、セキュリティ・メカニズムのランダム性は、「擬似的な(pseudo)」ランダムと考えられる。
しかしながら、不法なハッカー又はデータ盗用者の数は年々増えている。不法なハッカー又はデータ盗用者はセキュリティ・メカニズムを破る優れた技術又は非ライセンス・デバイスを使用することが可能であるので、不法なハッカー又はデータ盗用者はセキュリティ・メカニズムに侵入する機会を有する。従って、如何なる規則性も伴わずに真性乱数シーケンスを生成する、セキュリティ・メカニズムに適用する方法は、セキュリティ・レベルを改善する動向である。
本発明の実施形態では、真性乱数生成システムが開示される。真性乱数生成システムは、物理的複製困難機能(PUF)エントロピー・デバイスと、擬似乱数生成器と、第1エンコーディング回路とを含む。PUFエントロピー・デバイスは乱数プールを生成するように構成される。擬似乱数生成器は、少なくとも1つの制御シーケンスに応じて複数の第1ナンバー・シーケンスを生成するように構成される。第1エンコーディング回路は、PUFエントロピー・デバイスと擬似乱数生成器とに結合され、複数の第1ナンバー・シーケンスと乱数プールから選択された複数の第3ナンバー・シーケンスとに応じて、複数の第2ナンバー・シーケンスを出力するように構成される。複数の第2ナンバー・シーケンスはランダムである。
様々な図面及び図に示される好適実施形態の以下の詳細な説明を読んだ後、本発明のこれら及び他の課題は、当業者にとって紛れもなく明らかになるであろう。
図1は本発明の実施形態による真性乱数生成システムのブロック図である。
図2は図1の真性乱数生成システムに少なくとも1つの制御シーケンスを導入することについてのブロック図である。
図3は図2の真性乱数生成システムにクロック信号を導入することについてのブロック図である。
図4は図1の真性乱数生成システムに第2エンコーディング回路を導入することについてのブロック図である。
図5は図4の真性乱数生成システムにレジスタ及び選択ユニットを導入することについてのブロック図である。
図6は図5における真性乱数生成システムの第1エンコーディング回路と第3エンコーディング回路との間のシーケンス選択プロセスの例である。
図1は本発明の実施形態による真性乱数生成システム100のブロック図である。真性乱数生成システム100は、物理的複製困難機能(PUF)エントロピー・デバイスと、擬似乱数生成器PRNGと、第1エンコーディング回路EN1とを含む。PUFエントロピー・デバイスPUFEDは、乱数プールを生成するために使用される。ここで、PUFエントロピー・デバイスPUFEDは、複製困難な乱数シーケンスを生成することにより固有のアイデンティティを提供することが可能な任意のハードウェアであるとすることが可能である。例えば、PUFエントロピー・デバイスPUFEDは、PUFエントロピー・デバイスPUFED内で隣接するトランジスタの2つのゲート酸化物層の一方をランダムに溶断するアンチヒューズ・ベースPUFデバイス(an antifuse-based PUF device)であるとすることが可能である。即ち、一方のゲート酸化物層を溶断するランダム性が、物理的にランダムな動作と考えられることが可能である。従って、PUFエントロピー・デバイスPUFEDがアンチヒューズ・ベースPUFデバイスである場合、PUFエントロピー・デバイスPUFEDにより生成される乱数プールは、有限の真性ランダム・エントロピー・ナンバー・プールと考えられることが可能である。PUFエントロピー・デバイスPUFEDは、真性ランダム・ビット・ストレージとともに、スタティック・ランダム・アクセス・メモリ・セル(SRAM)、抵抗ランダム・アクセス・メモリ・セル(ReRAM)、磁気抵抗ランダム・アクセス・メモリ・セル(MRAM)、強誘電体ランダム・アクセス・メモリ・セル(FeRAM)、又はワンタイム・プログラマブル・メモリ・セル、マルチ・タイム・プログラマブル・メモリ・セル、フラッシュ・メモリ・セルにより実装されることも可能であることに留意すべきである。同等に、ランダム・エントロピー・ナンバー・プールに非規則性が導入される。擬似乱数生成器PRNGは、PUFエントロピー・デバイスPUFEDに結合され、複数の第1ナンバー・シーケンスBS1を生成する。複数の第1ナンバー・シーケンスBS1は、「擬似」乱数シーケンスと考えられることが可能であり、なぜならそれらは数値に基づく関数を使用することにより生成されるからである。例えば、擬似乱数生成器PRNGによりサポートされる全ての可能なナンバー・シーケンスは、ナンバー・シーケンスBS1_0ないしナンバー・シーケンスBS1_N-1として示されることが可能である。初期インデックス「m」について、擬似乱数生成器PRNGは、ナンバー・シーケンスBS1_m+0ないしBS1_m+m’-1を含む複数の第1ナンバー・シーケンスBS1を生成することが可能である。ここで、m、m’及びNは3つの正の整数であり、N≧m及びN≧m’である。第1エンコーディング回路EN1は、PUFエントロピー・デバイスPUFEDと擬似乱数生成器PRNGとに結合され、複数の第1ナンバー・シーケンスBS1と、乱数プールから選択された複数の第3ナンバー・シーケンスBS3とに従って、複数の第2ナンバー・シーケンスBS2を出力する。ここで、乱数プールは小さな容量を有する有限ナンバー・プールであるので、乱数プールから選択されるシーケンスは、シーケンス・セットを形成するためには重複する可能性がある。例えば、シーケンスBS3_0ないしシーケンスBS3_M-1が、乱数プールから選択されることが可能である。そして、シーケンスBS3_0ないしシーケンスBS3_M-1は、シーケンス・セット{[BS3_0,...,BS3_M-1],[BS3_0,...,BS3_M-1]}を形成するために重複されることが可能である。従って、第3ナンバー・シーケンスBS3は、シーケンス・セットから幾つかのシーケンスをランダムに又は非ランダムに選択することにより決定されることが可能である。第1エンコーディング回路EN1は、複数の第2乱数シーケンスBS2を生成するために、ビット毎の排他的論理和機能を実行することが可能である。例えば、第2ナンバー・シーケンスBS2は、シーケンスBS2_0ないしシーケンスBS2_m’-1を含むことが可能である。シーケンスBS2_0は、シーケンスBS1_0とシーケンスBS3_0とを、ビット毎の排他的論理和関数を利用することにより合成することで生成されることが可能である。シーケンスBS2_1は、シーケンスBS1_1とシーケンスBS3_1とを、ビット毎の排他的論理和関数を利用することにより合成することで生成されることが可能である、等々。上述したように、第1ナンバー・シーケンスBS1は擬似乱数である。第3ナンバー・シーケンスBS3は、真性ランダムである(即ち、アンチヒューズに基づくPUFを利用することにより物理的に生成される)。第1エンコーディング回路EN1が、第1ナンバー・シーケンスBS1と第3ナンバー・シーケンスBS3とを結合して第2ナンバー・シーケンスBS2を生成した後では、第2ナンバー・シーケンスBS2の規則性は予測され得ない。
ランダム性に関し、複数の第1ナンバー・シーケンスBS1は、複数の第2ナンバー・シーケンスBS2及び複数の第3ナンバー・シーケンスBS3よりディスクリートではない(less discrete)。更に、第2ナンバー・シーケンスBS2の規則性は予測できないので、第2ナンバー・シーケンスBS2は「真の」ランダム・シーケンスである。
更に、PUFエントロピー・デバイスPUFEDの乱数プールの容量条件は約2048ビット(2kビット)とすることが可能である。各々の第2ナンバー・シーケンスBS2の長さは32ビットに等しいとすることが可能である。各々の第3ナンバー・シーケンスBS2の長さは32ビットに等しいとすることが可能である。擬似乱数生成器PRNGにより生成される複数の第1ナンバー・シーケンスBS1は、長い擬似乱数ビット・ストリームを形成する。PUFエントロピー・デバイスPUFEDの乱数プールから選択される複数の第3ナンバー・シーケンスBS3は、短い真性乱数ビット・ストリームを形成する。第1エンコーディング回路EN1が、第1ナンバー・シーケンスBS1と第3ナンバー・シーケンスBS3とを結合して第2ナンバー・シーケンスBS2を生成した後、複数の第2ナンバー・シーケンスBS2は長い真性乱数ビット・ストリームを形成する。言い換えれば、真性乱数生成システム100は、セキュリティ・メカニズムに適用するための長い真性乱数生成ビット・ストリームを生成することが可能である。
任意の妥当なハードウェア修正は本発明の範囲内に該当する。例えば、別の実施形態では、擬似乱数生成器PRNGとPUFエントロピー・デバイスPUFEDとは結合されない。従って、少なくとも1つの制御シーケンスは、乱数プールに応じて決定されない。更に、少なくとも制御シーケンスは、ユーザー入力データ・ソース等の他のデータ・ソースにより提供、生成又は決定されてもよい。ここで、擬似乱数生成器PRNGは複数の第1ナンバー・シーケンスBS1を生成する一方、PUFエントロピー・デバイスPUFEDは複数の第3ナンバー・シーケンスBS3を生成する。エンコーディング回路EN1は、複数の第1ナンバー・シーケンスBS1と複数の第3ナンバー・シーケンスBS3とを受信し、複数の第2ナンバー・シーケンスBS2を出力する。
図2は真性乱数生成システム100に少なくとも1つの制御シーケンスを導入することについてのブロック図である。曖昧さを回避するために、以後、それは真性乱数生成システム200と呼ばれる。真性乱数生成システム200において、擬似乱数生成器PRNGは、制御シーケンス・セットを保存するためにメモリMEMを含むことが可能である。少なくとも1つの制御シーケンスは、PUFエントロピー・デバイスPUFEDの乱数プールに応じて制御シーケンス・セットから選択されることが可能である。例えば、少なくとも1つの制御シーケンスは、乱数プールに従って決定されるコンフィギュレーション・シーケンスCg1を含むことが可能である。コンフィギュレーション・シーケンスCg1は、複数のコンフィギュレーション・シードを含むことが可能である。複数のコンフィギュレーション・シードは、エンコーディング動作が第1エンコーディング回路EN1により実行される場合に、複数の第2ナンバー・シーケンスBS2と複数の第1ナンバー・シーケンスBS1との間のマッピング関係を決定するために使用されることが可能である。
少なくとも1つの制御シーケンスは、乱数プールに応じて決定される初期シーケンスIni1を含むことが可能である。初期シーケンスIni1は複数の初期シードを含むことが可能である。複数の初期シードは、擬似乱数生成器PRNGによりサポートされる全ての可能なナンバー・シーケンスのうちの、第1ナンバー・シーケンスBS1の初期ナンバー・シーケンスを示すために使用されることが可能である。少なくとも1つの制御シーケンスは、乱数プールに応じて決定されるスクランブル・シーケンスScr1を含むことが可能である。スクランブル・シーケンスScr1は複数のスクランブル・シードを含むことが可能である。複数のスクランブル・シードは、複数の第1ナンバー・シーケンスBS1のビット割当をスクランブルするために使用されることが可能である。更に、コンフィギュレーション・シーケンスCg1、初期シーケンスIni1、及びスクランブル・シーケンスScr1の制御セットのコードワード空間は、異なるものとすることが可能である。また、コンフィギュレーション・シーケンスCg1、初期シーケンスIni1、及びスクランブル・シーケンスScr1は、任意の妥当なアルゴリズム、変換関数、又は数値コンバータを使用することにより乱数プールに応じて生成されることが可能である。真性乱数生成システム200に関し、PUFエントロピー・デバイスPUFEDの乱数プールのランダム・コードは、制御セットから選択される少なくとも1つの制御シーケンスを「設定する(configuring)」ために使用されることが可能である。例えば、32ビットの長さを有する初期シーケンスIni1に関し、対応するコードワード空間は、232-1個の可能なバリエーションを含む。32ビットの長さを有するスクランブル・シーケンスScr1に関し、対応するコードワード空間は、232個の可能なバリエーションを含む。更に、乱数プールから選択されるランダム・コードのビット・マッピングは、合理的に設計されることが可能である。例えば、乱数プールのランダム・コードの1対1ビット・マッピング又は非1対1ビット・マッピングが、導入されることが可能である。例えば、ランダム・コード・ビット[0]は、1対1ビット・マッピング機能を使用することにより、制御セットの決定論的ランダム・シーケンスのビット[0]に対応することが可能である。ランダム・コード・ビット[1]及び[27]は、非1対1マッピング関数を使用することにより、制御セットの決定論的ランダム・シーケンスのビット[15]に対応することが可能である。ランダム・コード・ビット[5]は、非1対1マッピング関数を使用することにより、制御セットの決定論的ランダム・シーケンスのビット[2]及び[12]に対応することが可能である。真性乱数生成システム200では、コンフィギュレーション・シーケンスCg1、初期シーケンスIni1、及びスクランブル・シーケンスScr1は、乱数プールに応じてランダムに選択されることが可能であるので、擬似乱数生成器PRNGにより生成される第1ナンバー・シーケンスBS1のランダム性は増やされることが可能である。従って、第1エンコーディング回路En1が第1ナンバー・シーケンスBS1と第3ナンバー・シーケンスBS3とを結合して複数の第2ナンバー・シーケンスBS2を生成した後、それらの規則性は予測されることが困難であるので、複数の第2ナンバー・シーケンスBS2は、セキュリティ・メカニズムに適用する高いセキュリティ・レベルを提供することが可能である。
図3は真性乱数生成システム200にクロック信号を導入することについてのブロック図である。曖昧さを回避するために、以後、それは真性乱数生成システム300と呼ばれる。セキュリティ・レベルを増進するために、真性乱数生成システム300は、第1クロック信号CLK1と第2クロック信号CLK2とを導入することが可能である。第1クロック信号CLK1と第2クロック信号CLK2とは異なるものとすることが可能である。擬似乱数生成器PRNGの少なくとも1つの制御シーケンス(即ち、コンフィギュレーション・シーケンスCg1、初期シーケンスIni1、及びスクランブル・シーケンスScr1)は、第1クロック信号CLK1に応じて更新されることが可能である。複数の第3ナンバー・シーケンスBS3は、第2クロック信号CLK2に応じて、PUFエントロピー・デバイスPUFEDの乱数プールから順番に選択されることが可能である。例えば、コンフィギュレーション・シーケンスCg1、初期シーケンスIni1、及びスクランブル・シーケンスScr1は、32クロック毎に同時に更新されることが可能である。更に、コンフィギュレーション・シーケンスCg1、初期シーケンスIni1、及びスクランブル・シーケンスScr1はまた個別的に更新されることも可能である。例えば、コンフィギュレーション・シーケンスCg1は、512クロック毎に更新されることが可能である。初期シーケンスIni1は、128クロック毎に更新されることが可能である。スクランブル・シーケンスScr1は、32クロック毎に更新されることが可能である。更に、第3シーケンスBS3は、第1エンコーディング回路EN1により受信される。コンフィギュレーション・シーケンスCg1、初期シーケンスIni1、及びスクランブル・シーケンスScr1は、論理プロセスを使用することにより更新されることが可能である。例えば、クロック数が7までカウントされた場合に、第1エンコーディング回路EN1により受信される第3ナンバー・シーケンスBS3は、更新されることが可能である。クロック数が32までカウントされた場合に、スクランブル・シーケンスScr1は、更新されることが可能である。クロック数が128までカウントされた場合に、初期シーケンスIni1は、更新されることが可能である。クロック数が512までカウントされた場合に、コンフィギュレーション・シーケンスCg1は、更新されることが可能である。更に、第3クロック信号CLK3が、真性乱数生成システム300に導入されることが可能である。擬似乱数生成器PRNGの複数の第1ナンバー・シーケンスBS1は、第3クロック信号CLK3に応じて第1エンコーディング回路EN1により順次に受信されることが可能である。設計の柔軟性を拡張するために、第1クロック信号CLK1、第2クロック信号CLK2及び/又は第3クロック信号CLK3は、固定される又は時間経過により変えられることが可能である。従って、第1クロック信号CLK1、第2クロック信号CLK2及び/又は第3クロック信号CLK3を導入することにより、複数の第2ナンバー・シーケンスBS2のランダム性及びスループットは柔軟に調整されることが可能である。
図4は真性乱数生成システム100に第2エンコーディング回路を導入することについてのブロック図である。曖昧さを回避するために、以後、それは真性乱数生成システム400と呼ばれる。出力されるランダム・シーケンスのランダム性を増加させ、乱数プール容量の条件を更に緩和するために、乱数生成システム400に第2エンコーディング回路EN2が導入されることが可能である。第2エンコーディング回路EN2は、第1エンコーディング回路EN1及びPUFエントロピー・デバイスPUFEDに結合され、複数の第2ナンバー・シーケンスBS2と複数の第5ナンバー・シーケンスBS5とに応じて、複数の第4ナンバー・シーケンスBS4を生成する。ここで、エンコーディング動作を実行するために、少なくとも1つのクロック(即ち、第1クロック信号CLK1、第2クロック信号CLK2、及び/又は第3クロック信号CLK3)が、第1エンコーディング回路EN1及び第2エンコーディング回路EN2により必要とされるので、乱数プールから選択される複数の第3ナンバー・シーケンスBS3の割り当ては、少なくとも1クロックにわたって循環的にシフトされる。例えば、複数の第3ナンバー・シーケンスBS3は、{[BS3_0,...,BS3_M-1],[BS3_0,...,BS3_M-1],...}という形式でシーケンス・セットから初期に選択される。(例えば、2クロックのような)ある期間の後に、シーケンス・セット{[BS3_0,...,BS3_M-1],[BS3_0,...,BS3_M-1],...}は、シーケンス・セット{[BS3_2,...,BS3_M-1], [BS3_0,...,BS3_M-1],BS3_0,BS3_1,...}となる。従って、複数の第5ナンバー・シーケンスBS5は、シーケンス・セット{[BS3_2,...,BS3_M-1], [BS3_0,...,BS3_M-1],BS3_0,BS3_1,...}から選択されることが可能である。言い換えれば、複数の第3ナンバー・シーケンスBS3の割り当てが少なくとも1つのクロックにわたって循環的にシフトされた後に、複数の第5ナンバー・シーケンスBS5が生成されることが可能である。真性乱数生成システム400では、上述したように、PUFエントロピー・デバイスPUFEDの乱数プールは、短い真性乱数ストリームを提供することが可能である。擬似乱数生成器PRNGは、長い擬似乱数ビット・ストリームを提供することが可能である。従って、第1エンコーディング回路EN1は、低い規則性とともに長い真性乱数シーケンス(即ち、第2ナンバー・シーケンスBS2)を生成することが可能である。更に、第2エンコーディング回路EN2は、ほぼ非規則性の長い真性乱数ストリーム(即ち、第4ナンバー・シーケンスBS4)を出力することが可能である。言い換えれば、真性乱数生成システム400におけるPUFエントロピー・デバイスPUFEDの乱数プールの容量条件は、真性乱数生成システム100におけるPUFエントロピー・デバイスPUFEDの乱数プールの容量条件より少ない。例えば、真性乱数生成システム100におけるPUFエントロピー・デバイスPUFEDの乱数プールの容量条件は、約2048ビット(2kビット)である。しかしながら、真性乱数生成システム400におけるPUFエントロピー・デバイスPUFEDの乱数プールの容量条件は、約1024ビット(1kビット)である。更に、複数の第2ナンバー・シーケンスBS2が生成された後に、更に乱数プールの情報が複数の第4ナンバー・シーケンスBS2を生成するために導入されるので、複数の第4ナンバー・シーケンスBS4は、複数の第2ナンバー・シーケンスBS2よりも豊富にディスクリートである。
図5は図4の真性乱数生成システム400にレジスタREG及び選択ユニットSLを導入することについてのブロック図である。曖昧さを回避するために、以後、それは真性乱数生成システム500と呼ばれる。出力されるランダム・シーケンスのランダム性を更に増加させるため、レジスタREG及び選択ユニットSLが乱数生成システム500に導入されることが可能である。選択ユニットSLは、PUFエントロピー・デバイスPUFEDに結合され、乱数プールに応じて選択信号を生成する。代替的に、選択ユニットSLの選択信号は、ユーザーにより決定されることが可能である。言い換えれば、選択ユニットSLの選択信号は、別のデータ・ソースにより提供、生成、又は決定されることが可能である。レジスタREGは、第1エンコーディング回路EN1と選択ユニットSLとに結合され、第1エンコーディング回路EN1から出力される各々の第2ナンバー・シーケンスBS2をバッファリングする。第3エンコーディング回路EN3は、レジスタREGと選択ユニットSLとに結合され、複数の第7ナンバー・シーケンスBS7と複数の第8ナンバー・シーケンスBS8とに応じて複数の第6ナンバー・シーケンスBS6を生成する。複数の第7ナンバー・シーケンスBS7は、レジスタREGから順次に出力される。複数の第3ナンバー・シーケンスBS3の割り当てが少なくとも1つのクロックにわたって循環的にシフトされた後に、複数の第8ナンバー・シーケンスBS8が選択ユニットSLにより生成される。詳細は以下で説明される。上述したように、複数の第3ナンバー・シーケンスBS3は、{[BS3_0,...,BS3_M-1],[BS3_0,...,BS3_M-1]}の形式でシーケンス・セットから初期に選択される。(例えば、2クロック等の)ある期間の後に、シーケンス・セット{[BS3_0,...,BS3_M-1],[BS3_0,...,BS3_M-1]}は、シーケンス・セット{[BS3_2,...,BS3_M-1],[BS3_0,...,BS3_M-1],BS3_0,BS3_1}になり、第5ナンバー・シーケンスBS5として決定される。その後、シーケンス・セット{[BS3_2,...,BS3_M-1],[BS3_0,...,BS3_M-1],BS3_0,BS3_1}を含む第5ナンバー・シーケンスBS5の割り当ては、選択ユニットSLを使用することにより、シーケンス・セット{BS3_2,...,BS3_0,BS3_M-1,BS3_1,...}として再構成されることが可能である。複数の第8ナンバー・シーケンスBS8は、再構成されたシーケンス・セットから選択されることが可能である。言い換えれば、各々の第8ナンバー・シーケンスBS8は、乱数プールに応じて、シーケンス・セット{[BS3_2,...,BS3_M-1],[BS3_0,...,BS3_M-1],BS3_0,BS3_1}(即ち、第5ナンバー・シーケンスBS5)の1つのシーケンスによりランダムに選択されることが可能である。更に、複数の第3ナンバー・シーケンスBS3は巡回シフト期間を有する(即ち、例えば、巡回シフト期間はMシーケンスに等しい)。選択ユニットSLは、マッピング関数に従って、複数の第3ナンバー・シーケンスBS3の割り当てを再構成する(即ち、マッピング関数は、PUFに基づく任意のアルゴリズムであるとすることが可能である)。複数の第3ナンバー・シーケンスBS3の割り当てを再構成する最大割り当てオフセットは、巡回シフト期間より短い又は等しい。例えば、シーケンス・セット{[BS3_2,...,BS3_M-1],[BS3_0,...,BS3_M-1],BS3_0,BS3_1}の場合に、シーケンスBS3_2が選択ユニットSLにより先ず選択され、その後に第3エンコーディング回路EN3に出力されることが可能である。しかしながら、最大割り当てオフセットがM+1に等しい場合、シーケンスBS3_2が依然として選択され、その後に第3エンコーディング回路EN3に出力される。従って、第3エンコーディング回路EN3に出力される隣接するシーケンスが異なることを保証するために、最大割り当てオフセットは巡回シフト期間以下であることが必要である。真性乱数生成システム500では、複数の第7ナンバー・シーケンスBS7が、選択ユニットSLの選択信号に応じてレジスタにより複数の第2ナンバー・シーケンスBS2の中から選択される。第7ナンバー・シーケンスBS7の生成の詳細が以下に説明される。
図6は真性乱数生成システム500の第1エンコーディング回路EN1と第3エンコーディング回路EN3との間のシーケンス選択プロセスの例である。ここで、第1エンコーディング回路EN1の複数の第2ナンバー・シーケンスBS2は、グループG1ないしグループGQ等のようにQ個のグループに区分けされることが可能である。Qは2の冪乗である正の整数である。各グループは幾つかのシーケンスを含む。例えば、グループG1はシーケンスBS2_0ないしシーケンスBS2_15を含む。グループG2はシーケンスBS2_16ないしシーケンスBS2_31を含む、等々。更に、選択信号は複数のスイッチ・コマンドを含む。各々のスイッチ・コマンドは、各々の第2ナンバー・シーケンスBS2に対応する。第2ナンバー・シーケンスBS2のスイッチ・コマンドが非選択状態に対応する場合(例えば、シーケンスBS2_1はレジスタREGによって選択されておらず、BS2_1(UNSEL)として示されている)、第2ナンバー・シーケンスBS2はレジスタREGによりドロップにされる。スイッチ・コマンドが選択状態に対応する場合(例えば、シーケンスBS2_0はレジスタREGにより選択されており、BS2_0(SEL)として示されている)、第2ナンバー・シーケンスBS2は選択され、その後、第7ナンバー・シーケンスBS7としてレジスタREGにより出力される。例えば、グループG1において、シーケンスBS2_0は、選択状態のスイッチ・コマンドに対応する。従って、シーケンスBS2_0は、レジスタREGにより選択され、第3エンコーディング回路EN3に出力される。シーケンスBS2_1ないしBS2_15は、非選択状態のスイッチ・コマンドに対応する。従って、シーケンスBS2_1ないしBS2_15は、レジスタREGによってドロップにされる。グループG2において、シーケンスBS2_18は、選択状態のスイッチ・コマンドに対応する。従って、シーケンスBS2_18は選択され、第3エンコーディング回路EN3に出力される。シーケンスBS2_16ないしBS2_17及びBS2_19ないしBS2_31は、非選択状態のスイッチ・コマンドに対応する。従って、シーケンスBS2_16ないしBS2_17及びBS2_19ないしBS2_31は、レジスタREGによってドロップにされる。言い換えれば、各々の第7ナンバー・シーケンスBS7が、複数の第2ナンバー・シーケンスBS2の各グループから選択された後に、レジスタREGは、Q個の第7ナンバー・シーケンスBS7を順次に出力する(即ち、BS2_0→BS2_18→...)。同様に、第3エンコーディング回路EN3は、複数の第6ナンバー・シーケンスBS6を生成するために、ビット毎の排他的論理和機能を実行することが可能である。例えば、第3エンコーディング回路EN3は、ビット毎の排他的論理和機能を使用することにより図5におけるシーケンスBS3_2と図6におけるBS2_0とを結合し、第6ナンバー・シーケンスBS6を生成する。
真性乱数生成システム500では、上述したように、PUFエントロピー・デバイスPUFEDの乱数プールは、短い真性乱数ストリームを提供することが可能である。擬似乱数生成器PRNGは長い擬似乱数ビット・ストリームを提供することが可能である。従って、第1エンコーディング回路EN1は、低い規則性とともに、長い真性乱数ストリーム(即ち、第7ナンバー・シーケンスBS7)を出力することが可能である。更に、第2エンコーディング回路EN2は、ほぼ非規則性の長い真性乱数ストリーム(即ち、第6ナンバー・シーケンスBS6)を出力することが可能である。言い換えれば、真性乱数生成システム500におけるPUFエントロピー・デバイスPUFEDの乱数プールの容量条件は、真性乱数生成システム100におけるPUFエントロピー・デバイスPUFEDの乱数プールの容量条件より少ない。例えば、真性乱数生成システム100におけるPUFエントロピー・デバイスPUFEDの乱数プールの容量条件は約2048ビット(2kビット)である。しかしながら、真性乱数生成システム500におけるPUFエントロピー・デバイスPUFEDの乱数プールの容量条件は約1024ビット(1kビット)である。更に、複数の第7ナンバー・シーケンスBS7が生成された後、乱数プールの情報は、複数の第6ナンバー・シーケンスBS6を生成するために再び導入されるので、複数の第6ナンバー・シーケンスBS6は、複数の第7ナンバー・シーケンスBS7よりも豊富にディスクリートである。
真性乱数生成システム100ないし500において、任意の妥当なハードウェアの変形は、本発明の範囲内に属する。例えば、乱数生成システム200において、PUFエントロピー・デバイスPUFEDの乱数プールの容量が十分に大きい場合、コンフィギュレーション・シーケンスCg1、初期シーケンスIni1、及びスクランブル・シーケンスScr1は、クロック毎に変更されることが可能である。従って、擬似乱数生成器PRNGから出力されるナンバー・シーケンス(即ち、第1ナンバー・シーケンスBS1)は、セキュリティ・メカニズムに直接的に適用するための、長い真性乱数ビット・ストリームを形成することが可能である。言い換えれば、第1エンコーディング回路EN1は省略されることが可能である。更に、PUFエントロピー・デバイスPUFEDの乱数プールが非常に大きい場合、乱数プールから選択されるナンバー・シーケンスは、セキュリティ・メカニズムに直接的に適用するための、長い真性乱数ビット・ストリームを形成することが可能である。従って、擬似乱数生成器PRNGも省略されることが可能である。
更に、第1エンコーディング回路EN1、第2エンコーディング回路EN2、及び第3エンコーディング回路EN3は、合理的に変形されることが可能である。例えば、排他的論理和オペレータを使用する代わりに、任意のビット毎の論理オペレータが、第1エンコーディング回路EN1、第2エンコーディング回路EN2、及び第3エンコーディング回路EN3に適用されることが可能である。
要するに、本発明は真性乱数生成システム及びその修正されたハードウェア構造を開示する。真性乱数生成システムの目的は、長い真性乱数ビット・ストリームを生成することである。特に、長い真性乱数ビット・ストリームは、短い真性乱数ビット・ストリームと長い擬似ランダム・ビット・ストリームとを結合することにより生成されることが可能である。更に、短い真性乱数ビットは、任意の物理的複製困難機能(PUF)を使用することにより生成される乱数プールから選択される。乱数プールの情報は、長い真性乱数ビット・ストリームを生成するために使用されるので、長い真性乱数ビット・ストリームの規則性は、予測困難である。従って、長い真性乱数ビット・ストリームをセキュリティ・メカニズム(即ち、例えば、指紋データ暗号化メカニズム)に適用することにより、不法ハッカー又はデータ盗用者はデータの内容を特定又は復元することはできず、なぜなら彼らは貪欲法(a greedy search method)を使用してプライバシー・データの規則性を予測することはできないからである。従って、本発明の真性乱数生成システムは、優れたセキュリティ信頼性を提供し、データ漏洩の機会を減らすことが可能である。
発明の教示を保持しつつ、デバイス及び方法の多数の変形及び代替が為されてよいことに、当業者は容易に気付くであろう。従って、上記の開示は添付の特許請求の範囲の境界によってのみ制限されるように理解されるべきである。

Claims (21)

  1. 真性乱数生成システムであって:
    乱数プールを生成するように構成される物理的複製困難機能(PUF)エントロピー・デバイス;
    少なくとも1つの制御シーケンスに応じて複数の第1ナンバー・シーケンスを生成するように構成される擬似乱数生成器;及び
    前記PUFエントロピー・デバイスと前記擬似乱数生成器とに結合され、前記複数の第1ナンバー・シーケンスと前記乱数プールから選択される複数の第3ナンバー・シーケンスとに応じて複数の第2ナンバー・シーケンスを出力するように構成される第1エンコーディング回路;
    を有し、前記複数の第2ナンバー・シーケンスはランダムである、システム。
  2. 前記擬似乱数生成器は前記PUFエントロピー・デバイスに結合され、前記少なくとも1つの制御シーケンスは前記乱数プールに応じて決定される、請求項1に記載のシステム。
  3. 前記複数の第1ナンバー・シーケンスは前記複数の第2ナンバー・シーケンス及び前記複数の第3ナンバー・シーケンスよりディスクリートではなく、前記乱数プールは有限真性ランダム・エントロピー・ナンバー・プールである、請求項1に記載のシステム。
  4. 前記少なくとも1つの制御シーケンスはコンフィギュレーション・シーケンスを有し、前記コンフィギュレーション・シーケンスは複数のコンフィギュレーション・シードを有し、前記複数のコンフィギュレーション・シードは、前記複数の第2ナンバー・シーケンスと前記複数の第1ナンバー・シーケンスとの間のマッピング関係を決定するように構成される、請求項1に記載のシステム。
  5. 前記少なくとも1つの制御シーケンスは初期シーケンスを有し、前記初期シーケンスは複数の初期シードを有し、前記複数の初期シードは、前記擬似乱数生成器によりサポートされる可能な全ての乱数シーケンスのうちの前記第1ナンバー・シーケンスの初期ナンバー・シーケンスを示すように設定される、請求項1に記載のシステム。
  6. 前記少なくとも1つの制御シーケンスはスクランブル・シーケンスを有し、前記スクランブル・シーケンスは複数のスクランブル・シードを有し、前記複数のスクランブル・シードは、前記複数の第1ナンバー・シーケンスのビット割り当てをスクランブルするように設定される、請求項1に記載のシステム。
  7. 前記擬似乱数生成器の前記少なくとも1つの制御シーケンスは、第1クロック信号に応じて更新され、前記複数の第3ナンバー・シーケンスは、第2クロック信号に応じて前記乱数プールから順次に選択され、前記第1クロック信号及び前記第2クロック信号は異なる、請求項1に記載のシステム。
  8. 前記擬似乱数生成器により生成される前記複数の第1ナンバー・シーケンスは、第3クロック信号に応じて前記第1エンコーディング回路へ順次に出力され、前記第1クロック信号、前記第2クロック信号、及び/又は前記第3クロック信号は時間経過とともに変化する、請求項7に記載のシステム。
  9. 前記第1エンコーディング回路は、前記複数の第2ナンバー・シーケンスを生成するために、ビット毎の排他的論理和機能を実行する、請求項1に記載のシステム。
  10. 前記第1エンコーディング回路と前記PUFエントロピー・デバイスとに結合され、前記複数の第2ナンバー・シーケンスと複数の第5ナンバー・シーケンスとに応じて複数の第4ナンバー・シーケンスを出力するように構成される第2エンコーディング回路を更に有し;
    前記複数の第3ナンバー・シーケンスの割り当てが少なくとも1つのクロックにわたって循環的にシフトされた後に、前記複数の第5ナンバー・シーケンスが生成される、請求項1に記載のシステム。
  11. 前記複数の第4ナンバー・シーケンスは前記複数の第2ナンバー・シーケンスよりディスクリートである、請求項10に記載のシステム。
  12. 前記PUFエントロピー・デバイスに結合され、前記乱数プールに応じて選択信号を生成するように構成される選択ユニット;
    前記第1エンコーディング回路と前記選択ユニットとに結合され、前記第1エンコーディング回路から出力される各々の第2ナンバー・シーケンスをバッファリングするように構成されるレジスタ;及び
    前記レジスタと前記選択ユニットとに結合され、複数の第7ナンバー・シーケンスと複数の第8ナンバー・シーケンスとに応じて複数の第6ナンバー・シーケンスを生成するように構成される第3エンコーディング回路;
    を更に有し、前記複数の第7ナンバー・シーケンスは前記レジスタから順次に出力され、前記選択ユニットは、前記複数の第8ナンバー・シーケンスを出力するために前記複数の第3ナンバー・シーケンスの割り当てを再設定する、請求項1に記載のシステム。
  13. 前記複数の第7ナンバー・シーケンスは、前記選択信号に応じて前記レジスタにより前記複数の第2ナンバー・シーケンスから選択される、請求項12に記載のシステム。
  14. 前記選択信号は複数のスイッチ・コマンドを有し、各々のスイッチ・コマンドは各々の第2ナンバー・シーケンスに対応し、スイッチ・コマンドが非選択状態に対応する場合に、第2ナンバー・シーケンスは前記レジスタによりドロップにされる、請求項12に記載のシステム。
  15. 前記選択信号は複数のスイッチ・コマンドを有し、各々のスイッチ・コマンドは各々の第2ナンバー・シーケンスに対応し、スイッチ・コマンドが選択状態に対応する場合に、第2ナンバー・シーケンスは、前記レジスタにより選択されて第7ナンバー・シーケンスとして出力される、請求項12に記載のシステム。
  16. 前記複数の第2ナンバー・シーケンスはQ個のグループに区分けされ、前記複数の第2ナンバー・シーケンスの各々のグループから各々の第7ナンバー・シーケンスが選択され、Qは2の冪乗である正の整数である、請求項12に記載のシステム。
  17. 前記第3エンコーディング回路は、前記複数の第6ナンバー・シーケンスを生成するためにビット毎の排他的論理和機能を実行する、請求項12に記載のシステム。
  18. 前記複数の第3ナンバー・シーケンスは巡回シフト期間を有し、前記選択ユニットはマッピング関数に従って前記複数の第3ナンバー・シーケンスの割り当てを再設定し、前記複数の第3ナンバー・シーケンスの前記割り当てを再設定することについての最大割り当てオフセットは、前記巡回シフト期間以下である、請求項12に記載のシステム。
  19. 前記複数の第6ナンバー・シーケンスは、前記複数の第7ナンバー・シーケンスよりディスクリートである、請求項12に記載のシステム。
  20. 前記PUFエントロピー・デバイスは、前記PUFエントロピー・デバイス内の隣接するトランジスタの2つのゲート酸化物層のうち一方をランダムに破裂させることにより、アンチヒューズ・ベースPUFを実行する、請求項1に記載のシステム。
  21. 前記擬似乱数生成器により生成される前記複数の第1ナンバー・シーケンスは長い擬似乱数ビット・ストリームを形成し、前記PUFエントロピー・デバイスの前記乱数プールから選択される前記複数の第3ナンバー・シーケンスは短い真性乱数ビット・ストリームを形成し、前記第1エンコーディング回路により生成される前記複数の第2ナンバー・シーケンスは長い真性乱数ビット・ストリームを形成する、請求項1に記載のシステム。
JP2019044341A 2018-04-18 2019-03-12 Pufに基づく真性乱数生成システム Active JP6775846B2 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201862659150P 2018-04-18 2018-04-18
US62/659,150 2018-04-18
US16/292,330 2019-03-05
US16/292,330 US11055065B2 (en) 2018-04-18 2019-03-05 PUF-based true random number generation system

Publications (2)

Publication Number Publication Date
JP2019192220A true JP2019192220A (ja) 2019-10-31
JP6775846B2 JP6775846B2 (ja) 2020-10-28

Family

ID=65801845

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019044341A Active JP6775846B2 (ja) 2018-04-18 2019-03-12 Pufに基づく真性乱数生成システム

Country Status (5)

Country Link
US (1) US11055065B2 (ja)
EP (1) EP3557407B1 (ja)
JP (1) JP6775846B2 (ja)
CN (1) CN110389747B (ja)
TW (1) TWI739090B (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022126584A (ja) * 2021-02-18 2022-08-30 ▲しゃーん▼碼科技股▲ふん▼有限公司 乱数発生器

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI793429B (zh) 2019-07-25 2023-02-21 熵碼科技股份有限公司 加密金鑰生成器及傳輸系統
US11568093B2 (en) 2020-04-17 2023-01-31 SK Hynix Inc. Data scramblers with enhanced physical security
KR20210129370A (ko) 2020-04-20 2021-10-28 삼성전자주식회사 메모리 모듈 및 적층형 메모리 장치
TWI782540B (zh) * 2020-06-04 2022-11-01 熵碼科技股份有限公司 基於物理不可複製功能的真隨機數產生器以及用於產生真隨機數的方法
US11662978B2 (en) 2020-06-04 2023-05-30 PUFsecurity Corporation Modular operation circuit adopting iterative calculations
CN114115807A (zh) * 2020-08-31 2022-03-01 京东方科技集团股份有限公司 随机数生成器及随机数生成方法
US11380379B2 (en) * 2020-11-02 2022-07-05 Macronix International Co., Ltd. PUF applications in memories
EP4002790A1 (en) * 2020-11-13 2022-05-25 Secure Thingz Limited A provisioning method and system
CN114614987B (zh) * 2020-12-03 2023-07-07 北京京东方技术开发有限公司 一种集成电路及其数字指纹生成电路、方法
KR20220091755A (ko) 2020-12-24 2022-07-01 삼성전자주식회사 반도체 메모리 장치 및 이를 구비하는 메모리 시스템
US11874776B2 (en) 2021-06-25 2024-01-16 Intel Corporation Cryptographic protection of memory attached over interconnects
US20210319138A1 (en) * 2021-06-25 2021-10-14 Intel Corporation Utilizing logic and serial number to provide persistent unique platform secret for generation of soc root keys
CN113672199B (zh) * 2021-08-27 2023-07-14 太原理工大学 一种具备物理不可克隆函数功能的多熵源随机数发生器
CN114564171B (zh) * 2022-03-04 2023-09-12 中国工程物理研究院电子工程研究所 真随机数生成方法、装置、电子设备、存储介质及系统

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001100980A (ja) * 1999-08-05 2001-04-13 Mitsubishi Electric Inf Technol Center Europ Bv ランダムな2値波形を生成する方法、物体の検出方法、及びランダムな2値波形を生成する装置
JP2002544690A (ja) * 1998-06-24 2002-12-24 ワーコップ インベストメント リミテッド 安全な通信およびアクセス制御のためのシステム、デバイスおよび方法
JP2003131867A (ja) * 2001-08-15 2003-05-09 Syst Kogaku Kk 乱数生成装置
JP2005536796A (ja) * 2002-08-21 2005-12-02 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 真の乱数生成のランダム性を向上させるためのエントロピー推定及びデシメーション
JP2014510354A (ja) * 2011-04-05 2014-04-24 イントリンシツク・イー・デー・ベー・ベー メモリスタートアップ時のノイズに基づいた乱数生成システム
JP2016126517A (ja) * 2014-12-26 2016-07-11 株式会社メガチップス 乱数生成装置及び乱数生成方法
JP2017102844A (ja) * 2015-12-04 2017-06-08 株式会社東芝 乱数発生回路および半導体記憶装置
JP2017130184A (ja) * 2016-01-19 2017-07-27 力旺電子股▲分▼有限公司 物理複製困難関数技術のためのワンタイムプログラミングメモリセルおよびメモリアレイならびに関連するランダムコード生成方法

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040049525A1 (en) * 2002-09-06 2004-03-11 Koninklijke Philips Electronics N.V. Feedback random number generation method and system
AU2003252595A1 (en) * 2002-10-07 2004-04-23 Kobayashi, Akira Pseudo-random number generation method and pseudo-random number generator
US8166086B2 (en) 2004-02-26 2012-04-24 Telecom Italia S.P.A. Method and circuit for generating random numbers, and computer program product therefor
US8595277B2 (en) 2008-02-13 2013-11-26 Infineon Technologies Ag Hybrid random number generator
CN103198268B (zh) * 2013-03-18 2016-06-08 宁波大学 一种可重构多端口物理不可克隆函数电路
US9542156B2 (en) * 2013-05-15 2017-01-10 Synopsys, Inc. Automatic control system and method for a true random number generator
JP6372295B2 (ja) * 2014-10-15 2018-08-15 富士通株式会社 物理乱数生成回路の品質テスト方法、乱数発生器および電子装置
US9703989B1 (en) * 2014-12-23 2017-07-11 Altera Corporation Secure physically unclonable function (PUF) error correction
US9875378B2 (en) 2015-06-12 2018-01-23 QUALCOMOM Incorporated Physically unclonable function assisted memory encryption device techniques
US10855477B2 (en) * 2016-08-04 2020-12-01 Macronix International Co., Ltd. Non-volatile memory with physical unclonable function and random number generator
CN106297863B (zh) * 2016-08-09 2020-07-28 复旦大学 可双重预充电的puf存储器及其密码生成方法
US10122538B2 (en) 2016-10-12 2018-11-06 Ememory Technology Inc. Antifuse physically unclonable function unit and associated control method
US10579339B2 (en) * 2017-04-05 2020-03-03 Intel Corporation Random number generator that includes physically unclonable circuits
CN110232428A (zh) * 2018-03-05 2019-09-13 中华映管股份有限公司 二元定位标签产生方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002544690A (ja) * 1998-06-24 2002-12-24 ワーコップ インベストメント リミテッド 安全な通信およびアクセス制御のためのシステム、デバイスおよび方法
JP2001100980A (ja) * 1999-08-05 2001-04-13 Mitsubishi Electric Inf Technol Center Europ Bv ランダムな2値波形を生成する方法、物体の検出方法、及びランダムな2値波形を生成する装置
JP2003131867A (ja) * 2001-08-15 2003-05-09 Syst Kogaku Kk 乱数生成装置
JP2005536796A (ja) * 2002-08-21 2005-12-02 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 真の乱数生成のランダム性を向上させるためのエントロピー推定及びデシメーション
JP2014510354A (ja) * 2011-04-05 2014-04-24 イントリンシツク・イー・デー・ベー・ベー メモリスタートアップ時のノイズに基づいた乱数生成システム
JP2016126517A (ja) * 2014-12-26 2016-07-11 株式会社メガチップス 乱数生成装置及び乱数生成方法
JP2017102844A (ja) * 2015-12-04 2017-06-08 株式会社東芝 乱数発生回路および半導体記憶装置
JP2017130184A (ja) * 2016-01-19 2017-07-27 力旺電子股▲分▼有限公司 物理複製困難関数技術のためのワンタイムプログラミングメモリセルおよびメモリアレイならびに関連するランダムコード生成方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022126584A (ja) * 2021-02-18 2022-08-30 ▲しゃーん▼碼科技股▲ふん▼有限公司 乱数発生器
JP7312973B2 (ja) 2021-02-18 2023-07-24 ▲しゃーん▼碼科技股▲ふん▼有限公司 乱数発生器

Also Published As

Publication number Publication date
TWI739090B (zh) 2021-09-11
US11055065B2 (en) 2021-07-06
EP3557407B1 (en) 2024-04-17
JP6775846B2 (ja) 2020-10-28
US20190324725A1 (en) 2019-10-24
CN110389747B (zh) 2023-07-25
EP3557407A1 (en) 2019-10-23
TW201944231A (zh) 2019-11-16
CN110389747A (zh) 2019-10-29

Similar Documents

Publication Publication Date Title
JP6775846B2 (ja) Pufに基づく真性乱数生成システム
US11516027B2 (en) Method and apparatus for protecting embedded software
US4316055A (en) Stream/block cipher crytographic system
TW201826162A (zh) 用於藉由位元混合器來產生保密器回合金鑰的方法和系統
JP2019054504A (ja) エントロピービットを用いたセキュリティシステム
US20080143561A1 (en) Operation processing apparatus, operation processing control method, and computer program
EP3499788B1 (en) Dynamic masking
CN110018810B (zh) 随机码产生器
US11258579B2 (en) Method and circuit for implementing a substitution table
CN111008407A (zh) 用于执行虚拟加密操作的加密电路
US7657034B2 (en) Data encryption in a symmetric multiprocessor electronic apparatus
CN112887077A (zh) 一种ssd主控芯片随机缓存保密方法和电路
Tseng et al. ReRAM-based pseudo-true random number generator With high throughput and unpredictability characteristics
CN111130784B (zh) 一种密钥生成方法、装置、cpu芯片及服务器
EP2899639A1 (en) Nonvolatile memory and electronic device
US11050575B2 (en) Entanglement and recall system using physically unclonable function technology
JP4863279B2 (ja) メモリシステム及びメモリアクセス方法
US20190268136A1 (en) Method and circuit for performing a substitution operation
Rajendran et al. Harnessing Entropy: RRAM Crossbar-based Unified PUF and RNG
Anchana et al. Design of PUF Based Chaotic Random Number Generator
US20150149790A1 (en) Nonvolatile memory and electronic device
TWI696111B (zh) 隨機碼產生器
JP2007281994A (ja) 半導体集積回路
Wang et al. Hardware Design of Lightweight Stream Cipher PUFFIN Algorithm for Anti-cooperation
JPH04184476A (ja) 情報暗号化/復号化装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190405

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200424

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200519

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200814

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: 20200923

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200930

R150 Certificate of patent or registration of utility model

Ref document number: 6775846

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250