JP2004185207A - 乱数生成方法 - Google Patents
乱数生成方法 Download PDFInfo
- Publication number
- JP2004185207A JP2004185207A JP2002349955A JP2002349955A JP2004185207A JP 2004185207 A JP2004185207 A JP 2004185207A JP 2002349955 A JP2002349955 A JP 2002349955A JP 2002349955 A JP2002349955 A JP 2002349955A JP 2004185207 A JP2004185207 A JP 2004185207A
- Authority
- JP
- Japan
- Prior art keywords
- random number
- read
- address
- value
- destination address
- 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.)
- Ceased
Links
Images
Abstract
【解決手段】電源投入時に、日時情報とA/D変換値とを読み込み、これらの現在値からオフセットアドレスを求めた後、ROM3内のプログラム領域の先頭アドレスにオフセットアドレスを加えて読込先アドレスを求め、その後タイマー割り込み機能を初期化して一定周期でタイマー割り込みを発生させ、一定周期のタイマー割り込みの発生毎に、読込先アドレスを奇数づつシフトした後、乱数値の読込要求が発生した場合に、読込先アドレスをさらに奇数シフトし、このシフトした読込先アドレスに記憶されているコードの所定単位を乱数値とする。
【選択図】 図4
Description
【発明の属する技術分野】
本発明は、乱数生成方法に係り、特に、再現性のない乱数値を生成することのできる乱数生成方法に関する。
【0002】
【従来の技術】
近年、社会における急速な情報関連技術の発展にともない、乱数を用いた暗号化技術が、携帯電話機、携帯情報端末などの移動体端末、情報家電、ネットワーク端末などの通信システムにおける認証、不正使用防止、データの暗号化などの目的で用いられている。このような乱数は、初期値とタイマーを用いて生成されているのが一般的である(例えば、特許文献1参照)。
【0003】
ここで、従来の乱数生成方法の一例について、上位モジュールから8バイトの乱数値を不定期に要求される場合を例示して説明する。
【0004】
従来の乱数発生方法は、システム内で時計ICおよびカレンダICがバックアップ電源などにより常時稼働している場合、電源投入により開始する。つぎに、日時情報を読み込む。例えば、日時が2002年5月18日16時32分40秒の場合、「20020518163240」の数値を読み込む。つぎに、日時情報をBCD値に変換する。この時、変換したBCD値の上位に1バイト付加して8バイトのBCD値とし、この8バイトのBCD値を、電源投入時の8バイトの乱数値(Rand−Data)として初期設定する。つぎに、100msのタイマなどにより、タイマー割り込み機能を初期化し、100ms毎などの一定周期でタイマー割り込みを発生させる。そして、一定周期のタイマー割り込み毎に、タイマー割り込み処理内において、初期設定した乱数値に対して、例えば3などの固定値を加算演算する固定演算処理を行うことで乱数値を順次更新するようになっている。すなわち、タイマー割り込み毎に固定演算処理を行うことで新しい乱数値を生成することができるようになっている。
【0005】
そして、このような乱数発生方法においては、上位モジュールから乱数値の読込要求が発生した場合には、その時点での乱数値を上位モジュールに渡すように構成されている。
【0006】
なお、乱数値の初期設定には、日時情報の他に、装置のシリアル番号などの固定値を用いる方法もある。
【0007】
【特許文献1】
特開2000−242470号公報
【0008】
【発明が解決しようとする課題】
しかしながら、前述した従来の乱数生成方法においては、乱数値の再現性があるという問題点があった。
【0009】
例えば、時計ICおよびカレンダICの供給電源をリセットして、電源再供給時からの時間をロジックアナライザなどにより正確に計測することで、電源投入時からのタイミングにより乱数値を再現できる可能性がある。
【0010】
本発明はこのような点に鑑みてなされたものであり、再現性のない乱数値を生成することのできる乱数生成方法を提供することを目的とする。
【0011】
【課題を解決するための手段】
前述した目的を達成するため本発明に係る乱数生成方法の特徴は、電源投入時に、日時情報とそれ以外の任意の情報のA/D変換値とのそれぞれの現在値を読み込みこれらの現在値からオフセットアドレスを求めた後、ROM内のプログラム領域の先頭アドレスを読み込み、その後、先頭アドレスにオフセットアドレスを加えてROM内のプログラム領域における読込先アドレスを求め、その後、タイマー割り込み機能を初期化して一定周期でタイマー割り込みを発生させて一定周期のタイマー割り込みの発生毎に読込先アドレスを奇数シフトし、その後、乱数値の読込要求が発生する毎に直前の読込先アドレスをさらに奇数シフトし、このシフトした読込先アドレスに記憶されているコードの所定単位を乱数値とする点にある。そして、このような構成を採用したことにより、再現性のない乱数値を生成することができる。
【0012】
【発明の実施の形態】
以下、本発明を図面に示す実施形態により説明する。
【0013】
図1は本発明に係る乱数生成方法を用いた乱数生成装置の実施形態の要部の構成を示すブロック図である。
【0014】
本実施形態は、本発明の乱数生成方法を用いた乱数生成装置を、携帯電話機に適用したものを例示している。
【0015】
図1に示すように、本実施形態の乱数生成装置1は、CPU2を有しており、このCPU2には、不揮発性メモリにより形成されたROMとしてのプログラムROM3、時計IC4、カレンダIC5、割り込みに用いるタイマとしての周期タイマ6および環境温度サーミスタ7がバス8を介して接続されている。また、環境温度サーミスタ7は、A/D変換器9を介してバス8に接続されている。なお、CPU2には、図示しないRAMなどの各種のものが設計コンセプトなどの必要に応じてバス8を介して接続されるようになっている。さらに、時計IC4およびカレンダIC5は、図示しないバックアップ電源により常に稼働状態に保持されるようになっている。さらにまた、周期タイマ6としては100ms周期のものが用いられている。さらに、本実施形態の乱数生成装置1は、図示しない携帯電話機の本体ケースの内部に配置されるようになっている。
【0016】
つぎに、前述した構成からなる本実施形態の作用について本発明の乱数生成動作とともに図2から図4のフローチャートにより説明する。
【0017】
本実施形態の乱数生成装置1における乱数値の生成は、第1手順、第2手順、第3手順の3つの手順に区分することができるので、これらの3つの手順について以下に順に説明する。
【0018】
まず、本実施形態の乱数生成方法における乱数値の生成の第1手順について図2のフローチャートにより説明する。
【0019】
本実施形態の乱数生成方法における乱数値の生成の第1手順は、読込先アドレスの初期化動作とタイマー割り込み処理機能の初期化動作である。この第1で順は、電源投入により開始する。そして、ステップST01において、システム内で時計IC4およびカレンダIC5がバックアップ電源などにより常時稼働しているので、電源投入時の時計IC4およびカレンダIC5から日時情報(Offset−Time) を読み込み、つぎのステップST02に進行する。なお、必要に応じて時計IC4からの時刻情報のみを用いてもよい。
【0020】
つぎに、ステップST02において、環境温度サーミスタ7およびそのA/D変換器9が存在するので、電源投入時の環境温度サーミスタ7による温度の計測結果をA/D変換器9によってA/D変換したA/D変換値(Offset−Ad) を読み込み、つぎのステップST03に進行する。
【0021】
なお、A/D変換値としては、環境温度以外のシステム内の時系列において変化するものを用いることが好ましい。また、A/D変換器9の分解能を細かくすることで、得られる乱数値のランダム性を向上できる。
【0022】
つぎに、ステップST03において、電源投入時における現在値の日時情報とA/D変換値とを加えてオフセットアドレス(Offset−Adrs) を求めて決定し、つぎのステップST04に進行する。
【0023】
つぎに、ステップST04において、プログラムROM3内のプログラム領域(コード領域)の先頭アドレス(Top−Adrs)を読み込み、つぎのステップST05に進行する。
【0024】
つぎに、ステップST05において、先頭アドレスにオフセットアドレスを加えて読込先アドレス(Read−Adrs) を求める。すなわち、読込先アドレスの初期化と初期値とを決定し、つぎのステップST06に進行する。
【0025】
つぎに、ステップST06において、周期タイマ6によるタイマー割り込み機能を初期化するとともに、タイマー割り込みドライバソフトウエアであるハンドラをOSに登録することで終了する。
【0026】
ここで、本実施形態の乱数生成方法における乱数値の生成の第2手順について図3のフローチャートにより説明する。
【0027】
本実施形態の乱数生成方法における乱数値の生成の第2手順は、タイマー割り込み処理による読込先アドレスの更新動作である。この第2手順は、タイマー割り込みによって開始する。そして、ステップST11において、周期タイマ6の可動による100ms周期のタイマー割り込み処理内において、前記読込先アドレスを奇数アドレス、本実施形態においては3アドレスだけシフトし、シフトしたアドレスを新たな読込先アドレス((Read−Adrs) +H3→(Read−Adrs) )とし、つぎのステップST12に進行する。なお、タイマー割り込みの周期は、設計コンセプトなどの必要に応じて任意の値から選択することができる。また、読込先アドレスのシフトを奇数とすることで、ランダム性が上がる。
【0028】
つぎに、ステップST12において、新たな読込先アドレスがプログラムROM3内のプログラム領域の末尾アドレスと等しいかあるいは末尾アドレスより大きいか否か((Read−Adrs)≧(End−Adrs) )を判断し、新たな読込先アドレスが末尾アドレスと等しいかあるいは末尾アドレスより大きいYESの場合には、つぎのステップST13に進行し、ステップST13において、先頭アドレスを読込先アドレス((Top−Adrs)→(Read−Adrs) )として終了する。これにより、読込先アドレスをプログラムROM3内のプログラム領域内に設定することができる。すなわち、読込先アドレスがプログラムROM3内のプログラム領域と等しい場合およびプログラム領域を越えた場合には、それぞれ読込先アドレスをプログラム領域の先頭アドレスとしている。
【0029】
前記ステップST12の判断が、新たな読込先アドレスが末尾アドレスより小さいNOの場合には、新たな読込先アドレスがプログラムROM3内のプログラム領域内に配置されるので、新たな読込先アドレスをそのまま読込アドレスとして終了する。
【0030】
ここで、本実施形態の乱数生成方法における乱数値の生成の第3手順について図4のフローチャートにより説明する。
【0031】
本実施形態の乱数生成方法における乱数値の生成の第3手順は、乱数値の生成動作である。この第3手順は、上位モジュールからの乱数値の読込要求の発生により開始する。そして、ステップST21において、読込先アドレス、詳しくは乱数値の読込要求の発生する直前の読込先アドレスを奇数、本実施形態においては3アドレスだけシフトし、シフトしたアドレスを新たな読込先アドレス((Read−Adrs) +H3→(Read−Adrs) )とし、つぎのステップST22に進行する。
【0032】
つぎに、ステップST22において、新たな読込先アドレスが末尾アドレスと等しいかあるいは末尾アドレスより大きいか否か((Read−Adrs)≧(End−Adrs) )を判断し、新たな読込先アドレスが末尾アドレスと等しいかあるいは末尾アドレスより大きいYESの場合には、つぎのステップST23に進行し、ステップST23において、先頭アドレスを読込先アドレス((Top−Adrs)→(Read−Adrs) )とし、つぎのステップST24に進行する。これにより、読込先アドレスをプログラムROM3内のプログラム領域(コード領域)内に設定することができる。
【0033】
前記ステップST22の判断が、新たな読込先アドレスが末尾アドレスより小さいNOの場合には、新たな読込先アドレスをそのまま読込先アドレスとし、つぎのステップST24に進行する。
【0034】
つぎに、ステップST24において、プログラムROM3内のプログラム領域における読込先アドレスに記憶されている機械語で記述されているコードの所定単位、本実施形態においては8バイトを読み込んで乱数値(Rand−Data) として生成し、この生成した乱数値を上位モジュールに渡すことで終了する。この時コードから8バイトを選択するのは、ポインタの位置を移動して読み込むことにより実行する。なお、乱数値のバイト数は、使用機器の仕様や設計コンセプトなどの必要に応じて任意の整数から選択できる。
【0035】
したがって、本実施形態の乱数生成装置1よる乱数の生成は、電源投入時に、日時情報とそれ以外の任意の情報のA/D変換値とのそれぞれの現在値を読み込みこれらの現在値からオフセットアドレスを求めた後、プログラムROM3内のプログラム領域の先頭アドレスを読み込み、その後、先頭アドレスにオフセットアドレスを加えてプログラムROM3内のプログラム領域における読込先アドレスを求め、その後、タイマー割り込み機能を初期化して一定周期でタイマー割り込みを発生させて一定周期のタイマー割り込みの発生毎に読込先アドレスを奇数シフトし、その後、乱数値の読込要求が発生する毎に直前の読込先アドレスをさらに奇数シフトし、このシフトした読込先アドレスに記憶されているコードの所定単位を乱数値として生成し、この生成した乱数値を上位モジュールに渡すことができるように形成されている。
【0036】
なお、本実施形態の乱数生成方法は、プログラムROM3に記憶されたプログラムによって実行している。
【0037】
このように、本実施形態の乱数生成方法によれば、電源投入時に、従来の時計IC4およびカレンダIC5による現在の日時情報を読み込むことに加えて、環境温度サーミスタ7による現在の温度のA/D変換値を読み込んで、プログラムROM3内のプログラム領域における読込先アドレスを決定し、この読込先アドレスに記憶されているコードの所定単位を読み込んで乱数値としているから、電源投入時からのタイミングによる再現性のない乱数値の生成を容易かつ確実に行うことができる。
【0038】
また、本実施形態の乱数生成方法によれば、環境温度サーミスタ7は、携帯電話機の本体ケースの内部に環境温度サーミスタ7が配置されているので、温度のA/D変換値は、通信の間隔により変化することと、A/D変換器9の分解能をあげることで、さらにランダム性が確保できる。
【0039】
さらに、本実施形態の乱数生成方法によれば、タイマー割り込み処理内において従来の固定演算処理を行わず、読込先アドレスをシフトして、シフトした読込先アドレスに記憶されているコードの所定単位を読み込むことで乱数値を生成しているから、タイマー割り込み処理内におけるCPU2の負荷を低減できる。その結果、乱数値を効率よく生成することができる。
【0040】
さらにまた、本実施形態の乱数生成方法によれば、乱数値の読込要求毎にその直前の読込先アドレスを奇数、本実施形態においては3アドレスだけシフトしている。すなわち、タイマー割り込み処理毎と、乱数値の読込要求の発生毎にそれぞれ読込先アドレスをシフトしているので、タイマー割り込みとそれにつづくタイマー割り込みとの間に複数の乱数値の読込要求が発生した場合においても、乱数値が同一になるのを確実に防止できる。
【0041】
また、本実施形態の乱数生成方法によれば、プログラムROM3内のプログラム領域のコード域に記憶されているコードは、一般的に、2バイト固定長などの固定長であるので、プログラムROM3内のプログラム領域のコード域に設定した読込先アドレスを奇数アドレスシフトすることで、プログラムROM3内のプログラム領域から高いランダム性の乱数値を効率よく生成することができる。
【0042】
本発明の乱数生成方法は、携帯電話機、携帯情報端末などの移動体端末、情報家電、ネットワーク端末などの通信システムにおける認証、不正使用防止、データの暗号化などに用いることができる。
【0043】
なお、本発明は、前記実施形態に限定されるものではなく、必要に応じて種々変更することができる。
【0044】
【発明の効果】
以上説明したように本発明に係る乱数生成方法によれば、再現性のない乱数値を生成することができるなどの極めて優れた効果を奏する。
【図面の簡単な説明】
【図1】本発明に係る乱数生成方法を用いた乱数生成装置の実施形態の要部の構成を示すブロック図
【図2】本発明に係る乱数生成方法における乱数値の生成の第1手順を示すフローチャート
【図3】本発明に係る乱数生成方法における乱数値の生成の第2手順を示すフローチャート
【図4】本発明に係る乱数生成方法における乱数値の生成の第3手順を示すフローチャート
【符号の説明】
1 乱数生成装置
2 CPU
3 プログラムROM
4 時計IC
5 カレンダIC
6 周期タイマ
7 環境温度サーミスタ
9 A/D変換器
Claims (1)
- 電源投入時に、日時情報とそれ以外の任意の情報のA/D変換値とのそれぞれの現在値を読み込みこれらの現在値からオフセットアドレスを求めた後、ROM内のプログラム領域の先頭アドレスを読み込み、その後、先頭アドレスにオフセットアドレスを加えてROM内のプログラム領域における読込先アドレスを求め、その後、タイマー割り込み機能を初期化して一定周期でタイマー割り込みを発生させて一定周期のタイマー割り込みの発生毎に読込先アドレスを奇数シフトし、その後、乱数値の読込要求が発生する毎に直前の読込先アドレスをさらに奇数シフトし、このシフトした読込先アドレスに記憶されているコードの所定単位を乱数値とすることを特徴とする乱数生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002349955A JP2004185207A (ja) | 2002-12-02 | 2002-12-02 | 乱数生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002349955A JP2004185207A (ja) | 2002-12-02 | 2002-12-02 | 乱数生成方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004185207A true JP2004185207A (ja) | 2004-07-02 |
Family
ID=32752339
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002349955A Ceased JP2004185207A (ja) | 2002-12-02 | 2002-12-02 | 乱数生成方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004185207A (ja) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012085212A (ja) * | 2010-10-14 | 2012-04-26 | Nippon Telegr & Teleph Corp <Ntt> | 電子署名用鍵管理装置、電子署名用鍵管理方法、電子署名用鍵管理プログラム |
JP2014006730A (ja) * | 2012-06-25 | 2014-01-16 | Fujitsu Semiconductor Ltd | 乱数生成装置及びそれを有する車載電子制御装置 |
US10500941B2 (en) | 2017-08-18 | 2019-12-10 | Arvinmeritor Technology, Llc | Axle assembly having an electric motor module and a shift mechanism |
US10500940B2 (en) | 2017-08-18 | 2019-12-10 | Arvinmeritor Technology, Llc | Axle assembly having an electric motor module and a gear reduction module |
US10704597B2 (en) | 2018-11-30 | 2020-07-07 | Arvinmeritor Technology, Llc | Axle assembly having a bearing preload module |
US10801602B2 (en) | 2018-11-30 | 2020-10-13 | Arvinmeritor Technology, Llc | Axle assembly having counterphase planet gears |
US10808834B2 (en) | 2018-11-30 | 2020-10-20 | Arvinmeritor Technology, Llc | Axle assembly and method of control |
US10808830B2 (en) | 2018-11-30 | 2020-10-20 | Arvinmeritor Technology, Llc | Axle assembly with multiple lubricant chambers |
US10935120B2 (en) | 2018-11-30 | 2021-03-02 | Arvinmeritor Technology, Llc | Axle assembly having a spigot bearing assembly |
US10985635B2 (en) | 2018-11-30 | 2021-04-20 | Arvinmeritor Technology, Llc | Axle assembly having a resolver and a method of assembly |
US11038396B2 (en) | 2018-11-30 | 2021-06-15 | Arvinmeritor Technology, Llc | Axle assembly having an electric motor module and method of assembly |
US11273700B2 (en) | 2017-08-18 | 2022-03-15 | Arvinmeritor Technology, Llc | Axle assembly having an electric motor module |
-
2002
- 2002-12-02 JP JP2002349955A patent/JP2004185207A/ja not_active Ceased
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012085212A (ja) * | 2010-10-14 | 2012-04-26 | Nippon Telegr & Teleph Corp <Ntt> | 電子署名用鍵管理装置、電子署名用鍵管理方法、電子署名用鍵管理プログラム |
JP2014006730A (ja) * | 2012-06-25 | 2014-01-16 | Fujitsu Semiconductor Ltd | 乱数生成装置及びそれを有する車載電子制御装置 |
US10500941B2 (en) | 2017-08-18 | 2019-12-10 | Arvinmeritor Technology, Llc | Axle assembly having an electric motor module and a shift mechanism |
US10500940B2 (en) | 2017-08-18 | 2019-12-10 | Arvinmeritor Technology, Llc | Axle assembly having an electric motor module and a gear reduction module |
US11273700B2 (en) | 2017-08-18 | 2022-03-15 | Arvinmeritor Technology, Llc | Axle assembly having an electric motor module |
US10704597B2 (en) | 2018-11-30 | 2020-07-07 | Arvinmeritor Technology, Llc | Axle assembly having a bearing preload module |
US10801602B2 (en) | 2018-11-30 | 2020-10-13 | Arvinmeritor Technology, Llc | Axle assembly having counterphase planet gears |
US10808834B2 (en) | 2018-11-30 | 2020-10-20 | Arvinmeritor Technology, Llc | Axle assembly and method of control |
US10808830B2 (en) | 2018-11-30 | 2020-10-20 | Arvinmeritor Technology, Llc | Axle assembly with multiple lubricant chambers |
US10935120B2 (en) | 2018-11-30 | 2021-03-02 | Arvinmeritor Technology, Llc | Axle assembly having a spigot bearing assembly |
US10985635B2 (en) | 2018-11-30 | 2021-04-20 | Arvinmeritor Technology, Llc | Axle assembly having a resolver and a method of assembly |
US11038396B2 (en) | 2018-11-30 | 2021-06-15 | Arvinmeritor Technology, Llc | Axle assembly having an electric motor module and method of assembly |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2004185207A (ja) | 乱数生成方法 | |
CN102007470B (zh) | 用于产生随机比特序列的装置和方法 | |
JP3783800B2 (ja) | プログラマブルな論理素子/装置を用いた暗号化/復号化装置および方法 | |
JP5542896B2 (ja) | 低電力暗号化装置および方法 | |
JP3696209B2 (ja) | シード生成回路、乱数生成回路、半導体集積回路、icカード及び情報端末機器 | |
JP2007195132A (ja) | 暗号処理装置 | |
CN109600822B (zh) | 无线通信系统的节点唤醒方法、无线通信系统及设备 | |
JP2010288233A (ja) | 暗号処理装置 | |
JP2009528559A (ja) | Sms4暗号アルゴリズムを実現する暗号化および復号化処理方法とそのシステム | |
JP2003162986A (ja) | Id発生装置及びid確認装置 | |
JP5143817B2 (ja) | ハッシュ暗号装置及び方法 | |
CN111708513B (zh) | 一种伪随机数种子生成方法及相关产品 | |
US20120008772A1 (en) | Memory controller, memory control device memory device, memory information protection system, control method for memory control device, and control method for memory device | |
Khor et al. | Public blockchain-based data integrity verification for low-power IoT devices | |
EP2950201A1 (en) | Generation of random numbers from an unitialised memory unit | |
KR100625248B1 (ko) | 레인징 의사 잡음 부호 발생 장치 및 그 방법 | |
CN213751073U (zh) | 安全芯片装置和系统 | |
JP2007066021A (ja) | 外部データ改ざん検出装置、および外部データ改ざん検出方法 | |
JP3606418B2 (ja) | 乱数生成装置 | |
KR100625247B1 (ko) | 레인징 의사 잡음 부호 발생 장치 및 그 방법 | |
JP4335561B2 (ja) | 半導体集積回路装置 | |
JPH11224183A (ja) | 擬似乱数発生装置 | |
JP5251353B2 (ja) | 情報処理装置 | |
KR100462736B1 (ko) | 다수의 타임 인터럽트 신호를 발생시킬 수 있는 타이머 장치 | |
JP2005080279A (ja) | パリティービットでデータに対して暗号保護を行なう装置及び方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050517 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20071214 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080122 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080311 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20080401 |
|
A045 | Written measure of dismissal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A045 Effective date: 20080826 |