JP6603632B2 - Apiシステム及びデータ暗号化方法 - Google Patents

Apiシステム及びデータ暗号化方法 Download PDF

Info

Publication number
JP6603632B2
JP6603632B2 JP2016159544A JP2016159544A JP6603632B2 JP 6603632 B2 JP6603632 B2 JP 6603632B2 JP 2016159544 A JP2016159544 A JP 2016159544A JP 2016159544 A JP2016159544 A JP 2016159544A JP 6603632 B2 JP6603632 B2 JP 6603632B2
Authority
JP
Japan
Prior art keywords
api
application
encryption key
data
enabler
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2016159544A
Other languages
English (en)
Other versions
JP2018029241A (ja
Inventor
大輔 原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2016159544A priority Critical patent/JP6603632B2/ja
Publication of JP2018029241A publication Critical patent/JP2018029241A/ja
Application granted granted Critical
Publication of JP6603632B2 publication Critical patent/JP6603632B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、APIリクエスト又はAPIレスポンスに含めるデータを暗号化する技術に関する。
現在、サービスを構成する機能をできる限り小さい粒度の部品に分離・素材化し、その機能をAPI(Application Program Interface)として提供するAPI提供システムが考案されている。このようなAPI提供システムは、例えば、アプリケーションが用いる各機能をそれぞれ提供する複数のイネーブラ装置と、各機能のAPIを提供するAPIゲートウェイ装置と、を備えて構成される。
上記API提供システムは、アプリケーション開発者に提供され、アプリケーション開発者は、そのAPI提供システムを用いて上記APIを活用したアプリケーションを開発する。そのため、APIゲートウェイ装置は、開発者ポータルサイトの機能を含む。
ここで、開発されるアプリケーションの動作について概説する。例えば、イネーブラ装置Aが提供する機能aを利用するアプリケーションが開発された場合、そのアプリケーションは、上記機能aを要求するためのAPIリクエストをAPIゲートウェイ装置へ送信する。APIゲートウェイ装置は、APIリクエストで要求された機能aを持つイネーブラ装置Aへ該当のAPIを介してAPIリクエストを転送する。その後、そのイネーブラ装置Aは、受信したAPIリクエストに応じて自身が備える機能aを要求元のアプリケーション装置に提供する。
特許第4902633号公報 特許第5309364号公報
アプリケーションがAPIゲートウェイ装置へ送信するAPIリクエストには、例えば、要求機能を識別する機能ID、アプリケーションを認証するためのAPIキー等に加えて、アプリケーションの利用者等に関する個人情報等の秘匿データが含まれる場合がある。例えば、イネーブラ装置Aがユーザ単位に住所録を管理する機能aを提供し、イネーブラ装置Bが電話発信・切断する機能bを提供する場合において、住所録から連絡を取りたい相手の電話番号を取得して電話発信するアプリケーションが開発された場合、そのアプリケーションは、その相手の電話番号をAPIリクエストに含めてAPIゲートウェイ装置へ送信することになる。また、APIリクエストのみならず、APIゲートウェイ装置がアプリケーションへ送信するAPIレスポンスにも秘匿データが含まれる場合がある。
しかし、現時点において、API利用者であるアプリケーションとAPI提供システムとの間で送受信される秘匿データに対する暗号化キーを双方で共有する仕組みが確立されていない。そのため、アプリケーションとAPI提供システムとの間で独自に暗号化キーを管理・配布しなければならかった。上記特許文献1,2には上記API提供システムに類似するシステムが考案されているが、その仕組みについては言及されていない。
本発明は、上記事情を鑑みてなされたものであり、APIリクエスト又はAPIレスポンスに含めるデータに対して効率的にセキュリティを担保することを目的とする。
以上の課題を解決するため、請求項1に係るAPIシステムは、APIリクエストに応じて機能を提供するイネーブラ装置と、前記イネーブラ装置のAPIを提供するAPIゲートウェイ装置と、前記APIリクエストを送信するアプリケーションを備えたアプリケーション装置と、を備えたAPIシステムにおいて、前記イネーブラ装置は、自身宛てのAPIリクエストに含めるデータを暗号化するための暗号化キーを前記APIゲートウェイ装置に登録する登録部を備え、前記APIゲートウェイ装置は、前記暗号化キーを前記イネーブラ装置の識別子に関連付けて記憶する記憶部と、前記アプリケーションからのアクセスに応じて前記記憶部に登録された前記暗号化キーを前記アプリケーションへ送信する送信部と、を備え、前記アプリケーションは、前記APIゲートウェイ装置から受信した前記暗号化キーでAPIリクエストに含めるデータを暗号化する暗号化部と、暗号化した当該データを当該APIリクエストのボディ部に含めて前記APIゲートウェイ装置へ送信する送信部と、を備える、ことを要旨とする。
請求項2に係るAPIシステムは、APIリクエストに応じて機能を提供するイネーブラ装置と、前記イネーブラ装置のAPIを提供するAPIゲートウェイ装置と、前記APIリクエストを送信するアプリケーションを備えたアプリケーション装置と、を備えたAPIシステムにおいて、前記アプリケーションは、自身宛てのAPIレスポンス又はAPIリクエストに含めるデータを暗号化するための暗号化キーを前記APIゲートウェイ装置に登録する登録部を備え、前記APIゲートウェイ装置は、前記暗号化キーを前記アプリケーションの識別子に関連付けて記憶する記憶部と、前記イネーブラ装置からのアクセスに応じて前記記憶部に登録された前記暗号化キーを前記イネーブラ装置へ送信する送信部と、を備え、前記イネーブラ装置は、前記APIゲートウェイ装置から受信した前記暗号化キーでAPIレスポンス又はAPIリクエストに含めるデータを暗号化する暗号化部と、暗号化した当該データを当該APIレスポンス又はAPIリクエストのボディ部に含めて前記APIゲートウェイ装置へ送信する送信部と、を備える、ことを要旨とする。
請求項3に係るデータ暗号化方法は、APIリクエストに応じて機能を提供するイネーブラ装置と、前記イネーブラ装置のAPIを提供するAPIゲートウェイ装置と、前記APIリクエストを送信するアプリケーションを備えたアプリケーション装置と、を備えたAPIシステムで行うデータ暗号化方法において、前記イネーブラ装置に、自身宛てのAPIリクエストに含めるデータを暗号化するための暗号化キーを前記APIゲートウェイ装置に登録するステップを実行させ、前記APIゲートウェイ装置に、前記暗号化キーを前記イネーブラ装置の識別子に関連付けて記憶部に記憶するステップと、前記アプリケーションからのアクセスに応じて前記記憶部に登録された前記暗号化キーを前記アプリケーションへ送信するステップと、を実行させ、前記アプリケーションに、前記APIゲートウェイ装置から受信した前記暗号化キーでAPIリクエストに含めるデータを暗号化するステップと、暗号化した当該データを当該APIリクエストのボディ部に含めて前記APIゲートウェイ装置へ送信するステップと、を実行させる、ことを要旨とする。
請求項4に係るデータ暗号化方法は、APIリクエストに応じて機能を提供するイネーブラ装置と、前記イネーブラ装置のAPIを提供するAPIゲートウェイ装置と、前記APIリクエストを送信するアプリケーションを備えたアプリケーション装置と、を備えたAPIシステムで行うデータ暗号化方法において、前記アプリケーションに、自身宛てのAPIレスポンス又はAPIリクエストに含めるデータを暗号化するための暗号化キーを前記APIゲートウェイ装置に登録するステップを実行させ、前記APIゲートウェイ装置に、前記暗号化キーを前記アプリケーションの識別子に関連付けて記憶部に記憶するステップと、前記イネーブラ装置からのアクセスに応じて前記記憶部に登録された前記暗号化キーを前記イネーブラ装置へ送信するステップと、を実行させ、前記イネーブラ装置に、前記APIゲートウェイ装置から受信した前記暗号化キーでAPIレスポンス又はAPIリクエストに含めるデータを暗号化するステップと、暗号化した当該データを当該APIレスポンス又はAPIリクエストのボディ部に含めて前記APIゲートウェイ装置へ送信するステップと、を実行させる、ことを要旨とする。
本発明によれば、APIリクエスト又はAPIレスポンスに含めるデータに対して効率的にセキュリティを担保することができる。
APIシステムの全体構成を示す図である。 第1の実施の形態に係るイネーブラ装置の機能ブロック構成を示す図である。 第1の実施の形態に係るAPIゲートウェイ装置の機能ブロック構成を示す図である。 第1の実施の形態に係るアプリケーション装置のアプリケーションが備える機能ブロック構成を示す図である。 第1の実施の形態に係るデータ暗号化方法の動作を示す図である。 第2の実施の形態に係るアプリケーション装置のアプリケーションが備える機能ブロック構成を示す図である。 第2の実施の形態に係るAPIゲートウェイ装置の機能ブロック構成を示す図である。 第2の実施の形態に係るイネーブラ装置の機能ブロック構成を示す図である。 第2の実施の形態に係るデータ暗号化方法の動作を示す図である。
本発明は、APIゲートウェイ装置がAPIリクエスト又はAPIレスポンスのデータを暗号化するための暗号化キーを払い出す機能を備えることを特徴とする。これにより、アプリケーションとAPI提供システムとの間で独自に暗号化キーを管理・配布する必要がなくなり、APIレスポンスのデータに対して効率的にセキュリティを担保することができる。以下、本発明を実施する一実施の形態について図面を用いて説明する。
<第1の実施の形態>
第1の実施の形態では、アプリケーションからAPI提供システムへ送信されるAPIリクエストのデータを暗号化する方法について説明する。
図1は、第1の実施の形態に係るAPIシステムの全体構成を示す図である。APIシステム1は、イネーブラ装置10と、APIゲートウェイ装置20を備えるAPI提供システムと、アプリケーション装置30と、を備えて構成される。
イネーブラ装置10は、APIリクエストに応じて自身が備える機能を提供する装置である。具体的には、機能aを提供するイネーブラ装置10、機能aとは異なる機能nを提供するイネーブラ装置10等、少なくとも1つ以上のイネーブラ装置により構成される。例えば、イネーブラ装置Aは、ユーザ単位に住所録(住所、氏名、電話番号、所定サービスのID等)を管理するデータベースの機能aを提供し、イネーブラ装置Bは、電話発信・切断する機能bを提供し、イネーブラ装置Cは、メッセージを送信する機能cを提供する。
図2は、本実施の形態に係るイネーブラ装置10の機能ブロック構成を示す図である。本実施の形態に係るイネーブラ装置10は、上記既存機能(APIリクエストに応じて自身が備える機能を提供する機能)に加えて、キー情報記憶部101と、暗号化キー登録部102と、APIリクエスト受信部103と、データ復号化部104と、を備えて構成される。
キー情報記憶部101は、予め生成された対を成す暗号化キー及び復号化キーを記憶しておく機能を備える。
暗号化キー登録部102は、自身宛てのAPIリクエストに含めるデータを暗号化させるため、キー情報記憶部101から暗号化キーを読み出して、その暗号化キーをAPIゲートウェイ装置20に登録する機能を備える。
APIリクエスト受信部103は、APIゲートウェイ装置20を介してアプリケーション装置30のアプリケーションから送信されたAPIリクエストを受信する機能を備える。
データ復号化部104は、APIリクエスト受信部103で受信したAPIリクエストからデータ(=暗号化された秘匿データ)を取得し、APIゲートウェイ装置20に登録していた暗号化キーに対応する復号化キーをキー情報記憶部101から読み出して、この復号化キーで上記暗号化された秘匿データを復号する機能を備える。
次に、APIゲートウェイ装置20について説明する。APIゲートウェイ装置20は、イネーブラ装置10のAPIを提供する装置であり、アプリケーションが各APIをコールするためのエンドポイントが実装されている。例えば、上記例の場合、APIゲートウェイ装置20は、住所録への情報の登録・取得・変更・削除を行うAPI(イネーブラ装置AのAPI)、電話発信・切断を行うAPI(イネーブラ装置BのAPI)、メッセージ送信を行うAPI(イネーブラ装置CのAPI)、をアプリケーションに提供し、アプリケーションから送信されたAPIリクエストを該当のAPIを介して該当のイネーブラ装置10へ転送する。
図3は、本実施の形態に係るAPIゲートウェイ装置20の機能ブロック構成を示す図である。本実施の形態に係るAPIゲートウェイ装置20は、暗号化キー受信部201と、暗号化キー記憶部202と、暗号化キー送信部203と、APIリクエスト受信部204と、APIリクエスト送信部205と、を備えて構成される。
暗号化キー受信部201は、イネーブラ装置10での登録処理によりイネーブラ装置10から送信された暗号化キーを受信する機能を備える。
暗号化キー記憶部202は、暗号化キー受信部201で受信した暗号化キーを送信元のイネーブラ装置10のIDに関連付けて記憶する機能を備える。
暗号化キー送信部203は、アプリケーションからのアクセスに応じて該当の暗号化キーをアプリケーションへ送信する機能を備える。
APIリクエスト受信部204は、アプリケーションから送信されたAPIリクエストを受信する機能を備える。
APIリクエスト送信部205は、APIリクエスト受信部204でAPIリクエストを受信した後、そのAPIリクエストで要求された機能を持つイネーブラ装置10へ該当のAPIを介してAPIリクエストを送信する機能を備える。
なお、APIゲートウェイ装置20は、アプリケーションが複数のイネーブラ装置10へアクセスする際の利便性を高めるため、上述した通り、複数のイネーブラ装置10の各APIを一元化して管理している。それゆえ、アプリケーションの開発時にどのような機能のAPIを利用可能であるかを開発者に提示するため、APIゲートウェイ装置20には、各APIの仕様・使い方を記載したドキュメント等が登録されている。
次に、アプリケーション装置30について説明する。アプリケーション装置30は、APIリクエストを送信し、APIレスポンスを受信するアプリケーションを備えた端末である。ここで、アプリケーションとは、背景技術で説明した通り、API提供システム(ここでは、1つ以上のイネーブラ装置10とAPIゲートウェイ装置20)を用い各APIを活用して開発されたアプリケーションである。例えば、上記例の場合、イネーブラ装置Aの機能aを用いて住所録から連絡を取りたい相手の電話番号を取得し、イネーブラ装置Bの機能bを用いて電話発信を行い、更にイネーブラ装置Cの機能cを用いてメッセージ送信を行うアプリケーションである。
図4は、本実施の形態に係るアプリケーション装置30のアプリケーションが備える機能ブロック構成を示す図である。このアプリケーションは、上記既存機能(1つ以上のイネーブラ装置10の各機能を用いてサービスを提供する機能)に加えて、暗号化キー取得部301と、キー情報記憶部302と、データ記憶部303と、データ暗号化部304と、APIリクエスト送信部305と、を備えて構成される。
暗号化キー取得部301は、APIリクエストを送信する前に、そのAPIリクエストで要求する機能を持つイネーブラ装置10により登録された暗号化キーをAPIゲートウェイ装置20から取得する機能を備える。
キー情報記憶部302は、暗号化キー取得部301で取得した暗号化キーを記憶する機能を備える。
データ記憶部303は、APIリクエストに含めるデータ(個人情報等の秘匿データ)を記憶する機能を備える。
データ暗号化部304は、APIリクエストにデータを含めて送信する場合、キー情報記憶部302から暗号化キーを読み出して、その暗号化キーでAPIリクエストに含めるデータを暗号化する機能を備える。
APIリクエスト送信部305は、データ暗号化部304で暗号化されたデータを含めたAPIリクエストをAPIゲートウェイ装置20へ送信する機能を備える。
次に、本実施の形態に係るAPIシステムで行うデータ暗号化方法について説明する。図5は、本実施の形態に係るデータ暗号化方法の動作を示す図である。本実施の形態では、APIリクエストに含めるデータを暗号化する。
まず、ステップS101において、イネーブラ装置10は、自身宛てのAPIリクエストに含めるデータを暗号化させるための暗号化キーをAPIゲートウェイ装置20に登録する。
次に、ステップS102において、アプリケーション装置30のアプリケーションは、APIリクエストを送信する前に、そのAPIリクエストで要求する機能を持つイネーブラ装置10により登録された暗号化キーをAPIゲートウェイ装置20から取得する。このとき、APIゲートウェイ装置20では、アプリケーションを認証するためのAPIキーに加えて、該当のイネーブラ装置10のIDに対応する暗号化キーをアプリケーションへ払い出す処理を行うことになる。
次に、ステップS103において、アプリケーション装置30のアプリケーションは、APIゲートウェイ装置20から取得した暗号化キーでAPIリクエストに含めるデータを暗号化する。
次に、ステップS104において、アプリケーション装置30のアプリケーションは、暗号化キーで暗号化したデータをAPIリクエストのボディ部に含めてAPIゲートウェイ装置20へ送信する。
次に、ステップS105において、APIゲートウェイ装置20は、アプリケーションからAPIリクエストを受信した後、そのAPIリクエストで要求された機能を持つイネーブラ装置10へ該当のAPIを介してAPIリクエストを送信する。
最後に、ステップS106において、イネーブラ装置10は、APIゲートウェイ装置20からAPIリクエストを受信した後、そのAPIリクエストから暗号化されたデータを取得し、APIゲートウェイ装置20に登録していた暗号化キーに対応する復号化キーで上記暗号化されたデータを復号する。
すなわち、本実施の形態によれば、イネーブラ装置10が、自身宛てのAPIリクエストに含めるデータを暗号化するための暗号化キーをAPIゲートウェイ装置20に登録し、APIゲートウェイ装置20は、アプリケーションからのアクセスに応じて自身に登録された暗号化キーをアプリケーションへ送信し、アプリケーションは、APIゲートウェイ装置20から受信した暗号化キーでAPIリクエストに含めるデータを暗号化することになる。
つまり、APIゲートウェイ装置20がデータを暗号化するための暗号化キーを払い出す機能を備え、アプリケーションはAPIゲートウェイ装置20で払い出された暗号化キーでAPIリクエストのデータを暗号化するので、アプリケーションとAPI提供システム(ここでは、イネーブラ装置10とAPIゲートウェイ装置20)との間で独自に暗号化キーを管理・配布する必要がなくなり、APIリクエストのデータに対して効率的にセキュリティを担保することができる。
<第2の実施の形態>
第2の実施の形態では、API提供システムからアプリケーションへ送信されるAPIレスポンス又はAPIリクエストのデータを暗号化する方法について説明する。本実施の形態に係るAPIシステムの全体構成は、図1に示した全体構成と同様である。
図6は、本実施の形態に係るアプリケーション装置30のアプリケーションが備える機能ブロック構成を示す図である。このアプリケーションは、第1の実施の形態で説明した機能部に加え、暗号化キー登録部306と、APIレスポンス受信部307と、データ復号化部308と、を更に備えて構成される。
キー情報記憶部302は、予め生成された対を成す暗号化キー及び復号化キーを記憶しておく機能を備える。
暗号化キー登録部306は、自身宛てのAPIレスポンスに含めるデータを暗号化させるため、キー情報記憶部302から暗号化キーを読み出して、その暗号化キーをAPIゲートウェイ装置20に登録する機能を備える。
APIリクエスト送信部305は、APIリクエストを送信する機能を備える。
APIレスポンス受信部307は、APIゲートウェイ装置20を介してイネーブラ装置10から送信されたAPIレスポンスを受信する機能を備える。
データ復号化部308は、APIレスポンス受信部307で受信したAPIレスポンスからデータ(=暗号化された秘匿データ)を取得し、APIゲートウェイ装置20に登録していた暗号化キーに対応する復号化キーをキー情報記憶部302から読み出して、この復号化キーで上記暗号化された秘匿データを復号する機能を備える。
データ記憶部303は、データ復号化部308で復号された秘匿データを記憶する機能を備える。
図7は、本実施の形態に係るAPIゲートウェイ装置20が備える機能ブロック構成を示す図である。本実施の形態に係るAPIゲートウェイ装置20は、第1の実施の形態で説明した機能部に加え、APIレスポンス受信部206と、APIレスポンス送信部207と、を更に備えて構成される。
暗号化キー受信部201は、アプリケーションでの登録処理によりアプリケーションから送信された暗号化キーを受信する機能を備える。
暗号化キー記憶部202は、暗号化キー受信部201で受信した暗号化キーを送信元のアプリケーションのIDに関連付けて記憶する機能を備える。
暗号化キー送信部203は、イネーブラ装置10からのアクセスに応じて該当の暗号化キーをイネーブラ装置10へ送信する機能を備える。
APIリクエスト受信部204は、アプリケーションから送信されたAPIリクエストを受信する機能を備える。
APIリクエスト送信部205は、APIリクエスト受信部204でAPIリクエストを受信した後、そのAPIリクエストで要求された機能を持つイネーブラ装置10へ該当のAPIを介してAPIリクエストを送信する機能を備える。
APIレスポンス受信部206は、イネーブラ装置10から送信されたAPIレスポンスを受信する機能を備える。
APIレスポンス送信部207は、APIレスポンス受信部206でAPIレスポンスを受信した後、そのAPIレスポンスを該当のアプリケーションへ送信する機能を備える。
図8は、本実施の形態に係るイネーブラ装置10の機能ブロック構成を示す図である。本実施の形態に係るイネーブラ装置10は、第1の実施の形態で説明した機能部に加え、暗号化キー取得部105と、データ記憶部106と、データ暗号化部107と、APIレスポンス送信部108と、を更に備えて構成される。
暗号化キー取得部105は、APIレスポンスを送信する前に、そのAPIレスポンスを送信する送信先のアプリケーションにより登録された暗号化キーをAPIゲートウェイ装置20から取得する機能を備える。
キー情報記憶部101は、暗号化キー取得部105で取得した暗号化キーを記憶する機能を備える。
APIリクエスト受信部103は、APIゲートウェイ装置20を介してアプリケーションから送信されたAPIリクエストを受信する機能を備える。
データ記憶部106は、APIレスポンスに含めるデータ(個人情報等の秘匿データ)を記憶する機能を備える。
データ暗号化部107は、APIレスポンスにデータを含めて送信する場合、キー情報記憶部302から暗号化キーを読み出して、その暗号化キーでAPIレスポンスに含めるデータを暗号化する機能を備える。
APIレスポンス送信部108は、データ暗号化部107で暗号化されたデータを含めたAPIレスポンスをAPIゲートウェイ装置20へ送信する機能を備える。
次に、本実施の形態に係るAPIシステムで行うデータ暗号化方法について説明する。図9は、本実施の形態に係るデータ暗号化方法の動作を示す図である。本実施の形態では、APIレスポンスに含めるデータを暗号化する。
まず、ステップS201において、アプリケーション装置30のアプリケーションは、自身宛てのAPIレスポンスに含めるデータを暗号化させるための暗号化キーをAPIゲートウェイ装置20に登録する。
次に、ステップS202において、イネーブラ装置10は、APIレスポンスを送信する前に、そのAPIレスポンスを送信する送信先のアプリケーションにより登録された暗号化キーをAPIゲートウェイ装置20から取得する。このとき、APIゲートウェイ装置20では、該当のアプリケーションのIDに対応する暗号化キーをイネーブラ装置10へ払い出す処理を行うことになる。
次に、ステップS203において、アプリケーション装置30のアプリケーションは、APIリクエストをAPIゲートウェイ装置20へ送信する。
次に、ステップS204において、APIゲートウェイ装置20は、アプリケーションからAPIリクエストを受信した後、そのAPIリクエストで要求された機能を持つイネーブラ装置10へ該当のAPIを介してAPIリクエストを送信する。
次に、ステップS205において、イネーブラ装置10は、APIゲートウェイ装置20からAPIリクエストを受信した後、APIゲートウェイ装置20から取得していた暗号化キーでAPIレスポンスに含めるデータを暗号化する。
次に、ステップS206において、イネーブラ装置10は、暗号化キーで暗号化したデータをAPIレスポンスのボディ部に含めてAPIゲートウェイ装置20へ送信する。
次に、ステップS207において、APIゲートウェイ装置20は、アプリケーションからAPIレスポンスを受信した後、そのAPIレスポンスをAPIリクエストの送信元のアプリケーションへ送信する。
最後に、ステップ208において、アプリケーション装置30のアプリケーションは、APIゲートウェイ装置20からAPIレスポンスを受信した後、そのAPIレスポンスから暗号化されたデータを取得し、APIゲートウェイ装置20に登録していた暗号化キーに対応する復号化キーで上記暗号化されたデータを復号する。
すなわち、本実施の形態によれば、アプリケーションが、自身宛てのAPIレスポンスに含めるデータを暗号化するための暗号化キーをAPIゲートウェイ装置20に登録し、APIゲートウェイ装置20は、イネーブラ装置10からのアクセスに応じて自身に登録された暗号化キーをイネーブラ装置10へ送信し、イネーブラ装置10は、APIゲートウェイ装置20から受信した暗号化キーでAPIレスポンスに含めるデータを暗号化することになる。
つまり、APIゲートウェイ装置20がデータを暗号化するための暗号化キーを払い出す機能を備え、イネーブラ装置10はAPIゲートウェイ装置20で払い出された暗号化キーでAPIレスポンスのデータを暗号化するので、アプリケーションとAPI提供システム(ここでは、イネーブラ装置10とAPIゲートウェイ装置20)との間で独自に暗号化キーを管理・配布する必要がなくなり、APIレスポンスのデータに対して効率的にセキュリティを担保することができる。
なお、第1の実施の形態と第2の実施の形態とを組み合わせることも可能である。これにより、APIリクエストとAPIレスポンスの各データが共に暗号化されるので、データのセキュリティレベルを高めることができる。
また、第2の実施の形態では、イネーブラ装置10がアプリケーションへ送信するAPIレスポンスのデータを暗号化する方法について説明した。その一方で、イネーブラ装置10がアプリケーションへ送信する信号としては、APIレスポンス以外に、通知リクエスト等のAPIリクエストも存在する。そのため、第2の実施の形態において、イネーブラ装置10がアプリケーションへ送信するAPIリクエストのデータを暗号化するようにしてもよい。
最後に、本実施の形態で説明した、イネーブラ装置10、APIゲートウェイ装置20、アプリケーション装置30は、CPU、メモリ、ハードディスク等を備えたコンピュータ(情報処理装置)で実現できる。また、イネーブラ装置10、APIゲートウェイ装置20、アプリケーション装置30としてコンピュータを機能させるためのプログラムや該プログラムの記憶媒体を作成することも可能である。
1…APIシステム
10…イネーブラ装置
101…キー情報記憶部
102…暗号化キー登録部
103…APIリクエスト受信部
104…データ復号化部
105…暗号化キー取得部
106…データ記憶部
107…データ暗号化部
108…APIレスポンス送信部
20…APIゲートウェイ装置
201…暗号化キー受信部
202…暗号化キー記憶部
203…暗号化キー送信部
204…APIリクエスト受信部
205…APIリクエスト送信部
206…APIレスポンス受信部
207…APIレスポンス送信部
30…アプリケーション装置
301…暗号化キー取得部
302…キー情報記憶部
303…データ記憶部
304…データ暗号化部
305…APIリクエスト送信部
306…暗号化キー登録部
307…APIレスポンス受信部
308…データ復号化部

Claims (4)

  1. APIリクエストに応じて機能を提供するイネーブラ装置と、前記イネーブラ装置のAPIを提供するAPIゲートウェイ装置と、前記APIリクエストを送信するアプリケーションを備えたアプリケーション装置と、を備えたAPIシステムにおいて、
    前記イネーブラ装置は、
    自身宛てのAPIリクエストに含めるデータを暗号化するための暗号化キーを前記APIゲートウェイ装置に登録する登録部を備え、
    前記APIゲートウェイ装置は、
    前記暗号化キーを前記イネーブラ装置の識別子に関連付けて記憶する記憶部と、
    前記アプリケーションからのアクセスに応じて前記記憶部に登録された前記暗号化キーを前記アプリケーションへ送信する送信部と、を備え、
    前記アプリケーションは、
    前記APIゲートウェイ装置から受信した前記暗号化キーでAPIリクエストに含めるデータを暗号化する暗号化部と、
    暗号化した当該データを当該APIリクエストのボディ部に含めて前記APIゲートウェイ装置へ送信する送信部と、を備える、
    ことを特徴とするAPIシステム。
  2. APIリクエストに応じて機能を提供するイネーブラ装置と、前記イネーブラ装置のAPIを提供するAPIゲートウェイ装置と、前記APIリクエストを送信するアプリケーションを備えたアプリケーション装置と、を備えたAPIシステムにおいて、
    前記アプリケーションは、
    自身宛てのAPIレスポンス又はAPIリクエストに含めるデータを暗号化するための暗号化キーを前記APIゲートウェイ装置に登録する登録部を備え、
    前記APIゲートウェイ装置は、
    前記暗号化キーを前記アプリケーションの識別子に関連付けて記憶する記憶部と、
    前記イネーブラ装置からのアクセスに応じて前記記憶部に登録された前記暗号化キーを前記イネーブラ装置へ送信する送信部と、を備え、
    前記イネーブラ装置は、
    前記APIゲートウェイ装置から受信した前記暗号化キーでAPIレスポンス又はAPIリクエストに含めるデータを暗号化する暗号化部と、
    暗号化した当該データを当該APIレスポンス又はAPIリクエストのボディ部に含めて前記APIゲートウェイ装置へ送信する送信部と、を備える、
    ことを特徴とするAPIシステム。
  3. APIリクエストに応じて機能を提供するイネーブラ装置と、前記イネーブラ装置のAPIを提供するAPIゲートウェイ装置と、前記APIリクエストを送信するアプリケーションを備えたアプリケーション装置と、を備えたAPIシステムで行うデータ暗号化方法において、
    前記イネーブラ装置に、
    自身宛てのAPIリクエストに含めるデータを暗号化するための暗号化キーを前記APIゲートウェイ装置に登録するステップを実行させ、
    前記APIゲートウェイ装置に、
    前記暗号化キーを前記イネーブラ装置の識別子に関連付けて記憶部に記憶するステップと、
    前記アプリケーションからのアクセスに応じて前記記憶部に登録された前記暗号化キーを前記アプリケーションへ送信するステップと、を実行させ、
    前記アプリケーションに、
    前記APIゲートウェイ装置から受信した前記暗号化キーでAPIリクエストに含めるデータを暗号化するステップと、
    暗号化した当該データを当該APIリクエストのボディ部に含めて前記APIゲートウェイ装置へ送信するステップと、を実行させる、
    ことを特徴とするAPIシステムのデータ暗号化方法。
  4. APIリクエストに応じて機能を提供するイネーブラ装置と、前記イネーブラ装置のAPIを提供するAPIゲートウェイ装置と、前記APIリクエストを送信するアプリケーションを備えたアプリケーション装置と、を備えたAPIシステムで行うデータ暗号化方法において、
    前記アプリケーションに、
    自身宛てのAPIレスポンス又はAPIリクエストに含めるデータを暗号化するための暗号化キーを前記APIゲートウェイ装置に登録するステップを実行させ、
    前記APIゲートウェイ装置に、
    前記暗号化キーを前記アプリケーションの識別子に関連付けて記憶部に記憶するステップと、
    前記イネーブラ装置からのアクセスに応じて前記記憶部に登録された前記暗号化キーを前記イネーブラ装置へ送信するステップと、を実行させ、
    前記イネーブラ装置に、
    前記APIゲートウェイ装置から受信した前記暗号化キーでAPIレスポンス又はAPIリクエストに含めるデータを暗号化するステップと、
    暗号化した当該データを当該APIレスポンス又はAPIリクエストのボディ部に含めて前記APIゲートウェイ装置へ送信するステップと、を実行させる、
    ことを特徴とするAPIシステムのデータ暗号化方法。
JP2016159544A 2016-08-16 2016-08-16 Apiシステム及びデータ暗号化方法 Active JP6603632B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016159544A JP6603632B2 (ja) 2016-08-16 2016-08-16 Apiシステム及びデータ暗号化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016159544A JP6603632B2 (ja) 2016-08-16 2016-08-16 Apiシステム及びデータ暗号化方法

Publications (2)

Publication Number Publication Date
JP2018029241A JP2018029241A (ja) 2018-02-22
JP6603632B2 true JP6603632B2 (ja) 2019-11-06

Family

ID=61249225

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016159544A Active JP6603632B2 (ja) 2016-08-16 2016-08-16 Apiシステム及びデータ暗号化方法

Country Status (1)

Country Link
JP (1) JP6603632B2 (ja)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000090039A (ja) * 1998-09-14 2000-03-31 Sony Corp 音楽配信方法、送信装置および方法、ならびに、再生装置および方法
JP2001134534A (ja) * 1999-11-08 2001-05-18 Ntt Communications Kk 認証代行方法、認証代行サービスシステム、認証代行サーバ装置及びクライアント装置
JP4707992B2 (ja) * 2004-10-22 2011-06-22 富士通株式会社 暗号化通信システム
US9503268B2 (en) * 2013-01-22 2016-11-22 Amazon Technologies, Inc. Securing results of privileged computing operations
US11570065B2 (en) * 2014-04-09 2023-01-31 Convida Wireless, Llc Service enabler function

Also Published As

Publication number Publication date
JP2018029241A (ja) 2018-02-22

Similar Documents

Publication Publication Date Title
US11178122B2 (en) Data encryption and decryption method and system
US20180351737A1 (en) Communication apparatus, communication system, key sharing method, and computer program product
US10063655B2 (en) Information processing method, trusted server, and cloud server
CN1798021B (zh) 通信支持服务器、通信支持方法、及通信支持系统
EP2775745A1 (en) Method and system for providing information using a consent procedure executed by means of near-field communication
JP2009075688A (ja) 携帯装置の位置に関する情報とファイル用暗号鍵とを管理するためのプログラムおよび方法
JP2007249507A (ja) 情報漏洩防止方法、情報漏洩防止システム及び情報端末
JP2007058487A (ja) ログイン情報管理装置及び方法
US9083682B2 (en) Communication device and computer program product
JP6894469B2 (ja) 情報処理装置およびその制御プログラム
CN117041956A (zh) 通信认证方法、装置、计算机设备和存储介质
JP4995667B2 (ja) 情報処理装置、サーバ装置、情報処理プログラム及び方法
JP5678150B2 (ja) ユーザ端末、鍵管理システム、及びプログラム
JP6603632B2 (ja) Apiシステム及びデータ暗号化方法
JP4222132B2 (ja) ソフトウェア提供方法及びシステム
KR101701625B1 (ko) 암호화된 컨텐츠의 복호화 키를 안전하게 획득하여 컨텐츠를 재생하기 위한 방법 및 시스템
KR20190007336A (ko) 보안채널 생성 방법 및 그 장치와 이를 이용한 보안정보의 송수신 방법 및 그 장치
CN114428973A (zh) 去标识化的信息传输方法、装置、设备和计算机可读介质
JP7406777B1 (ja) 鍵端末に秘密鍵を秘匿したまま暗号ファイルを処理するネットワークストレージ
JP4945265B2 (ja) サービス利用識別情報生成装置、サービス利用識別情報生成システム、サービス利用識別情報生成方法およびプログラム
JP2019211867A (ja) コンピュータプログラム及びメッセージ送信方法
JP4989996B2 (ja) サービス利用識別情報生成装置、サービス利用識別情報生成システム、サービス利用識別情報生成方法およびプログラム
CN115865532B (zh) 离线业务数据的通信处理方法和装置
KR101985272B1 (ko) 충돌을 방지할 수 있는 집적회로카드(icc) 비대칭키 생성 플랫폼 및 집적회로카드(icc) 비대칭키 생성 방법
JP2009134486A (ja) ファイル管理システム、ファイル管理方法およびプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180830

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190410

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190604

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190725

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20191011

R150 Certificate of patent or registration of utility model

Ref document number: 6603632

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150