JP2007065893A - Program provision device and onboard information system - Google Patents

Program provision device and onboard information system Download PDF

Info

Publication number
JP2007065893A
JP2007065893A JP2005249872A JP2005249872A JP2007065893A JP 2007065893 A JP2007065893 A JP 2007065893A JP 2005249872 A JP2005249872 A JP 2005249872A JP 2005249872 A JP2005249872 A JP 2005249872A JP 2007065893 A JP2007065893 A JP 2007065893A
Authority
JP
Japan
Prior art keywords
program
restriction
java application
constraint condition
information system
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.)
Pending
Application number
JP2005249872A
Other languages
Japanese (ja)
Inventor
Takehiko Koyasu
健彦 子安
Atsushi Kono
篤 河野
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2005249872A priority Critical patent/JP2007065893A/en
Priority to CN2006800090463A priority patent/CN101146697B/en
Priority to PCT/JP2006/302181 priority patent/WO2006114925A1/en
Priority to DE112006000536T priority patent/DE112006000536T5/en
Priority to US11/883,241 priority patent/US8136157B2/en
Publication of JP2007065893A publication Critical patent/JP2007065893A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Traffic Control Systems (AREA)
  • Navigation (AREA)
  • Debugging And Monitoring (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a program provision device and an onboard information system, suitable for operation verification and provision of a program developed for the onboard information system. <P>SOLUTION: The device has: an emulation means emulating software environment and hardware environment of the onboard information system; a program reception means for receiving the program developed for the onboard information system; a restriction condition holding means 21 for holding a resource state and an environment state of the onboard information system as restriction conditions; a program execution restriction means 22 for restricting operation of the program on the basis of the restriction conditions held by the restriction condition holding means; and a program execution means 112 for executing the program received from the program reception means according to the restriction by the program execution restriction means by use of a resource provided by the emulation means. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

本発明は、開発された車載情報システム用のプログラムの動作安全性の確認を、実機上で動作確認することなく行って車載情報システムに提供するプログラム提供装置およびこのプログラム提供装置によって提供されたプログラムを実行する車載情報システムに関する。   The present invention relates to a program providing apparatus for confirming the operational safety of a program for an in-vehicle information system that has been developed without confirming the operation on an actual machine, and providing the in-vehicle information system, and a program provided by the program providing apparatus It is related with the vehicle-mounted information system which performs.

近年のパーソナルコンピュータや携帯電話などといったインターネットに接続可能な機器は、インターネットを介して様々なサーバからプログラムをダウンロードすることができる。そのため、誰でも自由にプログラムを開発してサーバにアップロードし、このサーバにアップロードされたプログラムを目的の機器にダウンロードして実行することができる。しかしながら、悪意のあるプログラムや設計ミスを含むプログラムなどをダウンロードして実行することによって、機器の動作不良、機器内の情報の漏洩などといった被害が出る恐れがある。   Devices that can be connected to the Internet, such as recent personal computers and mobile phones, can download programs from various servers via the Internet. Therefore, anyone can freely develop a program, upload it to a server, download the program uploaded to this server to a target device, and execute it. However, downloading and executing a malicious program or a program including a design mistake may cause damage such as malfunction of the device and leakage of information in the device.

そこで、従来は、プログラム開発元で開発されたプログラムの動作テストを認証機関において行い、認証機関が、必要なリソースにのみアクセスを許可する情報を付加することによってプログラムの動作安全性を確保している。例えば、特許文献1に開示された通信端末のアクセス制御方法では、認定機関は、コンテンツプロバイダから認定を依頼された携帯電話機用のJava(登録商標、以下省略)アプリを審査し、このJavaアプリが、コンテンツプロバイダから申請されたリソースにアクセスするプログラムとして所定の動作基準を満たしており、リソースにアクセスできる認定プログラムであると認定した場合に、リソースを指定するリソース指定情報を認定サーバによりJavaアプリに付与する。携帯電話機は、認定機関により認定されたJavaアプリの実行中にアクセスできるリソースを、このJavaアプリに付与されているリソース指定情報によって指定されるリソースに制限する。   Therefore, in the past, an operational test of a program developed by the program developer was performed at the certification body, and the certification body secured the operational safety of the program by adding information that permits access only to the necessary resources. Yes. For example, in the access control method for a communication terminal disclosed in Patent Document 1, an accreditation body examines a Java (registered trademark, hereinafter omitted) app for a mobile phone requested to be authorized by a content provider. When a program that accesses a resource requested by a content provider satisfies a predetermined operation standard and is certified as an authorized program that can access the resource, resource designation information that designates the resource is sent to the Java application by the certified server. Give. The mobile phone restricts the resources that can be accessed during the execution of the Java application certified by the certification organization to the resources specified by the resource designation information given to the Java application.

特開2003−283494号公報JP 2003-283494 A

しかしながら、例えばカーナビゲーション装置のような車載情報システムに実装されるプログラムでは、携帯電話機などとは異なり、安全上の観点から、車の動作状態、例えば走行中であるか停止中であるかに応じてプログラムの動作を制限する必要がある。したがって、特許文献1に開示された方法では十分な動作検証および適切なアクセス許可を付与できない。また、広く一般のプログラマにプログラムの開発を促すためには、動作検証と検証したプログラムの提供を一緒に行うのが都合がよい。   However, in a program implemented in an in-vehicle information system such as a car navigation device, for example, unlike a mobile phone, depending on whether the vehicle is in an operating state, for example, whether it is running or stopped, from a safety standpoint. It is necessary to limit the operation of the program. Therefore, the method disclosed in Patent Document 1 cannot provide sufficient operation verification and appropriate access permission. Further, in order to encourage a general programmer to develop a program, it is convenient to provide operation verification and a verified program together.

そこで、この発明は、車載情報システム用に開発されたプログラムの動作検証および提供に好適なプログラム提供装置およびそれによって提供されたプログラムを実行する車載情報システムを提供することを目的とする。   Therefore, an object of the present invention is to provide a program providing apparatus suitable for verifying and providing operation of a program developed for an in-vehicle information system and an in-vehicle information system for executing the program provided thereby.

この発明に係るプログラム提供装置は、上記目的を達成するために、車載情報システムのハードウェア環境およびソフトウェア環境をエミュレートするエミュレート手段と、車載情報システム用に開発されたプログラムを受け取るプログラム受信手段と、車載情報システムのリソース状態および環境状態を制約条件として保持する制約条件保持手段と、制約条件保持手段に保持された制約条件に基づいてプログラムの動作を制限するプログラム実行制限手段と、エミュレート手段によって提供されるリソースを用いて、プログラム受信手段から受け取ったプログラムを、プログラム実行制限手段による制限にしたがって実行するプログラム実行手段とを備えている。   In order to achieve the above object, a program providing apparatus according to the present invention emulates a hardware environment and a software environment of an in-vehicle information system, and a program receiving unit for receiving a program developed for the in-vehicle information system A constraint condition holding unit that holds the resource state and the environmental state of the in-vehicle information system as a constraint condition, a program execution limit unit that limits a program operation based on the constraint condition held in the constraint condition holding unit, and an emulation Program execution means for executing the program received from the program reception means according to the restriction by the program execution restriction means using the resources provided by the means.

また、この発明に係る車載情報システムは、車載情報システム用に開発されたプログラムおよび証明情報を受信するプログラム受信手段と、プログラム受信手段から受け取った証明情報を解読して認証するプログラム認証手段と、プログラム認証手段から受け取った認証結果に応じてプログラムの動作を制限するプログラム実行制限手段と、プログラム受信手段から受け取ったプログラムを、プログラム実行制限手段による制限にしたがって実行するプログラム実行手段とを備えている。   Further, the in-vehicle information system according to the present invention includes a program receiving means for receiving a program and certification information developed for the in-vehicle information system, a program authentication means for decoding and authenticating the certification information received from the program receiving means, Program execution restriction means for restricting the operation of the program according to the authentication result received from the program authentication means, and program execution means for executing the program received from the program reception means in accordance with the restriction by the program execution restriction means. .

また、この発明に係る記憶媒体は、車載情報システムのハードウェア環境およびソフトウェア環境をエミュレートするエミュレート手段と、車載情報システム用に開発されたプログラムを受け取るプログラム受信手段と、車載情報システムのリソース状態および環境状態を制約条件として保持する制約条件保持手段と、制約条件保持手段に保持された制約条件に基づいてプログラムの動作を制限するプログラム実行制限手段、エミュレート手段によって提供されるリソースを用いて、プログラム受信手段から受け取ったプログラムを、プログラム実行制限手段による制限にしたがって実行するプログラム実行手段とを備えたコンピュータで実行可能なプログラムを記憶している。   The storage medium according to the present invention includes an emulation means for emulating a hardware environment and a software environment of an in-vehicle information system, a program receiving means for receiving a program developed for the in-vehicle information system, and an in-vehicle information system resource Using a resource provided by a constraint condition holding means for holding a state and an environmental state as a constraint condition, a program execution restriction means for restricting a program operation based on the constraint condition held in the constraint condition holding means, and an emulating means Thus, a program executable by a computer having program execution means for executing the program received from the program reception means in accordance with restrictions by the program execution restriction means is stored.

この発明に係るプログラム提供装置によれば、リソース状態と環境状態を制約条件として設定することによって、車載情報システムのような環境における動作確認をエミュレート手段を用いて実施することができる。したがって、車載情報システム用に開発されたプログラムの動作検証および提供に好適である。   According to the program providing apparatus of the present invention, the operation check in the environment such as the in-vehicle information system can be performed using the emulating means by setting the resource state and the environmental state as the constraint conditions. Therefore, it is suitable for the operation verification and provision of a program developed for an in-vehicle information system.

この発明に係る車載情報システムによれば、受信した証明情報に基づきプログラムの動作を制限するように構成したので、プログラム提供装置によって提供されたプログラムの検証が不十分であっても、そのプログラムを正当に実行することができる。   According to the in-vehicle information system according to the present invention, since the operation of the program is limited based on the received certification information, even if the verification of the program provided by the program providing device is insufficient, the program Can be carried out legitimately.

この発明に係る記憶媒体によれば、上述したプログラム提供装置と同様の効果を奏する。   According to the storage medium of the present invention, the same effects as those of the program providing apparatus described above can be obtained.

以下、この発明の実施の形態を、図面を参照しながら詳細に説明する。以下では、この発明に係る車載情報システムとしてカーナビゲーション装置を例に挙げて説明する。また、車載情報システム用に開発されたプログラムはJavaアプリケーションプログラム(以下「Javaアプリ」と略する)であるものとし、プログラム提供装置は、パーソナルコンピュータ上で動作するカーナビゲーション装置用Javaアプリの動作テストプログラムなどから構成されるものとする。また、カーナビゲーション装置は、プログラム提供装置から提供されたJavaアプリのみ実行可能なものとする。
実施の形態1.
図1は、この発明の実施の形態1に係る車載情報システムとしてのカーナビゲーション装置のハードウェア構成を示すブロック図である。このカーナビゲーション装置は、CPU(Central Processing Unit)1、ROM(Read Only Memory)2、RAM(Random Access Memory)3、操作部インタフェース4、出力部インタフェース5、通信部インタフェース6および外部記録装置インタフェース7から構成されている。
Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. Hereinafter, a car navigation device will be described as an example of the in-vehicle information system according to the present invention. The program developed for the in-vehicle information system is a Java application program (hereinafter abbreviated as “Java application”), and the program providing apparatus is an operation test of the Java application for a car navigation apparatus operating on a personal computer. It shall consist of programs. In addition, the car navigation device can execute only the Java application provided from the program providing device.
Embodiment 1 FIG.
1 is a block diagram showing a hardware configuration of a car navigation device as an in-vehicle information system according to Embodiment 1 of the present invention. This car navigation device includes a central processing unit (CPU) 1, a read only memory (ROM) 2, a random access memory (RAM) 3, an operation unit interface 4, an output unit interface 5, a communication unit interface 6, and an external recording device interface 7. It is composed of

CPU1は、ROM2に格納されているプログラムに従って演算処理を行うことにより、カーナビゲーション装置の全体を制御する。ROM2は、地図データやプログラム(ナビゲーションプログラム等)を記憶する。このROM2に記憶されている内容はCPU1によって読み出される。RAM3は、CPU1によるプログラム実行時に、データを一時的に記憶するワークエリアとして使用される。   The CPU 1 controls the entire car navigation device by performing arithmetic processing according to a program stored in the ROM 2. The ROM 2 stores map data and programs (such as navigation programs). The contents stored in the ROM 2 are read out by the CPU 1. The RAM 3 is used as a work area for temporarily storing data when the CPU 1 executes a program.

操作部インタフェース4には、リモートコントローラ(以下、「リモコン」と略する)41およびマイクロフォン(以下、「マイク」と略する)42が接続されている。この操作部インタフェース4は、リモコン41およびマイク42から入力された指示をCPU1に送る制御を行う。出力部インタフェース5には、ディスプレイ51およびスピーカ52が接続されている。この出力部インタフェース5は、CPU1から送られてく出力データをディスプレイ51およびスピーカ52に送る制御を行う。   A remote controller (hereinafter abbreviated as “remote control”) 41 and a microphone (hereinafter abbreviated as “microphone”) 42 are connected to the operation unit interface 4. The operation unit interface 4 performs control to send instructions input from the remote controller 41 and the microphone 42 to the CPU 1. A display 51 and a speaker 52 are connected to the output unit interface 5. The output unit interface 5 performs control to send output data sent from the CPU 1 to the display 51 and the speaker 52.

通信部インタフェース6には、例えば携帯電話やDSRC(Dedicated Short Range Communication)車載器といった通信機器61および車内LAN(Local Area Network)62が接続されている。通信部インタフェース6は、CPU10と通信機器61および車内LAN62との間の通信を制御する。CPU1は、車内LAN62から通信部インタフェース6を介して、例えば速度や燃料の残量といった車両情報を取得する。   For example, a communication device 61 such as a mobile phone or a DSRC (Dedicated Short Range Communication) vehicle-mounted device and an in-vehicle LAN (Local Area Network) 62 are connected to the communication unit interface 6. The communication unit interface 6 controls communication between the CPU 10, the communication device 61, and the in-vehicle LAN 62. The CPU 1 acquires vehicle information such as speed and remaining fuel amount from the in-vehicle LAN 62 via the communication unit interface 6.

外部記録装置インタフェース7には、例えばCD(Compact Disc)やDVD(Digital Versatile Disk)といった記録メディアからデータを読み込む外部記録装置ドライブ71が接続されている。この外部記録装置インタフェース7は、外部記録装置ドライブ71とCPU1との間のデータの送受を制御する。   An external recording device drive 71 for reading data from a recording medium such as a CD (Compact Disc) or a DVD (Digital Versatile Disk) is connected to the external recording device interface 7. The external recording device interface 7 controls data transmission / reception between the external recording device drive 71 and the CPU 1.

図2は、図1に示すカーナビゲーション装置のソフトウェア構成を示す図である。カーナビゲーション装置のオペレーティングシステム(以下、「カーナビゲーションOS」と略する)は、カーナビゲーション装置のハードウェア(以下、「カーナビゲーションハードウェア」という)を動作させるための種々のデバイスドライバの上に形成されている。このカーナビゲーションOSの上位に、ライブラリおよびアプリケーションプログラムインタフェース(以下、「API:Application Program Interface」という)が設けられ、さらに、その上位に、プログラムによって構成されたナビゲーションサービス10、Javaアプリ11、Javaアプリ実行部(JavaVM;Java Virtual Machine)12、Javaアプリ管理部13およびJavaアプリ認証部14が設けられている。   FIG. 2 is a diagram showing a software configuration of the car navigation apparatus shown in FIG. The operating system of the car navigation device (hereinafter abbreviated as “car navigation OS”) is formed on various device drivers for operating the hardware of the car navigation device (hereinafter referred to as “car navigation hardware”). Has been. A library and an application program interface (hereinafter referred to as “API: Application Program Interface”) are provided above the car navigation OS, and further, a navigation service 10, a Java application 11, and a Java application configured by the programs are provided above the car navigation OS. An execution unit (Java VM; Java Virtual Machine) 12, a Java application management unit 13, and a Java application authentication unit 14 are provided.

ナビゲーションサービス10は、現在地を表示し、または目的地を設定してルート案内を行うといったカーナビゲーションの基本的なサービスを行う。Javaアプリ11は、例えばゲームや走行支援プログラムといったコンテンツである。Javaアプリ実行部12は、Javaアプリ11を実行する環境を提供する。Javaアプリ管理部13は、Javaアプリ11の動作全体を管理する。Javaアプリ認証部14は、Javaアプリ11の認証を行う。   The navigation service 10 provides a basic car navigation service such as displaying the current location or setting a destination and performing route guidance. The Java application 11 is content such as a game or a driving support program. The Java application execution unit 12 provides an environment for executing the Java application 11. The Java application management unit 13 manages the entire operation of the Java application 11. The Java application authentication unit 14 authenticates the Java application 11.

ナビゲーションサービス10は、JavaVMインタフェースモジュール10aを備えている。また、Javaアプリ実行部12は、ナビゲーションサービスインタフェースモジュール12aを備えている。これらJavaVMインタフェースモジュール10aとナビゲーションサービスインタフェースモジュール12aとが相互に通信することにより、ナビゲーションサービス10とJavaアプリ実行部12とが連携して動作する。   The navigation service 10 includes a Java VM interface module 10a. In addition, the Java application execution unit 12 includes a navigation service interface module 12a. When the Java VM interface module 10a and the navigation service interface module 12a communicate with each other, the navigation service 10 and the Java application execution unit 12 operate in cooperation with each other.

図3は、この発明の実施の形態1に係るプログラム提供装置の主要な部分の構成を示す図である。このプログラム提供装置は、ハードウェア環境をエミュレートするハードウェアエミュレータおよびソフトウェア環境をエミュレートするソフトウェアエミュレータによって構成された動作テストプログラム20、ナビ画面出力ウインドウ31、操作入力ウインドウ32およびナビ環境設定ウインドウ33を備え、上述したカーナビゲーション装置のハードウェアおよびソフトウェアの機能をパーソナルコンピュータ上で再現するプログラムとして構成されている。ハードウェアエミュレータおよびソフトウェアエミュレータは、この発明のエミュレート手段に対応する。   FIG. 3 is a diagram showing a configuration of main parts of the program providing apparatus according to Embodiment 1 of the present invention. The program providing apparatus includes an operation test program 20, a navigation screen output window 31, an operation input window 32, and a navigation environment setting window 33 configured by a hardware emulator that emulates a hardware environment and a software emulator that emulates a software environment. It is comprised as a program which reproduces the function of the hardware and software of the car navigation apparatus mentioned above on a personal computer. A hardware emulator and a software emulator correspond to the emulation means of the present invention.

動作テストプログラム20は、カーナビゲーション装置の実機には存在しない構成として、制約条件保持部21、Javaアプリ実行制限部22および証明部23を備えている。なお、カーナビゲーション装置の実機に存在する構成部分には、図1で使用した符号に「100」を加えた符号を付してあり、各部の機能はカーナビゲーション装置の実機の機能と同じである。   The operation test program 20 includes a constraint condition holding unit 21, a Java application execution restriction unit 22, and a proof unit 23 as a configuration that does not exist in the actual car navigation device. In addition, the component which exists in the real machine of a car navigation apparatus is attached | subjected the code | symbol which added "100" to the code | symbol used in FIG. 1, and the function of each part is the same as the function of the real machine of a car navigation apparatus. .

制約条件保持部21は、この発明の制約条件保持手段に対応する。この制約条件保持部21には、動作テストプログラム20の提供者によってあらかじめ設定されている制約条件が保持されている。この制約条件保持部21には、カーナビゲーション装置のリソース状態と環境状態とが対応づけて保持されており、例えば図4に示すように、動作可能な状態が列挙されたファイルとして形成されている。図4では、例えば画面表示は停車中にのみ可能であることを示している。   The constraint condition holding unit 21 corresponds to the constraint condition holding means of the present invention. The constraint condition holding unit 21 holds constraint conditions set in advance by the provider of the operation test program 20. The constraint condition holding unit 21 holds the resource state and the environmental state of the car navigation device in association with each other, and for example, as shown in FIG. 4, it is formed as a file listing operable states. . FIG. 4 shows that, for example, screen display is possible only when the vehicle is stopped.

制約条件として制約条件保持部21に保持されるリソース状態には、ハードウェアリソースとして、例えばCPU使用率、メモリ使用量、ハードディスク使用量(換言すればプログラムサイズ)、バス使用率およびネットワーク使用可否などの少なくとも1つが含まれる。また、ソフトウェアリソースとして、APIの使用可否、ライブラリの使用可否、特定プログラムの実行状態の少なくとも1つが含まれる。また、環境状態には、例えば、走行中または停止中を表す走行状態、走行速度、位置、向き、高度、温度、湿度、天気、道路種別などの少なくとも1つが含まれる。   The resource state held in the constraint condition holding unit 21 as a constraint condition includes, as hardware resources, for example, a CPU usage rate, a memory usage amount, a hard disk usage amount (in other words, a program size), a bus usage rate, and network availability. At least one of the following. Further, the software resource includes at least one of the availability of the API, the availability of the library, and the execution state of the specific program. The environmental state includes at least one of a traveling state indicating traveling or stopped, traveling speed, position, direction, altitude, temperature, humidity, weather, road type, and the like.

Javaアプリ実行制限部22は、この発明のプログラム実行制限手段に対応し、制約条件保持部21に保持されている制約条件に従って、Javaアプリ実行部112で実行されるJavaアプリの動作を制限する。証明部23は、動作確認ができたJavaアプリに対して、あらかじめ埋め込まれている鍵を用いてJavaアプリの証明情報を生成する。   The Java application execution restriction unit 22 corresponds to the program execution restriction unit of the present invention, and restricts the operation of the Java application executed by the Java application execution unit 112 according to the restriction condition held in the restriction condition holding part 21. The certification unit 23 generates certification information for the Java application using a key embedded in advance for the Java application whose operation has been confirmed.

また、ナビ画面出力ウインドウ31は、カーナビゲーション装置においてはディスプレイ51に表示される画面を、パーソナルコンピュータの画面上で表示するためのウインドウである。操作入力ウインドウ32は、カーナビゲーション装置ではリモコン41またはマイク42などによって入力される情報を、パーソナルコンピュータの入力装置から入力するためのウインドウである。   The navigation screen output window 31 is a window for displaying the screen displayed on the display 51 on the screen of the personal computer in the car navigation apparatus. The operation input window 32 is a window for inputting information input by the remote controller 41 or the microphone 42 in the car navigation device from the input device of the personal computer.

ナビ環境設定ウインドウ33は、カーナビゲーション装置では車両本体から得られる環境状態を表す情報を、パーソナルコンピュータの入力装置から入力するためのウインドウである。なお、制約条件保持部21に設定されている制約条件は、当該プログラム提供装置の提供者によってあらかじめ設定されるものであり、ナビ環境設定ウインドウ33によって設定することはできない。   The navigation environment setting window 33 is a window for inputting information representing an environmental state obtained from the vehicle body in the car navigation apparatus from an input device of a personal computer. The restriction conditions set in the restriction condition holding unit 21 are set in advance by the provider of the program providing apparatus, and cannot be set by the navigation environment setting window 33.

次に、上述した動作テストプログラム20によって、開発されたJavaアプリが実行される手順を図5に示すフローチャートを参照しながら説明する。   Next, a procedure for executing the developed Java application by the above-described operation test program 20 will be described with reference to a flowchart shown in FIG.

まず、Javaアプリが取得される(ステップST11)。すなわち、動作テストプログラム20で実現されている図示しない通信インタフェースを用いて、Javaアプリが受信され、動作テストプログラム20のJavaアプリ111としてセットされる。この場合、図示しない通信インタフェースは、この発明に係るプログラム提供装置のプログラム受信手段に対応し、この通信インタフェースで受信するJavaアプリはプログラムに対応する。   First, a Java application is acquired (step ST11). In other words, a Java application is received using a communication interface (not shown) realized by the operation test program 20 and set as the Java application 111 of the operation test program 20. In this case, the communication interface (not shown) corresponds to the program receiving means of the program providing apparatus according to the present invention, and the Java application received by this communication interface corresponds to the program.

次いで、Javaアプリが実行される(ステップST12)。すなわち、Javaアプリ実行部112は、ステップST11でセットされたJavaアプリ111の実行処理を行う。このJavaアプリ実行部112は、この発明のプログラム実行手段に対応する。   Next, the Java application is executed (step ST12). That is, the Java application execution unit 112 performs the execution process of the Java application 111 set in step ST11. The Java application execution unit 112 corresponds to the program execution means of the present invention.

次いで、動作テストが終了であるかどうかが調べられる(ステップST13)。具体的には、ナビ環境設定ウインドウ33の操作によって様々な環境で行われた動作テストの終了であるかどうかが調べられる。このステップST13において、動作テストが終了でないことが判断されると、次いで、環境設定が行われる(ステップST14)。このステップST14では、ユーザがナビ環境設定ウインドウ22を用いて様々な環境を設定する。例えば、走行中と停止中の状態を切り替えたり、走行位置や高度、車の向き、車内/車外の温度/湿度、一般道/高速道路走行中を変更したりする。また、CPUの使用率を70%としてメモリ空き容量を1MBとし、バスの使用率を80%とするなど、エミュレート環境の状態を変更し、その状態で動作テストを実施する。   Next, it is checked whether or not the operation test is completed (step ST13). Specifically, it is checked whether or not the operation test performed in various environments is completed by operating the navigation environment setting window 33. If it is determined in this step ST13 that the operation test is not completed, then environment setting is performed (step ST14). In step ST14, the user sets various environments using the navigation environment setting window 22. For example, the state is changed between running and stopped, and the running position and altitude, the direction of the car, the temperature / humidity inside / outside the car, and running on a general road / highway are changed. In addition, the state of the emulation environment is changed such that the CPU usage rate is 70%, the memory free space is 1 MB, the bus usage rate is 80%, and the operation test is performed in that state.

次いで、制限対象処理であるかどうかが調べられる(ステップST15)。すなわち、制約条件として設定されているリソースに対する処理であるかどうかが調べられる。このステップST15において、制限対象処理でないことが判断されると、シーケンスはステップST13に戻り、上述した処理が繰り返される。一方、ステップST15において、制限対象処理であることが判断されると、次いで、環境状態が取得される(ステップST14)。すなわち、Javaアプリ実行部112はナビゲーションサービス110から環境状態を取得する。   Next, it is checked whether or not the process is a restriction target process (step ST15). That is, it is checked whether or not the processing is for a resource set as a constraint condition. If it is determined in step ST15 that the process is not a restriction target process, the sequence returns to step ST13, and the above-described process is repeated. On the other hand, if it is determined in step ST15 that the process is a restriction target process, the environmental state is then acquired (step ST14). That is, the Java application execution unit 112 acquires the environmental state from the navigation service 110.

次いで、実行可能であるかどうかが調べられる(ステップST17)。すなわち、Javaアプリ実行部112は、ステップST14で取得した環境状態に基づいて、Javaアプリを実行可能であるかどうかを調べる。このステップST17で、実行可能であることが判断されると、シーケンスはステップST13に戻り、上述した処理が繰り返される。一方、ステップST17において、実行可能でないことが判断されると、処理は終了する。   Next, it is checked whether or not it can be executed (step ST17). That is, the Java application execution unit 112 checks whether or not the Java application can be executed based on the environmental state acquired in step ST14. If it is determined in this step ST17 that execution is possible, the sequence returns to step ST13, and the above-described processing is repeated. On the other hand, if it is determined in step ST17 that execution is not possible, the process ends.

上記ステップST13において、動作テストが終了であることが判断されると、証明情報が生成される(ステップST18)。すなわち、ナビ環境設定ウインドウ33の操作によって様々な環境での動作テストが行われた後、正常に動作する事が確認できたら、Javaアプリを用いて証明部23は証明情報を生成する。証明部23で行われる証明方法としては、証明部23にあらかじめ用意されている鍵を用いてJavaアプリに署名する方法やJavaアプリを暗号化する方法を用いることができる。なお。署名および暗号化の技術としては、公知の技術を用いることができる。その後、処理は終了する。   If it is determined in step ST13 that the operation test is complete, certification information is generated (step ST18). That is, after the operation test in various environments is performed by operating the navigation environment setting window 33, if it can be confirmed that the operation is normal, the certification unit 23 generates certification information using the Java application. As a certification method performed by the certification unit 23, a method of signing a Java application using a key prepared in advance in the certification unit 23 or a method of encrypting the Java application can be used. Note that. Known techniques can be used as the technique for signing and encrypting. Thereafter, the process ends.

なお、このステップST13において、証明部23は、CPU使用率、メモリ使用量、ハードディスク使用量、バス使用率およびネットワーク使用可否の少なくとも1つを含むリソース状態と、走行状態、走行速度、位置、向き、高度、温度、湿度、天気および道路種別の少なくとも1つを含む環境状態とを含む制約条件に応じて証明情報を生成するように構成できる。この構成によれば、ハードウェアに関する制約条件の要素毎に動作の証明を行うことができる。   In step ST13, the certifying unit 23 determines the resource state including at least one of the CPU usage rate, the memory usage amount, the hard disk usage amount, the bus usage rate, and the network availability, the running state, the running speed, the position, and the direction. The proof information can be generated in accordance with a constraint condition including an altitude, temperature, humidity, weather, and an environmental state including at least one of road types. According to this configuration, the operation can be proved for each element of the constraint condition related to the hardware.

また、証明部23は、APIの使用可否、ライブラリの使用可否、特定プログラムの実行状態の少なくとも1つを含むリソース状態と、走行状態、走行速度、位置、向き、高度、温度、湿度、天気および道路種別の少なくとも1つを含む環境状態とを含む制約条件に応じて証明情報を生成するように構成することもできる。この構成によれば、ソフトウェアに関する制約条件の要素毎に動作の証明を行うことができる。   The certification unit 23 also includes a resource state including at least one of API availability, library availability, execution status of the specific program, running status, running speed, position, direction, altitude, temperature, humidity, weather, and The proof information may be generated in accordance with a constraint condition including an environmental state including at least one road type. According to this configuration, it is possible to prove the operation for each element of the constraint condition related to software.

さらに、証明部23は、プログラム提供元に応じて証明情報を生成するように構成することもできる。この構成によれば、プログラム提供装置を提供する対象(例えばカーメーカやコンテンツプロバイダなど)毎に証明情報を生成することができる。   Furthermore, the certification unit 23 can be configured to generate certification information according to the program provider. According to this configuration, it is possible to generate certification information for each target (for example, a car manufacturer or a content provider) that provides the program providing apparatus.

このステップST18において生成された証明情報は、Javaアプリとともに図示しないメモリに保存するように構成できる。この場合、図示しないメモリは、この発明のプログラム保存手段に対応し、このメモリに保存されるJavaアプリはプログラムに対応する。また、ステップST18において生成された証明情報は、Javaアプリとともに、動作テストプログラム20で実現されている図示しない通信インタフェースを用いて、カーナビゲーション装置に直接に送信するように構成できる。この場合、図示しない通信インタフェースは、この発明に係るプログラム提供装置のプログラム送信手段に対応し、この通信インタフェースで受信するJavaアプリはプログラムに対応する。   The certification information generated in step ST18 can be configured to be stored in a memory (not shown) together with the Java application. In this case, the memory (not shown) corresponds to the program storage means of the present invention, and the Java application stored in this memory corresponds to the program. Further, the certification information generated in step ST18 can be configured to be transmitted directly to the car navigation device using a communication interface (not shown) realized by the operation test program 20 together with the Java application. In this case, the communication interface (not shown) corresponds to the program transmission means of the program providing apparatus according to the present invention, and the Java application received by this communication interface corresponds to the program.

次に、上述した手順によって生成された証明情報とJavaアプリをカーナビゲーション装置で実行する動作を、図6に示すフローチャートを参照しながら説明する。   Next, an operation of executing the certification information generated by the above-described procedure and the Java application by the car navigation device will be described with reference to a flowchart shown in FIG.

まず、Javaアプリが取得される(ステップST21)。具体的には、カーナビゲーション装置は、通信機器61(図1参照)を介してJavaアプリおよび証明情報を受信する。受信されたJavaアプリは、Javaアプリ11としてセットされる。   First, a Java application is acquired (step ST21). Specifically, the car navigation device receives the Java application and the certification information via the communication device 61 (see FIG. 1). The received Java application is set as the Java application 11.

次いで、Javaアプリの認証が行われる(ステップST22)。すなわち、Javaアプリ認証部14は、受け取った証明情報を認証する。このJavaアプリ認証部14は、この発明のプログラム認証手段に対応する。Javaアプリ認証部14における認証方法としては、Javaアプリ認証部14にあらかじめ用意されている鍵を用いて署名検証を行う方法やJavaアプリの暗号化を復号する方法を用いることができる。なお、署名検証および復号の技術としては、公知の技術を用いることができる。Javaアプリ認証部14は、認証結果をJavaアプリ実行部12に送る。   Next, the Java application is authenticated (step ST22). That is, the Java application authentication unit 14 authenticates the received certification information. The Java application authentication unit 14 corresponds to the program authentication means of the present invention. As an authentication method in the Java application authentication unit 14, a method of performing signature verification using a key prepared in advance in the Java application authentication unit 14 or a method of decrypting the encryption of the Java application can be used. A known technique can be used as a technique for signature verification and decryption. The Java application authentication unit 14 sends the authentication result to the Java application execution unit 12.

次いで、認証が正当(OK)であるかどうかが調べられる(ステップST23)。すなわち、Javaアプリ実行部12は、Javaアプリ認証部14から送られてきた認証結果が正当であるかどうかを調べる。このステップST23において、認証が正当であることが判断されると、Javaアプリが実行される(ステップST24)。一方、認証が不正(例えば鍵が存在しない場合や署名検証で一致が得られない場合)であることが判断されると、Javaアプリを実行せずに処理は終了する。   Next, it is checked whether or not the authentication is valid (OK) (step ST23). In other words, the Java application execution unit 12 checks whether the authentication result sent from the Java application authentication unit 14 is valid. If it is determined in step ST23 that the authentication is valid, the Java application is executed (step ST24). On the other hand, when it is determined that the authentication is invalid (for example, when the key does not exist or when no match is obtained by signature verification), the processing ends without executing the Java application.

以上説明したように、この発明の実施の形態1に係るプログラム提供装置によれば、リソース状態と環境状態を制約条件として設定することによって、カーナビゲーション装置のような環境における動作確認をパーソナルコンピュータ上で実施することができる。したがって、カーナビゲーション装置用に開発されたプログラムの動作検証および提供に好適である。また、カーナビゲーション装置では、動作テストプログラムによって動作確認されたJavaアプリのみ動作を許可するため、不正なJavaアプリが動作するのを防ぐことができる。   As described above, according to the program providing apparatus according to the first embodiment of the present invention, the operation check in the environment such as the car navigation apparatus is performed on the personal computer by setting the resource state and the environmental state as the constraint conditions. Can be implemented. Therefore, it is suitable for the operation verification and provision of a program developed for a car navigation apparatus. Further, in the car navigation device, only the Java application whose operation has been confirmed by the operation test program is allowed to operate, so that it is possible to prevent an unauthorized Java application from operating.

ハードウェアエミュレータおよびソフトウェアエミュレータによって再現されているリソースの使用を環境状態によって制限するように構成したので、特許文献1に記載されている技術とは異なり、安全上の観点から、車の動作状態、例えば走行中であるか停止中であるかに応じてプログラムの動作を制限したテストを行うことができ、十分な動作検証が可能になる。   Since the use of resources reproduced by the hardware emulator and the software emulator is limited according to the environmental state, unlike the technique described in Patent Document 1, from the viewpoint of safety, the vehicle operating state, For example, a test in which the operation of the program is limited depending on whether the vehicle is running or stopped can be performed, and sufficient operation verification can be performed.

また、制約条件をファイルとして保持しているため、プログラム提供装置を提供する側がファイルの内容を変更することで、プログラム提供装置を提供する対象(例えばカーメーカやコンテンツプロバイダなど)毎に制約条件を変更した環境を提供することができる。   In addition, since the constraint condition is held as a file, the program provider providing side changes the contents of the file, so that the constraint condition is changed for each target providing the program provider (for example, a car manufacturer or content provider). Environment can be provided.

また、Javaアプリ実行部112によってJavaアプリが正常に実行されたことを証明する証明情報を生成してJavaアプリとともにユーザに提供するように構成したので、ユーザは、プログラム提供装置で動作テストしたことが証明されたプログラムを取得することができ、悪意のあるプログラムや設計ミスを含むプログラムなどをカーナビゲーション装置で実行することがない。その結果、機器の動作不良、機器内の情報の漏洩などといった被害を防止できる。   Also, since the Java application execution unit 112 is configured to generate certification information that proves that the Java application has been executed normally and to provide it to the user together with the Java application, the user has performed an operation test on the program providing apparatus. Can be acquired, and malicious programs or programs containing design errors are not executed by the car navigation device. As a result, it is possible to prevent damage such as malfunction of the device and leakage of information in the device.

なお、上述した実施の形態1では、様々な環境での動作確認をユーザがナビ環境設定ウインドウ33を用いてカーナビゲーション装置の環境を設定することによって行うように構成したが、この環境の設定を自動で行うように構成することもできる。例えば、動作テストプログラム20を提供する側が、テストコースのデータをあらかじめ用意しておき、このテストコースを走行中に正常に動作していればJavaアプリは安全に動作すると判断して証明情報を生成するように構成できる。   In the above-described first embodiment, the configuration is such that the user confirms the operation in various environments by setting the environment of the car navigation device using the navigation environment setting window 33. It can also be configured to do it automatically. For example, the side that provides the operation test program 20 prepares test course data in advance, and if the test application is operating normally while traveling on the test course, it determines that the Java application operates safely and generates proof information. Can be configured to

また、上述した実施の形態1では、制約条件を保持する例として、ファイルにリソース状態と環境状態を羅列するように構成したが、制約条件を、Javaのアクセス制御のために標準で用意されているJavaポリシーファイルに追記するように構成することもできる。また、このJavaポリシーファイルをネットワークを通じて更新することによって、制約条件を更新することもできる。   In the first embodiment described above, the resource state and the environment state are arranged in the file as an example of holding the constraint condition. However, the constraint condition is prepared as standard for Java access control. It can also be configured to append to a Java policy file. The constraint condition can also be updated by updating the Java policy file through the network.

また、カーナビゲーション装置のメーカが、自社のカーナビゲーション装置用のJavaアプリを一般のユーザが作成できるような環境を提供したい場合、制約条件に一般のユーザに許可してもよい動作範囲の設定を施し、カーナビゲーション装置のJavaアプリ認証部14に埋め込んである鍵に対応したカーナビゲーション装置のメーカ独自の鍵を動作テストプログラム20の証明部23に埋め込んで動作テストプログラム20を配布する。また、正規ディーラに対しては一般のユーザの場合と制約条件を変更して動作テストプログラム20を配布する。この際、動作テストプログラム20の証明部23に埋め込む鍵は変更する必要はない。これにより、カーメーカは制約条件を変更するだけで提供先毎に適した動作テストプログラムを送付することができる。   In addition, when a manufacturer of a car navigation device wants to provide an environment in which a general user can create a Java application for the company's own car navigation device, the operation range that can be permitted to the general user is set as a restriction condition. Then, the operation test program 20 is distributed by embedding a car navigation device manufacturer-specific key corresponding to the key embedded in the Java application authentication unit 14 of the car navigation device in the certification unit 23 of the operation test program 20. For regular dealers, the operation test program 20 is distributed by changing the restriction conditions for ordinary users. At this time, it is not necessary to change the key embedded in the certification unit 23 of the operation test program 20. As a result, the car manufacturer can send an operation test program suitable for each provider only by changing the constraint conditions.

実施の形態2.
この発明の実施の形態2は、証明情報に制約条件を埋め込むようにしたものである。この実施の形態2は、Javaアプリ動作テストプログラム20の証明部23における証明方法とカーナビゲーション装置のソフトウェア構成が、実施の形態1と異なる。以下では、実施の形態1と相違する部分を中心に説明する。
Embodiment 2. FIG.
In the second embodiment of the present invention, constraint conditions are embedded in certification information. The second embodiment is different from the first embodiment in the certification method in the certification unit 23 of the Java application operation test program 20 and the software configuration of the car navigation device. Below, it demonstrates focusing on the part which is different from Embodiment 1. FIG.

この実施の形態2に係るプログラム提供装置を構成する動作テストプログラム20の証明部23は、制約条件を含んだ証明情報を生成する。例えば、制約条件が図4に示したようなファイルに保持されている場合、証明部23は、そのファイル自体も暗号化して証明情報に埋め込む。   The proof unit 23 of the operation test program 20 constituting the program providing apparatus according to the second embodiment generates proof information including a constraint condition. For example, when the constraint condition is held in a file as shown in FIG. 4, the certification unit 23 encrypts the file itself and embeds it in the certification information.

図7は、この発明の実施の形態2に係るカーナビゲーション装置のソフトウェア構成を示す図である。このソフトウェア構成は、実施の形態1に係るカーナビゲーション装置のソフトウェア構成に、Javaアプリ実行制限部15が追加されて構成されている。なお、実施の形態1においては、Javaアプリ実行制限部は動作テストプログラム20にのみ含まれており、カーナビゲーション装置には含まれていない。   FIG. 7 is a diagram showing a software configuration of the car navigation apparatus according to Embodiment 2 of the present invention. This software configuration is configured by adding a Java application execution restriction unit 15 to the software configuration of the car navigation device according to the first embodiment. In the first embodiment, the Java application execution restriction unit is included only in the operation test program 20 and is not included in the car navigation device.

次に、プログラム提供装置で生成された証明情報とJavaアプリをカーナビゲーション装置で実行する動作を、図8に示すフローチャートを参照しながら説明する。   Next, the operation of executing the certification information generated by the program providing apparatus and the Java application by the car navigation apparatus will be described with reference to the flowchart shown in FIG.

まず、Javaアプリが取得される(ステップST31)。具体的には、カーナビゲーション装置は、通信機器61(図1参照)を介してJavaアプリおよび証明情報を受信する。この場合の通信機器61は、この発明に係る車載情報システムのプログラム受信手段に対応し、この通信機器61で受信するJavaアプリはプログラムに対応する。受信されたJavaアプリは、Javaアプリ11としてセットされる。   First, a Java application is acquired (step ST31). Specifically, the car navigation device receives the Java application and the certification information via the communication device 61 (see FIG. 1). The communication device 61 in this case corresponds to the program receiving means of the in-vehicle information system according to the present invention, and the Java application received by the communication device 61 corresponds to the program. The received Java application is set as the Java application 11.

次いで、Javaアプリの認証が行われる(ステップST32)。すなわち、Javaアプリ認証部14は、受け取った証明情報を認証する。ここで、Javaアプリ認証部14における認証方法としては、Javaアプリ認証部14にあらかじめ用意されている鍵を用いて暗号化されている証明情報を復号する方法を用いることができる。次いで、認証が正当(OK)であるかどうかが調べられる(ステップST33)。すなわち、Javaアプリ実行部12は、Javaアプリ認証部14から送られてきた認証結果が不正であるかどうかを調べる。このステップST33において、認証が不正であることが判断されると、Javaアプリを実行せずに処理は終了する。   Next, the Java application is authenticated (step ST32). That is, the Java application authentication unit 14 authenticates the received certification information. Here, as an authentication method in the Java application authenticating unit 14, a method of decrypting certification information encrypted using a key prepared in advance in the Java application authenticating unit 14 can be used. Next, it is checked whether or not the authentication is valid (OK) (step ST33). In other words, the Java application execution unit 12 checks whether the authentication result sent from the Java application authentication unit 14 is invalid. If it is determined in step ST33 that the authentication is invalid, the process ends without executing the Java application.

一方、ステップST33において、認証が正当であることが判断されると、次いで、制約条件が取得される(ステップST34)。すなわち、Javaアプリ実行部12は、認証結果が正当であることを判断すると、証明情報から制約条件を取得してJavaアプリ実行制限部15に送る。次いで、Javaアプリが実行される(ステップST35)。すなわち、Javaアプリ実行部12は、Javaアプリ11を実行する。この時、Javaアプリ実行制限部15は、ステップST34において取得した制約条件に従ってJavaアプリ11の動作を制限する。なお、アプリの終了処理がコールされることによって、アプリは正常に終了する。   On the other hand, if it is determined in step ST33 that the authentication is valid, then a constraint condition is acquired (step ST34). That is, when the Java application execution unit 12 determines that the authentication result is valid, the Java application execution unit 12 acquires the constraint condition from the certification information and sends it to the Java application execution restriction unit 15. Next, the Java application is executed (step ST35). That is, the Java application execution unit 12 executes the Java application 11. At this time, the Java application execution restriction unit 15 restricts the operation of the Java application 11 according to the restriction condition acquired in step ST34. Note that the application is normally terminated when the application termination process is called.

次いで、Javaアプリが実行中の動作制限として、APIがコールされると制限対象処理であるかどうかが調べられる(ステップST36)。すなわち、制約条件に記載されたリソースに対する処理であるかどうかが調べられる。このステップST36において、制限対象処理でないことが判断されると、シーケンスはステップST35に戻り、上述した処理が繰り返される。一方、ステップST36において、制限対象処理であることが判断されると、次いで、環境状態が取得される(ステップST37)。すなわち、Javaアプリ実行部12はナビゲーションサービス10から環境状態を取得する。   Next, as an operation restriction while the Java application is being executed, when the API is called, it is checked whether the process is a restriction target process (step ST36). That is, it is checked whether the process is for the resource described in the constraint condition. If it is determined in step ST36 that the process is not a restriction target process, the sequence returns to step ST35 and the above-described process is repeated. On the other hand, if it is determined in step ST36 that the process is a restriction target process, the environmental state is then acquired (step ST37). That is, the Java application execution unit 12 acquires the environmental state from the navigation service 10.

次いで、実行可能であるかどうかが調べられる(ステップST38)。すなわち、Javaアプリ実行部12は、ステップST37で取得した環境状態に基づいて、Javaアプリを実行可能であるかどうかを調べる。このステップST39で、実行可能であることが判断されると、シーケンスはステップST35に戻り、上述した処理が繰り返される。一方、ステップST38において、実行可能でないことが判断されると、処理はエラー終了する。   Next, it is checked whether or not it is feasible (step ST38). That is, the Java application execution unit 12 checks whether or not the Java application can be executed based on the environmental state acquired in step ST37. If it is determined in step ST39 that execution is possible, the sequence returns to step ST35, and the above-described processing is repeated. On the other hand, if it is determined in step ST38 that execution is not possible, the process ends in error.

以上説明したように、この発明の実施の形態2によれば、受信したJavaアプリに制約条件が付属されているため、カーナビゲーション装置側でJavaアプリの動作環境を知ることができる。したがって、カーナビゲーション装置のユーザに対して、どの状態であればJavaアプリが実行可能であるかどうかを通知することができるので、例えば、カーメーカから取得したJavaアプリAは走行中にも動作可能であるが、コンテンツプロバイダから取得したJavaアプリBは停車中にしか使えないことをユーザに知らせることで、走行中にJavaアプリBを動作させようという意思を起こさせないようにすることができる。   As described above, according to the second embodiment of the present invention, since the received Java application is attached with the constraint condition, the operating environment of the Java application can be known on the car navigation device side. Therefore, since it is possible to notify the user of the car navigation device in which state the Java application can be executed, for example, the Java application A acquired from the car manufacturer can be operated while traveling. However, by notifying the user that the Java application B acquired from the content provider can only be used while the vehicle is stopped, it is possible to prevent the intention to operate the Java application B while driving.

また、サービスアプリCを実行するためにはライブラリCが必要でサービスアプリDが実行中でなければならないといったソフトウェアリソースや、サービスアプリCを実行するためにはハードディスクの空き容量とメモリの空き容量がどれだけ必要で、CPUの負荷は何%以下であるといったハードウェアリソースの詳細な動作環境をユーザに通知することができる。   Further, in order to execute the service application C, software resources that the library C is necessary and the service application D must be running, and in order to execute the service application C, there are free hard disk space and free memory space. It is possible to notify the user of the detailed operating environment of the hardware resources such as how much is necessary and the load of the CPU is below what percentage.

なお、通信機器61を介して受信された証明情報は、CPU使用率、メモリ使用量、ハードディスク使用量、バス使用率およびネットワーク使用可否の少なくとも1つを含むリソース状態と、走行中または停止中を表す走行状態、走行速度、位置、向き、高度、温度、湿度、天気および道路種別の少なくとも1つを含む環境状態とを含むように構成できる。この構成によれば、証明情報として環境状態とハードウェアのリソース状態が含まれているので、車載情報システムで安全に動作可能な状態を決定できる。   The certification information received via the communication device 61 includes a resource state including at least one of a CPU usage rate, a memory usage rate, a hard disk usage rate, a bus usage rate, and a network usage status, and a running or stopped status. It can be configured to include a traveling state, a traveling speed, a position, an orientation, an altitude, temperature, humidity, weather, and an environmental state including at least one of road types. According to this configuration, since the environmental state and the hardware resource state are included as the certification information, it is possible to determine a state in which the vehicle-mounted information system can operate safely.

また、通信機器61を介して受信された証明情報は、アプリケーションプログラムインタフェースの使用可否、ライブラリの使用可否および特定プログラムの実行状態の少なくとも1つを含むリソース状態と、走行中または停止中を表す走行状態、走行速度、位置、向き、高度、温度、湿度、天気および道路種別の少なくとも1つを含む環境状態とを含むように構成できる。この構成によれば、証明情報として環境状態とソフトウェアのリソース状態が含まれているので、車載情報システムで安全に動作可能な状態を決定できる。   Further, the certification information received via the communication device 61 includes a resource state including at least one of availability of an application program interface, availability of a library, and an execution state of a specific program, and travel indicating that the vehicle is traveling or stopped. And an environmental state including at least one of a state, traveling speed, position, direction, altitude, temperature, humidity, weather, and road type. According to this configuration, since the environmental state and the software resource state are included as the certification information, it is possible to determine a state in which the vehicle-mounted information system can operate safely.

実施の形態3.
この発明の実施の形態3は、証明情報に提供元情報を埋め込むようにしたものである。この実施の形態3は、Javaアプリ動作テストプログラム20の証明部23における証明方法とカーナビゲーション装置のソフトウェア構成が、実施の形態1と異なる。以下では、実施の形態1と相違する部分を中心に説明する。
Embodiment 3 FIG.
In Embodiment 3 of the present invention, provider information is embedded in certification information. The third embodiment is different from the first embodiment in the certification method in the certification unit 23 of the Java application operation test program 20 and the software configuration of the car navigation device. Below, it demonstrates focusing on the part which is different from Embodiment 1. FIG.

プログラム提供装置を構成する動作テストプログラム20の証明部23は、Javaアプリの提供元の情報を含んだ証明情報を生成する。例えば、証明部23が持っている鍵は提供元毎に異なっており、この鍵を用いて署名や暗号化などの処理を行うことにより提供元の情報を埋め込むことができる。   The certification unit 23 of the operation test program 20 constituting the program providing apparatus generates certification information including information on the provider of the Java application. For example, the key possessed by the certification unit 23 differs for each provider, and the provider information can be embedded by performing processing such as signature and encryption using this key.

図9は、この発明の実施の形態3に係るカーナビゲーション装置のソフトウェア構成を示す図である。このソフトウェア構成は、実施の形態2に係るカーナビゲーション装置のソフトウェア構成に、制約条件リスト16が追加されて構成されている。この制約条件リスト16は、この発明の制約条件取得手段に対応し、鍵の種類に応じた動作を規定している。   FIG. 9 is a diagram showing a software configuration of the car navigation device according to Embodiment 3 of the present invention. This software configuration is configured by adding a restriction condition list 16 to the software configuration of the car navigation device according to the second embodiment. This restriction condition list 16 corresponds to the restriction condition acquisition means of the present invention and defines an operation according to the type of key.

次に、上述したようにして生成された証明情報とJavaアプリをカーナビゲーション装置で実行する動作を、図10に示すフローチャートを参照しながら説明する。   Next, the operation of executing the proof information generated as described above and the Java application by the car navigation device will be described with reference to the flowchart shown in FIG.

まず、Javaアプリが取得される(ステップST41)。具体的には、カーナビゲーション装置は、通信機器61(図1参照)を介してJavaアプリおよび証明情報を受信する。この場合の通信機器61は、この発明に係る車載情報システムのプログラム受信手段に対応し、この通信機器61で受信するJavaアプリはプログラムに対応する。受信されたJavaアプリは、Javaアプリ11としてセットされる。   First, a Java application is acquired (step ST41). Specifically, the car navigation device receives the Java application and the certification information via the communication device 61 (see FIG. 1). The communication device 61 in this case corresponds to the program receiving means of the in-vehicle information system according to the present invention, and the Java application received by the communication device 61 corresponds to the program. The received Java application is set as the Java application 11.

次いで、Javaアプリの認証が行われる(ステップST42)。すなわち、Javaアプリ認証部14は、受け取った証明情報を認証する。ここで、Javaアプリ認証部14における認証方法としては、Javaアプリ認証部14にあらかじめ用意されている提供元に応じた鍵を用いて暗号化されている証明情報を復号する方法を用いることができる。この時、復号に成功した鍵によってJavaアプリの提供元を判別することができる。   Next, the Java application is authenticated (step ST42). That is, the Java application authentication unit 14 authenticates the received certification information. Here, as an authentication method in the Java application authentication unit 14, a method of decrypting proof information encrypted using a key corresponding to a provider prepared in advance in the Java application authentication unit 14 can be used. . At this time, the provider of the Java application can be determined by the key that has been successfully decrypted.

次いで、認証が正当(OK)であるかどうかが調べられる(ステップST43)。すなわち、Javaアプリ実行部12は、Javaアプリ認証部14から送られてきた認証結果が不正であるかどうかを調べる。このステップST43において、認証が不正であることが判断されると、Javaアプリを実行せずに処理はエラー終了する。一方、ステップST43において、認証が正当であることが判断されると、次いで、Javaアプリの提供元の判別結果に基づき制約条件リスト16から該当する制約条件を決定される(ステップST44)。すなわち、Javaアプリ実行部12は、認証結果が正当であることを判断すると、制約条件リスト16から制約条件を取得してJavaアプリ実行制限部15に送る。   Next, it is checked whether or not the authentication is valid (OK) (step ST43). In other words, the Java application execution unit 12 checks whether the authentication result sent from the Java application authentication unit 14 is invalid. If it is determined in step ST43 that the authentication is invalid, the process ends in error without executing the Java application. On the other hand, if it is determined in step ST43 that the authentication is valid, then the corresponding constraint condition is determined from the constraint condition list 16 based on the determination result of the Java application provider (step ST44). That is, when the Java application execution unit 12 determines that the authentication result is valid, the Java application execution unit 12 acquires the restriction condition from the restriction condition list 16 and sends the restriction condition to the Java application execution restriction unit 15.

次いで、Javaアプリが実行される(ステップST45)。すなわち、Javaアプリ実行部12は、Javaアプリを実行する。この時、Javaアプリ実行制限部15は、ステップST44において決定された制約条件に従ってJavaアプリの動作を制限する。なお、アプリの終了処理がコールされることによって、アプリは正常に終了する。   Next, the Java application is executed (step ST45). That is, the Java application execution unit 12 executes the Java application. At this time, the Java application execution restriction unit 15 restricts the operation of the Java application in accordance with the restriction condition determined in step ST44. Note that the application is normally terminated when the application termination process is called.

次いで、Javaアプリ実行中の動作制限として、APIがコールされると、制限対象処理であるかどうかが調べられる(ステップST46)。すなわち、制約条件に記載されたリソースに対する処理であるかどうかが調べられる。このステップST46において、制限対象処理でないことが判断されると、シーケンスはステップST45に戻り、上述した処理が繰り返される。一方、ステップST46において、制限対象処理であることが判断されると、次いで、環境状態が取得される(ステップST47)。すなわち、Javaアプリ実行部12はナビゲーションサービス10から環境状態を取得する。   Next, when the API is called as an operation restriction during execution of the Java application, it is checked whether the process is a restriction target process (step ST46). That is, it is checked whether the process is for the resource described in the constraint condition. If it is determined in step ST46 that the process is not a restriction target process, the sequence returns to step ST45 and the above-described process is repeated. On the other hand, if it is determined in step ST46 that the process is a restriction target process, the environmental state is then acquired (step ST47). That is, the Java application execution unit 12 acquires the environmental state from the navigation service 10.

次いで、実行可能であるかどうかが調べられる(ステップST48)。すなわち、Javaアプリ実行部12は、ステップST47で取得した環境状態に基づいて、Javaアプリを実行可能であるかどうかを調べる。このステップST48で、実行可能であることが判断されると、シーケンスはステップST45に戻り、上述した処理が繰り返される。一方、ステップST48において、実行可能でないことが判断されると、処理はエラー終了する。   Next, it is checked whether or not it is feasible (step ST48). That is, the Java application execution unit 12 checks whether or not the Java application can be executed based on the environmental state acquired in step ST47. If it is determined in this step ST48 that execution is possible, the sequence returns to step ST45, and the above-described processing is repeated. On the other hand, if it is determined in step ST48 that execution is not possible, the process ends in error.

以上説明したように、この発明の実施の形態3によれば、証明情報としてあらかじめ車載情報システムが所持している制約条件リストの中から提供元を指定するように構成したので、提供元に応じた動作制限ができる。また、Javaアプリには提供元情報のみが記載されているため、詳細な動作設定がなされることによって制約条件のデータが多い場合でも通信に要するコストを抑えることができる。また、動作テストプログラムを配布した後にJavaアプリの動作環境の変更が生じた場合、カーナビゲーション装置に記録されている制約条件リストを更新することで対応できる。   As described above, according to the third embodiment of the present invention, since the provider is designated from the restriction condition list possessed by the in-vehicle information system in advance as proof information, Can be restricted. In addition, since only the provider information is described in the Java application, the cost required for communication can be suppressed even when there is a lot of constraint data by performing detailed operation settings. In addition, when the operation environment of the Java application changes after the operation test program is distributed, it can be dealt with by updating the restriction condition list recorded in the car navigation device.

また、上述した実施の形態3では、提供元を特定する方法として鍵の種別を用いたが、提供元を示す情報、例えばID、URL、名称などを記録したデータをJavaアプリに付属するように構成することができる。   In the third embodiment described above, the key type is used as a method for specifying the provider, but data indicating the provider, such as ID, URL, and name, is attached to the Java application. Can be configured.

なお、上述した実施の形態1〜3では、開発対象のプログラムをJavaアプリとして説明したが、開発対象のプログラムは、例えばC言語などによって記述されるネイティブアプリケーションとすることもできる。また、実施の形態1〜3に係るプログラム提供装置は、パーソナルコンピュータ上で実行されるプログラムであるので、このプログラムを記録媒体に格納して配布するように構成できる。   In the first to third embodiments described above, the development target program has been described as a Java application. However, the development target program may be a native application described in, for example, C language. Further, since the program providing apparatus according to the first to third embodiments is a program executed on a personal computer, the program can be configured to be stored in a recording medium and distributed.

この発明の実施の形態1に係る車載情報システムとしてのカーナビゲーション装置のハードウェア構成を示すブロック図である。It is a block diagram which shows the hardware constitutions of the car navigation apparatus as a vehicle-mounted information system which concerns on Embodiment 1 of this invention. 図1に示すカーナビゲーション装置のソフトウェア構成を示す図である。It is a figure which shows the software structure of the car navigation apparatus shown in FIG. この発明の実施の形態1に係るプログラム提供装置の主要な部分の構成を示す図である。It is a figure which shows the structure of the principal part of the program provision apparatus which concerns on Embodiment 1 of this invention. この発明の実施の形態1に係る車載情報システムとしてのカーナビゲーション装置で使用される制約条件を説明するための図である。It is a figure for demonstrating the constraint conditions used with the car navigation apparatus as an in-vehicle information system concerning Embodiment 1 of this invention. この発明の実施の形態1に係るプログラム提供装置によって、開発されたJavaアプリが実行される手順を示すフローチャートである。It is a flowchart which shows the procedure in which the developed Java application is performed by the program provision apparatus which concerns on Embodiment 1 of this invention. この発明の実施の形態1に係る車載情報システムとしてのカーナビゲーション装置によって、プログラム提供装置から提供されたJavaアプリが実行される手順を示すフローチャートである。It is a flowchart which shows the procedure in which the Java application provided from the program provision apparatus is performed by the car navigation apparatus as an in-vehicle information system concerning Embodiment 1 of this invention. この発明の実施の形態2に係る車載情報システムとしてのカーナビゲーション装置のソフトウェア構成を示す図である。It is a figure which shows the software structure of the car navigation apparatus as a vehicle-mounted information system which concerns on Embodiment 2 of this invention. この発明の実施の形態2に係る車載情報システムとしてのカーナビゲーション装置によって、プログラム提供装置から提供されたJavaアプリが実行される手順を示すフローチャートである。It is a flowchart which shows the procedure in which the Java application provided from the program provision apparatus is performed by the car navigation apparatus as an in-vehicle information system concerning Embodiment 2 of this invention. この発明の実施の形態3に係る車載情報システムとしてのカーナビゲーション装置のソフトウェア構成を示す図である。It is a figure which shows the software structure of the car navigation apparatus as a vehicle-mounted information system which concerns on Embodiment 3 of this invention. この発明の実施の形態3に係る車載情報システムとしてのカーナビゲーション装置によって、プログラム提供装置から提供されたJavaアプリが実行される手順を示すフローチャートである。It is a flowchart which shows the procedure in which the Java application provided from the program provision apparatus is performed by the car navigation apparatus as an in-vehicle information system concerning Embodiment 3 of this invention.

符号の説明Explanation of symbols

1 CPU、2 ROM、3 RAM、4 操作部インタフェース、5 出力部インタフェース、6 通信部インタフェース、7 外部記録装置インタフェース、10 ナビゲーションサービス、10a JavaVMインタフェースモジュール、11 Javaアプリ、12 Javaアプリ実行部、12a ナビゲーションサービスインタフェースモジュール、13 Java管理部、14 Javaアプリ認証部、15 Javaアプリ実行制限部、16 制約条件リスト、20 動作テストプログラム、21 制約条件保持部、22 Javaアプリ実行制限部、23 証明部、31 ナビ画面出力ウインドウ、
32 操作入力ウインドウ、33 ナビ環境設定ウインドウ、41 リモコン、42 マイク、51 ディスプレイ、52 スピーカ、61 通信機器、62 車内LAN、71 外部記録装置ドライブ、110 ナビゲーションサービス、111 Javaアプリ本体、112 Javaアプリ実行部、113 Javaアプリ管理部、114 Javaアプリ認証部。
1 CPU, 2 ROM, 3 RAM, 4 operation unit interface, 5 output unit interface, 6 communication unit interface, 7 external recording device interface, 10 navigation service, 10a JavaVM interface module, 11 Java application, 12 Java application execution unit, 12a Navigation service interface module, 13 Java management unit, 14 Java application authentication unit, 15 Java application execution restriction unit, 16 restriction condition list, 20 operation test program, 21 restriction condition holding part, 22 Java application execution restriction part, 23 certification part, 31 Navigation screen output window,
32 operation input window, 33 navigation environment setting window, 41 remote control, 42 microphone, 51 display, 52 speaker, 61 communication device, 62 in-vehicle LAN, 71 external recording device drive, 110 navigation service, 111 Java application main body, 112 Java application execution Part, 113 Java application management part, 114 Java application authentication part.

Claims (14)

車載情報システムのハードウェア環境およびソフトウェア環境をエミュレートするエミュレート手段と、
車載情報システム用に開発されたプログラムを受け取るプログラム受信手段と、
車載情報システムのリソース状態および環境状態を制約条件として保持する制約条件保持手段と、
前記制約条件保持手段に保持された制約条件に基づいて前記プログラムの動作を制限するプログラム実行制限手段と、
前記エミュレート手段によって提供されるリソースを用いて、前記プログラム受信手段から受け取ったプログラムを、前記プログラム実行制限手段による制限にしたがって実行するプログラム実行手段
とを備えたプログラム提供装置。
An emulation means for emulating the hardware environment and software environment of the in-vehicle information system;
Program receiving means for receiving a program developed for an in-vehicle information system;
Restriction condition holding means for holding the resource state and environmental state of the in-vehicle information system as restriction conditions;
Program execution restriction means for restricting the operation of the program based on the restriction conditions held in the restriction condition holding means;
A program providing device comprising: a program execution unit that executes a program received from the program reception unit according to a restriction by the program execution restriction unit, using a resource provided by the emulation unit.
制約条件保持手段に保持された制約条件に含まれるリソース状態は、CPU使用率、メモリ使用量、ハードディスク使用量、バス使用率およびネットワーク使用可否の少なくとも1つを含み、
環境状態は、走行中または停止中を表す走行状態、走行速度、位置、向き、高度、温度、湿度、天気および道路種別の少なくとも1つを含む
ことを特徴とする請求項1記載のプログラム提供装置。
The resource state included in the constraint condition held in the constraint condition holding means includes at least one of CPU usage rate, memory usage rate, hard disk usage rate, bus usage rate, and network availability,
2. The program providing apparatus according to claim 1, wherein the environmental state includes at least one of a traveling state indicating traveling or stopped, traveling speed, position, direction, altitude, temperature, humidity, weather, and road type. .
制約条件保持手段に保持された制約条件に含まれるリソース状態は、アプリケーションプログラムインタフェースの使用可否、ライブラリの使用可否、特定プログラムの実行状態の少なくとも1つを含み、
環境状態は、走行中または停止中を表す走行状態、走行速度、位置、向き、高度、温度、湿度、天気および道路種別の少なくとも1つを含む
ことを特徴とする請求項1記載のプログラム提供装置。
The resource state included in the constraint condition held in the constraint condition holding means includes at least one of the availability of the application program interface, the availability of the library, and the execution state of the specific program,
2. The program providing apparatus according to claim 1, wherein the environmental state includes at least one of a traveling state indicating traveling or stopped, traveling speed, position, direction, altitude, temperature, humidity, weather, and road type. .
制約条件保持手段に保持されている制約条件を更新する制約条件更新手段を備えたことを特徴とする請求項1記載のプログラム提供装置。   2. The program providing apparatus according to claim 1, further comprising constraint condition updating means for updating the constraint condition held in the constraint condition holding means. プログラム実行手段によってプログラムが正常に実行されたことを証明する証明情報を生成するプログラム証明手段と、
前記プログラム証明手段によって正常に実行されたことが証明されたプログラムおよび前記プログラム証明手段で生成された証明情報を保存するプログラム保存手段
とを備えたことを特徴とする請求項1記載のプログラム提供装置。
Program proof means for generating proof information for proof that the program has been successfully executed by the program execution means;
2. The program providing apparatus according to claim 1, further comprising: a program proved to be executed normally by the program certifying means and a program storage means for saving proof information generated by the program proof means. .
プログラム実行手段によってプログラムが正常に実行されたことを証明する証明情報を生成するプログラム証明手段と、
前記プログラム証明手段によって正常に実行されたことが証明されたプログラムおよび前記プログラム証明手段で生成された証明情報を外部へ送信するプログラム送信手段
とを備えたことを特徴とする請求項1記載のプログラム提供装置。
Program proof means for generating proof information for proof that the program has been successfully executed by the program execution means;
2. The program according to claim 1, further comprising: a program proved to be executed normally by the program certification means; and a program transmission means for sending the certification information generated by the program certification means to the outside. Providing device.
プログラム証明手段は、
CPU使用率、メモリ使用量、ハードディスク使用量、バス使用率およびネットワーク使用可否の少なくとも1つを含むリソース状態と、
走行中または停止中を表す走行状態、走行速度、位置、向き、高度、温度、湿度、天気および道路種別の少なくとも1つを含む環境状態とを含む制約条件に応じて証明情報を生成することを特徴とする請求項5または請求項6記載のプログラム提供装置。
Program proof means
A resource state including at least one of CPU usage, memory usage, hard disk usage, bus usage, and network availability;
Generating proof information according to a constraint condition including a traveling state indicating traveling or stopping, traveling speed, position, orientation, altitude, temperature, humidity, weather, and an environmental state including at least one of road types. 7. The program providing apparatus according to claim 5, wherein the program providing apparatus is characterized.
プログラム証明手段は、
アプリケーションプログラムインタフェースの使用可否、ライブラリの使用可否、特定プログラムの実行状態の少なくとも1つを含むリソース状態と、
走行中または停止中を表す走行状態、走行速度、位置、向き、高度、温度、湿度、天気および道路種別の少なくとも1つを含む環境状態とを含む制約条件に応じて証明情報を生成することを特徴とする請求項5または請求項6記載のプログラム提供装置。
Program proof means
Resource status including at least one of application program interface availability, library availability, specific program execution status;
Generating proof information according to a constraint condition including a traveling state indicating traveling or stopping, traveling speed, position, orientation, altitude, temperature, humidity, weather, and an environmental state including at least one of road types. 7. The program providing apparatus according to claim 5, wherein the program providing apparatus is characterized.
プログラム証明手段は、プログラム提供元に応じて証明情報を生成する
ことを特徴とする請求項5または請求項6記載のプログラム提供装置。
7. The program providing apparatus according to claim 5, wherein the program certification means generates certification information according to a program provider.
車載情報システムのハードウェア環境およびソフトウェア環境をエミュレートするエミュレート手段と、
車載情報システム用に開発されたプログラムを受け取るプログラム受信手段と、
車載情報システムのリソース状態および環境状態を制約条件として保持する制約条件保持手段と、
前記制約条件保持手段に保持された制約条件に基づいて前記プログラムの動作を制限するプログラム実行制限手段と、
前記エミュレート手段によって提供されるリソースを用いて、前記プログラム受信手段から受け取ったプログラムを、前記プログラム実行制限手段による制限にしたがって実行するプログラム実行手段
とを備えたコンピュータで実行可能なプログラムを記憶した記憶媒体。
An emulation means for emulating the hardware environment and software environment of the in-vehicle information system;
Program receiving means for receiving a program developed for an in-vehicle information system;
Restriction condition holding means for holding the resource state and environmental state of the in-vehicle information system as restriction conditions;
Program execution restriction means for restricting the operation of the program based on the restriction conditions held in the restriction condition holding means;
A computer-executable program having program execution means for executing a program received from the program reception means according to a restriction by the program execution restriction means using a resource provided by the emulation means is stored. Storage medium.
車載情報システム用に開発されたプログラムおよび証明情報を受信するプログラム受信手段と、
前記プログラム受信手段から受け取った証明情報を解読して認証するプログラム認証手段と、
前記プログラム認証手段から受け取った認証結果に応じて前記プログラムの動作を制限するプログラム実行制限手段と、
前記プログラム受信手段から受け取ったプログラムを、前記プログラム実行制限手段による制限にしたがって実行するプログラム実行手段
とを備えた車載情報システム。
A program receiving means for receiving a program and certification information developed for an in-vehicle information system;
Program authentication means for decrypting and authenticating the certification information received from the program receiving means;
Program execution restriction means for restricting the operation of the program according to the authentication result received from the program authentication means;
An in-vehicle information system comprising: a program execution unit that executes a program received from the program reception unit according to a restriction by the program execution restriction unit.
プログラム受信手段で受信された証明情報は、CPU使用率、メモリ使用量、ハードディスク使用量、バス使用率およびネットワーク使用可否の少なくとも1つを含むリソース状態と、
走行中または停止中を表す走行状態、走行速度、位置、向き、高度、温度、湿度、天気および道路種別の少なくとも1つを含む環境状態
とを含むことを特徴とする請求項11記載の車載情報システム。
The certification information received by the program receiving means includes a resource state including at least one of a CPU usage rate, a memory usage amount, a hard disk usage amount, a bus usage rate, and a network availability.
The in-vehicle information according to claim 11, further comprising: a traveling state representing traveling or stopped, a traveling speed, a position, a direction, an altitude, temperature, humidity, weather, and an environmental state including at least one of road types. system.
プログラム受信手段で受信された証明情報は、アプリケーションプログラムインタフェースの使用可否、ライブラリの使用可否および特定プログラムの実行状態の少なくとも1つを含むリソース状態と、
走行中または停止中を表す走行状態、走行速度、位置、向き、高度、温度、湿度、天気および道路種別の少なくとも1つを含む環境状態
とを含むことを特徴とする請求項11記載の車載情報システム。
The certification information received by the program receiving means includes a resource state including at least one of availability of the application program interface, availability of the library, and execution state of the specific program,
The in-vehicle information according to claim 11, further comprising: a traveling state representing traveling or stopped, a traveling speed, a position, a direction, an altitude, temperature, humidity, weather, and an environmental state including at least one of road types. system.
車載情報システムのリソース状態および環境状態を含む制約条件を取得する制約条件取得手段を備え、
プログラム認証手段から得られる認証結果は、前記制約条件取得手段で取得された制約条件を特定する情報を含み、
プログラム実行制限手段は、前記認証結果と前記制約条件取得手段で取得された制約条件に応じてプログラムの動作を変更する
ことを特徴とする請求項11記載の車載情報システム。
Provided with a constraint condition acquisition means for acquiring a constraint condition including the resource status and environmental status of the in-vehicle information system,
The authentication result obtained from the program authentication means includes information for specifying the constraint condition acquired by the constraint condition acquisition means,
The in-vehicle information system according to claim 11, wherein the program execution restriction unit changes an operation of the program according to the authentication result and the constraint condition acquired by the constraint condition acquisition unit.
JP2005249872A 2005-04-21 2005-08-30 Program provision device and onboard information system Pending JP2007065893A (en)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2005249872A JP2007065893A (en) 2005-08-30 2005-08-30 Program provision device and onboard information system
CN2006800090463A CN101146697B (en) 2005-04-21 2006-02-08 Program providing device, storage medium, and on-vehicle information system
PCT/JP2006/302181 WO2006114925A1 (en) 2005-04-21 2006-02-08 Program providing device, storage medium, and on-vehicle information system
DE112006000536T DE112006000536T5 (en) 2005-04-21 2006-02-08 Program delivery device, storage medium and information system mounted on a motor vehicle
US11/883,241 US8136157B2 (en) 2005-04-21 2006-02-08 Program providing device, storage medium, and vehicle-mounted information system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005249872A JP2007065893A (en) 2005-08-30 2005-08-30 Program provision device and onboard information system

Related Child Applications (2)

Application Number Title Priority Date Filing Date
JP2011068375A Division JP2011146068A (en) 2011-03-25 2011-03-25 Program providing device and in-vehicle information system
JP2011148222A Division JP5409714B2 (en) 2011-07-04 2011-07-04 In-vehicle information system

Publications (1)

Publication Number Publication Date
JP2007065893A true JP2007065893A (en) 2007-03-15

Family

ID=37928045

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005249872A Pending JP2007065893A (en) 2005-04-21 2005-08-30 Program provision device and onboard information system

Country Status (1)

Country Link
JP (1) JP2007065893A (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012064103A (en) * 2010-09-17 2012-03-29 Konica Minolta Business Technologies Inc Information processor, log recording method and log recording program
WO2012070604A1 (en) * 2010-11-24 2012-05-31 トヨタ自動車 株式会社 Vehicle-mounted application management device and vehicle-mounted application management method
WO2013132647A1 (en) * 2012-03-09 2013-09-12 パイオニア株式会社 Information processing device, information processing method, recording medium on which information processing program is recorded, and information processing program
WO2013180280A1 (en) * 2012-05-31 2013-12-05 クラリオン株式会社 On-board information system, information terminal, and application execution method
JP2015040758A (en) * 2013-08-21 2015-03-02 株式会社デンソー Integrated navigation device
KR20160060269A (en) * 2014-11-20 2016-05-30 주식회사 만도 Diagnostic system and method for vehicle
JP2016533049A (en) * 2013-06-06 2016-10-20 ボストン サイエンティフィック ニューロモデュレイション コーポレイション Method and system for allowing a mobile device to communicate with a medical device
JP2018124690A (en) * 2017-01-31 2018-08-09 クラリオン株式会社 Information terminal and information providing system
KR102085899B1 (en) * 2018-12-10 2020-03-06 현대오트론 주식회사 Operating Monitoring Method For CPU Of Vehicle ECU, And Monitoring Unit

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002149409A (en) * 2000-11-07 2002-05-24 Alpine Electronics Inc System for managing function of electronic equipment
JP2003283494A (en) * 2002-03-27 2003-10-03 Ntt Docomo Inc Access control method of communication terminal, certification program providing device, management device and communication terminal
JP2003337630A (en) * 2002-05-17 2003-11-28 Ntt Docomo Inc Communication terminal, program, recording medium, access control method of the communication terminal, and method of providing content
JP2005075314A (en) * 2003-09-04 2005-03-24 Hitachi Ltd On-vehicle device and service center system
JP2005088779A (en) * 2003-09-18 2005-04-07 Xanavi Informatics Corp On-vehicle information terminal unit

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002149409A (en) * 2000-11-07 2002-05-24 Alpine Electronics Inc System for managing function of electronic equipment
JP2003283494A (en) * 2002-03-27 2003-10-03 Ntt Docomo Inc Access control method of communication terminal, certification program providing device, management device and communication terminal
JP2003337630A (en) * 2002-05-17 2003-11-28 Ntt Docomo Inc Communication terminal, program, recording medium, access control method of the communication terminal, and method of providing content
JP2005075314A (en) * 2003-09-04 2005-03-24 Hitachi Ltd On-vehicle device and service center system
JP2005088779A (en) * 2003-09-18 2005-04-07 Xanavi Informatics Corp On-vehicle information terminal unit

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012064103A (en) * 2010-09-17 2012-03-29 Konica Minolta Business Technologies Inc Information processor, log recording method and log recording program
WO2012070604A1 (en) * 2010-11-24 2012-05-31 トヨタ自動車 株式会社 Vehicle-mounted application management device and vehicle-mounted application management method
JP2012111317A (en) * 2010-11-24 2012-06-14 Toyota Motor Corp Device and method for management of vehicle-mounted application
JPWO2013132647A1 (en) * 2012-03-09 2015-07-30 パイオニア株式会社 Information processing apparatus, information processing method, recording medium on which information processing program is recorded, and information processing program
WO2013132647A1 (en) * 2012-03-09 2013-09-12 パイオニア株式会社 Information processing device, information processing method, recording medium on which information processing program is recorded, and information processing program
WO2013180280A1 (en) * 2012-05-31 2013-12-05 クラリオン株式会社 On-board information system, information terminal, and application execution method
JPWO2013180280A1 (en) * 2012-05-31 2016-01-21 クラリオン株式会社 In-vehicle information system, information terminal, application execution method
US9684523B2 (en) 2012-05-31 2017-06-20 Clarion Co., Ltd. In-vehicle information system, information terminal, and application execution method
JP2016533049A (en) * 2013-06-06 2016-10-20 ボストン サイエンティフィック ニューロモデュレイション コーポレイション Method and system for allowing a mobile device to communicate with a medical device
JP2015040758A (en) * 2013-08-21 2015-03-02 株式会社デンソー Integrated navigation device
KR20160060269A (en) * 2014-11-20 2016-05-30 주식회사 만도 Diagnostic system and method for vehicle
KR102246322B1 (en) 2014-11-20 2021-04-29 주식회사 만도 Diagnostic system and method for vehicle
JP2018124690A (en) * 2017-01-31 2018-08-09 クラリオン株式会社 Information terminal and information providing system
KR102085899B1 (en) * 2018-12-10 2020-03-06 현대오트론 주식회사 Operating Monitoring Method For CPU Of Vehicle ECU, And Monitoring Unit
US11422916B2 (en) 2018-12-10 2022-08-23 Hyundai Autoever Corp. Usage amount monitoring method and monitoring unit of electronic control unit for vehicle

Similar Documents

Publication Publication Date Title
JP2007065893A (en) Program provision device and onboard information system
TWI674533B (en) Apparatus of authorizing an operation to be performed on a targeted computing device
JP5828081B2 (en) Information processing apparatus, information processing method, and program distribution system
JP5821034B2 (en) Information processing apparatus, virtual machine generation method, and application distribution system
TWI648649B (en) Mobile communication device and method of operating same
US8589691B1 (en) Self-signed certificates for computer application signatures
RU2542930C2 (en) Booting and configuring subsystem securely from non-local storage
US8392724B2 (en) Information terminal, security device, data protection method, and data protection program
WO2009107349A1 (en) Information processing device
JP4093494B2 (en) System and method for controlling access to confidential information
WO2015024253A1 (en) Permission management method and apparatus, and terminal
CN103620556A (en) Binding applications to device capabilities
CN112612327B (en) Access control method, device and system of docking station and electronic equipment
WO2006114925A1 (en) Program providing device, storage medium, and on-vehicle information system
KR20170140630A (en) Method and server for authenticating an application integrity
CN101146697B (en) Program providing device, storage medium, and on-vehicle information system
JP5409714B2 (en) In-vehicle information system
Costantino et al. A vehicle firmware security vulnerability: an IVI exploitation
US10778411B1 (en) System for interexchange of state data among disparate block chains
JP2011146068A (en) Program providing device and in-vehicle information system
CN111142902B (en) Method and device for protecting upgrading firmware of processor and vehicle
JP2007329731A (en) Method, system, and program for certificate update
KR101294866B1 (en) Development environment management system and development environment management method thereof
JP5305864B2 (en) Information processing apparatus, information processing method, and information processing program
CN111859316A (en) Application program reinforcing method, device, equipment and storage medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070912

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20070918

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20080624

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101102

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110125

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110325

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110426

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110704

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20110707