(57)【特許請求の範囲】
【請求項１】
携帯端末のアプリケーションプログラムパスワードを保護するための方法であって、
前記携帯端末は、現在作動中のアプリケーションインターフェースビューを取得するために、前記携帯端末のアプリケーションプログラムにおけるアプリケーションインターフェースビューを位置決めするステップと、
前記携帯端末は、前記現在作動中のアプリケーションインターフェースビューが入力ボックスであるかどうかを判定するステップと、そうである場合、
前記携帯端末は、前記入力ボックス内でトリガされたキー入力イベントを獲得するステップと、
前記携帯端末は、前記キー入力イベントを使用することによって前記入力ボックス内に入力された少なくとも1つの文字を取得するステップと、
前記携帯端末は、前記少なくとも1つの文字の各々を偽パスワード文字に置き換えるステップと、
を含む、方法。
【請求項２】
現在作動中のアプリケーションインターフェースビューを取得するために、前記携帯端末のアプリケーションプログラムにおけるアプリケーションインターフェースビューを位置決めする前記ステップが、
前記携帯端末は、前記携帯端末の前記アプリケーションプログラム用に、タッチ画面上のタッチ点が配置されているアプリケーションインターフェースビューを位置決めするステップを含み、前記タッチ点が配置されている前記アプリケーションインターフェースビューが、前記現在作動中のアプリケーションインターフェースビューである、請求項1に記載の方法。
【請求項３】
前記現在作動中のアプリケーションインターフェースビューが入力ボックスであるかどうかを判定する前記ステップが、
前記携帯端末は、前記現在作動中のアプリケーションインターフェースビューに対応する識別子を獲得するステップと、
前記携帯端末は、前記獲得された識別子が入力ボックス識別子であるかどうかを判定し、そうである場合、前記入力ボックス内でトリガされたキー入力イベントを獲得し、前記キー入力イベントを使用することによって入力文字を取得する前記ステップを実施するステップと、
を含む、請求項1に記載の方法。
【請求項４】
前記入力ボックス内でトリガされたキー入力イベントを獲得し、前記キー入力イベントを使用することによって入力文字を取得する前記ステップが、
前記携帯端末は、監視により前記入力ボックス内でトリガされた前記キー入力イベントを取得し、監視により取得した前記キー入力イベントにより、前記入力ボックス内のカーソルの位置を位置決めするステップと、
前記携帯端末は、前記カーソルの前記位置に入力された文字を獲得し、前記カーソルの前記位置により、前記入力文字を記憶するステップと、
を含む、請求項1に記載の方法。
【請求項５】
前記入力ボックスがパスワード入力ボックスであり、前記入力ボックス内でトリガされたキー入力イベントを獲得し、前記キー入力イベントを使用することによって入力文字を取得する前記ステップの後、前記方法が、
前記携帯端末は、暗号化された文字列を取得するために前記入力文字を動的に暗号化するステップと、
前記携帯端末は、ログイン検証を実施するように検証サーバに要求するために、前記暗号化された文字列を前記検証サーバに送るステップと、
をさらに含む、請求項1に記載の方法。
【請求項６】
携帯端末のアプリケーションプログラムパスワードを保護するための装置であって、
現在作動中のアプリケーションインターフェースビューを取得するために、前記携帯端末のアプリケーションプログラムにおけるアプリケーションインターフェースビューを位置決めするように構成された位置決めモジュールと、
前記現在作動中のアプリケーションインターフェースビューが入力ボックスであるかどうかを判定し、そうである場合、イベント獲得モジュールに通知するように構成された判定モジュールと、
前記入力ボックス内でトリガされたキー入力イベントを獲得し、前記キー入力イベントを使用することによって入力文字を取得するように構成された前記イベント獲得モジュールと、
前記入力文字を偽パスワード文字に置き換えるように構成された置換モジュールと、
を含む、装置。
【請求項７】
前記位置決めモジュールが、前記携帯端末の前記アプリケーションプログラム用に、タッチ画面上のタッチ点が配置されているアプリケーションインターフェースビューを位置決めするようにさらに構成され、前記タッチ点が配置されている前記アプリケーションインターフェースビューが、前記現在作動中のアプリケーションインターフェースビューである、請求項6に記載の装置。
【請求項８】
前記判定モジュールが、
前記現在作動中のアプリケーションインターフェースビューに対応する識別子を獲得するように構成された識別子獲得ユニットと、
前記獲得した識別子が入力ボックス識別子であるかどうかを判定し、そうである場合、前記イベント獲得モジュールに通知するように構成された識別子判定ユニットと、
を含む、請求項6に記載の装置。
【請求項９】
前記イベント獲得モジュールが、
監視により前記入力ボックス内でトリガされた前記キー入力イベントを取得し、監視により取得した前記キー入力イベントにより、前記入力ボックス内のカーソルの位置を位置決めするように構成された監視ユニットと、
前記カーソルの位置に入力された文字を獲得し、前記カーソルの位置により、前記入力文字を記憶するように構成された文字獲得ユニットと、
を含む、請求項6に記載の装置。
【請求項１０】
前記入力ボックスがパスワード入力ボックスであり、前記装置が、
暗号化された文字列を取得するために前記入力文字を動的に暗号化するように構成された動的暗号化モジュールと、
ログイン検証を実施するように検証サーバに要求するために、前記暗号化された文字列を前記検証サーバに送るように構成されたログイン始動モジュールと、
をさらに含む、請求項6に記載の装置。
【請求項１１】
1つまたは複数の命令を中に記憶した非一時的コンピュータ可読記憶媒体であって、コンピューティングデバイスによって実行されたとき、前記コンピューティングデバイスに、
現在作動中のアプリケーションインターフェースビューを取得するために、携帯端末のアプリケーションプログラムにおけるアプリケーションインターフェースビューを位置決めすることと、
前記現在作動中のアプリケーションインターフェースビューが入力ボックスであるかどうかを判定することと、そうである場合、
前記入力ボックス内でトリガされたキー入力イベントを獲得することと、
前記キー入力イベントを使用することによって前記入力ボックス内に入力された少なくとも1つの文字を取得することと、
前記少なくとも1つの文字の各々を偽パスワード文字に置き換えることと、
を行わせる、非一時的コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、インターネット応用技術に関し、詳しくは、携帯端末のアプリケーションプログラムパスワードを保護するための方法および装置に関する。
【背景技術】
【０００２】
インターネットの発達に伴い、ユーザは、いつでもどこでも、様々な携帯デバイスを使用することによって様々な入力を実施することができ、例えば、インスタントメッセージツールにログインするためのパスワードを入力することができ、ユーザは、パスワード入力ボックス内でキー入力イベントをトリガするために、インスタントメッセージツールのパスワード入力ボックスを使用することによってパスワードを入力する操作を完了する。
【０００３】
しかし、ユーザによって入力された様々な文字に関連したセキュリティ問題が次々と出現し、システム内のキー入力イベントから取得された文字を盗み取る様式が、単純な偽ボックス様式などの様式から、かなり専門的なメモリインターセプションおよびキャプチャリングの盗み取る様式までに進化している。
【０００４】
入力文字が盗み取られるのを防止するために、アプリケーションは、ユーザが入力操作をトリガするとき、カスタマイズされたキーボードをロードすることができ、システム内でキー入力イベントを処理する手順を引き継ぐことができる。しかし、カスタマイズされたキーボードには、互換性の問題があり、カスタマイズされたキーボードは、悪質なコードがアプリケーション内に注入された後はもう機能しない。
【０００５】
加えて、システムは、入力文字に対して様々な暗号化処理を実施するために、キー入力イベントコールバック機能を使用することによって入力文字をインターセプトすることもできる。しかし、インターセプトする箇所がシステムの公共のインターフェースであり、システムによるキーイベントを処理する手順の終わりであるので、インターセプトする箇所は、デストラクタによって容易に使用される。
【０００６】
したがって、アプリケーション内で様々なキー入力イベントに対して処理することは、セキュリティの限度を有し、したがって、携帯端末のアプリケーションプログラムのパスワードセキュリティは高くない。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上記を考慮して、パスワードセキュリティを改善することができる、携帯端末のアプリケーションプログラムパスワードを保護するための方法を提供することが必要とされる。
【０００８】
加えて、パスワードセキュリティを改善することができる、携帯端末のアプリケーションプログラムパスワードを保護するためのシステムを提供することがさらに必要とされる。
【課題を解決するための手段】
【０００９】
携帯端末のアプリケーションプログラムパスワードを保護するための方法は、以下のステップ：
現在作動中のアプリケーションインターフェースビューを取得するために、携帯端末のアプリケーションプログラムにおけるアプリケーションインターフェースビューを位置決めするステップと、
現在作動中のアプリケーションインターフェースビューが入力ボックスであるかどうかを判定するステップと、そうである場合、
入力ボックス内でトリガされたキー入力イベントを獲得し、キー入力イベントを使用することによって入力文字を取得するステップと、
その文字を偽パスワード文字に置き換えるステップと、
を含む。
【００１０】
携帯端末のアプリケーションプログラムパスワードを保護するための装置は、
現在作動中のアプリケーションインターフェースビューを取得するために、携帯端末のアプリケーションプログラムにおけるアプリケーションインターフェースビューを位置決めするように構成された位置決めモジュールと、
現在作動中のアプリケーションインターフェースビューが入力ボックスであるかどうかを判定し、そうである場合、イベント獲得モジュールに通知するように構成された判定モジュールと、
入力ボックス内でトリガされたキー入力イベントを獲得し、キー入力イベントを使用することによって入力文字を取得するように構成されたイベント獲得モジュールと、
その文字を偽パスワード文字に置き換えるように構成された置換モジュールと、
を含む。
【００１１】
携帯端末のアプリケーションプログラムパスワードを保護するための前述の方法および装置によれば、携帯端末のアプリケーションプログラムによって開かれたアプリケーションインターフェースビューが、現在作動中のアプリケーションインターフェースビューを取得するために位置決めされ、現在作動中のアプリケーションインターフェースビューが入力ボックスであるかどうかが判定され、そうである場合、それは入力ボックス内のキー入力イベントがトリガされようとしていることを示す。この場合、ユーザによって入力ボックス内でトリガされたキー入力イベントが獲得され、入力文字がキー入力イベントを使用することによって取得される。その文字が偽パスワード文字を取得するために置換され、取得された偽パスワード文字が、システムによってキーイベントを処理する手順に供給され、偽パスワード文字が盗み取られても、入力ボックス内に入力された実際の文字は知られ得ず、それによって、パスワードセキュリティが効果的に改善される。
【図面の簡単な説明】
【００１２】
【図１】実施形態における携帯端末のアプリケーションプログラムパスワードを保護するための方法の流れ図である。
【図２】図1の、現在作動中のアプリケーションインターフェースビューが入力ボックスであるかどうかを判定するための方法の流れ図である。
【図３】図1の、入力ボックス内でトリガされたキー入力イベントを獲得し、キー入力イベントを使用することによって入力文字を取得するための方法の流れ図である。
【図４】別の実施形態における携帯端末のアプリケーションプログラムパスワードを保護するための方法の流れ図である。
【図５】実施形態における携帯端末のアプリケーションプログラムパスワードに対する保護の適用の概略図である。
【図６】実施形態における携帯端末のアプリケーションプログラムパスワードを保護するための装置の概略的構成図である。
【図７】図6の判定モジュールの概略的構成図である。
【図８】図6のイベント獲得モジュールの概略的構成図である。
【図９】別の実施形態における携帯端末のアプリケーションプログラムパスワードを保護するための装置の概略的構成図である。
【発明を実施するための形態】
【００１３】
本開示の目的、技術的解決策および利点をより明確にするために、以下に、添付の図面および実施形態を参照して本開示を詳細にさらに説明する。本明細書に説明する特定の実施形態は、単に本開示を説明することが意図されているに過ぎず、本開示を限定することは意図されていないことを理解されたい。
【００１４】
実施形態において、図1に示すように、携帯端末のアプリケーションプログラムパスワードを保護するための方法が、以下のステップを含む。すなわち、
【００１５】
ステップ110:現在作動中のアプリケーションインターフェースビューを取得するために、携帯端末のアプリケーションプログラムにおけるアプリケーションインターフェースビューを位置決めする。
【００１６】
この実施形態において、アプリケーションインターフェースビューは、携帯端末の現在実行中のアプリケーションプログラムによって画面上に表示されるビューであり、それによって、対応する操作インターフェースがユーザに提供され、その場合、画面上に表示されるアプリケーションインターフェースビューの量は、1つまたは複数であり、例えば、アプリケーションインターフェースビューは、ユーザが操作をトリガするために提供され得るボタン、入力ボックスなどでよい。
【００１７】
現在画面上に表示されているアプリケーションインターフェースビューは、位置決めされ、ユーザによって現在作動中のアプリケーションインターフェースビューがユーザの操作とともに取得される。
【００１８】
実施形態において、前述のステップ110は、携帯端末のアプリケーションプログラム用に、タッチ画面上のタッチ点が配置されているアプリケーションインターフェースビューを位置決めするステップを含み、その場合、タッチ点が配置されているアプリケーションインターフェースビューは、現在作動中のアプリケーションインターフェースビューである。
【００１９】
この実施形態において、アプリケーションインターフェースビューを表示するための画面はタッチ画面である。タッチ画面上のユーザの指の移動につれて、対応するタッチ点の移動が感知される。タッチ点が任意のアプリケーションインターフェースビューに移動するとき、アプリケーションインターフェースビューが作動され、タッチ点が配置されているアプリケーションインターフェースビューは、現在作動中のアプリケーションインターフェースビューである。
【００２０】
ステップ130:現在作動中のアプリケーションインターフェースビューが入力ボックスであるかどうかを判定し、そうである場合、ステップ150を実施し、そうでない場合、手順を終了する。
【００２１】
この実施形態において、現在作動中のアプリケーションインターフェースビューが判定される。現在作動中のアプリケーションインターフェースビューが入力ボックスであることが判定された場合、それはユーザがキー入力イベントをトリガしようとしていることを示し、文字が入力ボックス内に入力される。現在作動中のアプリケーションインターフェースビューが入力ボックスでないことが判定された場合、それはユーザがキー入力イベントに関連していない何らかの他の操作をトリガしようとしていることを示し、したがって、キー入力イベントを処理する手順が終了される。
【００２２】
具体的には、ユーザとアプリケーションとの間の相互作用を正確に感知するために、タッチイベント(TouchEventイベント)コールバック機能を使用することによって、現在作動中のアプリケーションインターフェースビューが入力ボックスであるかどうかが判定される。
【００２３】
ステップ150:入力ボックス内でトリガされたキー入力イベントを獲得し、キー入力イベントを使用することによって入力文字を取得する。
【００２４】
この実施形態において、入力ボックス内でトリガされたキー入力イベントを使用することによって文字が入力ボックス内に入力される。この場合、キー入力イベントによって生成された入力文字が直接獲得される。
【００２５】
ステップ170:その文字を偽パスワード文字に置き換える。
【００２６】
この実施形態において、偽装および妨害の目的を達成し、悪質な盗み取りの挙動を邪魔するために、あらゆる入力文字が、対応する偽パスワード文字に置き換えられる。
【００２７】
キー入力イベントに対する前述の処理により、android（登録商標）プラットフォームでトリガされたキー入力イベントは、それの特別なオープンソース機能のために、より安全であり、悪質な盗み取りをする者には利便性が提供されず、それによって、入力文字が盗み取られるリスクが大幅に低減し、したがって、支払機能を有し、android（登録商標）プラットフォームで実行されるアプリケーションは、ログイン段階および支払段階の両方において、より安全である。
【００２８】
実施形態において、図2に示すように、前述のステップ130は以下を含む。すなわち、
【００２９】
ステップ131:現在作動中のアプリケーションインターフェースビューに対応する識別子を獲得する。
【００３０】
この実施形態において、あらゆるアプリケーションインターフェースビューは、固有の対応する識別子を有し、したがって、現在作動中のアプリケーションインターフェースビューが位置決めされた場合、現在作動中のアプリケーションインターフェースビューに対応する識別子が獲得される。
【００３１】
ユーザと画面との接触により、システムはキャプチャされたタッチイベントを感知し、特定のインターフェース機能を使用することによってタッチイベントを処理する。具体的には、インスタントメッセージツールを例として使用すると、インスタントメッセージツールの開始インターフェースでユーザがパスワード入力ボックスが配置されている領域にタッチするとき、この領域に対応する識別子が獲得される。
【００３２】
ステップ133:獲得された識別子が入力ボックス識別子であるかどうかを判定し、そうである場合、ステップ150を実施し、そうでない場合、手順を終了する。
【００３３】
この実施形態において、獲得された識別子が、現在作動中のアプリケーションインターフェースビューがパスワード入力ボックス、すなわち、パスワードボックス制御ビューであるかどうかを示し、具体的には、判定結果により後続の処理プロセスを実施するために、獲得された識別子が、タッチイベントコールバック機能を呼び出すことによって判定される。
【００３４】
実施形態において、図3に示すように、前述のステップ150は以下を含む。すなわち、
【００３５】
ステップ151:監視により入力ボックス内でトリガされたキー入力イベントを取得し、監視により取得したキー入力イベントにより、入力ボックス内のカーソルの位置を位置決めする。
【００３６】
この実施形態において、文字が入力ボックス内に入力されるにつれて、カーソルの位置も絶えず変化する。実時間におけるカーソルの位置追尾を実装するために、入力ボックス内でトリガされたキー入力イベントが監視により取得された後、onSelectionChanged機能をリロードして、入力ボックス内のカーソルの位置を取得する。
【００３７】
ステップ153:カーソルの位置に入力された文字を獲得し、カーソルの位置により入力文字を記憶する。
【００３８】
この実施形態において、文字の正確な獲得および記憶を実装するために、カーソルの位置は、文字列アレイメモリの添字として使用され、入力文字は、文字列アレイメモリ内に記憶される。
【００３９】
具体的には、入力ボックス内で実施される文字入力に対しては、使用される入力様式は、ハードキーボード入力とソフトキーボード入力とを含み、したがって、入力様式により文字が獲得される。
【００４０】
ハードキーボード入力様式では、カーソルの位置は、dispatchKeyEvent機能をリロードして、現在入力されている文字を獲得することによって獲得され、それは新たな文字列アレイメモリ内に記憶される。
【００４１】
ソフトキーボード入力様式では、InputConnection入力チャネルが新たに設定される。新たに設定されたInputConnection入力チャネルと現在トリガされているキー入力イベントとが結合され、現在トリガされているキー入力イベントが新たに設定されたInputConnection入力チャネルを使用することによって処理される。この場合、commintText、sendKeyEvent、setComposingText、finishComposingTextなどのシステム機能をリロードして、現在入力されている文字をインターセプトし、現在入力されている文字を新たな文字列アレイメモリ内にコピーする。
【００４２】
文字列アレイメモリは、カーソルの位置を添字として使用することによって入力文字を記憶する。
【００４３】
実施形態において、図4に示すように、前述の入力ボックスはパスワード入力ボックスであり、前述のステップ150の後、前述の方法は以下のステップをさらに含む。すなわち、
【００４４】
ステップ410:入力文字を動的に暗号化して、暗号化した文字列を取得する。
【００４５】
この実施形態において、獲得された入力文字は、ユーザがアプリケーションにログインするときの対応するパスワードである。したがって、ログインセキュリティをさらに確保するために、入力文字は動的に暗号化され、したがって、ログイン検証を実施するのに使用されるパスワードは、平文形式では転送されない。
【００４６】
ステップ430:ログイン検証を実施するように検証サーバに要求するために、暗号化された文字列を検証サーバに送る。
【００４７】
この実施形態において、検証サーバを使用することによって、アプリケーションによって始動されたログイン検証を完了するために、アプリケーションは検証サーバと相互作用する。
【００４８】
具体的には、アプリケーションは、暗号化された文字列を検証サーバに送り、検証サーバは、アプリケーションによって送られた暗号化された文字列を受け取った後、ログインパスワードのセキュリティを確保するために、暗号化された文字列を解読して、アプリケーションのログイン検証を完了する。
【００４９】
前述の様式を使用することによって、パスワードは、悪質なプログラムによって監視され、盗み取られることから効果的に防止され、それによって、ユーザのパスワードセキュリティが確保され、アプリケーションのセキュリティが改善される。
【００５０】
実施形態において、入力ボックスがパスワード入力ボックスであるシナリオでは、前述のステップ150の後、入力文字の有効性を検出するステップがさらに含まれる。
【００５１】
この実施形態において、入力文字がアプリケーション自体によって指定された文字形式要件を満足するかどうかが検出され、例えば、インスタントメッセージツールは、指定された範囲内の文字によって形成された文字列だけを受け入れ、指定された範囲内にない他の文字または特別な文字の場合、インスタントメッセージツールに正常にログインすることができない。したがって、入力文字が有効であるかどうかを判定するために入力文字の有効性を検出する必要があり、アプリケーションが正常に実行されることを確保するために、判定結果が肯定であるという前提条件の下に文字置換および動的暗号化を実施することができる。
【００５２】
以下に、携帯端末のアプリケーションプログラムパスワードを保護するための前述の方法を、特定の実施形態を参照して詳細に説明する。この実施形態において、図5に示すように、携帯端末によって実行されるアプリケーションプログラムでは、携帯端末のアプリケーションプログラムのパスワード保護手順全体が、ユーザが入力を開始するとき、開始するようにトリガされる。
【００５３】
ステップ510とステップ520とを使用することによってユーザと携帯端末のアプリケーションプログラムとの間の相互作用を正確に感知するために、ステップ510がまず実施され、その場合、カーソルが配置されているビューが、TouchEventコールバックを使用することによって判定され、ステップ520が、現在のカーソルが配置されているビューがパスワードボックスであるかどうかを判定するために実施される。
【００５４】
ステップ520において、現在のカーソルが配置されているビューがパスワードボックスでないことが判定された場合、それは現在実施されている相互作用が本開示に関与するアプリケーションプログラムのパスワード保護に関連しないことを示し、したがって、システムが処理を実施する。
【００５５】
ステップ520において、現在のカーソルが配置されているビューがパスワードボックスであることが判定された場合、パスワードボックス制御クラス、すなわち、パスワード制御ビューがステップ530においてロードされ、ステップ540がパスワードボックス内に入力された文字により実施され、それは、パスワードボックス内のカーソルの移動を実時間で追尾するために、システム機能 onSelectionChangedをリロードして、パスワードボックス内のカーソルの位置を獲得する。
【００５６】
使用される入力様式がソフトキーボード入力とハードキーボード入力とを含むので、文字は、入力様式により、獲得される必要がある。
【００５７】
すなわち、ハードキーボード入力のシナリオでは、ステップ550を実施して、システム機能 dispatchKeyEventをリロードし、それによって、パスワードボックス内の文字をインターセプトし、好都合には文字列アレイメモリ内に記憶するために、ステップ540で取得されたカーソルの位置を添字として使用して、新たなパスワード文字列を形成する。
【００５８】
ソフトキーボード入力のシナリオでは、ステップ570および580において、パスワードボックス内の現在の入力文字を取得するために、新たなInputConnection入力チャネルが設定され、システム機能 commintText、sendKeyEvent、setComposingTextおよびfinishComposingTextをリロードして、文字をインターセプトし、好都合には文字列アレイメモリ内に記憶するために、ステップ540で取得されたカーソルの位置を添字として使用して、新たなパスワード文字列を形成する。
【００５９】
結合により取得された新たなパスワード文字列は、暗号化され、次いで、ログイン検証のためのサーバに送られ、すなわち、携帯端末のアプリケーションプログラムのためのログイン検証がステップ590を実施することによって完了され、したがって、パスワードは平文形式では転送されず、それによって、ログインセキュリティがさらに確保される。
【００６０】
図6に示すように、実施形態において、携帯端末のアプリケーションプログラムパスワードを保護するための装置は、位置決めモジュール610と、判定モジュール630と、イベント獲得モジュール650と、置換モジュール670とを含む。
【００６１】
位置決めモジュール610は、現在作動中のアプリケーションインターフェースビューを取得するために、アプリケーションインターフェースビューを位置決めするように構成される。
【００６２】
この実施形態において、アプリケーションインターフェースビューは、現在実行中のアプリケーションによって画面上に表示されるビューであり、それによって対応する操作インターフェースがユーザに提供され、その場合、画面上に表示されるアプリケーションインターフェースビューの量は、1つまたは複数であり、例えば、アプリケーションインターフェースビューは、ユーザが操作をトリガするために提供され得るボタン、入力ボックスなどでよい。
【００６３】
位置決めモジュール610は、画面上に表示されているアプリケーションインターフェースビューを位置決めし、ユーザによって現在作動中のアプリケーションインターフェースビューは、ユーザの操作とともに取得される。
【００６４】
実施形態において、位置決めモジュール610は、タッチ画面上のタッチ点が配置されているアプリケーションインターフェースビューを位置決めするようにさらに構成され、その場合、タッチ点が配置されているアプリケーションインターフェースビューは、現在作動中のアプリケーションインターフェースビューである。
【００６５】
この実施形態において、アプリケーションインターフェースビューを表示するための画面は、タッチ画面である。タッチ画面上のユーザの指の移動につれて、位置決めモジュール610は、対応するタッチ点の移動を感知する。タッチ点が任意のアプリケーションインターフェースビューに移動するとき、アプリケーションインターフェースビューが作動され、タッチ点が配置されているアプリケーションインターフェースビューは、現在作動中のアプリケーションインターフェースビューである。
【００６６】
判定モジュール630は、現在作動中のアプリケーションインターフェースビューが入力ボックスであるかどうかを判定するように構成され、そうである場合、イベント獲得モジュール650に通知し、そうでない場合、手順を実施することを停止する。
【００６７】
この実施形態において、判定モジュール630は、現在作動中のアプリケーションインターフェースビューを判定する。判定モジュール630が、現在作動中のアプリケーションインターフェースビューが入力ボックスであることを判定した場合、それはユーザがキー入力イベントをトリガしようとしていることを示し、文字入力が入力ボックス内で実施される。判定モジュール630が、現在作動中のアプリケーションインターフェースビューが入力ボックスでないことを判定した場合、それはユーザがキー入力イベントに関連していない何らかの他の操作をトリガしようとしていることを示し、したがって、キー入力イベントを処理する手順が終了される。
【００６８】
具体的には、判定モジュール630は、ユーザとアプリケーションとの間の相互作用を正確に感知するために、タッチイベントコールバック機能を使用することによって現在作動中のアプリケーションインターフェースビューが入力ボックスであるかどうかを判定する。
【００６９】
イベント獲得モジュール650は、入力ボックス内でトリガされたキー入力イベントを獲得し、キー入力イベントを使用することによって入力文字を取得するように構成される。
【００７０】
この実施形態において、入力ボックス内でトリガされたキー入力イベントを使用することによって文字が入力ボックス内に入力される。この場合、イベント獲得モジュール650は、キー入力イベントによって生成された入力文字を直接獲得する。
【００７１】
置換モジュール670は、その文字を偽パスワード文字に置き換えるように構成される。
【００７２】
この実施形態において、置換モジュール670は、偽装および妨害の目的を達成し、悪質な盗み取りの挙動を邪魔するために、あらゆる入力文字を対応する偽パスワード文字に置き換える。
【００７３】
前述のキー入力イベントに対する処理により、android（登録商標）プラットフォームでトリガされるキー入力イベントは、より安全であり、それの特別なオープンソース機能のために悪質な盗み取りをする者には利便性が提供されず、それによって、入力文字が盗み取られるリスクが大幅に低減し、したがって、支払機能を有し、android（登録商標）プラットフォームで実行されるアプリケーションは、ログイン段階および支払段階の両方において、より安全である。
【００７４】
図7に示すように、実施形態において、判定モジュール630は、識別子獲得ユニット631と識別子判定ユニット633とを含む。
【００７５】
識別子獲得ユニット631は、現在作動中のアプリケーションインターフェースビューに対応する識別子を獲得するように構成される。
【００７６】
この実施形態において、あらゆるアプリケーションインターフェースビューは、固有の対応する識別子を有し、したがって、現在作動中のアプリケーションインターフェースビューが位置決めされた場合、識別子獲得ユニット631は、現在作動中のアプリケーションインターフェースビューに対応する識別子を獲得する。
【００７７】
ユーザと画面との接触により、システム内の識別子獲得ユニット631は、キャプチャされたタッチイベントを感知し、特定のインターフェース機能を使用することによってタッチイベントを処理する。具体的には、インスタントメッセージツールを例として使用すると、ユーザがインスタントメッセージツールの開始インターフェースで、パスワード入力ボックスが配置されている領域をタッチするとき、識別子獲得ユニット631がこの領域に対応する識別子を獲得する。
【００７８】
識別子判定ユニット633は、獲得された識別子が入力ボックス識別子であるかどうかを判定するように構成され、そうである場合、イベント獲得モジュール650に通知し、そうでない場合、手順を停止する。
【００７９】
この実施形態において、獲得された識別子は、現在作動中のアプリケーションインターフェースビューがパスワード入力ボックス、すなわち、パスワードボックス制御ビューであるかどうかを示し、具体的には、識別子判定ユニット633は、判定結果により、後続の処理プロセスを実施するために、タッチイベントコールバック機能を呼び出すことによって獲得された識別子を判定する。
【００８０】
図8に示すように、実施形態において、前述のイベント獲得モジュール650は、監視ユニット651と文字獲得ユニット653とを含む。
【００８１】
監視ユニット651は、監視により入力ボックス内でトリガされたキー入力イベントを取得し、監視により取得したキー入力イベントにより、入力ボックス内のカーソルの位置を位置決めするように構成される。
【００８２】
この実施形態において、文字が入力ボックス内に入力されるにつれて、カーソルの位置も絶えず変化する。実時間におけるカーソルの位置追尾を実装するために、監視ユニット651が監視により入力ボックス内でトリガされたキー入力イベントを取得した後、onSelectionChanged機能をリロードして、入力ボックス内のカーソルの位置を獲得する。
【００８３】
文字獲得ユニット653は、カーソルの位置に入力された文字を獲得し、カーソルの位置により、入力文字を記憶するように構成される。
【００８４】
この実施形態において、文字獲得ユニット653は、文字の正確な獲得および記憶を実装するために、カーソルの位置を文字列アレイメモリの添字として使用し、文字列アレイメモリ内に入力文字を記憶する。
【００８５】
具体的には、入力ボックス内で実施される文字入力では、使用される入力様式が、ハードキーボード入力とソフトキーボード入力とを含み、したがって、文字獲得ユニット653は、入力様式により、文字を獲得する。
【００８６】
ハードキーボード入力様式では、文字獲得ユニット653は、dispatchKeyEvent機能をリロードして、現在入力されている文字を獲得することによってカーソルの位置を獲得し、現在の入力文字を新たな文字列アレイメモリ内に記憶する。
【００８７】
ソフトキーボード入力様式では、文字獲得ユニット653は、InputConnection入力チャネルを新たに設定し、新たに設定したInputConnection入力チャネルと現在トリガされているキー入力イベントとを結合し、新たに設定したInputConnection入力チャネルを使用することによって現在トリガされているキー入力イベントを処理する。この場合、commintText、sendKeyEvent、setComposingText、finishComposingTextなどのシステム機能をリロードして、現在入力されている文字をインターセプトし、現在入力されている文字を新たな文字列アレイメモリ内にコピーする。
【００８８】
文字列アレイメモリは、カーソルの位置を添字として使用することによって入力文字を記憶する。
【００８９】
図9に示すように、実施形態において、前述の入力ボックスは、パスワード入力ボックスであり、前述の装置は、動的暗号化モジュール910とログイン始動モジュール930とをさらに含む。
【００９０】
動的暗号化モジュール910は、入力文字を動的に暗号化して、暗号化した文字列を取得するように構成される。
【００９１】
この実施形態において、獲得された入力文字は、ユーザがアプリケーションにログインするときの対応するパスワードである。したがって、ログインセキュリティをさらに確保するために、動的暗号化モジュール910は、入力文字を動的に暗号化し、したがって、ログイン検証を実施するのに使用されるパスワードは、平文形式では転送されない。
【００９２】
ログイン始動モジュール930は、検証サーバにログイン検証を実施するように要求するために、暗号化された文字列を検証サーバに送るように構成される。
【００９３】
この実施形態において、検証サーバを使用することによってアプリケーションによって始動されたログイン検証を完了するために、アプリケーションは検証サーバと相互作用する。
【００９４】
具体的には、ログインパスワードのセキュリティを確保するために、ログイン始動モジュール930は、暗号化された文字列を検証サーバに送り、検証サーバは、アプリケーションによって送られた、暗号化された文字列を受け取った後、暗号化された文字列を解読して、アプリケーションのログイン検証を完了する。
【００９５】
前述の様式を使用することによって、パスワードが、悪質なプログラムによって監視され、盗み取られることから効果的に防止され、それによって、ユーザのパスワードセキュリティが確保され、アプリケーションのセキュリティが改善される。
【００９６】
実施形態において、入力ボックスがパスワード入力ボックスであるシナリオでは、前述の装置は、有効性検出モジュールをさらに含み、その場合、有効性検出モジュールは、入力文字の有効性を検出するように構成される。
【００９７】
この実施形態において、有効性検出モジュールは、入力文字がアプリケーション自体によって指定された文字形式要件を満足するかどうかを検出し、例えば、インスタントメッセージツールは指定された範囲内の文字によって形成された文字列だけを受け入れ、指定された範囲内にない他の文字または特別な文字の場合、インスタントメッセージツールに正常にログインすることができない。したがって、有効性検出モジュールは、入力文字が有効かどうかを判定するために入力文字の有効性を検出する必要があり、アプリケーションが正常に実行されることを確保するために、判定結果が肯定であるという前提条件の下に文字置換および動的暗号化を実施することができる。
【００９８】
前述の実施形態における方法のプロセスの全部または一部を、関連するハードウェアに命令するコンピュータプログラムによって実装できることを当業者は理解することができる。プログラムをコンピュータ可読記憶媒体に記憶することができ、例えば、本発明の実施形態において、プログラムをコンピュータシステムの記憶媒体に記憶することができ、実施形態における方法の手順を実装するために、コンピュータシステム内の少なくとも1つのプロセッサによって実行することができる。記憶媒体は、磁気ディスク、光ディスク、読み出し専用メモリ(ROM)またはランダムアクセスメモリ(RAM)でよい。
【００９９】
前述の実施形態は、本開示のいくつかの実装様式を示すだけであり、詳細に説明されているが、本開示の特許範囲に限定されるものと解釈してはならない。本開示の保護範囲内に含まれなければならない本開示の概念から逸脱することなく、当業者はさらに変形および改善を加えることができることに留意すべきである。したがって、本開示の特許保護範囲は、添付の特許請求の範囲に従うべきである。
【符号の説明】
【０１００】
610  位置決めモジュール
630  判定モジュール
631  識別子獲得ユニット
633  識別子判定ユニット
650  イベント獲得モジュール
651  監視ユニット
653  文字獲得ユニット
670  置換モジュール
910  動的暗号化モジュール
930  ログイン始動モジュール
【図１】
0006339205.tif 000002
【図２】
0006339205.tif 000003
【図３】
0006339205.tif 000004
【図４】
0006339205.tif 000005
【図５】
0006339205.tif 000006
【図６】
0006339205.tif 000007
【図７】
0006339205.tif 000008
【図８】
0006339205.tif 000009
【図９】
0006339205.tif 000010