JP6451963B1 - Communications system - Google Patents
Communications system Download PDFInfo
- Publication number
- JP6451963B1 JP6451963B1 JP2017206618A JP2017206618A JP6451963B1 JP 6451963 B1 JP6451963 B1 JP 6451963B1 JP 2017206618 A JP2017206618 A JP 2017206618A JP 2017206618 A JP2017206618 A JP 2017206618A JP 6451963 B1 JP6451963 B1 JP 6451963B1
- Authority
- JP
- Japan
- Prior art keywords
- unit
- web browser
- web
- native application
- application unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Abstract
【課題】ウェブブラウザを介したネイティブアプリケーションとウェブアプリケーション間の通信において、非正規のアクセスを防止する方法、通信システムおよび通信プログラムを提供する。【解決手段】ネイティブアプリケーションとウェブアプリケーションは、任意の方法によって共通鍵を共有し、以降のウェブブラウザを介したネイティブアプリケーションとウェブアプリケーション間の通信を、共有した共通鍵によって暗号化し、保護する。【選択図】図1Provided are a method, a communication system, and a communication program for preventing unauthorized access in communication between a native application and a web application via a web browser. A native application and a web application share a common key by an arbitrary method, and communication between the native application and the web application via the web browser thereafter is encrypted and protected by the shared common key. [Selection] Figure 1
Description
本発明はウェブアプリケーションとネイティブアプリケーションがウェブブラウザを介して安全に通信する方法、通信システムおよび通信プログラムに関するものである。The present invention relates to a method, a communication system, and a communication program for securely communicating a web application and a native application via a web browser.
ウェブアプリケーションの需要が高まる中で、ウェブアプリケーション上で高度な処理を行う事が求められている。ウェブアプリケーション上で高度な処理を行う方法として、ウェブアプリケーションにまだ広く利用されていない機能の一つは、実行可能コード(すなわち、JavaScriptコード)が、ウェブブラウザが動作している同じ端末上で動作するネイティブアプリケーションにアクセスできるようにする機能である。As demand for web applications increases, it is required to perform advanced processing on web applications. As a method for performing advanced processing on a web application, one of the functions not yet widely used in web applications is that executable code (that is, JavaScript code) runs on the same terminal where the web browser is running. It is a function that allows you to access the native application you want.
ネイティブアプリケーションとウェブアプリケーションがウェブブラウザを介して通信する場合、ウェブブラウザとウェブアプリケーション間、またはウェブブラウザとネイティブアプリケーション間の通信はSSL通信により暗号化が可能であったが、ウェブブラウザ上に展開されるHTMLコンテンツの情報はユーザーが容易に改竄できるため、通信の改竄傍受が可能であった。
本発明の目的は、ウェブアプリケーションと、ウェブブラウザと同端末上で実行されるネイティブアプリケーションの通信において、非正規のウェブアプリケーションとの通信や、第三者のなりすましによる通信の改竄傍受から、通信内容を保護し、また不正な通信による命令を排除する方法を提供することである。When a native application and a web application communicate with each other via a web browser, the communication between the web browser and the web application or between the web browser and the native application can be encrypted by SSL communication, but is deployed on the web browser. Since the HTML content information can be easily tampered by the user, tampering of communication can be intercepted.
The object of the present invention is to communicate between a web application and a native application executed on the same terminal as the web browser, from communication with an unauthorized web application or from tampering with communication by impersonation of a third party. Is provided, and a method for eliminating commands caused by unauthorized communication is provided.
ウェブブラウザと同じ端末上で実行されるネイティブアプリケーションに対するウェブアプリケーションからのアクセスについて、ウェブブラウザが実行可能コードを含むコンテンツを受信することと、ウェブブラウザが実行可能コードを実行することと、ウェブブラウザがネイティブアプリケーションと通信を行うことと、ウェブブラウザがウェブアプリケーションと通信を行うことと、ネイティブアプリケーションとウェブアプリケーションが共通鍵を共有することと、ネイティブアプリケーションが電文を暗号化して送信することと、ウェブアプリケーションが電文を暗号化して送信することで、通信内容を保護することができる。For access from a web application to a native application that runs on the same device as the web browser, the web browser receives content containing executable code, the web browser executes executable code, and the web browser Communicating with the native application, the web browser communicating with the web application, the native application and the web application sharing a common key, the native application encrypting and sending a message, and the web application By encrypting and transmitting a message, communication contents can be protected.
ウェブブラウザと同端末上で実行されるネイティブアプリケーションとウェブアプリケーションの通信において、非正規のアクセスによって、通信内容を改竄傍受されることを防止する方法は、ネイティブアプリケーションが電文の暗号化または復号化を可能にする事を含み、ネイティブアプリケーションがウェブブラウザと通信するウェブサーバーを組み込み、ウェブサーバーが電文の暗号化または復号化を可能にする事を含み、その結果、ネイティブアプリケーションとウェブアプリケーションの通信において、通信内容の保護、または不正な通信による命令を排除することが出来る。
たとえば、ウェブアプリケーション提供者が、提供するウェブアプリケーションに対応したネイティブアプリケーションを発行し、ウェブアプリケーションのユーザーがネイティブアプリケーションをインストール済みの場合は、ウェブブラウザとウェブアプリケーションが通信を行い、ウェブブラウザとネイティブアプリケーションが通信を行うことで、ウェブアプリケーションとネイティブアプリケーションの相互通信が可能となる。
または、第三者が発行するネイティブアプリケーションの通信機能に、ウェブアプリケーションが対応することで、ウェブアプリケーションとネイティブアプリケーションの相互通信が可能となる。
さらにウェブアプリケーションとネイティブアプリケーションの双方が同一の共通鍵を共有し、共有した共通鍵によって通信内容を暗号化または復号化することによって、通信の内容を保護することが出来る。In a communication between a native application and a web application executed on the same terminal as the web browser, the method of preventing tampering and interception of the communication contents due to unauthorized access is to allow the native application to encrypt or decrypt a message. Including a web application that the native application communicates with the web browser, allowing the web server to encrypt or decrypt messages, so that in communication between the native application and the web application, It is possible to protect the contents of communication or eliminate the command due to unauthorized communication.
For example, if a web application provider issues a native application corresponding to the web application to be provided and the web application user has installed the native application, the web browser communicates with the web application, and the web browser and native application By performing communication, mutual communication between the web application and the native application becomes possible.
Alternatively, the web application corresponds to the communication function of the native application issued by a third party, so that the web application and the native application can communicate with each other.
Furthermore, both the web application and the native application share the same common key, and the communication content can be protected by encrypting or decrypting the communication content using the shared common key.
図1は、ネイティブアプリケーションとウェブアプリケーションの通信において、安全な通信を提供するためのシステムの実施形態を例示する機能ブロック図である。クライアント端末100は、ワールドワイドウェブにアクセスすることが可能で、かつネットワーク150を通じてウェブサーバー141に接続されうる任意のコンピュータデバイスでありうる。ネットワーク150は、HTTP、またはHTTPS、またはウェブソケット、またはその他いかなる通信プロトコルでもありうる。FIG. 1 is a functional block diagram illustrating an embodiment of a system for providing secure communication in communication between a native application and a web application. The client terminal 100 can be any computer device that can access the World Wide Web and can be connected to the web server 141 through the network 150. The network 150 can be HTTP, HTTPS, or web socket, or any other communication protocol.
ウェブアプリケーション131は、1つ以上のウェブページ103の形のコンテンツを保持し、配信することができる。HTMLコンテンツ103はHTMLコンテンツを含む様々なウェブベースのコンテンツを含むことができる。ネットワーク150は、任意の広域ネットワークまたはローカルエリアネットワークでありうるし、また、ワールドワイドウェブでありうる。The
クライアント端末100は、図1において、ワールドワイドウェブにアクセス可能な簡略化されたデバイスとして示されている。当業者は、クライアント端末100が、簡略化のために図1では省略されている多くのその他の構成要素を有していることを理解する。クライアント端末100は、ネイティブアプリケーション101とウェブブラウザ102を含む。
ネイティブアプリケーション101は、ウェブアプリケーション131または第三者のサーバーからクライアント端末100にダウンロードされ、実行される。ネイティブアプリケーション101は、ひとつまたは複数の、任意のモジュールまたはアプリケーションでありうる。The client terminal 100 is shown in FIG. 1 as a simplified device that can access the World Wide Web. Those skilled in the art will appreciate that the client terminal 100 has many other components that are omitted in FIG. 1 for simplicity. The client terminal 100 includes a
The
組込ウェブサーバー113は、任意のポートでネットワーク104の接続を待ち受けすることができる。
組込ウェブサーバー113は任意の制御フローに基づき、電文復号化部111、または電文暗号化部112のいづれかと通信し、任意の情報をネットワーク104を通じてネイティブアプリケーション通信部121に送信することができる。
また、組込ウェブサーバー113は任意の制御フローに基づき、ネイティブアプリケーション通信部121と、任意の情報を相互に通信することができる。The embedded web server 113 can listen to the connection of the network 104 at an arbitrary port.
The embedded web server 113 can communicate with either the message decryption unit 111 or the message encryption unit 112 based on an arbitrary control flow, and transmit arbitrary information to the native
The embedded web server 113 can communicate arbitrary information with the native
共通鍵114は、AES、またはDES、またはPBEを共通鍵暗号化方式として用いて作成された共通鍵データである。The
共通鍵114と共通鍵145は、任意の方法によって共有された、同一の共通鍵データである。The
クライアント端末100とウェブアプリケーション131が任意の方法で共通鍵データを交換し、共通鍵114と共通鍵145が設置されると、以降はネイティブアプリケーション101とウェブアプリケーション131の間で、共通鍵暗号化方式による暗号化通信が可能となる。When the client terminal 100 and the
電文暗号化部112は、組込ウェブサーバー113から送信された電文を、共通鍵114を使用して、前記共通鍵暗号化方式を用いて暗号化し、組込ウェブサーバー113に送信することができる。
暗号化した電文は、ネットワーク104を通じてネイティブアプリケーション通信部121に送信し、ネイティブアプリケーション通信部121からウェブアプリケーション通信部122に送信し、ウェブアプリケーション通信部122からネットワーク150を通じて、ウェブサーバー141に送信する。The message encryption unit 112 can encrypt the message transmitted from the embedded web server 113 using the common key encryption method using the
The encrypted message is transmitted to the native
電文復号化部111は、組込ウェブサーバー113から送信された電文を、共通鍵114を使用して、前記共通鍵暗号化方式を用いて復号化し、組込ウェブサーバー113に送信することができる。The message decryption unit 111 can decrypt the message transmitted from the embedded web server 113 using the common key encryption method using the
ネットワーク104は、ネイティブアプリケーション通信部121をクライアントとしたHTTP、またはHTTPS、またはウェブソケット、またはWebRTCの通信チャンネルでありうる。The network 104 may be an HTTP, HTTPS, web socket, or WebRTC communication channel with the native
組込ウェブサーバー113は、ネットワーク104がHTTPまたはHTTPSである場合、Cross−Origin Resource Sharingを実装して他ドメインとの通信を許可する。When the network 104 is HTTP or HTTPS, the embedded web server 113 implements Cross-Origin Resource Sharing and permits communication with other domains.
ウェブブラウザ102は、HTML5準拠のウェブサーバとのウェブソケット接続が可能であるHTML5準拠ウェブブラウザである。The web browser 102 is an HTML5-compliant web browser capable of web socket connection with an HTML5-compliant web server.
HTMLコンテンツ103は、HTMLまたはJavaScriptコードを含みうる。
また、JavaScriptコードはネイティブアプリケーション通信部121とウェブアプリケーション通信部122を構成する。The HTML content 103 can include HTML or JavaScript code.
Further, the JavaScript code constitutes a native
HTMLコンテンツ103は、HTMLコンテンツ発行部142からネットワーク151を通じてダウンロードされる。
その際の通信方法はHTTP、またはHTTPSである。The HTML content 103 is downloaded from the HTML content issuing unit 142 through the network 151.
The communication method at that time is HTTP or HTTPS.
HTMLコンテンツ103は、ウェブブラウザ102によって表示される際に、ネイティブアプリケーション通信部121とウェブアプリケーション通信部122を実行可能な状態に構成する。When the HTML content 103 is displayed by the web browser 102, the native
ネイティブアプリケーション通信部121は、任意の制御フローに基づきネットワーク104の接続を組込ウェブサーバー113に要求する。The native
ネイティブアプリケーション通信部121は、ネットワーク104を通じて、組込ウェブサーバー113と任意の情報を相互に通信することができる。
その際の通信フォーマットは、JSON、またはXML、またはバイナリデータ、または任意の通信フォーマットでありうる。The native
The communication format at that time may be JSON, XML, binary data, or any communication format.
ネイティブアプリケーション通信部121は、ウェブアプリケーション通信部122と任意の情報を相互に通信することが出来る。
その際の通信方法は実行可能コード上での情報の交換、またはCOOKIE、またはHTML5準拠のデータストレージ、またはネイティブアプリケーション通信部121とウェブアプリケーション通信部122が相互にアクセス可能な任意の情報交換手段でありうる。
その際の通信フォーマットは、JSON、またはXML、またはバイナリデータ、または任意の通信フォーマットでありうる。The native
The communication method at that time is exchange of information on executable code, COOKIE or HTML5 compliant data storage, or any information exchange means that the native
The communication format at that time may be JSON, XML, binary data, or any communication format.
ウェブアプリケーション通信部122は、ネットワーク150を通じてウェブサーバー141と通信することができる。
ウェブアプリケーション通信部122は、任意の制御フローに基づき、ネットワーク150を通じて、AJAX、またはIFRAME、または任意のHTML5準拠の通信方法を用いて、ウェブサーバー141と任意の情報を相互に通信することができる。
その際の通信フォーマットは、JSON、またはXML、またはバイナリデータ、または任意の通信フォーマットでありうる。The web
The web
The communication format at that time may be JSON, XML, binary data, or any communication format.
ネットワーク150は、インターネット、またはイントラネット、または任意のネットワークでありうる。The network 150 can be the Internet, an intranet, or any network.
ネットワーク151は、インターネット、またはイントラネット、または任意のネットワークでありうる。The network 151 can be the Internet, an intranet, or any network.
ウェブアプリケーション131は、任意のコンピューターデバイス上に構築された、任意のプログラムである。
ウェブアプリケーション131はひとつまたは複数の任意のモジュールまたはアプリケーションで構成されうる。The
The
ウェブサーバー141は、ApacheまたはNginxまたはIISまたは任意のウェブサーバープログラム上で動作する、任意のプログラムである。The web server 141 is any program that runs on Apache, Nginx, IIS, or any web server program.
HTMLコンテンツ発行部142は、HTTP、またはHTTPSによるウェブブラウザ102の要求に基づき、ネットワーク151を通じて、ウェブブラウザ102にHTMLコンテンツ103を送信する。
HTMLコンテンツ発行部142は、ウェブブラウザ102によりアクセス可能な、URLまたは任意のアドレスとして表現される。The HTML content issuing unit 142 transmits the HTML content 103 to the web browser 102 via the network 151 based on a request from the web browser 102 using HTTP or HTTPS.
The HTML content issuing unit 142 is expressed as a URL or an arbitrary address accessible by the web browser 102.
ウェブサーバー141は、HTTP、またはHTTPS、またはウェブソケット、またはWebRTC、または任意のプロトコルにより、任意のポートでウェブアプリケーション通信部122の接続を待ち受けすることができる。The web server 141 can wait for a connection of the web
ウェブサーバー141は任意の制御フローに基づき、電文復号化部143、電文暗号化部144、のいづれかと通信し、任意の情報をネットワーク150を通じてウェブアプリケーション通信部122に送信することができる。The web server 141 can communicate with any one of the
電文暗号化部144は、ウェブサーバー141から送信された電文を、共通鍵145を使用して、前記共通鍵暗号化方式を用いて暗号化し、ウェブサーバー141に送信することができる。
暗号化した電文は、ネットワーク150を通じて、ウェブアプリケーション通信部122に送信し、ウェブアプリケーション通信部122からネイティブアプリケーション通信部121に送信し、ネイティブアプリケーション通信部121からネットワーク104を通じて、組込ウェブサーバー113に送信する。The
The encrypted message is transmitted to the web
電文復号化部143は、ウェブサーバー141から送信された電文を、共通鍵145を使用して、前記共通鍵暗号化方式を用いて復号化し、ウェブサーバー141に送信することができる。The
図2は、ネイティブアプリケーション101からウェブアプリケーション131に、共通鍵を送信する場合の実施形態を説明するブロック図である。FIG. 2 is a block diagram illustrating an embodiment when a common key is transmitted from the
共通鍵発行部211は、前記共通鍵暗号化方式を用いて共通鍵114を発行することができる。The common key issuing unit 211 can issue the
公開鍵213は、DSA暗号またはRSA暗号を用いて作成された1024〜4096ビットの長さの公開鍵データでありうる。
また、公開鍵213は、秘密鍵222と対応したものであり、秘密鍵222の発行時に公開鍵213が共に発行される。
また、公開鍵213は、任意のタイミングでネイティブアプリケーション101に設定される。
また、公開鍵213は、共通鍵暗号化部212がアクセス可能な任意のストレージに格納される。The
The
The
The
共通鍵暗号化部212は、公開鍵213を使用して、共通鍵114を暗号化する。The common
共通鍵暗号化部212は、暗号化した共通鍵を、組込ウェブサーバー113を通じ、ネットワーク104を通じて、ネイティブアプリケーション通信部121に送信する。The common
ネイティブアプリケーション通信部121は、暗号化した共通鍵を、ウェブアプリケーション通信部122に送信する。The native
ウェブアプリケーション通信部122は、暗号化した共通鍵を、ネットワーク150を通じ、ウェブサーバー141に送信する。The web
ウェブサーバー141は、暗号化した共通鍵を、共通鍵復号化部221に送信する。The web server 141 transmits the encrypted common key to the common
共通鍵復号化部221は、暗号化した共通鍵を、秘密鍵222を使用して復号化し、共通鍵145として設置する。The common
図3は、ウェブアプリケーション131からネイティブアプリケーション101に、共通鍵を送信する場合の実施形態を説明するブロック図である。FIG. 3 is a block diagram illustrating an embodiment when a common key is transmitted from the
共通鍵発行部322は、前記共通鍵暗号化方式を用いて共通鍵145を発行することができる。The common key issuing unit 322 can issue the
公開鍵323は、DSA暗号またはRSA暗号を用いて作成された1024〜4096ビットの長さの公開鍵データでありうる。
また、公開鍵323は、秘密鍵312と対応したものであり、秘密鍵312の発行時に公開鍵323が共に発行される。
また、公開鍵323は、任意のタイミングでウェブアプリケーション131に設定される。
また、公開鍵323は、共通鍵暗号化部321がアクセス可能な任意のストレージに格納される。The
The
The
The
共通鍵暗号化部321は、公開鍵323を使用して、共通鍵145を暗号化する。The common
共通鍵暗号化部321は、暗号化した共通鍵を、ウェブサーバー141を通じ、ネットワーク150を通じて、ウェブアプリケーション通信部122に送信する。The common
ウェブアプリケーション通信部122は、暗号化した共通鍵を、ネイティブアプリケーション通信部121に送信する。The web
ネイティブアプリケーション通信部121は、暗号化した共通鍵を、ネットワーク104を通じ、組込ウェブサーバー113に送信する。The native
組込ウェブサーバー113は、暗号化した共通鍵を、共通鍵復号化部311に送信する。The embedded web server 113 transmits the encrypted common key to the common key decryption unit 311.
共通鍵復号化部311は、暗号化した共通鍵を、秘密鍵312を使用して復号化し、共通鍵114として設置する。The common key decryption unit 311 decrypts the encrypted common key using the
図3は、ネイティブアプリケーション101とウェブアプリケーション131へ、パスワードを使用して共通鍵を設定する場合の実施形態を説明するブロック図である。FIG. 3 is a block diagram illustrating an embodiment when a common key is set using a password for the
ユーザー401は、ネイティブアプリケーション101およびウェブアプリケーション131の利用者である。A user 401 is a user of the
パスワード設定402は、ユーザー401からパスワードを受け取る。
ユーザー401からパスワードを受け取る方法は、ネイティブアプリケーション101に備え付けられた設定ダイアログからの入力、またはネイティブアプリケーション101と関連付けられた設定ファイル、または任意の設定方法でありうる。The password setting 402 receives a password from the user 401.
A method of receiving a password from the user 401 may be input from a setting dialog provided in the
パスワード設定402は、ユーザー401から受け取ったパスワードを使用して、PBEにより共通鍵114を生成して、ネイティブアプリケーション101に設置する。The password setting 402 uses the password received from the user 401 to generate the
パスワード設定403は、ユーザー401からパスワードを受け取る。
ユーザー401からパスワードを受け取る方法は、ウェブアプリケーション131に備え付けられた設定フォームからの入力、またはウェブアプリケーション131と関連付けられた設定ファイル、または任意の設定方法でありうる。The password setting 403 receives a password from the user 401.
A method of receiving a password from the user 401 may be input from a setting form provided in the
パスワード設定403は、ユーザー401から受け取ったパスワードを使用して、PBEにより共通鍵145を生成して、ウェブアプリケーション131に設置する。The password setting 403 uses the password received from the user 401 to generate a
図4は、ネイティブアプリケーション101からウェブアプリケーション131へ、共通鍵を送信する場合の実施形態を説明するフローチャートである。FIG. 4 is a flowchart illustrating an embodiment in the case where a common key is transmitted from the
ウェブブラウザ102とネイティブアプリケーションの101の間で接続が確立された後、任意のタイミングで共通鍵発行501が実行され、共通鍵114が発行される。After the connection is established between the web browser 102 and the
共通鍵114は、ネイティブアプリケーション101からアクセス可能なストレージに保持される。
共通鍵114が発行された後、公開鍵213を使用して共通鍵暗号化502が実行される。The
After the
共通鍵暗号化502が実行された後、暗号化済共通鍵返却503によって、ウェブブラウザ102に暗号化済共通鍵が返却される。After the common key encryption 502 is executed, the encrypted common key is returned to the web browser 102 by the encrypted common
次に、暗号化済共通鍵返却504によって、ウェブアプリケーション131に暗号化済共通鍵が返却される。Next, the encrypted common key is returned to the
ウェブアプリケーション131が暗号化済共通鍵を受け取った後、秘密鍵222を使用して、共通鍵復号化505が実行され、復号化された共通鍵145が取得される。
共通鍵145は、ウェブアプリケーション131からアクセス可能なストレージに保持される。After the
The
図5は、ウェブアプリケーション131からネイティブアプリケーション101へ、共通鍵を送信する場合の実施形態を説明するフローチャートである。FIG. 5 is a flowchart illustrating an embodiment in the case where a common key is transmitted from the
ウェブブラウザ102とウェブアプリケーション131の間で接続が確立された後、任意のタイミングで共通鍵発行601が実行され、共通鍵145が発行される。After the connection is established between the web browser 102 and the
共通鍵145は、ウェブアプリケーション131からアクセス可能なストレージに保持される。
共通鍵145が発行された後、公開鍵323を使用して共通鍵暗号化602が実行される。The
After the
共通鍵暗号化602が実行された後、暗号化済共通鍵返却603によって、ウェブブラウザ102に暗号化済共通鍵が返却される。After the common key encryption 602 is executed, the encrypted common
次に、暗号化済共通鍵返却604によって、ネイティブアプリケーション101に暗号化済共通鍵が返却される。Next, the encrypted common key is returned to the
ネイティブアプリケーション101が暗号化済共通鍵を受け取った後、秘密鍵312を使用して、共通鍵復号化605が実行され、復号化された共通鍵114が取得される。
共通鍵114は、ネイティブアプリケーション101からアクセス可能なストレージに保持される。After the
The
図6は、ネイティブアプリケーション101からウェブアプリケーション131に、暗号化電文を送信するための実施形態を説明するフローチャートである。FIG. 6 is a flowchart illustrating an embodiment for transmitting an encrypted message from the
処理開始701は、ネイティブアプリケーション101からウェブアプリケーション131に電文を送信する必要があるタイミングで、実行される。The process start 701 is executed at a timing when a message needs to be transmitted from the
電文発行702では、任意の制御フローに基づき、送信が必要な任意の情報の電文を構築する。
電文フォーマットは、JSON、またはXML、またはバイナリ、または任意のフォーマットでありうる。In the
The message format can be JSON, XML, or binary, or any format.
電文暗号化703では、共通鍵114を使用して、電文を暗号化する。
暗号化の方法は前記共通鍵暗号化方式でありうる。In the
The encryption method may be the common key encryption method.
暗号化済電文送信704では、ネイティブアプリケーション101からウェブブラウザ102に暗号化済電文を送信する。In the
暗号化済電文送信705では、ウェブブラウザ102からウェブアプリケーション131に暗号化済電文を送信する。In
電文復号化706では、共通鍵145を使用して、電文を復号化する。In the message decryption 706, the message is decrypted using the
電文受信707では、電文を任意のプログラムに送信する。In the message reception 707, the message is transmitted to an arbitrary program.
図7は、ウェブアプリケーション131からネイティブアプリケーション101に、暗号化電文を送信するための実施形態を説明するフローチャートである。FIG. 7 is a flowchart illustrating an embodiment for transmitting an encrypted message from the
処理開始801は、ウェブアプリケーション131からネイティブアプリケーション101に電文を送信する必要があるタイミングで、実行される。The process start 801 is executed at a timing when a message needs to be transmitted from the
電文発行802では、任意の制御フローに基づき、送信が必要な任意の情報を任意の電文フォーマットで構築する。
電文フォーマットは、JSON、またはXML、またはバイナリ、または任意のフォーマットでありうる。In the message issue 802, arbitrary information that needs to be transmitted is constructed in an arbitrary message format based on an arbitrary control flow.
The message format can be JSON, XML, or binary, or any format.
電文暗号化803では、共通鍵145を使用して、電文を暗号化する。
暗号化の方法は前記共通鍵暗号化方式でありうる。In the message encryption 803, the message is encrypted using the
The encryption method may be the common key encryption method.
暗号化済電文送信804では、ウェブアプリケーション131からウェブブラウザ102に暗号化済電文を送信する。In the
暗号化済電文送信805では、ウェブブラウザ102からネイティブアプリケーション101に暗号化済電文を送信する。In encrypted message transmission 805, the encrypted message is transmitted from the web browser 102 to the
電文復号化806では、共通鍵114を使用して、電文を復号化する。In the message decryption 806, the message is decrypted using the
電文受信807では、電文を任意のプログラムに送信する。In message reception 807, the message is transmitted to an arbitrary program.
Claims (3)
クライアント端末がCPUおよびメモリおよびネットワークインターフェースを備え、The client terminal includes a CPU, a memory, and a network interface,
前記クライアント端末はウェブブラウザ部と、前記ウェブブラウザ部と同じ端末上で実行されるネイティブアプリケーション部を備え、The client terminal includes a web browser unit and a native application unit that is executed on the same terminal as the web browser unit,
コンピューターデバイスがCPUおよびメモリおよびネットワークインターフェースを備え、The computer device comprises a CPU and memory and a network interface;
前記コンピューターデバイスはウェブアプリケーション部を備え、The computer device includes a web application unit,
前記クライアント端末が備えるネットワークインターフェースと前記コンピューターデバイスが備えるネットワークインターフェースが、ネットワークにより接続され、A network interface provided in the client terminal and a network interface provided in the computer device are connected by a network,
前記ウェブブラウザ部は実行可能コードを含むコンテンツを受信することと、The web browser portion receives content including executable code;
前記ウェブブラウザ部が前記ウェブブラウザ部上で前記実行可能コードを実行することと、The web browser portion executing the executable code on the web browser portion;
前記ネイティブアプリケーション部が所定のポートで前記ウェブブラウザ部からの接続を待ち受けし、前記ウェブブラウザ部が、前記ウェブブラウザ部上で実行される前記実行可能コードによって、前記ウェブブラウザ部と前記ネイティブアプリケーション部の通信を確立することと、The native application unit waits for a connection from the web browser unit at a predetermined port, and the web browser unit and the native application unit are executed by the executable code executed on the web browser unit. Establishing communication with
前記ウェブアプリケーション部が所定のポートで前記ウェブブラウザ部からの接続を待ち受けし、前記ウェブブラウザ部が、前記ウェブブラウザ部上で実行される前記実行可能コードによって、前記クライアント端末および前記コンピューターデバイスのネットワークインターフェースを使用して、前記ウェブブラウザ部と前記ウェブアプリケーション部の通信を確立することと、The web application unit waits for a connection from the web browser unit at a predetermined port, and the web browser unit is connected to the network of the client terminal and the computer device by the executable code executed on the web browser unit. Establishing communication between the web browser portion and the web application portion using an interface;
前記ウェブブラウザ部が、前記ウェブブラウザ部上で実行される前記実行可能コードによって、前記ネイティブアプリケーション部と前記ウェブアプリケーション部の情報を交換し、前記ウェブブラウザ部経由で前記ウェブアプリケーション部から前記ネイティブアプリケーション部への通信、または、その逆の通信を可能に構成することと、The web browser unit exchanges information between the native application unit and the web application unit by the executable code executed on the web browser unit, and the native application unit communicates with the native application via the web browser unit. Configuring the communication to the department or vice versa,
前記ネイティブアプリケーション部と前記ウェブアプリケーション部が共通鍵を共有し、前記クライアント端末および前記コンピューターデバイスのメモリに保存することと、The native application unit and the web application unit share a common key and stored in a memory of the client terminal and the computer device;
前記ネイティブアプリケーション部が共有された前記共通鍵を使用し、電文を暗号化し、暗号化済電文を前記ウェブブラウザ部に送信し、前記ウェブブラウザ部は前記ネイティブアプリケーション部から受信した前記暗号化済電文を、前記ウェブアプリケーション部に送信し、前記ウェブアプリケーション部が前記コンピューターデバイス上のメモリに保存された前記共通鍵を使用して、前記ウェブアプリケーション部が前記ウェブブラウザ部から受信した前記暗号化済電文を復号化することと、Using the common key shared by the native application unit, encrypting a message, transmitting an encrypted message to the web browser unit, and the web browser unit receiving the encrypted message received from the native application unit Is transmitted to the web application unit, and the web application unit uses the common key stored in the memory on the computer device to receive the encrypted message received from the web browser unit by the web application unit. Decrypting
前記ウェブアプリケーション部が共有された前記共通鍵を使用し、電文を暗号化し、暗号化済電文を前記ウェブブラウザ部に送信し、前記ウェブブラウザ部は前記ウェブアプリケーション部から受信した前記暗号化済電文を、前記ネイティブアプリケーション部に送信し、前記ネイティブアプリケーション部が前記クライアント端末上のメモリに保存された前記共通鍵を使用して、前記ネイティブアプリケーション部が前記ウェブブラウザ部から受信した前記暗号化済電文を復号化することを特徴とする、通信システム。The web application unit uses the shared key shared, encrypts a message, transmits an encrypted message to the web browser unit, and the web browser unit receives the encrypted message received from the web application unit. Is transmitted to the native application unit, and the native application unit uses the common key stored in the memory on the client terminal to receive the encrypted message received from the web browser unit by the native application unit. The communication system characterized by decoding.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017206618A JP6451963B1 (en) | 2017-10-09 | 2017-10-09 | Communications system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017206618A JP6451963B1 (en) | 2017-10-09 | 2017-10-09 | Communications system |
Publications (2)
Publication Number | Publication Date |
---|---|
JP6451963B1 true JP6451963B1 (en) | 2019-01-16 |
JP2019071598A JP2019071598A (en) | 2019-05-09 |
Family
ID=65020464
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017206618A Active JP6451963B1 (en) | 2017-10-09 | 2017-10-09 | Communications system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6451963B1 (en) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008068976A1 (en) * | 2006-12-04 | 2008-06-12 | Nec Corporation | Network system, server, client, and communication method in network system |
JP2010026889A (en) * | 2008-07-23 | 2010-02-04 | Mitsubishi Electric Corp | Web application server, terminal, and web application system |
JP2010072916A (en) * | 2008-09-18 | 2010-04-02 | Hitachi Software Eng Co Ltd | Data protection system and data protection method |
JP2015510287A (en) * | 2011-12-29 | 2015-04-02 | インテル コーポレイション | How to restrict corporate digital information within a corporate boundary |
JP2016517571A (en) * | 2013-03-13 | 2016-06-16 | クゥアルコム・インコーポレイテッドQualcomm Incorporated | System and method for enabling web property access to native applications |
-
2017
- 2017-10-09 JP JP2017206618A patent/JP6451963B1/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008068976A1 (en) * | 2006-12-04 | 2008-06-12 | Nec Corporation | Network system, server, client, and communication method in network system |
JP2010026889A (en) * | 2008-07-23 | 2010-02-04 | Mitsubishi Electric Corp | Web application server, terminal, and web application system |
JP2010072916A (en) * | 2008-09-18 | 2010-04-02 | Hitachi Software Eng Co Ltd | Data protection system and data protection method |
JP2015510287A (en) * | 2011-12-29 | 2015-04-02 | インテル コーポレイション | How to restrict corporate digital information within a corporate boundary |
JP2016517571A (en) * | 2013-03-13 | 2016-06-16 | クゥアルコム・インコーポレイテッドQualcomm Incorporated | System and method for enabling web property access to native applications |
Non-Patent Citations (3)
Title |
---|
松田規ほか: "検索可能暗号の高速化とWebアプリケーションへの適用方式に関する提案", マルチメディア,分散,協調とモバイル(DICOMO2013)シンポジウム論文集, vol. 第2013巻,第2号, JPN6018010764, 3 July 2013 (2013-07-03), JP, pages 2067 - 2074 * |
海野雪絵ほか: "Webアプリケーションから利用者端末内情報へのコンテキストアウェアなアクセス制御手法の提案", 情報処理学会研究報告, JPN6018010765, 15 April 2013 (2013-04-15), JP, pages 1 - 6 * |
渡邉充隆: "生産性と機能性を向上させるスマートフォン向けネイティブアプリとウェブアプリのハイブリッド構造", 技報 UNISYS TECHNOLOGY REVIEW, vol. 第30巻,第1号, JPN6018010766, 30 June 2010 (2010-06-30), JP, pages 53 - 62 * |
Also Published As
Publication number | Publication date |
---|---|
JP2019071598A (en) | 2019-05-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US12047362B2 (en) | Systems and methods for secure multi-party communications using a proxy | |
CN109088889B (en) | SSL encryption and decryption method, system and computer readable storage medium | |
US10887291B2 (en) | Secure data distribution of sensitive data across content delivery networks | |
JP2020502668A (en) | Secure acquisition of sensitive data over a network | |
EP3556072A1 (en) | Secure data egress for sensitive data across networks | |
US20090285118A1 (en) | Proxy terminal, service device, proxy terminal communication path setting method, and server device communication path setting method | |
US20180351737A1 (en) | Communication apparatus, communication system, key sharing method, and computer program product | |
CN103428221A (en) | Safety logging method, system and device of mobile application | |
CN106506552B (en) | HTTP request transmission method and device | |
CN107404469B (en) | Session safety processing system, device, apparatus and method | |
CN107294935B (en) | Virtual private network access method, device and system | |
WO2016112580A1 (en) | Service processing method and device | |
KR101839048B1 (en) | End-to-End Security Platform of Internet of Things | |
KR101541165B1 (en) | Mobile message encryption method, computer readable recording medium recording program performing the method and download server storing the method | |
JP2012100206A (en) | Cryptographic communication relay system, cryptographic communication relay method and cryptographic communication relay program | |
WO2016134631A1 (en) | Processing method for openflow message, and network element | |
WO2024158886A1 (en) | Non-custodial techniques for data encryption and decryption | |
CN113922976A (en) | Equipment log transmission method and device, electronic equipment and storage medium | |
JP6451963B1 (en) | Communications system | |
CN104301102A (en) | Widget communication method, device and system | |
CN111934995B (en) | Internet of things gateway system | |
US20170289195A1 (en) | Communication control device, communication control method, recording medium having communication control program stored thereon, and information system | |
CN104901974A (en) | Safety hypertext transport method | |
JP2002183094A (en) | Cooperative system for log-in among a plurality of servers, client device, log-in management device, server device and storage medium | |
KR20170008514A (en) | Method and system for reproducing contents by secure acquiring decryption key for encrypted contents |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20171009 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20171009 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20180116 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180403 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20180521 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180704 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180725 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180910 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20181126 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20181127 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6451963 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |