JP5779434B2 - セキュリティ装置及びセキュリティシステム - Google Patents

セキュリティ装置及びセキュリティシステム Download PDF

Info

Publication number
JP5779434B2
JP5779434B2 JP2011156722A JP2011156722A JP5779434B2 JP 5779434 B2 JP5779434 B2 JP 5779434B2 JP 2011156722 A JP2011156722 A JP 2011156722A JP 2011156722 A JP2011156722 A JP 2011156722A JP 5779434 B2 JP5779434 B2 JP 5779434B2
Authority
JP
Japan
Prior art keywords
random number
data
scramble
authentication code
host device
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.)
Active
Application number
JP2011156722A
Other languages
English (en)
Other versions
JP2013025374A (ja
Inventor
晋 山下
晋 山下
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.)
Socionext Inc
Original Assignee
Socionext 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 Socionext Inc filed Critical Socionext Inc
Priority to JP2011156722A priority Critical patent/JP5779434B2/ja
Priority to US13/484,831 priority patent/US9152805B2/en
Priority to DE102012209249.8A priority patent/DE102012209249B4/de
Priority to CN201210229682.4A priority patent/CN102880836B/zh
Publication of JP2013025374A publication Critical patent/JP2013025374A/ja
Application granted granted Critical
Publication of JP5779434B2 publication Critical patent/JP5779434B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/606Protecting data by securing the transmission between two devices or processes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting 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/72Protecting 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 cryptographic circuits
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/065Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
    • H04L9/0656Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2107File encryption

Description

本発明は、セキュリティ装置及びセキュリティシステムに関する。
近年、組込み機器のストレージ(外部記憶装置)等に格納されたデータや、回路基板の配線に流れるデータの盗難による情報漏洩が増加しており、セキュリティ機能追加の要望が高まっている。そこで、例えば、組み込み機器の既存システムにデータ暗号化機能を有するセキュリティチップ(セキュリティ装置)を追加搭載することが考えられる。これにより、回路基板上のホストチップ(ホスト装置)からマイクロプロセッサ等のストレージに格納されるデータや回路基板上に流れるデータを、セキュリティチップにより暗号化することができ、情報漏洩を防ぐことができる。
一方で、ホストチップが処理するデータをセキュリティチップで暗号化するためには、ホストチップからセキュリティチップに、配線を介して暗号化対象のデータが転送されることになる。つまり、ホストチップとセキュリティチップ間の配線に暗号化前のデータが流れることになる。そのため、ホストチップとセキュリティチップ間に流れる暗号化前のデータについての盗難による情報漏洩が新たに懸念される。
データの暗号化には、従来から、例えば、SSL/TLSやストリーム暗号方式等が用いられる。例えば、SSL/TLSでは、サーバが公開鍵をクライアントに送信し、クライアントは受信した公開鍵に基づいて乱数を暗号化(RSA、DHなど)してサーバに送信する。そして、サーバは、暗号化された乱数を公開鍵と対になる秘密鍵を用いて復号化し乱数を取得する。このように両者は乱数を共有し、共有した乱数を元に共通の暗号アルゴリズム(AES、DESなど)に基づいて共通鍵を生成し、その共通鍵に基づいてデータを暗号化し送受信する。
また、ストリーム暗号方式では、送信側(例えば、クライアント)、受信側(例えば、サーバ)はカウンタ列、共通鍵を共有し、ブロック暗号(AES、DESなど)を用いて共通のストリーム暗号鍵列(乱数列)をそれぞれ生成する。そして、送信側は、送信対象のデータとストリーム暗号鍵列とを排他的論理和演算(XOR/EOR)してスクランブル化データを生成し受信側に送信すると共に、受信側は、スクランブル化データとストリーム暗号鍵列とを排他的論理和演算(XOR/EOR)して元のデータに復号化する。
特開2007−336506号公報 特開平10−222468号公報
しかしながら、従来の暗号化技術では、サーバ(受信側)、クライアント(送信側)双方に暗号化手段(RSA、AES等)が必要となる。例えば、SSL/TLSでは共通鍵の元になる乱数の共有時、及び共通鍵の生成時に、ストリーム暗号方式ではストリーム暗号鍵列の生成時に、双方に暗号化手段が必要となる。
従って、従来の暗号化技術によると、ホストチップとセキュリティチップ間のデータを暗号化するためには、ホストチップにも暗号化手段が搭載されている必要があり、既存のホストチップにセキュリティチップを搭載するだけでホストチップ内のデータを暗号化するという初期の目的を達成できない。また、暗号化処理が高負荷であることから、ホストチップに暗号化手段を搭載することは、システム全体の負荷を高くしてしまい好ましくない。
そこで、本発明は、ホスト装置に暗号化手段を設けることなく、ホスト装置とセキュリティ装置間の配線に流れるデータの情報漏洩を困難にするセキュリティ装置及びセキュリティシステムを提供する。
第1の側面は、スクランブル演算機能を有するプロセッサと、第1の認証コードが記憶された記憶ユニットとを有するホスト装置に接続されるセキュリティ装置であって、
前記第1の認証コードが記憶された記憶ユニットと、
乱数を生成する乱数生成ユニットと、
データを暗号化または復号化する暗号化ユニットと、
前記スクランブル演算機能を有するコントローラとを有し、
前記コントローラは、
前記乱数生成ユニットが生成した前記乱数と前記第1の認証コードとを前記スクランブル演算して第1のスクランブルキーを生成して前記ホスト装置に送信し、
前記ホスト装置から、前記第1のスクランブルキーから取得した前記乱数に従って、暗号化対象データがスクランブル演算されて生成されたスクランブルデータを受信し、前記スクランブルデータと前記乱数とを前記スクランブル演算して前記暗号化対象データを生成し、当該暗号化対象データを前記暗号化ユニットによって暗号化して暗号化データを生成し、前記ホスト装置に送信する。
第1の側面によれば、ホスト装置に暗号化手段を設けることなく、ホスト装置とセキュリティ装置間の配線に流れるデータの情報漏洩を困難にする。
本実施の形態例における組み込みシステムの半導体装置の一例を表す図である。 本実施の形態例におけるホストチップとセキュリティチップを表す例図である。 第1の実施の形態例におけるチップ間の処理の一例を表す第1の図である。 第1の実施の形態例におけるチップ間の処理の一例を表す第2の図である。 第1の実施の形態例におけるチップ間の処理の別の例を表す第1の図である。 第1の実施の形態例におけるチップ間の処理の別の例を表す第2の図である。 第2の実施の形態例におけるチップ間の処理の一例を表す第1の図である。 第2の実施の形態例におけるチップ間の処理の一例を表す第2の図である。 第3の実施の形態例におけるチップ間の処理の一例を表す第1の図である。 第3の実施の形態例におけるチップ間の処理の一例を表す第2の図である。
以下、図面にしたがって本発明の実施の形態について説明する。ただし、本発明の技術的範囲はこれらの実施の形態に限定されず、特許請求の範囲に記載された事項とその均等物まで及ぶものである。
図1は、本実施の形態例における組み込みシステムの半導体装置100の一例を表す図である。同図の半導体装置100は、例えば、ホストチップ10、セキュリティチップ20、その他のユニット30、外部ストレージ40、通信ユニット50を有し、バス線によって接続されている。また、セキュリティチップ20は、ホストチップ10とバス線やシリアル線で接続されており、ホストチップ10から転送されたデータについて、RSAやAES等を用いて暗号化処理及び復号化処理を行う。
例えば、ホストチップ10で処理されたデータはセキュリティチップ20に転送され、暗号化データに変換後、外部ストレージ40や通信ユニット50、その他のユニット30に転送される。また、外部の機器等から通信ユニット50を介して受信された暗号化データや、外部ストレージ40に格納された暗号化データが、セキュリティチップ20に転送されて復号化データに変換後、ホストチップ10に転送され処理が行われる。
図2は、本実施の形態例におけるホストチップ10とセキュリティチップ20の構成の一例を表す図である。本実施の形態例におけるホストチップ10は、例えば、プロセッサ11、認証コードA1、認証コードA2、プロセッサ11の演算処理に用いられるメモリ12を有する。一方、セキュリティチップ20は、例えば、コントローラ21、メモリ22、認証コードA1、認証コードA2、乱数生成ユニット23、暗号化ユニット24を有する。セキュリティチップ20の乱数生成ユニット23は真性乱数または擬似乱数を生成し、暗号化ユニット24は、データの高度な暗号化処理及び復号化処理を行う。
また、図2のホストチップ10のプロセッサ11及び、セキュリティチップ20のコントローラ21は、四則演算や論理演算等の演算機能を有する。また、ホストチップ10及びセキュリティチップ20は認証コードA1、A2を共有する。認証コードA1、A2は、例えば、約16桁の数値であり、例えば、外部から入力されてもよい。
続いて、まず、第1の実施の形態例の処理について説明する。なお、認証コードA2は、第1、第2の実施の形態例では使用されず、第3の実施の形態例でのみ使用される。
[第1の実施の形態例]
図3、図4は、第1の実施の形態例におけるホストチップ10とセキュリティチップ20間の処理の一例を表す図である。同図は、ホストチップ10からセキュリティチップ20に対して、非暗号化データが送信される場合のデータのスクランブル化について説明する図である。具体的に、非暗号化データはスクランブル化されてホストチップ10からセキュリティチップ20に送信され、セキュリティチップ20によって復元された後、暗号化処理されると共にスクランブル化されホストチップ10に送信される。本実施の形態例において、ホストチップ10とセキュリティチップ20とは、同一の認証コードA1を保持している。
ここで、まず、データのスクランブル化演算について説明する。本実施の形態例では、スクランブル演算として排他的論理和(以下、XOR)演算を使用する。XOR演算は、ホストチップ10のプロセッサ11、及び、セキュリティチップ20のコントローラ21に基本的に備えられる演算処理機能に含まれる。XOR演算によるスクランブル演算では、対象の値がキーとなる値に従ってスクランブル化される。具体的に、対象の値Aはキーである値XとXOR演算されることによりスクランブル化され、値Bが生成される。そして、値Bが、再度、値XとXOR演算されることによって値Aが復元される。つまり、データ(値A)とキー(値X)とのXOR演算の結果、生成されたスクランブルデータ(値B)が、再度、キー(値X)に従ってXOR演算されることにより、元のデータ(値A)が復元される。
XOR演算によるスクランブル化では、スクランブルデータから元のデータを復元するためには、キーが必要となる。しかし、第3者はキーを知らないため、スクランブル化データに基づいて元のデータを復元することができない。なお、スクランブル化演算は、XOR演算に限定されるものではない。スクランブル演算は、元のデータを復元可能な演算であれば、例えば、四則演算等の他の演算によって行われてもよいし、XOR演算や四則演算等の組合せによって行われてもよい。
図3に戻り、初めに、ホストチップ10は、セキュリティチップ20に処理の開始を知らせる初期化コマンドを発行する(a)。セキュリティチップ20は、初期化コマンドを受信すると、乱数R1を生成する(b)。続いて、セキュリティチップ20の乱数生成ユニット23は、乱数R1と認証コードA1とをXOR演算してスクランブルキーS1を生成する(c)。そして、セキュリティチップ20は、初期化処理の結果と共に、生成したスクランブルキーS1をホストチップ10に送信する(d)。
続いて、ホストチップ10では、スクランブルキーS1を受信すると、スクランブルキーS1を、予め保持している認証コードA1に従ってXOR演算し、乱数R1を取得する(e)。これにより、認証コードA1に加えて乱数R1が、ホストチップ10とセキュリティチップ20間で共有される。そこで、ホストチップ10は、暗号化対象のデータD1と共有した乱数R1とをXOR演算してスクランブル化データX1を生成し(f)、暗号化命令と共にセキュリティチップ20に送信する(g)。
セキュリティチップ20は、暗号化命令とスクランブル化データX1とを受信すると、スクランブル化データX1を乱数R1に従ってXOR演算して、データD1を取得する(h)。そこで、セキュリティチップ20の暗号化ユニット24は、データD1を暗号化処理し暗号化データE1を生成する(i)。続いて、セキュリティチップ20は、暗号化データE1と乱数R1とをXOR演算し、スクランブル化暗号データY1を生成する(j)。
続いて、図4に移り、セキュリティチップ20は、次の新たなスクランブル化用乱数である乱数R2を生成する(k)。そして、セキュリティチップ20は、生成した乱数R2と乱数R1とをXOR演算し、スクランブルキーS2を生成する(l)。続いて、セキュリティチップ20は、図3の処理jで生成したスクランブル化暗号データY1と共に、スクランブルキーS2をホストチップ10に送信する(m)。
ホストチップ10は、スクランブル化暗号データY1とスクランブルキーS2とを受信すると、スクランブル化暗号データY1を乱数R1に従ってXOR演算して、暗号化データE1を取得する(n)。また、ホストチップ10は、受信したスクランブルキーS2を乱数R1に従ってXOR演算し、乱数R2を取得する(o)。これにより、暗号化対象のデータD1に対応する暗号化データE1がホストチップ10で取得されると共に、新たな乱数R2がホストチップ10とセキュリティチップ20間で共有される。
そして、暗号化する対象のデータD2がさらにある場合、同様にして、ホストチップ10は、暗号化対象のデータD2と、新たな乱数R2とをXOR演算し、スクランブル化データX2を生成し(p)、セキュリティチップ20に送信する(q)。セキュリティチップ20は、受信したスクランブル化データX2を乱数R2に従ってXOR演算し、暗号化対象のデータD2を取得する(r)。前回の暗号化対象データD1と同様にして、データD2は暗号化ユニット24によって暗号化データE2に変換される。そして、暗号化データE2は、乱数R2とXOR演算され、スクランブル化暗号データY2が生成される。そして、新たなスクランブル化用乱数である乱数R3(図示せず)が生成され、スクランブル化暗号データY2と共に、ホストチップ10に送信される。
このようにして、セキュリティチップ20は、ホストチップ10とセキュリティチップ20間で共有した乱数に従ってデータをスクランブル化し、送受信されるデータの漏洩を防ぐ。また、乱数は、一定数の送受信セッション毎に変更されると共に、前回のセッションの乱数(初回は認証コードA1)に従ってスクランブル化されてホストチップ10に送信され、ホストチップ10で当該乱数に従って復元されることによって共有される。
ところで、上述した図3、図4の例では、ホストチップ10からセキュリティチップ20に暗号化対象のデータが送信される場合を例示したが、次に、ホストチップ10からセキュリティチップ20に復号化対象のデータが送信される場合について説明する。
図5、図6は、ホストチップ10からセキュリティチップ20に暗号化されたデータが送信され、セキュリティチップ20で復号化される場合のデータのスクランブル化について説明する図である。図3、図4と同様にして、ホストチップ10及びセキュリティチップ20は、同一の認証コードA1を保持している。
図5において、図3と同様にして、ホストチップ10とセキュリティチップ20間で乱数R1を共有すると、ホストチップ10は、暗号化データE1と乱数R1とをXOR演算し、スクランブル化暗号データY1を生成し(f)、復号化命令と共にセキュリティチップ20に送信する(g)。そして、セキュリティチップ20では、受信したスクランブル化暗号データY1を、乱数R1に従ってXOR演算して、暗号化データE1を取得する(h)。そして、セキュリティチップ20の暗号化ユニット24は、暗号化データE1を復号化してデータD1を生成する。
続いて、セキュリティチップ20は、データD1のスクランブル化処理の前に、新たな乱数R2を生成する(j)。そして、セキュリティチップ20は、(図3のように)乱数R1ではなく、乱数R2とデータD1とをXOR演算して、スクランブル化データX1を生成する(k)。復号化された非暗号化データ(例えば、D1)は、暗号化データ(例えば、E1)に対して、データが解析された場合のリスクが高いためである。そのため、セキュリティチップは、非暗号化データを、既にスクランブル化に使用された乱数R1ではなく、新たに生成されスクランブル化に使用されていない乱数R2に従ってスクランブル化する。これにより、非暗号化データの復元がより困難になる。ただし、この例に限定されるものではなく、処理kにおいて、セキュリティチップ20は、非暗号化データD1を、乱数R1に従ってスクランブル化してもよい。
図6に移り、続いて、セキュリティチップ20は、乱数1と乱数2とをXOR演算して、スクランブルキーS2を生成し(l)、スクランブル化データX1と共に、ホストチップ10に送信する(m)。ホストチップ10は、スクランブルキーS2を、乱数R1に従ってXOR演算し、乱数R2を取得する(o)。そして、ホストチップ10は、スクランブル化データX1を、乱数R2に従ってXOR演算し、データD1を取得する(n)。これにより、暗号化データE1が復号化処理されたデータD1がホストチップ10で取得されると共に、ホストチップ10とセキュリティチップ20間で乱数R2が共有される。そして、復号化する対象の暗号化データE2がさらにある場合、ホストチップ10は、暗号化データE2と乱数R2とをXOR演算し、スクランブル化暗号データY2を生成する(p)。この後の処理は、図5、図6の処理g〜処理nと同様である。
以上のように、本実施の形態例におけるセキュリティチップ(セキュリティ装置)20は、データを暗号化する場合、乱数生成ユニット23が生成した乱数と認証コードとをスクランブル演算してスクランブルキーを生成してホストチップ(ホスト装置)10に送信し、ホストチップ10から、スクランブルキーから取得した乱数に従って暗号化対象データがスクランブル演算されて生成されたスクランブルデータを受信する。そして、セキュリティチップ20は、スクランブルデータと乱数とをスクランブル演算して暗号化対象データを生成し、暗号化対象データを暗号化ユニット24によって暗号化して暗号化データを生成し、ホストチップ10に送信する。
一方、本実施の形態例におけるセキュリティチップ20は、データを復号化する場合、乱数生成ユニット23が生成した乱数と認証コードとをスクランブル演算してスクランブルキーを生成して前記ホストチップ10に送信すると共に、暗号化データを暗号化ユニット24によって復号化して復号化データを生成し、復号化データと乱数とをスクランブル演算してスクランブルデータを生成しホストチップ10に送信する。そして、セキュリティチップ20は、ホストチップ10のプロセッサ11に、スクランブルキーから取得された乱数に従ってスクランブルデータをスクランブル演算させ、スクランブルデータから復号化データを取得させる。
また、ホストチップ10では、乱数は、初回は認証コードに2回目以降の各送受信セッションでは前回のセッションの乱数に従って、スクランブルキーがスクランブル演算されることによって取得される。2回目以降の各送受信セッションでは、セキュリティチップ20は、今回の送受信セッションの乱数と前回の送受信セッションの乱数とのスクランブル演算によってスクランブルキーを生成してホストチップ10に送信し、ホストチップ10では、当該スクランブルキーが、前回の送受信セッションの乱数に従ってスクランブル演算されることにより、今回の送受信セッションの乱数が取得される。
これにより、本実施の形態例におけるセキュリティチップ20は、ホストチップ10に高度な暗号化処理を行う暗号化ユニット24を要することなく、ホストチップ10との間のデータをスクランブル化して、データの漏洩を防ぐことができる。また、セキュリティチップ20は、データのスクランブル化に高度な暗号化処理を用いないため、システムの負荷を抑え、スクランブル化による通信速度の低下を防ぐことができる。
また、データのスクランブル化は、ホストチップ10及びセキュリティチップ20で共有された乱数に従って行われる。そのため、第3者は、スクランブルデータが乱数に従ってスクランブル化されていることを認識していた場合であっても、乱数の値を知らないためスクランブル化データを復元することができない。また、当該乱数は、セキュリティチップ20で前回の乱数(初回は、認証コード)に従ってスクランブル化されてホストチップ10に送信され、ホストチップ10で前回の乱数(初回は、認証コード)に従って復元されることにより共有される。このため、第3者が、スクランブルキーを取得した場合でも、前回の乱数(初回は認証コード)を検知しない限り、スクランブルキーから乱数の値を復元することができない。このように、本実施の形態例におけるセキュリティチップ20は、仮に、第3者がデータのスクランブル化手順を認識していた場合であっても、スクランブル化データに基づくデータの復元を困難にする。
また、本実施の形態例におけるセキュリティチップ20によると、乱数を生成する乱数生成ユニット23はセキュリティチップ20のみに備えられていればよく、ホストチップ10は乱数生成ユニット23を有している必要がない。つまり、本実施の形態例におけるホストチップ10は、予め備えられている演算機能に加えてメモリ12等に認証コードを有していればよく、新たに暗号化ユニット24及び乱数生成ユニット23を備える必要がない。従って、ホストチップ10を有する既存システムの回路基板に、本実施の形態例におけるセキュリティチップ20が搭載されることによって、当該ホストチップ10とセキュリティチップ20間のデータのスクランブル化が可能になり、データの漏洩が防止される。
さらに、本実施の形態例において、データのスクランブル化に使用される乱数は一定数の送受信セッション毎に変更される。これにより、仮に第3者によってある乱数が解析された場合であっても、一定数のセッションの後、データをスクランブル化する乱数は変更される。このため、本実施の形態例におけるセキュリティチップ20は、スクランブルデータの継続した解析を困難にし、データの漏洩範囲を最小限にすることができる。なお、本実施の形態例において、乱数の変更頻度は1回の送受信セッション毎であるが、この頻度に限定されるものではない。乱数の変更頻度は、複数回の送受信セッション毎であってもよいし、1回の送信または受信処理毎であってもよい。
ところで、本実施の形態例では、暗号化された暗号化データE1、E2についてもスクランブル化の対象とされる。しかしながら、暗号化データは、仮にスクランブル化された状態から復元された場合であっても、暗号化されていることによりデータ内容が検知されるリスクは低い。そのため、暗号化データは、必ずしもスクランブル化の対象にされる必要はなく、少なくとも復元された場合のリスクの高い非暗号化のデータについてのみ、スクランブル化の対象にされればよい。
また、本実施の形態例におけるセキュリティチップ20は、乱数は一定の送受信セッション毎に変更するものの、認証コードについては変更しない。セキュリティチップ20及びホストチップ10において、例えば、一時的に生成され使用される乱数はRAM等のメモリに格納され、認証コードについては不揮発性メモリ等のメモリに格納される。不揮発性メモリでは、電源供給が不安定な場合や書き込み限度回数を有する場合、更新時にエラーやデータ破損が発生することがある。
しかし、本実施の形態例におけるセキュリティチップ20は認証コードについては変更しないことから、認証コードの変更に係る不揮発性メモリ更新時における認証コードの破損及び損失の懸念を回避することができる。そして、例え電源供給が不安定であることに起因してRAM等に格納された乱数が失われた場合であっても、セキュリティチップ20は、新たな初期化コマンド(図3、図5のa)に応答して、認証コードと新たに生成する乱数に従って、データのスクランブル化処理を再開することができる。
[第2の実施の形態例]
第2の実施の形態例におけるセキュリティチップ20は、新たに生成した乱数の共有時におけるスクランブル化において、前回のセッションの乱数ではなく認証コードに従って、乱数をスクランブル化する。以下、図に従って説明する。
図7、図8は、第2の実施の形態例におけるホストチップ10とセキュリティチップ20の処理の一例を表す図である。同7、図8は、図3、図4と同様に、ホストチップ10からセキュリティチップ20に非暗号化データが送信される場合のデータのスクランブル化について説明する図である。第1の実施の形態例と同様にして、ホストチップ10及びセキュリティチップ20は、同一の認証コードA1を保持している。
図7の処理は、第1の実施の形態例における図3の処理と同様である。ホストチップ10とセキュリティチップ20間で乱数R1が共有され、ホストチップ10から、暗号化対象のデータD1がスクランブル化されたスクランブル化データX1が、セキュリティチップ20に送信される(g)。セキュリティチップ20は、スクランブル化データX1から暗号化対象のデータD1を取得し暗号化する。暗号化された暗号化データE1は、乱数R1に従ってスクランブル化される(j)。
続いて、図8に移り、セキュリティチップ20は、次の新たなスクランブル化用乱数である乱数R2を生成し、スクランブル化する(l)。ただし、本実施の形態例では、セキュリティチップ20は、生成した乱数R2を、乱数R1ではなく認証コードA1に従ってXOR演算し、スクランブルキーS2を生成する。スクランブルキーS2は、スクランブル化暗号データY1と共に、ホストチップ10に送信される(m)。
そして、ホストチップ10は、スクランブル化暗号データY1を乱数R1に従ってXOR演算して暗号化データE1を取得すると共に(n)、スクランブルキーS2を、乱数R1ではなく認証コードA1に従ってXOR演算し、乱数R2を取得する(o)。これにより、暗号化対象のデータD1の暗号化データE1がホストチップ10で取得されると共に、乱数R2がホストチップ10とセキュリティチップ20間で共有される。この後の処理は、図4の処理pから処理rと同様である。
なお、図7、図8の例では、ホストチップ10からセキュリティチップ20に暗号化対象のデータが送信される場合を例示したが、ホストチップ10からセキュリティチップ20に復号化対象のデータが送信される場合についても同様である。この場合についても、セキュリティチップ20で新たに生成された乱数は認証コードA1に従ってスクランブル化されてホストチップ10に送信され、ホストチップ10で認証コードA1に従って復元されることによって共有される。そして、セキュリティチップ20で復号化されたデータは、乱数に従ってスクランブル化されてホストチップ10送信され、ホストチップ10で乱数に従ってスクランブル演算されることにより復元される。
以上のように、本実施の形態例におけるセキュリティチップ20は、データを暗号化する場合、乱数生成ユニット23が生成した乱数と認証コードとをスクランブル演算してスクランブルキーを生成してホストチップ10に送信し、ホストチップ10から、スクランブルキーから取得した乱数に従って暗号化対象データがスクランブル演算されて生成されたスクランブルデータを受信する。そして、セキュリティチップ20は、スクランブルデータと乱数とをスクランブル演算して暗号化対象データを生成し、暗号化対象データを暗号化ユニット24によって暗号化して暗号化データを生成し、ホストチップ10に送信する。
一方、本実施の形態例におけるセキュリティチップ20は、データを復号化する場合、乱数生成ユニット23が生成した乱数と認証コードとをスクランブル演算してスクランブルキーを生成して前記ホストチップ10に送信すると共に、暗号化データを暗号化ユニット24によって復号化して復号化データを生成し、復号化データと乱数とをスクランブル演算してスクランブルデータを生成しホストチップ10に送信する。そして、セキュリティチップ20は、ホストチップ10のプロセッサ11に、スクランブルキーから取得された乱数に従ってスクランブルデータをスクランブル演算させ、スクランブルデータから復号化データを取得させる。
また、ホストチップ10では、乱数は、スクランブルキーが認証コードに従ってスクランブル演算されることによって取得される。
これにより、本実施の形態例におけるセキュリティチップ20は、ホストチップ10に暗号化ユニット24を要することなく、ホストチップ10との間のデータをスクランブル化して、データの漏洩を防ぐことができる。また、セキュリティチップ20は、データのスクランブル化に高度な暗号処理を用いないため、システムの負荷を抑え、スクランブル化による通信速度の低下を防ぐことができる。
また、データのスクランブル化は、ホストチップ10及びセキュリティチップ20間で共有された乱数に従って行われる。そのため、第3者は、スクランブルデータが乱数に従ってスクランブル化されていることを認識していた場合であっても、乱数の値を知らないためスクランブル化データを復元することができない。そして、本実施の形態例において、当該乱数は、セキュリティチップ20で認証コードA1に従ってスクランブル化されホストチップ10に送信され、ホストチップ10で認証コードA1に従って復元されることにより共有される。このため、第3者が、スクランブルキーを取得した場合でも、認証コードA1を検知しない限り、スクランブルキーから乱数の値を復元することができない。このように、本実施の形態例におけるセキュリティチップ20は、仮に、第3者がスクランブル化手順を認識していた場合であっても、スクランブル化データに基づくデータの復元を困難にする。
また、本実施の形態例におけるセキュリティチップ20によると、乱数を生成する乱数生成ユニット23はセキュリティチップ20のみに備えられていればよく、ホストチップ10は乱数生成ユニット23を有している必要がない。従って、ホストチップ10を有する既存システムの回路基板に、本実施の形態例におけるセキュリティチップ20が搭載されることによって、当該ホストチップ10とセキュリティチップ20間のデータのスクランブル化が可能になり、データの漏洩が防止される。
さらに、データのスクランブル化に使用される乱数は一定数の送受信セッション毎に変更される。そのため、本実施の形態例におけるセキュリティチップ20は、スクランブルデータの継続した解析を困難にし、データの漏洩範囲を最小限にすることができる。
[第3の実施の形態例]
第3の実施の形態例におけるセキュリティチップ20は、2つの認証コードを有する(以下、第1の認証コード、第2の認証コードと称する)。第1の認証コードは、第2の実施の形態例と同様に、新たに生成した乱数の共有時におけるスクランブル化において使用される。そして、第2の認証コードは、データをスクランブル化するための第2のスクランブルキー生成のために使用される。以下、図に従って説明する。
図9、図10は、第3の実施の形態例におけるホストチップ10とセキュリティチップ20の処理の一例を表す図である。同9、図10は、第1の実施の形態例における図3、図4と同様にして、ホストチップ10からセキュリティチップ20に非暗号化データが送信される場合のデータのスクランブル化について説明する図である。本実施の形態例では、ホストチップ10及びセキュリティチップ20は、第1の認証コードA1、第2の認証コードA2を予め共有する。
図9において、セキュリティチップ20は、初期化コマンドを受信すると(a)、乱数R1を生成する(b)。続いて、セキュリティチップ20は、乱数R1と第1の認証コードA1とをXOR演算して第1のスクランブルキーS11を生成する(c)。そして、セキュリティチップ20は、初期化処理の結果と共に、生成した第1のスクランブルキーS11をホストチップ10に送信する(d)。ここまでの処理は、第1、2の実施の形態例と同様である。
続いて、本実施の形態例におけるセキュリティチップ20は、さらに、生成した乱数R1と第2の認証コードA2とをXOR演算して第2のスクランブルキーS21を生成する(d)。一方、ホストチップ10では、第1、2の実施の形態例と同様に、第1のスクランブルキーS11を、予め保持している認証コードA1に従ってXOR演算し、乱数R1を取得する(f)。そして、さらに、本実施の形態例におけるホストチップ10は、取得した乱数R1と第2の認証コードA2とをXOR演算し、第2のスクランブルキーS21を生成する(g)。これにより、第1、第2の認証コードA1、A2に加えて、乱数R1及び第2のスクランブルキーS21が、ホストチップ10とセキュリティチップ20間で共有される。
そして、本実施の形態例におけるホストチップ10は、暗号化対象のデータD1と第2のスクランブルキーS21とをXOR演算してスクランブル化データX1を生成し(h)、暗号化命令と共にセキュリティチップ20に送信する(i)。セキュリティチップ20は、スクランブル化データX1とを受信すると、スクランブル化データX1を、生成しておいた第2のスクランブルキーS21に従ってXOR演算して、暗号化対象のデータD1を取得する(j)。そして、データD1は、暗号化ユニット24によって暗号化処理され、暗号化データE1が生成される(k)。続いて、セキュリティチップ20は、暗号化データE1と第2のスクランブルキーS21とをXOR演算し、スクランブル化暗号データY1を生成する(l)。
図10に移り、続いて、セキュリティチップ20は、新たな乱数R2を生成し(m)、当該乱数R2と第1の認証コードA1とをXOR演算して、新しい第1のスクランブルキーS12を生成する(n)。続いて、セキュリティチップ20は、図9の処理lで生成したスクランブル化暗号データY1と共に、第1のスクランブルキーS12をホストチップ10に送信する(o)。そして、セキュリティチップ20は、乱数R2と第2の認証コードA2とをXOR演算して、第2のスクランブルキーS22を生成しておく(p)。
一方、ホストチップ10は、スクランブル化暗号データY1と第1のスクランブルキーS12とを受信すると、スクランブル化暗号データY1を、共有済みの第2のスクランブルキーS21に従ってXOR演算し、暗号化データE1を取得する(q)。また、ホストチップ10は、受信した第1のスクランブルキーS12を第1の認証コードA1に従ってXOR演算し、乱数R2を取得する(r)。これにより、暗号化対象のデータD1に対応する暗号化データE1がホストチップ10で取得されると共に、乱数R2がホストチップ10とセキュリティチップ20間で共有される。
そして、暗号化する対象のデータD2がさらにある場合、同様にして、ホストチップ10は、乱数R2と第2の認証コードA2とをXOR演算して第2のスクランブルキーS22を生成する(s)。そして、ホストチップ10は、暗号化対象のデータD2とスクランブルキーS22とをXOR演算してスクランブル化データX2を生成し(図示せず)、セキュリティチップ20に送信する(図示せず)。セキュリティチップ20は、受信したスクランブル化データX2を、処理kで生成した第2のスクランブルキーS22に従ってXOR演算し、暗号化対象のデータD2を取得する。この後の処理は図9、図10の処理k〜処理qと同様である。
なお、図9、図10の例では、ホストチップ10からセキュリティチップ20に暗号化対象のデータが送信される場合を例示したが、ホストチップ10からセキュリティチップ20に復号化対象のデータが送信される場合についても同様である。この場合についても、セキュリティチップ20で新たに生成された乱数は認証コードA1に従ってスクランブル化されてホストチップ10に送信され、ホストチップ10で認証コードA1に従って復元されることによって共有される。そして、セキュリティチップ20で復号化されたデータは、乱数がさらに第2の認証コードA2に従ってスクランブル化されて生成された第2のスクランブルキーに従ってスクランブル化され、ホストチップ10送信される。ホストチップ10では、スクランブル化されたデータが第2のスクランブルキーに従ってスクランブル演算されることにより、復号化データが復元される。
以上のように、本実施の形態例におけるセキュリティチップ20は、データを暗号化する場合、乱数生成ユニット23が生成した乱数と第1の認証コードとをスクランブル演算して第1のスクランブルキーを生成してホストチップ10に送信すると共に、乱数と第2の認証コードとをスクランブル演算して第2のスクランブルキーを生成する。また、セキュリティチップ20は、ホストチップ10から、第1のスクランブルキーから取得された乱数と第2の認証コードとがスクランブル演算されて生成された第2のスクランブルキーに従って、暗号化対象データがスクランブル演算されて生成されたスクランブルデータを受信する。そして、セキュリティチップ20は、スクランブルデータと第2のスクランブルキーとをスクランブル演算して暗号化対象データを生成し、暗号化対象データを暗号化ユニット24によって暗号化して暗号化データを生成し、ホストチップ10に送信する。
一方、本実施の形態例におけるセキュリティチップ20は、データを復号化する場合、乱数生成ユニット23が生成した乱数と第1の認証コードとをスクランブル演算して第1のスクランブルキーを生成してホストチップ10に送信すると共に、乱数と第2の認証コードとをスクランブル演算して第2のスクランブルキーを生成する。また、セキュリティチップ20は、暗号化データを暗号化ユニットによって復号化して復号化データを生成し、復号化データと第2のスクランブルキーとをスクランブル演算してスクランブルデータを生成しホストチップ10に送信する。そして、セキュリティチップ20は、ホストチップ10のプロセッサ11に、第1のスクランブルキーから取得された乱数と第2の認証コードとがスクランブル演算されて生成された第2のスクランブルキーに従って、スクランブルデータをスクランブル演算させ、スクランブルデータから復号化データを取得させる。
また、ホストチップ10では、乱数は、第1のスクランブルキーが、第1の認証コードに従ってスクランブル演算されることによって取得される。
これにより、本実施の形態例におけるセキュリティチップ20は、ホストチップ10に暗号化ユニット24を要することなく、ホストチップ10との間のデータをスクランブル化して、データの漏洩を防ぐことができる。また、セキュリティチップ20は、データのスクランブル化に高度な暗号処理を用いないため、システムの負荷を抑え、スクランブル化による通信速度の低下を防ぐことができる。
また、本実施の形態例において、データのスクランブル化は、ホストチップ10及びセキュリティチップ20間で共有された乱数がさらに第2の認証コードに従ってスクランブル化され生成された第2のスクランブルキーに従って行われる。そのため、第3者は、乱数に加えて第2の認証コードを知らなければ、スクランブル化データを復元することができない。つまり、仮に、乱数が復元されてしまった場合でも、第2の認証コードを知らない第3者は、スクランブル化データを復元することができない。これにより、第3者によるスクランブルデータの復元がより困難になる。このように、本実施の形態例におけるセキュリティチップ20は、ホストチップ10とセキュリティチップ20間のデータ漏洩をより効果的に防止することができる。
また、本実施の形態例におけるセキュリティチップ20によると、乱数を生成する乱数生成ユニット23はセキュリティチップ20のみに備えられていればよく、ホストチップ10は乱数生成ユニット23を有している必要がない。従って、ホストチップ10を有する既存システムの回路基板に、本実施の形態例におけるセキュリティチップ20が搭載されることによって、当該ホストチップ10とセキュリティチップ20間のデータのスクランブル化が可能になり、データの漏洩が防止される。
さらに、データのスクランブル化に使用される第2のスクランブルキーの元になる乱数は、一定数の送受信セッション毎に変更される。そのため、本実施の形態例におけるセキュリティチップ20は、スクランブルデータの継続した解析を困難にし、データの漏洩範囲を最小限にすることができる。
このようにして、本実施の形態例におけるセキュリティチップ20は、2つの認証コードを有し、第1の認証コードを使用して共有した乱数と第2の認証コードとに基づくスクランブルキーに従って、データをスクランブル化する。これにより、本実施の形態例におけるセキュリティチップ20は、ホストチップ10にハードウェアの変更を要することなく、システム全体の負荷を抑えながら、セキュリティ強度の高いデータのスクランブル化を実現することができる。これにより、セキュリティチップ20は、よりデータの漏洩を効果的に防ぐことができる。
なお、本実施の形態例において、第1のスクランブルキーは、共有対象の乱数が、第1の認証コードに従ってスクランブル演算されることによって生成される。しかしながら、第1のスクランブルキーは、共有対象の乱数が、第1の認証コードではなく前回の送受信セッションの乱数に従って、スクランブル演算されることによって生成されてもよい。
この場合、2回目以降の各送受信セッションでは、セキュリティチップ20は、今回の送受信セッションの乱数と、前回の送受信セッションの乱数とのスクランブル演算によって第1のスクランブルキーを生成し、ホストチップ10は、第1スクランブルキーから、前回の送受信セッションの乱数によるスクランブル演算によって、今回の送受信セッションの乱数を取得する。これにより、仮に第1の認証コードが第3者に知られてしまった場合でも、前回の送受信セッションの乱数を知らない第3者は、第1のスクランブルキーから今回の送受信セッションの乱数を復元することができない。
以上、ホストチップ10とセキュリティチップ20間のデータのスクランブル化について述べた。ただし、本実施の形態例におけるデータのスクランブル化は、ホストチップ10とセキュリティチップ20間におけるデータのスクランブル化に限定されるものではなく、他の2者間(例えば、サーバとクライアント等)における通信のデータのスクランブル化にも適用可能である。
以上の実施の形態をまとめると、次の付記のとおりである。
(付記1)
スクランブル演算機能を有するプロセッサと、第1の認証コードが記憶された記憶ユニットとを有するホスト装置に接続されるセキュリティ装置であって、
前記第1の認証コードが記憶された記憶ユニットと、
乱数を生成する乱数生成ユニットと、
データを暗号化または復号化する暗号化ユニットと、
前記スクランブル演算機能を有するコントローラとを有し、
前記コントローラは、
前記乱数生成ユニットが生成した前記乱数と前記第1の認証コードとを前記スクランブル演算して第1のスクランブルキーを生成して前記ホスト装置に送信し、
前記ホスト装置から、前記第1のスクランブルキーから取得した前記乱数に従って、暗号化対象データがスクランブル演算されて生成されたスクランブルデータを受信し、前記スクランブルデータと前記乱数とを前記スクランブル演算して前記暗号化対象データを生成し、当該暗号化対象データを前記暗号化ユニットによって暗号化して暗号化データを生成し、前記ホスト装置に送信するセキュリティ装置。
(付記2)
スクランブル演算機能を有するプロセッサと、第1の認証コードと第2の認証コードとが記憶された記憶ユニットとを有するホスト装置に接続されるセキュリティ装置であって、
前記第1の認証コードと前記第2の認証コードとが記憶された記憶ユニットと、
乱数を生成する乱数生成ユニットと、
データを暗号化または復号化する暗号化ユニットと、
前記スクランブル演算機能を有するコントローラとを有し、
前記コントローラは、
前記乱数生成ユニットが生成した前記乱数と前記第1の認証コードとを前記スクランブル演算して第1のスクランブルキーを生成して前記ホスト装置に送信すると共に、前記乱数と前記第2の認証コードとを前記スクランブル演算して第2のスクランブルキーを生成し、
前記ホスト装置から、前記第1のスクランブルキーから取得された前記乱数と前記第2の認証コードとが前記スクランブル演算されて生成された第2のスクランブルキーに従って、暗号化対象データがスクランブル演算されて生成されたスクランブルデータを受信し、前記スクランブルデータと前記第2のスクランブルキーとを前記スクランブル演算して前記暗号化対象データを生成し、当該暗号化対象データを前記暗号化ユニットによって暗号化して暗号化データを生成し、前記ホスト装置に送信するセキュリティ装置。
(付記3)
スクランブル演算機能を有するプロセッサと、第1の認証コードが記憶された記憶ユニットとを有するホスト装置に接続されるセキュリティ装置であって、
前記第1の認証コードが記憶された記憶ユニットと、
乱数を生成する乱数生成ユニットと、
データを暗号化または復号化する暗号化ユニットと、
前記スクランブル演算機能を有するコントローラとを有し、
前記コントローラは、
前記乱数生成ユニットが生成した前記乱数と前記第1の認証コードとを前記スクランブル演算して第1のスクランブルキーを生成して前記ホスト装置に送信し、
暗号化データを前記暗号化ユニットによって復号化して復号化データを生成し、当該復号化データと前記乱数とを前記スクランブル演算してスクランブルデータを生成し前記ホスト装置に送信し、
前記ホスト装置の前記プロセッサに、前記第1のスクランブルキーから取得された前記乱数に従って前記スクランブルデータをスクランブル演算させ、前記スクランブルデータから前記復号化データを取得させるセキュリティ装置。
(付記4)
スクランブル演算機能を有するプロセッサと、第1の認証コードと第2の認証コードとが記憶された記憶ユニットとを有するホスト装置に接続されるセキュリティ装置であって、
前記第1の認証コードと前記第2の認証コードとが記憶された記憶ユニットと、
乱数を生成する乱数生成ユニットと、
データを暗号化または復号化する暗号化ユニットと、
前記スクランブル演算機能を有するコントローラとを有し、
前記コントローラは、
前記乱数生成ユニットが生成した前記乱数と前記第1の認証コードとを前記スクランブル演算して第1のスクランブルキーを生成して前記ホスト装置に送信すると共に、前記乱数と前記第2の認証コードとを前記スクランブル演算して第2のスクランブルキーを生成し、
暗号化データを前記暗号化ユニットによって復号化して復号化データを生成し、当該復号化データと前記第2のスクランブルキーとを前記スクランブル演算してスクランブルデータを生成し前記ホスト装置に送信し、
前記ホスト装置の前記プロセッサに、前記第1のスクランブルキーから取得された前記乱数と前記第2の認証コードとが前記スクランブル演算されて生成された前記第2のスクランブルキーに従って、前記スクランブルデータをスクランブル演算させ、前記スクランブルデータから前記復号化データを取得させるセキュリティ装置。
(付記5)
付記1乃至4のいずれかにおいて、
前記ホスト装置では、前記プロセッサにより、前記第1のスクランブルキーから、前記第1の認証コードによる前記スクランブル演算によって前記乱数が取得されるセキュリティ装置。
(付記6)
付記1乃至4のいずれかにおいて、
前記乱数は前記スクランブルデータの送受信セッション毎に変更され、
2回目以降の各送受信セッションにおいて、
前記コントローラは、前記第1のスクランブルキーを、今回の送受信セッションの前記乱数と、前回の送受信セッションの乱数との前記スクランブル演算によって生成し、
前記ホスト装置では、前記プロセッサにより、前記第1のスクランブルキーから、前記前回の送受信セッションの乱数による前記スクランブル演算によって、前記今回の送受信セッションの乱数が取得されるセキュリティ装置。
(付記7)
付記1乃至4のいずれかにおいて、
前記乱数は前記スクランブルデータの送受信セッション毎に変更され、
2回目以降の各送受信セッションにおいて、
前記コントローラは、前記第1のスクランブルキーを、今回の送受信セッションの前記乱数と、前記第1の認証コードとの前記スクランブル演算によって生成し、
前記ホスト装置では、前記プロセッサにより、前記第1のスクランブルキーから、前記第1の認証コードによる前記スクランブル演算によって、前記今回の送受信セッションの乱数が取得されるセキュリティ装置。
(付記8)
付記1乃至4のいずれかにおいて、
前記スクランブル演算は、排他的論理和演算を含むセキュリティ装置。
(付記9)
ホスト装置と、前記ホスト装置に接続されるセキュリティ装置とを有するセキュリティシステムであって、
前記ホスト装置は、
スクランブル演算機能を有するプロセッサと、
第1の認証コードが記憶された記憶ユニットとを有し、
前記セキュリティ装置は、
前記第1の認証コードが記憶された記憶ユニットと、
乱数を生成する乱数生成ユニットと、
データを暗号化または復号化する暗号化ユニットと、
前記スクランブル演算機能を有するコントローラとを有し、
前記コントローラは、
前記乱数生成ユニットが生成した前記乱数と前記第1の認証コードとを前記スクランブル演算して第1のスクランブルキーを生成して前記ホスト装置に送信し、
前記ホスト装置は、前記プロセッサによって、前記第1のスクランブルキーから取得した前記乱数に従って暗号化対象データをスクランブル演算しスクランブルデータを生成して前記セキュリティ装置に送信し、
前記コントローラは、受信した前記スクランブルデータと前記乱数とを前記スクランブル演算して前記暗号化対象データを生成し、当該暗号化対象データを前記暗号化ユニットによって暗号化して暗号化データを生成し、前記ホスト装置に送信するセキュリティシステム。
(付記10)
ホスト装置と、前記ホスト装置に接続されるセキュリティ装置とを有するセキュリティシステムであって、
前記ホスト装置は、
スクランブル演算機能を有するプロセッサと、
第1の認証コードと第2の認証コードとが記憶された記憶ユニットとを有し、
前記セキュリティ装置は、
前記第1の認証コードと第2の認証コードとが記憶された記憶ユニットと、
乱数を生成する乱数生成ユニットと、
データを暗号化または復号化する暗号化ユニットと、
前記スクランブル演算機能を有するコントローラとを有し、
前記コントローラは、
前記乱数生成ユニットが生成した前記乱数と前記第1の認証コードとを前記スクランブル演算して第1のスクランブルキーを生成して前記ホスト装置に送信すると共に、前記乱数と前記第2の認証コードとを前記スクランブル演算して第2のスクランブルキーを生成し、
前記ホスト装置は、前記プロセッサによって、前記第1のスクランブルキーから取得した前記乱数をさらに前記第2の認証コードと前記スクランブル演算して生成した第2のスクランブルキーに従って、暗号化対象データをスクランブル演算しスクランブルデータを生成して前記セキュリティ装置に送信し、
前記コントローラは、受信した前記スクランブルデータと前記第2のスクランブルキーとを前記スクランブル演算して前記暗号化対象データを生成し、当該暗号化対象データを前記暗号化ユニットによって暗号化して暗号化データを生成し、前記ホスト装置に送信するセキュリティシステム。
(付記11)
ホスト装置と、前記ホスト装置に接続されるセキュリティ装置とを有するセキュリティシステムであって、
前記ホスト装置は、
スクランブル演算機能を有するプロセッサと、
第1の認証コードが記憶された記憶ユニットとを有し、
前記セキュリティ装置は、
前記第1の認証コードが記憶された記憶ユニットと、
乱数を生成する乱数生成ユニットと、
データを暗号化または復号化する暗号化ユニットと、
前記スクランブル演算機能を有するコントローラとを有し、
前記コントローラは、
前記乱数生成ユニットが生成した前記乱数と前記第1の認証コードとを前記スクランブル演算して第1のスクランブルキーを生成して前記ホスト装置に送信し、
暗号化データを前記暗号化ユニットによって復号化して復号化データを生成し、当該復号化データと前記乱数とを前記スクランブル演算してスクランブルデータを生成し前記ホスト装置に送信し、
前記ホスト装置は、前記プロセッサによって、前記第1のスクランブルキーから取得された前記乱数に従って前記スクランブルデータをスクランブル演算して前記スクランブルデータから前記復号化データを取得するセキュリティシステム。
(付記12)
ホスト装置と、前記ホスト装置に接続されるセキュリティ装置とを有するセキュリティシステムであって、
前記ホスト装置は、
スクランブル演算機能を有するプロセッサと、
第1の認証コードと第2の認証コードとが記憶された記憶ユニットとを有し、
前記セキュリティ装置は、
前記第1の認証コードと第2の認証コードとが記憶された記憶ユニットと、
乱数を生成する乱数生成ユニットと、
データを暗号化または復号化する暗号化ユニットと、
前記スクランブル演算機能を有するコントローラとを有し、
前記コントローラは、
前記乱数生成ユニットが生成した前記乱数と前記第1の認証コードとを前記スクランブル演算して第1のスクランブルキーを生成して前記ホスト装置に送信すると共に、前記乱数と前記第2の認証コードとを前記スクランブル演算して第2のスクランブルキーを生成し、
暗号化データを前記暗号化ユニットによって復号化して復号化データを生成し、当該復号化データと前記第2のスクランブルキーとを前記スクランブル演算してスクランブルデータを生成し前記ホスト装置に送信し、
前記ホスト装置は、前記プロセッサによって、前記第1のスクランブルキーから取得した前記乱数と前記第2の認証コードとを前記スクランブル演算して生成した前記第2のスクランブルキー従って、前記スクランブルデータをスクランブル演算させ、前記スクランブルデータから前記復号化データを取得するセキュリティシステム。
(付記13)
付記9乃至12のいずれかにおいて、
前記ホスト装置では、前記プロセッサにより、前記第1のスクランブルキーから、前記第1の認証コードによるスクランブル演算によって前記乱数が取得されるセキュリティシステム。
(付記14)
付記9乃至12のいずれかにおいて、
前記乱数は前記スクランブルデータの送受信セッション毎に変更され、
2回目以降の各送受信セッションにおいて、
前記コントローラは、前記第1のスクランブルキーを、今回の送受信セッションの前記乱数と、前回の送受信セッションの乱数との前記スクランブル演算によって生成し、
前記ホスト装置は、前記プロセッサにより、前記第1のスクランブルキーから、前記前回の送受信セッションの乱数による前記スクランブル演算によって、前記今回の送受信セッションの乱数を取得するセキュリティシステム。
(付記15)
付記9乃至12のいずれかにおいて、
前記乱数は前記スクランブルデータの送受信セッション毎に変更され、
2回目以降の各送受信セッションにおいて、
前記コントローラは、前記第1のスクランブルキーを、今回の送受信セッションの前記乱数と、前記第1の認証コードとの前記スクランブル演算によって生成し、
前記ホスト装置は、前記プロセッサにより、前記第1のスクランブルキーから、前記第1の認証コードによる前記スクランブル演算によって、前記今回の送受信セッションの乱数を取得するセキュリティシステム。
10:ホストチップ、11:プロセッサ、A1:第1の認証コード、A2:第2の認証コード、12:メモリ、20:セキュリティチップ、21:コントローラ、22:メモリ、23:乱数生成ユニット、24:暗号化ユニット

Claims (11)

  1. スクランブル演算機能を有するプロセッサと、第1の認証コードが記憶された第1の記憶ユニットとを有し、データを暗号化または復号化する暗号化ユニット及び乱数を生成する乱数生成ユニットを備えていないホスト装置に接続されるセキュリティ装置であって、
    前記第1の認証コードが記憶された第2の記憶ユニットと、
    前記乱数を生成する乱数生成ユニットと、
    前記データを暗号化または復号化し、前記スクランブル演算機能とは異なる暗号機能を有する暗号化ユニットと、
    前記スクランブル演算機能を有するコントローラとを有し、
    前記コントローラは、
    前記乱数生成ユニットが生成した前記乱数と前記第2の記憶ユニットの前記第1の認証コードとを前記スクランブル演算して第1のスクランブルキーを生成して前記ホスト装置に送信し、
    前記ホスト装置から、前記第1のスクランブルキーから取得した前記乱数に従って、暗号化対象データがスクランブル演算されて生成されたスクランブルデータを受信し、前記スクランブルデータと前記乱数とを前記スクランブル演算して前記暗号化対象データを生成し、当該暗号化対象データを前記暗号化ユニットによって暗号化して暗号化データを生成し、前記ホスト装置に送信するセキュリティ装置。
  2. スクランブル演算機能を有するプロセッサと、第1の認証コードと第2の認証コードとが記憶された第1の記憶ユニットとを有し、データを暗号化または復号化する暗号化ユニット及び乱数を生成する乱数生成ユニットを備えていないホスト装置に接続されるセキュリティ装置であって、
    前記第1の認証コードと前記第2の認証コードとが記憶された第2の記憶ユニットと、
    前記乱数を生成する乱数生成ユニットと、
    前記データを暗号化または復号化し、前記スクランブル演算機能とは異なる暗号機能を有する暗号化ユニットと、
    前記スクランブル演算機能を有するコントローラとを有し、
    前記コントローラは、
    前記乱数生成ユニットが生成した前記乱数と前記第2の記憶ユニットの前記第1の認証コードとを前記スクランブル演算して第1のスクランブルキーを生成して前記ホスト装置に送信すると共に、前記乱数と前記第2の記憶ユニットの前記第2の認証コードとを前記スクランブル演算して第2のスクランブルキーを生成し、
    前記ホスト装置から、前記第1のスクランブルキーから取得された前記乱数と前記第1の記憶ユニットの前記第2の認証コードとが前記スクランブル演算されて生成された第2のスクランブルキーに従って、暗号化対象データがスクランブル演算されて生成されたスクランブルデータを受信し、前記スクランブルデータと前記第2のスクランブルキーとを前記スクランブル演算して前記暗号化対象データを生成し、当該暗号化対象データを前記暗号化ユニットによって暗号化して暗号化データを生成し、前記ホスト装置に送信するセキュリティ装置。
  3. スクランブル演算機能を有するプロセッサと、第1の認証コードが記憶された第1の記憶ユニットとを有し、データを暗号化または復号化する暗号化ユニット及び乱数を生成する乱数生成ユニットを備えていないホスト装置に接続されるセキュリティ装置であって、
    前記第1の認証コードが記憶された第2の記憶ユニットと、
    前記乱数を生成する乱数生成ユニットと、
    前記データを暗号化または復号化し、前記スクランブル演算機能とは異なる暗号機能を有する暗号化ユニットと、
    前記スクランブル演算機能を有するコントローラとを有し、
    前記コントローラは、
    前記乱数生成ユニットが生成した前記乱数と前記第2の記憶ユニットの前記第1の認証コードとを前記スクランブル演算して第1のスクランブルキーを生成して前記ホスト装置に送信し、
    暗号化データを前記暗号化ユニットによって復号化して復号化データを生成し、当該復号化データと前記乱数とを前記スクランブル演算してスクランブルデータを生成し前記ホスト装置に送信し、
    前記ホスト装置の前記プロセッサに、前記第1のスクランブルキーから取得された前記乱数に従って前記スクランブルデータをスクランブル演算させ、前記スクランブルデータから前記復号化データを取得させるセキュリティ装置。
  4. スクランブル演算機能を有するプロセッサと、第1の認証コードと第2の認証コードとが記憶された第1の記憶ユニットとを有し、データを暗号化または復号化する暗号化ユニット及び乱数を生成する乱数生成ユニットを備えていないホスト装置に接続されるセキュリティ装置であって、
    前記第1の認証コードと前記第2の認証コードとが記憶された第2の記憶ユニットと、
    前記乱数を生成する乱数生成ユニットと、
    前記データを暗号化または復号化し、前記スクランブル演算機能とは異なる暗号機能を有する暗号化ユニットと、
    前記スクランブル演算機能を有するコントローラとを有し、
    前記コントローラは、
    前記乱数生成ユニットが生成した前記乱数と前記第2の記憶ユニットの前記第1の認証コードとを前記スクランブル演算して第1のスクランブルキーを生成して前記ホスト装置に送信すると共に、前記乱数と前記第2の記憶ユニットの前記第2の認証コードとを前記スクランブル演算して第2のスクランブルキーを生成し、
    暗号化データを前記暗号化ユニットによって復号化して復号化データを生成し、当該復号化データと前記第2のスクランブルキーとを前記スクランブル演算してスクランブルデータを生成し前記ホスト装置に送信し、
    前記ホスト装置の前記プロセッサに、前記第1のスクランブルキーから取得された前記乱数と前記第1の記憶ユニットの前記第2の認証コードとが前記スクランブル演算されて生成された前記第2のスクランブルキーに従って、前記スクランブルデータをスクランブル演算させ、前記スクランブルデータから前記復号化データを取得させるセキュリティ装置。
  5. 請求項1乃至4のいずれかにおいて、
    前記ホスト装置では、前記プロセッサにより、前記第1のスクランブルキーから、前記第1の記憶ユニットの前記第1の認証コードによる前記スクランブル演算によって前記乱数が取得されるセキュリティ装置。
  6. 請求項1乃至4のいずれかにおいて、
    前記乱数は前記スクランブルデータの送受信セッション毎に変更され、
    2回目以降の各送受信セッションにおいて、
    前記コントローラは、前記第1のスクランブルキーを、今回の送受信セッションの前記乱数と、前回の送受信セッションの乱数との前記スクランブル演算によって生成し、
    前記ホスト装置では、前記プロセッサにより、前記第1のスクランブルキーから、前記前回の送受信セッションの乱数による前記スクランブル演算によって、前記今回の送受信セッションの乱数が取得されるセキュリティ装置。
  7. 請求項1乃至4のいずれかにおいて、
    前記乱数は前記スクランブルデータの送受信セッション毎に変更され、
    2回目以降の各送受信セッションにおいて、
    前記コントローラは、前記第1のスクランブルキーを、今回の送受信セッションの前記乱数と、前記第2の記憶ユニットの前記第1の認証コードとの前記スクランブル演算によって生成し、
    前記ホスト装置では、前記プロセッサにより、前記第1のスクランブルキーから、前記第1の記憶ユニットの前記第1の認証コードによる前記スクランブル演算によって、前記今回の送受信セッションの乱数が取得されるセキュリティ装置。
  8. データを暗号化または復号化する暗号化ユニット及び乱数を生成する乱数生成ユニットを備えていないホスト装置と、前記ホスト装置に接続されるセキュリティ装置とを有するセキュリティシステムであって、
    前記ホスト装置は、
    スクランブル演算機能を有するプロセッサと、
    第1の認証コードが記憶された第1の記憶ユニットとを有し、
    前記セキュリティ装置は、
    前記第1の認証コードが記憶された第2の記憶ユニットと、
    前記乱数を生成する乱数生成ユニットと、
    前記データを暗号化または復号化し、前記スクランブル演算機能とは異なる暗号機能を有する暗号化ユニットと、
    前記スクランブル演算機能を有するコントローラとを有し、
    前記コントローラは、
    前記乱数生成ユニットが生成した前記乱数と前記第2の記憶ユニットの前記第1の認証コードとを前記スクランブル演算して第1のスクランブルキーを生成して前記ホスト装置に送信し、
    前記ホスト装置は、前記プロセッサによって、前記第1のスクランブルキーから取得した前記乱数に従って暗号化対象データをスクランブル演算しスクランブルデータを生成して前記セキュリティ装置に送信し、
    前記コントローラは、受信した前記スクランブルデータと前記乱数とを前記スクランブル演算して前記暗号化対象データを生成し、当該暗号化対象データを前記暗号化ユニットによって暗号化して暗号化データを生成し、前記ホスト装置に送信するセキュリティシステム。
  9. データを暗号化または復号化する暗号化ユニット及び乱数を生成する乱数生成ユニットを備えていないホスト装置と、前記ホスト装置に接続されるセキュリティ装置とを有するセキュリティシステムであって、
    前記ホスト装置は、
    スクランブル演算機能を有するプロセッサと、
    第1の認証コードと第2の認証コードとが記憶された第1の記憶ユニットとを有し、
    前記セキュリティ装置は、
    前記第1の認証コードと第2の認証コードとが記憶された第2の記憶ユニットと、
    前記乱数を生成する乱数生成ユニットと、
    前記データを暗号化または復号化し、前記スクランブル演算機能とは異なる暗号機能を有する暗号化ユニットと、
    前記スクランブル演算機能を有するコントローラとを有し、
    前記コントローラは、
    前記乱数生成ユニットが生成した前記乱数と前記第2の記憶ユニットの前記第1の認証コードとを前記スクランブル演算して第1のスクランブルキーを生成して前記ホスト装置に送信すると共に、前記乱数と前記第2の記憶ユニットの前記第2の認証コードとを前記スクランブル演算して第2のスクランブルキーを生成し、
    前記ホスト装置は、前記プロセッサによって、前記第1のスクランブルキーから取得した前記乱数をさらに前記第1の記憶ユニットの前記第2の認証コードと前記スクランブル演算して生成した第2のスクランブルキーに従って、暗号化対象データをスクランブル演算しスクランブルデータを生成して前記セキュリティ装置に送信し、
    前記コントローラは、受信した前記スクランブルデータと前記第2のスクランブルキーとを前記スクランブル演算して前記暗号化対象データを生成し、当該暗号化対象データを前記暗号化ユニットによって暗号化して暗号化データを生成し、前記ホスト装置に送信するセキュリティシステム。
  10. データを暗号化または復号化する暗号化ユニット及び乱数を生成する乱数生成ユニットを備えていないホスト装置と、前記ホスト装置に接続されるセキュリティ装置とを有するセキュリティシステムであって、
    前記ホスト装置は、
    スクランブル演算機能を有するプロセッサと、
    第1の認証コードが記憶された第1の記憶ユニットとを有し、
    前記セキュリティ装置は、
    前記第1の認証コードが記憶された第2の記憶ユニットと、
    前記乱数を生成する乱数生成ユニットと、
    前記データを暗号化または復号化し、前記スクランブル演算機能とは異なる暗号機能を有する暗号化ユニットと、
    前記スクランブル演算機能を有するコントローラとを有し、
    前記コントローラは、
    前記乱数生成ユニットが生成した前記乱数と前記第2の記憶ユニットの前記第1の認証コードとを前記スクランブル演算して第1のスクランブルキーを生成して前記ホスト装置に送信し、
    暗号化データを前記暗号化ユニットによって復号化して復号化データを生成し、当該復号化データと前記乱数とを前記スクランブル演算してスクランブルデータを生成し前記ホスト装置に送信し、
    前記ホスト装置は、前記プロセッサによって、前記第1のスクランブルキーから取得された前記乱数に従って前記スクランブルデータをスクランブル演算して前記スクランブルデータから前記復号化データを取得するセキュリティシステム。
  11. データを暗号化または復号化する暗号化ユニット及び乱数を生成する乱数生成ユニットを備えていないホスト装置と、前記ホスト装置に接続されるセキュリティ装置とを有するセキュリティシステムであって、
    前記ホスト装置は、
    スクランブル演算機能を有するプロセッサと、
    第1の認証コードと第2の認証コードとが記憶された第1の記憶ユニットとを有し、
    前記セキュリティ装置は、
    前記第1の認証コードと第2の認証コードとが記憶された第2の記憶ユニットと、
    前記乱数を生成する乱数生成ユニットと、
    前記データを暗号化または復号化し、前記スクランブル演算機能とは異なる暗号機能を有する暗号化ユニットと、
    前記スクランブル演算機能を有するコントローラとを有し、
    前記コントローラは、
    前記乱数生成ユニットが生成した前記乱数と前記第2の記憶ユニットの前記第1の認証コードとを前記スクランブル演算して第1のスクランブルキーを生成して前記ホスト装置に送信すると共に、前記乱数と前記第2の記憶ユニットの前記第2の認証コードとを前記スクランブル演算して第2のスクランブルキーを生成し、
    暗号化データを前記暗号化ユニットによって復号化して復号化データを生成し、当該復号化データと前記第2のスクランブルキーとを前記スクランブル演算してスクランブルデータを生成し前記ホスト装置に送信し、
    前記ホスト装置は、前記プロセッサによって、前記第1のスクランブルキーから取得した前記乱数と前記第1の記憶ユニットの前記第2の認証コードとを前記スクランブル演算して生成した前記第2のスクランブルキー従って、前記スクランブルデータをスクランブル演算させ、前記スクランブルデータから前記復号化データを取得するセキュリティシステム。
JP2011156722A 2011-07-15 2011-07-15 セキュリティ装置及びセキュリティシステム Active JP5779434B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2011156722A JP5779434B2 (ja) 2011-07-15 2011-07-15 セキュリティ装置及びセキュリティシステム
US13/484,831 US9152805B2 (en) 2011-07-15 2012-05-31 Security device
DE102012209249.8A DE102012209249B4 (de) 2011-07-15 2012-05-31 Sicherheitsvorrichtung und Host-Vorrichtung zum Austausch gescrambelter Verschlüsselungsdaten
CN201210229682.4A CN102880836B (zh) 2011-07-15 2012-06-29 安全装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011156722A JP5779434B2 (ja) 2011-07-15 2011-07-15 セキュリティ装置及びセキュリティシステム

Publications (2)

Publication Number Publication Date
JP2013025374A JP2013025374A (ja) 2013-02-04
JP5779434B2 true JP5779434B2 (ja) 2015-09-16

Family

ID=47425792

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011156722A Active JP5779434B2 (ja) 2011-07-15 2011-07-15 セキュリティ装置及びセキュリティシステム

Country Status (4)

Country Link
US (1) US9152805B2 (ja)
JP (1) JP5779434B2 (ja)
CN (1) CN102880836B (ja)
DE (1) DE102012209249B4 (ja)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5779434B2 (ja) * 2011-07-15 2015-09-16 株式会社ソシオネクスト セキュリティ装置及びセキュリティシステム
WO2013124758A1 (en) * 2012-02-21 2013-08-29 International Business Machines Corporation Network node with network-attached stateless security offload device
WO2014165152A1 (en) * 2013-03-12 2014-10-09 Burnett J Stephen Electronic message aggregation and sharing system and apparatus
CN104243148A (zh) * 2013-06-24 2014-12-24 中科英华湖州工程技术研究中心有限公司 加密方法和加密装置
US9542261B2 (en) 2013-07-01 2017-01-10 Ixia Methods, systems, and computer readable media for multi-packet cyclic redundancy check engine
DE102013108713B8 (de) * 2013-08-12 2016-10-13 WebID Solutions GmbH Verfahren zum Verifizieren der ldentität eines Nutzers
US9684580B2 (en) * 2013-11-05 2017-06-20 Ixia Methods, systems, and computer readable media for efficient scrambling of data for line rate transmission in high speed communications networks
KR101519777B1 (ko) * 2014-01-29 2015-05-12 현대자동차주식회사 차량 네트워크 내의 제어기간의 데이터 송신 방법 및 수신 방법
KR101451639B1 (ko) * 2014-02-18 2014-10-16 주식회사 시큐브 일회용 랜덤키를 이용한 본인 확인 및 도용 방지 시스템 및 방법
US11888844B2 (en) 2014-02-18 2024-01-30 Secuve Co., Ltd. Electrical circuit testing device and method
US9641321B1 (en) * 2014-11-05 2017-05-02 Dark Signal Research, Llc Method and apparatus for the virtualization of cryptographic resources
US10019605B2 (en) * 2015-03-30 2018-07-10 Square, Inc. Systems, methods and apparatus for secure peripheral communication
WO2016178728A1 (en) * 2015-05-01 2016-11-10 Marvell World Trade Ltd. Systems and methods for secured data transfer via inter-chip hopping buses
US20170212055A1 (en) * 2016-01-21 2017-07-27 Osmo Systems, Inc. Method for optical measurements of multiple photochemical sensors
CN105718816B (zh) * 2016-01-25 2019-01-18 四川虹慧云商科技有限公司 二维码支撑系统提高数据安全性的方法
CN106022169A (zh) * 2016-06-30 2016-10-12 北京三未信安科技发展有限公司 一种基于zynq小型密码机的加密保护方法及实现该方法的装置
CN107766725B (zh) * 2016-08-19 2021-03-30 国民技术股份有限公司 抗模板攻击的数据传输方法及系统
CN107516047A (zh) * 2017-08-08 2017-12-26 杭州中天微系统有限公司 一种存储数据加解密装置及方法
CN110677250B (zh) 2018-07-02 2022-09-02 阿里巴巴集团控股有限公司 密钥和证书分发方法、身份信息处理方法、设备、介质
CN110795742B (zh) 2018-08-02 2023-05-02 阿里巴巴集团控股有限公司 高速密码运算的度量处理方法、装置、存储介质及处理器
CN110795774B (zh) 2018-08-02 2023-04-11 阿里巴巴集团控股有限公司 基于可信高速加密卡的度量方法、设备和系统
US10969991B2 (en) * 2018-08-15 2021-04-06 Macronix International Co., Ltd. Multi-chip package, controlling method of multi-chip package and security chip
CN110874478B (zh) 2018-08-29 2023-05-02 阿里巴巴集团控股有限公司 密钥处理方法及装置、存储介质和处理器
CN109697173B (zh) * 2018-12-11 2023-05-23 中国航空工业集团公司西安航空计算技术研究所 一种面向信息安全的嵌入式计算机SiP模块设计方法及电路
JP2020108070A (ja) 2018-12-28 2020-07-09 株式会社東芝 通信制御装置および通信制御システム
US11281795B2 (en) 2019-12-24 2022-03-22 Stmicroelectronics International N.V. Hierarchical random scrambling of secure data storage resulting in randomness across chips and on power on resets of individual chips
US11227046B2 (en) 2019-12-24 2022-01-18 Stmicroelectronics International N.V. Dynamic randomization of password challenge
US11316658B2 (en) 2020-07-20 2022-04-26 Bank Of America Corporation System and method for securing a database by scrambling data
CN114953787A (zh) * 2021-11-12 2022-08-30 珠海艾派克微电子有限公司 一种芯片、装置及数据传输方法

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5541993A (en) * 1994-05-10 1996-07-30 Fan; Eric Structure and method for secure image transmission
JPH08335040A (ja) 1995-06-02 1996-12-17 Fujitsu Ltd 暗号化処理方式
JPH09270784A (ja) * 1996-03-29 1997-10-14 Hitachi Software Eng Co Ltd 暗号化/復号化/ディジタル署名生成/検証装置
KR100473536B1 (ko) * 1996-05-22 2005-05-16 마츠시타 덴끼 산교 가부시키가이샤 기기간통신의안전성을확보하는암호화장치및통신시스템
JP3629099B2 (ja) 1996-06-28 2005-03-16 株式会社東芝 半導体記憶装置
JP3925975B2 (ja) * 1997-02-13 2007-06-06 大日本印刷株式会社 ネットワークシステムにおけるicカード処理方法
US6618789B1 (en) * 1999-04-07 2003-09-09 Sony Corporation Security memory card compatible with secure and non-secure data processing systems
JP4083925B2 (ja) * 1999-06-24 2008-04-30 株式会社日立製作所 情報処理装置、カード部材および情報処理システム
US7430670B1 (en) * 1999-07-29 2008-09-30 Intertrust Technologies Corp. Software self-defense systems and methods
JP2001209583A (ja) * 2000-01-26 2001-08-03 Sony Corp データ記録再生器およびセーブデータ処理方法、並びにプログラム提供媒体
US7308575B2 (en) * 2000-03-30 2007-12-11 Arris Group, Inc. Data scrambling system for a shared transmission media
JP4154836B2 (ja) * 2000-07-06 2008-09-24 富士電機リテイルシステムズ株式会社 情報記録カードを用いた取引装置
DE10137152A1 (de) * 2001-07-30 2003-02-27 Scm Microsystems Gmbh Verfahren zur Übertragung vertraulicher Daten
JP2003248629A (ja) * 2002-02-26 2003-09-05 Fujitsu Ltd 識別情報を有するリムーバブルディスク装置
JP4763972B2 (ja) * 2004-03-31 2011-08-31 富士通エフ・アイ・ピー株式会社 暗号化情報伝送方法、コンピュータプログラム及び通信システム
KR100753932B1 (ko) * 2004-10-12 2007-08-31 한국정보통신대학교 산학협력단 컨텐츠 암호화 방법, 이를 이용한 네트워크를 통한 컨텐츠제공 시스템 및 그 방법
JP4551802B2 (ja) 2005-03-29 2010-09-29 株式会社東芝 プロセッサ、メモリ、コンピュータシステムおよびデータ転送方法
US8094811B2 (en) * 2005-03-31 2012-01-10 Panasonic Corporation Data encryption device and data encryption method
US8054976B2 (en) * 2005-06-16 2011-11-08 Keith Alexander Harrison Quantum key distribution apparatus and method
GB0514492D0 (en) * 2005-07-14 2005-08-17 Ntnu Technology Transfer As Secure media streaming
JP4954628B2 (ja) 2006-05-16 2012-06-20 修 亀田 真性乱数発生素子あるいは擬似乱数発生素子を用いた認証用デバイス、認証装置及び認証方法
JP2008003976A (ja) * 2006-06-26 2008-01-10 Sony Corp メモリアクセス制御装置および方法、並びに、通信装置
JP4462244B2 (ja) 2006-07-13 2010-05-12 ソニー株式会社 コンテンツデータの処理装置および処理方法、並びにその方法を実行するためのプログラムおよびそのプログラムを記録したコンピュータ読み取り可能な媒体
US7934993B2 (en) * 2006-10-16 2011-05-03 Igt Secure progressive controller
CN101174942A (zh) * 2006-10-31 2008-05-07 华为技术有限公司 一种实现密钥保护的方法及系统
CN101197660A (zh) 2006-12-07 2008-06-11 上海安创信息科技有限公司 防攻击标准加密标准的加密方法及其加密芯片
CN100574325C (zh) 2006-12-26 2009-12-23 北京大学 一种Web通信加密方法
JP4906800B2 (ja) * 2008-07-02 2012-03-28 三菱電機株式会社 通信装置及び暗号通信システム及び通信方法及び通信プログラム
US20120185699A1 (en) * 2011-01-14 2012-07-19 International Business Machines Corporation Space-efficient encryption with multi-block binding
JP5779434B2 (ja) * 2011-07-15 2015-09-16 株式会社ソシオネクスト セキュリティ装置及びセキュリティシステム
US9075736B2 (en) * 2013-01-07 2015-07-07 Qualcomm Incorporated Additional error protection for wireless transmission

Also Published As

Publication number Publication date
US9152805B2 (en) 2015-10-06
CN102880836A (zh) 2013-01-16
CN102880836B (zh) 2016-02-10
US20130016832A1 (en) 2013-01-17
DE102012209249B4 (de) 2020-02-06
DE102012209249A1 (de) 2013-01-17
JP2013025374A (ja) 2013-02-04

Similar Documents

Publication Publication Date Title
JP5779434B2 (ja) セキュリティ装置及びセキュリティシステム
JP6138333B2 (ja) 鍵回復攻撃を妨害する対抗手段としての送信機および受信機のペアリングのためのマスタ鍵暗号化関数
JP5784084B2 (ja) 認証および安全なデータ転送のためのセッション鍵の生成
JP5184489B2 (ja) 命令レベルのソフトウェア暗号化のための方法及び装置
US20170063853A1 (en) Data cipher and decipher based on device and data authentication
JP2015062064A (ja) データ保護装置及びその方法
US11153068B2 (en) Encryption device, encryption method, decryption device and decryption method
JP2015104119A (ja) 完全性検証を含むブロック暗号化方法およびブロック復号化方法
KR20150142623A (ko) 안전하게 메시지를 교환하기 위한 방법, 이 방법을 구현하기위한 장치 및 시스템
EP2629225A1 (en) System, devices and methods for collaborative execution of a software application comprising at least one encrypted instruction
US8625806B2 (en) Data-processing apparatus and method for processing data
CN112906070A (zh) 用于安全设备的块密码侧信道攻击减轻
US9571273B2 (en) Method and system for the accelerated decryption of cryptographically protected user data units
US8804953B2 (en) Extensive ciphertext feedback
JP2008035305A (ja) 暗号化方法及びデータ秘匿方法
CN112385175A (zh) 一种用于数据加密和完整性的设备
US20090006865A1 (en) Efficient Remotely-Keyed Symmetric Cryptography For Digital Rights Management
CN102598014B (zh) 机密地提供软件组件的方法和系统
KR101566416B1 (ko) 보안성이 향상된 암·복호화 장치 및 방법
KR20170097294A (ko) 인증 암호 장치 및 방법
KR101915808B1 (ko) 난독화를 이용하는 암호문 복호화
US8908861B2 (en) AES algorithm-based encryption apparatus and method for mobile communication system
JP3164347B2 (ja) Icタグ
JP2023535012A (ja) 鍵交換プロトコル
JP2005204125A (ja) 認証システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140401

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20141118

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20141202

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150130

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20150610

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150713

R150 Certificate of patent or registration of utility model

Ref document number: 5779434

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150