TWI659337B - 顯示動態虛擬鍵盤之方法及其電腦程式產品 - Google Patents
顯示動態虛擬鍵盤之方法及其電腦程式產品 Download PDFInfo
- Publication number
- TWI659337B TWI659337B TW107107931A TW107107931A TWI659337B TW I659337 B TWI659337 B TW I659337B TW 107107931 A TW107107931 A TW 107107931A TW 107107931 A TW107107931 A TW 107107931A TW I659337 B TWI659337 B TW I659337B
- Authority
- TW
- Taiwan
- Prior art keywords
- key group
- key
- memory
- virtual keyboard
- group
- Prior art date
Links
Landscapes
- User Interface Of Digital Computer (AREA)
- Input From Keyboards Or The Like (AREA)
Abstract
一種顯示動態虛擬鍵盤之方法及其電腦程式產品,應用於一裝置以產生一虛擬鍵盤,該裝置包含一處理器、一記憶體及一螢幕,該方法包含:使該處理器以隨機方式自該記憶體中選取一第一排列組合或一第二排列組合做為一第一鍵群,該第一排列組合由左至右順序為“0、1、2、3、4、5、6、7、8與9”,而該第二排列組合由左至右順序為“1、2、3、4、5、6、7、8、9與0”;使該處理器以隨機方式選取該第一鍵群之一至複數個虛擬按鍵以調整一按鍵寬度,使得該第一鍵群具有複數種該按鍵寬度;使該處理器讀取該記憶體中一第二鍵群並以隨機方式選取該第二鍵群之一至複數個該虛擬按鍵以調整該按鍵寬度,使得該第二鍵群具有複數種該按鍵寬度,該第二鍵群由左至右順序為“q、w、e、r、t、y、u、i、o與p”;使該處理器讀取該記憶體中一第三鍵群並以隨機方式選取該第三鍵群之一至複數個該虛擬按鍵以調整該按鍵寬度,使得該第三鍵群具有複數種該按鍵寬度,該第三鍵群由左至右順序為“a、s、d、f、g、h、j、k與l”;使該處理器讀取該記憶體中一第四鍵群並以隨機方式選取該第四鍵群之一至複數個該虛擬按鍵以調整該按鍵寬度,使得該第四鍵群具有複數種該按鍵寬度,該第四鍵群由左至
右順序為“z、x、c、v、b、n與m”;於該螢幕顯示該虛擬鍵盤,該虛擬鍵盤由上至下之順序為該第二鍵群、該第三鍵群及該第四鍵群;接收一點擊座標並轉換為該虛擬鍵盤所對應的一字元;將該字元儲存至該記憶體;讀取該記憶體中依序儲存的複數個該字元以組成一字元串;以及,將該字元串傳送至一應用程式之一登入輸入框。
Description
本發明是關於一種螢幕顯示動態虛擬鍵盤的技術,特別是關於一種用於輸入帳號/密碼登入資料的顯示動態虛擬鍵盤之方法及其電腦程式產品。
相較一般的電子商務系統(或稱電商平台)來講,網路銀行係對資安要求最高的網路交易系統,因為網路銀行只需使用者以瀏覽器開啟網頁輸入帳號/密碼就可登入進行電子轉帳交易,風險極高。南韓與大陸分別自2006年與2010年起,要求網路銀行必須善盡保護使用者輸入密碼之安全,故,在客戶端的電腦中須安裝防鍵盤側錄系統,台灣則於2013年在新版網路銀行的安控基準中加入“金融機構應能防止密碼被側錄”的安全措施。可見,帳號/密碼之輸入安全為資安的重要課題,在這個駭客與木馬程式無所不在的時代,防止鍵盤側錄、網路側錄、木馬程式等技術是相當重要的一個資安環節。
因此,許多防止鍵盤側錄的螢幕虛擬鍵盤的先前技術應運而生,先前技術的手法不外乎隨機變換虛擬按鍵的位置,使得惡意程式無法側錄到正確的字元。然而,先前技術因虛擬按鍵未按傳統QWERTY鍵盤佈局
(Keyboard Layout)順序而隨意散置,致使用者必須花費時間尋找按鍵,在使用上相當不便,意即,先前技術無法滿足使用者習慣性操作的需求。故,實有必要改善先前技術硬體與軟體協同運作的資源以提出一種符合使用者習慣性操作的動態虛擬鍵盤之技術,使得虛擬按鍵仍依QWERTY鍵盤佈局順序設置,並可隨機調整虛擬按鍵所對應的點擊區域,使得同一個點的座標在每次虛擬鍵盤執行時都有可能代表不同的按鍵,讓惡意程式即使側錄到點擊座標也無法逆向推算出正確的字元,以便彌補先前技術不足之處。
有鑑於此,本發明提出一種顯示動態虛擬鍵盤之方法及其電腦程式產品,依照QWERTY鍵盤佈局之順序設置虛擬按鍵,再以隨機方式調整虛擬按鍵的寬度,使每次虛擬鍵盤執行時虛擬按鍵所對應的點擊區域皆有變化。
本發明提出一種顯示動態虛擬鍵盤之方法,應用於一裝置以產生一虛擬鍵盤,該裝置包含一處理器、一記憶體及一螢幕,該方法包含:使該處理器以隨機方式自該記憶體中選取一第一排列組合或一第二排列組合做為一第一鍵群,該第一排列組合由左至右順序為“0、1、2、3、4、5、6、7、8與9”,而該第二排列組合由左至右順序為“1、2、3、4、5、6、7、8、9與0”;使該處理器以隨機方式選取該第一鍵群之一至複數個虛擬按鍵以調整一按鍵寬度,使得該第一鍵群具有複數種該按鍵寬度;使該處理器讀取該記憶體中一第二鍵群並以隨機方式選取該第二鍵群之一至複數個該虛擬按鍵以調整該按鍵寬度,使得該第二鍵群具有複數種該按鍵寬度,該第二鍵群由左至右順序為“q、w、e、r、t、y、u、i、o與p”;使該處理器讀取
該記憶體中一第三鍵群並以隨機方式選取該第三鍵群之一至複數個該虛擬按鍵以調整該按鍵寬度,使得該第三鍵群具有複數種該按鍵寬度,該第三鍵群由左至右順序為“a、s、d、f、g、h、j、k與l”;使該處理器讀取該記憶體中一第四鍵群並以隨機方式選取該第四鍵群之一至複數個該虛擬按鍵以調整該按鍵寬度,使得該第四鍵群具有複數種該按鍵寬度,該第四鍵群由左至右順序為“z、x、c、v、b、n與m”;於該螢幕顯示該虛擬鍵盤,該虛擬鍵盤由上至下之順序為該第二鍵群、該第三鍵群及該第四鍵群;接收一點擊座標並轉換為該虛擬鍵盤所對應的一字元;將該字元儲存至該記憶體;讀取該記憶體中依序儲存的複數個該字元以組成一字元串;以及,將該字元串傳送至一應用程式之一登入輸入框。
本發明更進一步,在一些實施例中包含:取得該螢幕之一解析度;該處理器係依據該螢幕之該解析度調整該按鍵寬度。
本發明更進一步,在一些實施例中包含:該虛擬鍵盤包含複數個功能鍵/特殊符號鍵與任意該等鍵群組合;及,該些功能鍵/特殊符號鍵可設定為:“維持一固定按鍵寬度”或“該按鍵寬度受隨機選取而調整”。
本發明更進一步,在一些實施例中包含:將該字元串依據一檢核函數產生一檢查碼;以及,當該字元串傳送至該應用程式之該登入輸入框的同時,將該檢查碼傳送至該應用程式。
本發明復提出一種電腦程式產品,安裝於具有一螢幕及一記憶體之一裝置,該電腦程式產品包含:一第一程式指令、一第二程式指令、一第三程式指令、一第四程式指令以及一第五程式指令,該等程式指令儲存於該記憶體。該第一程式指令,取得該螢幕之一解析度並暫存於該記憶體;
該第二程式指令,以隨機方式選取一第一排列組合或一第二排列組合做為一第一鍵群,該第一排列組合由左至右順序為“0、1、2、3、4、5、6、7、8與9”,而該第二排列組合由左至右順序為“1、2、3、4、5、6、7、8、9與0”;該第三程式指令,以隨機方式選取該第一鍵群、一第二鍵群、一第三鍵群及一第四鍵群之一至複數個虛擬按鍵以調整一按鍵寬度,使得該第一鍵群、該第二鍵群、該第三鍵群及該第四鍵群具有複數種該按鍵寬度,該第二鍵群由左至右順序為“q、w、e、r、t、y、u、i、o與p”,該第三鍵群由左至右順序為“a、s、d、f、g、h、j、k與l”,該第四鍵群由左至右順序為“z、x、c、v、b、n與m”;該第四程式指令,於該螢幕顯示一虛擬鍵盤,該虛擬鍵盤由上至下之順序為該第二鍵群、該第三鍵群及該第四鍵群;以及,該第五程式指令,接收一點擊座標並轉換為該虛擬鍵盤所對應的一字元,將該字元並儲存至該記憶體,讀取該記憶體中依序儲存的複數個該字元以組成一字元串,及,將該字元串傳送至一應用程式之一登入輸入框。
本發明更進一步,在一些實施例中包含:一第六程式指令,將該字元串依據一檢核函數產生一檢查碼;而,當該第五程式指令將該字元串傳送至該應用程式之該登入輸入框的同時,將該檢查碼傳送至該應用程式。
本發明更進一步,在一些實施例中包含:該虛擬鍵盤包含複數個功能鍵/特殊符號鍵與任意該等鍵群組合;及,該些功能鍵/特殊符號鍵可設定為:“維持一固定按鍵寬度”或“該按鍵寬度受隨機選取而調整”。
本發明尚提供一種顯示動態虛擬鍵盤之方法,應用於一裝置以產生一虛擬鍵盤,該裝置包含一處理器、一記憶體及一螢幕,該方法包
含:使該處理器以隨機方式自該記憶體中選取一第一排列組合或一第二排列組合做為一第一鍵群,該第一排列組合由左至右順序為“0、1、2、3、4、5、6、7、8與9”,而該第二排列組合由左至右順序為“1、2、3、4、5、6、7、8、9與0”;使該處理器以隨機方式選取該第一鍵群之一至複數個虛擬按鍵以調整一按鍵寬度,使得該第一鍵群具有複數種該按鍵寬度;於該螢幕顯示該虛擬鍵盤;接收一點擊座標並轉換為該虛擬鍵盤所對應的一字元;將該字元儲存至該記憶體;讀取該記憶體中依序儲存的複數個該字元以組成一字元串;以及,將該字元串傳送至一應用程式之一登入輸入框。
本發明還提供一種顯示動態虛擬鍵盤之方法,應用於一裝置以產生一虛擬鍵盤,該裝置包含一處理器、一記憶體及一螢幕,該方法包含:使該處理器讀取該記憶體中一第二鍵群並以隨機方式選取該第二鍵群之一至複數個該虛擬按鍵以調整該按鍵寬度,使得該第二鍵群具有複數種該按鍵寬度,該第二鍵群由左至右順序為“q、w、e、r、t、y、u、i、o與p”;使該處理器讀取該記憶體中一第三鍵群並以隨機方式選取該第三鍵群之一至複數個該虛擬按鍵以調整該按鍵寬度,使得該第三鍵群具有複數種該按鍵寬度,該第三鍵群由左至右順序為“a、s、d、f、g、h、j、k與l”;使該處理器讀取該記憶體中一第四鍵群並以隨機方式選取該第四鍵群之一至複數個該虛擬按鍵以調整該按鍵寬度,使得該第四鍵群具有複數種該按鍵寬度,該第四鍵群由左至右順序為“z、x、c、v、b、n與m”;於該螢幕顯示該虛擬鍵盤,該虛擬鍵盤由上至下之順序為該第二鍵群、該第三鍵群及該第四鍵群;接收一點擊座標並轉換為該虛擬鍵盤所對應的一字元;將該字元儲存至該記憶體;讀取該記憶體中依序儲存的複數個該字元以組成一字元串;
以及,將該字元串傳送至一應用程式之一登入輸入框。
本發明還提供一種顯示動態虛擬鍵盤之方法,應用於一裝置以產生一虛擬鍵盤,該裝置包含一處理器、一記憶體及一螢幕,該方法包含:使該處理器讀取該記憶體中一第二鍵群並以隨機方式選取該第二鍵群之一至複數個該虛擬按鍵以調整該按鍵寬度,使得該第二鍵群具有複數種該按鍵寬度,該第二鍵群由左至右順序為“q、w、e、r、t、y、u、i、o與p”;使該處理器讀取該記憶體中一第三鍵群,該第三鍵群由左至右順序為“a、s、d、f、g、h、j、k與l”;使該處理器讀取該記憶體中一第四鍵群,該第四鍵群由左至右順序為“z、x、c、v、b、n與m”;於該螢幕顯示該虛擬鍵盤,該虛擬鍵盤由上至下之順序為該第二鍵群、該第三鍵群及該第四鍵群;接收一點擊座標並轉換為該虛擬鍵盤所對應的一字元;將該字元儲存至該記憶體;讀取該記憶體中依序儲存的複數個該字元以組成一字元串;以及,將該字元串傳送至一應用程式之一登入輸入框。
一種顯示動態虛擬鍵盤之方法,應用於一裝置以產生一虛擬鍵盤,該裝置包含一處理器、一記憶體及一螢幕,該方法包含:使該處理器讀取該記憶體中一第二鍵群,該第二鍵群由左至右順序為“q、w、e、r、t、y、u、i、o與p”;使該處理器讀取該記憶體中一第三鍵群並以隨機方式選取該第三鍵群之一至複數個該虛擬按鍵以調整該按鍵寬度,使得該第三鍵群具有複數種該按鍵寬度,該第三鍵群由左至右順序為“a、s、d、f、g、h、j、k與l”;使該處理器讀取該記憶體中一第四鍵群,該第四鍵群由左至右順序為“z、x、c、v、b、n與m”;於該螢幕顯示該虛擬鍵盤,該虛擬鍵盤由上至下之順序為該第二鍵群、該第三鍵群及該第四鍵群;接收一點擊座
標並轉換為該虛擬鍵盤所對應的一字元;將該字元儲存至該記憶體;讀取該記憶體中依序儲存的複數個該字元以組成一字元串;以及,將該字元串傳送至一應用程式之一登入輸入框。
本發明另提供一種顯示動態虛擬鍵盤之方法,應用於一裝置以產生一虛擬鍵盤,該裝置包含一處理器、一記憶體及一螢幕,該方法包含:使該處理器讀取該記憶體中一第二鍵群,該第二鍵群由左至右順序為“q、w、e、r、t、y、u、i、o與p”;使該處理器讀取該記憶體中一第三鍵群,該第三鍵群由左至右順序為“a、s、d、f、g、h、j、k與l”;使該處理器讀取該記憶體中一第四鍵群並以隨機方式選取該第四鍵群之一至複數個該虛擬按鍵以調整該按鍵寬度,使得該第四鍵群具有複數種該按鍵寬度,該第四鍵群由左至右順序為“z、x、c、v、b、n與m”;於該螢幕顯示該虛擬鍵盤,該虛擬鍵盤由上至下之順序為該第二鍵群、該第三鍵群及該第四鍵群;接收一點擊座標並轉換為該虛擬鍵盤所對應的一字元;將該字元儲存至該記憶體;讀取該記憶體中依序儲存的複數個該字元以組成一字元串;以及,將該字元串傳送至一應用程式之一登入輸入框。
以下在實施方式中詳細敘述本發明之詳細特徵以及優點,其內容足以使任何熟習相關技藝者瞭解本發明之技術內容並據以實施,且根據本說明書所揭露之內容、申請專利範圍及圖式,任何熟習相關技藝者可輕易地理解本發明相關之目的及優點。
10‧‧‧裝置
12‧‧‧處理器
14‧‧‧記憶體
16‧‧‧螢幕
18‧‧‧通訊模組
20‧‧‧虛擬鍵盤
22‧‧‧應用程式
24‧‧‧輸入設備模組
26‧‧‧呈現框
28‧‧‧第一鍵群
30‧‧‧第二鍵群
32‧‧‧第三鍵群
34‧‧‧第四鍵群
36‧‧‧登入輸入框一
38‧‧‧登入輸入框二
40‧‧‧登入輸入框三
42‧‧‧登入鍵
第1圖為可執行本發明方法之裝置其系統功能方塊圖(一);
第2圖為可執行本發明方法之裝置其系統功能方塊圖(二);第3圖為本發明實施例一虛擬鍵盤之示意圖;第4圖為本發明實施例二虛擬鍵盤之示意圖;第5圖為本發明實施例三虛擬鍵盤之示意圖;第6圖為本發明實施例四虛擬鍵盤之示意圖;第7圖為本發明實施例五虛擬鍵盤之示意圖;第8圖為本發明實施例六虛擬鍵盤之示意圖;第9圖為本發明實施例七虛擬鍵盤之示意圖;第10圖為本發明實施例八虛擬鍵盤之示意圖;第11圖為本發明實施例一之操作流程圖;第12圖為先前技術應用程式登入之螢幕畫面示意圖;第13圖為本發明實施例一之螢幕畫面示意圖(一);及第14圖為本發明實施例一之螢幕畫面示意圖(二)。
本發明係使用但不限於智慧電視(Smart TV)、個人電腦(PC)、筆記型電腦(Laptop/Notebook/Portable Computer)、智慧手機(Smartphone)、平板電腦(Tablet PC)…等裝置10,凡是配置有螢幕、可執行本發明之步驟並有意保護所輸入之帳號或/與密碼登入資料,皆可以應用本發明之方法。
參閱第1圖,可執行本發明動態虛擬鍵盤之裝置10其系統功能方塊圖(一),圖例僅列出螢幕觸控式裝置10執行本發明一較佳實施例時之相關核心模組,其餘模組省略未描繪。在本發明的一實施例中,虛擬鍵盤20應用於具觸控式螢幕之裝置10,例如:智慧手機或平板電腦,此類裝置10包
含:一或多個處理器12、記憶體14、螢幕16以及通訊模組18。其中,記憶體14載入或儲存有應用程式22以及本發明之虛擬鍵盤20,應用程式22係有輸入資安保護需求的第三方應用程式或是與虛擬鍵盤20整合為一體的金融應用程式或電商交易應用程式。在一些實施例中,應用程式22為網頁瀏覽器(Web Browser)用以執行並顯示網路銀行、網路券商或電商平台之網頁服務,應用程式22接收本發明虛擬鍵盤20之帳號或/與密碼輸入以登入上述該等網頁服務。在一些實施例中,應用程式22與虛擬鍵盤20係整合為一體的網路銀行程式、網路券商程式或電商交易程式,而虛擬鍵盤20屬於該等應用程式22其中的一支子程序(Sub-Function)或子模組(Sub-Module),當應用程式22有輸入資安保護需求時(例如登入)即執行子程序/子模組虛擬鍵盤20,而於需求結束時停止子程序/子模組虛擬鍵盤20之執行。處理器12執行虛擬鍵盤20所包含的複數個程式指令,並以硬體與軟體協同運作的方式實施其步驟。螢幕16用以顯示虛擬鍵盤20的圖形化使用者介面(GUI),以及接受螢幕觸控指令以操作虛擬鍵盤20之按鍵。通訊模組18用以建立Internet網路連線,如:有線寬頻、WLAN(Wi-Fi等)、行動通訊網路(如3G、4G…)等等。
繼續參閱第2圖,可執行本發明動態虛擬鍵盤之裝置10其系統功能方塊圖(二),圖例僅列出非螢幕觸控式裝置10執行本發明一較佳實施例時之相關核心模組,其餘模組省略未描繪。在本發明的一實施例中,虛擬鍵盤20應用於非觸控式螢幕之裝置10,例如:個人電腦、筆記型電腦、智慧型電視…等,與第1圖不同的地方是此類裝置10另包含輸入設備模組(Input Device Module),例如:滑鼠(Mouse)、觸控板(Touch Pad)、搖控器(Remote Control)…等,用以點選虛擬鍵盤20之按鍵以輸入帳號或/與密碼至應用程式
22。此類裝置10之其餘模組功能係與第1圖相同,唯,其螢幕16不具觸控功能,故不另贅述。
參閱第3圖,本發明實施例一虛擬鍵盤20之示意圖,其說明了本發明一實施例虛擬鍵盤20之鍵盤佈局由上至下包含了:呈現框26、第一鍵群28、第二鍵群30、第三鍵群32及第四鍵群34。
其中,呈現框26在應用程式開發時可用標籤(Label)元件或輸入框(InputBox,又稱輸入方塊)元件來實作呈現框26,此呈現框26係於使用者輸入前用以顯示操作提示(Operation Tips),如圖例中的字串“輸入完畢請按OK鍵”,而當使用者開始點選虛擬按鍵進行輸入時則用以顯示“被點選的虛擬按鍵”。在一些實施例中,呈現框26並非設置於虛擬鍵盤的上方第一排,如第14圖所示。
本發明之第一鍵群28至少包含十個數字按鍵,而本發明的數字按鍵至少包含兩種排列組合可擇其中之一做為第一鍵群28,第一排列組合的由左至右順序為“0、1、2、3、4、5、6、7、8與9”(如第3圖所示),而第二排列組合的由左至右順序為“1、2、3、4、5、6、7、8、9與0”(如第5圖所示)。本發明之虛擬鍵盤20每次執行時由處理器12以隨機方式任意選取第一排列組合或第二排列組合做為虛擬鍵盤20佈局之第一鍵群。在一些實施例中,第一鍵群28除了上述的第一排列組合與第二排列組合可供隨機選擇之外,另包含第三排列組合與第四排列組合。第三排列組合的由左至右順序為“0、9、8、7、6、5、4、3、2與1”(未描繪),而第四排列組合的由左至右順序為“9、8、7、6、5、4、3、2、1與0”(未描繪)。每次執行本實施例時係由處理器12以隨機方式任意選取四種排列組合中的其中一種做為虛
擬鍵盤20佈局之第一鍵群28。
本發明之第二鍵群30至少包含十個字母按鍵,其由左至右順序為“q、w、e、r、t、y、u、i、o與p”,此即傳統QWERTY鍵盤佈局的順序。當使用者點選虛擬鍵盤20的“Shift鍵”(即,圖例中第四鍵群34左邊第一個“向上箭頭按鍵”)時,處理器12即變更顯示第二鍵群30之按鍵標示,改為大寫字母的“Q、W、E、R、T、Y、U、I、O與P”。
本發明之第三鍵群32至少包含九個字母按鍵,其由左至右順序為“a、s、d、f、g、h、j、k與l”,此亦為傳統QWERTY鍵盤佈局的順序。當使用者點選虛擬鍵盤20的“Shift鍵”時,處理器12即變更顯示第三鍵群32之按鍵標示,改為大寫字母的“A、S、D、F、G、H、J、K與L”。
本發明之第四鍵群34至少包含七個字母按鍵,其由左至右順序為“z、x、c、v、b、n與m”,此亦為傳統QWERTY鍵盤佈局的順序。當使用者點選虛擬鍵盤20的“Shift鍵”時,處理器12即變更顯示第四鍵群34之按鍵標示,改為大寫字母的“Z、X、C、V、B、N與M”。
本發明之虛擬鍵盤20於每次執行時,由處理器12以隨機方式在各鍵群挑選一至複數個按鍵,並將該些“被隨機選取的按鍵”加以放大其按鍵寬度。實施例一(如第3圖所示)係於各鍵群隨機選取一至複數個不等的按鍵,圖例中第一鍵群28的“被隨機選取的按鍵”為“1個”(即“數字2”)、第二鍵群30的“被隨機選取的按鍵”為“2個”(即“字母q”與“字母i”)、第三鍵群32的“被隨機選取的按鍵”為“2個”(即“字母f”與“字母h”),至於第四鍵群34的“被隨機選取的按鍵”為“3個”(即“字母x”、“字母m”及“OK”鍵)。此實施例在同一鍵群中,被隨機選取的按鍵具有
相同的按鍵寬度,例如:“字母q”與“字母i”的按鍵寬度相同,而“字母f”與“字母h”的按鍵寬度相同。本發明設置一個“按鍵調整數量預設值”(以下稱為“調整數量”)以控制“被隨機選取的按鍵數量”,於此實施例,各鍵群的調整數量被設置為:“調整數量大於1,且小於等於3”(“1<調整數量3”)。
本發明於第一鍵群28由處理器12以隨機方式選取第一排列組合或第二排列組合,以及以隨機方式在各鍵群取選按鍵並加以放大其按鍵寬度,其目的在於隨機調整虛擬按鍵的點擊區域,即使惡意程式側錄到所有的點擊座標,亦無法以座標逆向推算出正確的字元(即,按鍵)。亦即,在本發明虛擬鍵盤20中的同一個點擊座標,即(X,Y),每次處理器12執行並顯示於螢幕16時時,都會代表不同的按鍵(即,字元)。以第一鍵群28為例來說明,假設執行本發明虛擬鍵盤20之裝置10為智慧型手機,其螢幕解析度為1920x1080。而圖例中“數字1”按鍵內的某個點的座標位置假設為(100,575),當下次處理器12執行虛擬鍵盤20時,有可能是第二排列組合被選為第一鍵群28的鍵盤佈局(如第5圖所示),即以“1”為首的排列順序,此時,座標位置(100,575)即不在“數字1”按鍵內。即便是第一排列組合被選為第一鍵群28的鍵盤佈局,即以“0”為首的排列順序,但是經處理器12隨機選取並放大第一鍵群28中某個按鍵(或某些按鍵)的按鍵寬度後,該點座標位置(100,575)還是極有可能不在“數字1”按鍵內。同理,其他鍵群經處理器12隨機選取按鍵並加以放大按鍵寬度後,同一個座標位置在每次執行時都極有可能代表不同的按鍵(即,字元),此技術即可讓惡意程式所側錄到的點擊座標無法逆向推算出正確的字元。並且,由於按鍵仍依照傳統的QWERTY鍵盤佈局之
順序排列,方便使用者依其使用習慣找尋按鍵所在位置。
本發明上述四個鍵群僅用於規範數字鍵(第一鍵群28)與字母鍵(第二鍵群30至第四鍵群34)於鍵群中的排列順序,本發明並未限定功能鍵及特殊符號鍵需設置在某一個特定的鍵群,功能鍵例如:“回車鍵”(Enter,亦可標示為“確認”或“OK”)、“大寫鎖定鍵”(Caps Lock)、“Shift鍵”、“倒退鍵”(Backspace,即圖例中第三鍵群32最右邊的“向左箭頭按鍵”)…等。至於“特殊符號鍵”例如:At(@)、底線(_)、點(.)、空白鍵(Space)…等,可由人工方式任意組合至某一鍵群。意即,軟體開發者或其他應用本發明方法之廠商,可依其需求將功能鍵、特殊符號鍵安插至任意鍵群。在一些實施例中,本發明於各鍵群中隨機選取按鍵並調整按鍵寬度時,可排除該些功能鍵/特殊符號鍵而不做調整,即,該些功能鍵/特殊符號鍵維持固定按鍵寬度。在一些實施例中,該些功能鍵/特殊符號鍵由所屬鍵群負責,亦在隨機選取的名單之中,即,該些功能鍵/特殊符號鍵受隨機選取而調整。參閱第4圖,本發明實施例二虛擬鍵盤20之示意圖,本實施例說明了功能鍵與特殊符號鍵可由人工(開發者)安插在任一鍵群,經人工設定功能鍵與特殊符號鍵之所在鍵群後,可再設定該些功能鍵與特殊符號鍵是否受控制以隨機調整寬度。以圖例中的“@”符號鍵為例來說明,該“@”符號鍵經人工設定組合至數字鍵群的左首第一個位置後,不論處理器12隨機選取的是第一排列組合、第二排列組合、第三排列組合或第四排列組合,該“@”符號鍵皆位於第一鍵群28的左首第一個位置。另外,此實施例亦說明了虛擬鍵盤20並未限定須有自己的呈現框26(第5圖的實施例有自己的呈現框26,第4圖的實施例則沒有);本發明亦允許虛擬鍵盤20與應用程式22共用密碼輸入
框(如第14圖所示,容後說明)。
參閱第5圖,本發明實施例三虛擬鍵盤20之示意圖,本實施例說明了處理器12以隨機方式在各鍵群挑選同樣數量的按鍵(圖例為“1個”,即“調整數量=1”),並加以放大其按鍵寬度,且加大的按鍵寬度可以不完全相同,換言之,有複數種放大的按鍵寬度。
參閱第6圖,本發明實施例四虛擬鍵盤20之示意圖,本實施例說明了處理器12以隨機方式在各鍵群挑選同樣數量的按鍵(圖例為“2個”,即“調整數量=2”),並加以放大其按鍵寬度,而同一鍵群中,被隨機選取的按鍵具有相同的按鍵寬度。例如:圖例中“數字1”與“數字5”的按鍵寬度相同,“字母w”與“字母o”的按鍵寬度相同,“字母g”與“字母k”的按鍵寬度相同,而“字母c”與“字母m”的按鍵寬度相同。
參閱第7圖,本發明實施例五虛擬鍵盤20之示意圖,本實施例說明了處理器12以隨機方式在各鍵群挑選同樣數量的按鍵(圖例為“3個”,即“調整數量=3”),並加以放大其按鍵寬度,而同一鍵群中,被隨機選取的按鍵具有相同的按鍵寬度。例如:圖例中“數字4”、“數字6”與“數字8”的按鍵寬度相同,“字母e”、“字母t”與“字母o”的按鍵寬度相同,“字母d”、“字母h”與“字母k”的按鍵寬度相同,而“字母x”、“字母v”與“字母n”的按鍵寬度相同。
參閱第8圖,本發明實施例六虛擬鍵盤20之示意圖,本實施例說明了處理器12以隨機方式在各鍵群挑選同樣數量的按鍵(圖例為“2個”,即“調整數量=2”),並加以放大其按鍵寬度。本實施例與上述該些實施例不同的地方在於,同一鍵群中被隨機選取的按鍵具有不同的按鍵寬
度,意即,同一鍵群中放大的按鍵寬度不等長。例如:圖例中“數字1”與“數字5”的按鍵寬度不等長,“字母w”與“字母o”的按鍵寬度不等長,“字母g”與“字母k”的按鍵寬度不等長,而“字母c”與“字母m”的按鍵寬度也不等長。
參閱第9圖,本發明實施例七虛擬鍵盤20之示意圖,與上述該些實施例相反的是,本實施例處理器12以隨機方式在各鍵群挑選複數個按鍵並加以縮小其按鍵寬度,而同一鍵群中,縮小後的按鍵寬度相同。以此圖例來說明,處理器12在第一鍵群28隨機選取其中“7”個按鍵並縮小其按鍵寬度,在第二鍵群30隨機選取其中“7”個按鍵並縮小其按鍵寬度,在第三鍵群32隨機選取其中“7”個按鍵(含功能鍵)並縮小其按鍵寬度,並在第四鍵群34隨機選取其中“6”個按鍵(含功能鍵)並縮小其按鍵寬度。意即,此實施例各鍵群的調整數量被設置為:“調整數量大於5,且小於8”(“5<調整數量<8”)。
參閱第10圖,本發明實施例八虛擬鍵盤20之示意圖,其說明了本實施例虛擬鍵盤20之鍵盤佈局由上至下包含了:呈現框26、第二鍵群30、第三鍵群32、第四鍵群34及第一鍵群28。雖然本實施例將數字按鍵設置在字母按鍵之下,但是,所有字母按鍵仍依照傳統QWERTY鍵盤佈局之順序排列,使用者仍可依照其操作習慣找到各按鍵之位置。
參閱第11圖,本發明實施例一之操作流程圖,使用者利用智慧手機執行行動銀行應用程式並進行登入之操作流程,請同時參第1圖、第12圖、第13圖及第14圖,係包含:
步驟S101:於裝置10上執行應用程式22。使用者於智慧型
手機(即,裝置10)執行行動銀行應用程式22,螢幕16顯示行動銀行應用程式22之圖形化使用者介面。
步驟S102:與伺服器建立連線並顯示登入畫面。當通訊模組18建立Internet網路連線後,行動銀行應用程式22與遠端伺服器建立連線,並於螢幕16顯示登入畫面,如第12圖所示(圖例係先前技術)。
步驟S103:輸入帳戶/用戶代號。使用者分別點擊登入輸入框一36與登入輸入框二38,並以作業系統內建之虛擬鍵盤(未描繪)輸入帳戶/用戶代號。在一些先前技術之登入畫面,使用者僅需輸入帳戶(登入輸入框一36)與密碼(登入輸入框三40),而無需輸入用戶代號(登入輸入框二38),未描繪。在一些實施例中,自此步驟開始即可應用本發明之虛擬鍵盤20輸入帳戶/用戶代號,亦即,在此步驟時使用者以虛擬鍵盤20取代作業系統內建之虛擬鍵盤進行輸入之操作,如第13圖所示。
步驟S104:點擊密碼輸入框。使用者在輸入完帳戶/用戶代號後,點擊密碼輸入框(即,登入輸入框三40)。由此步驟開始,為本發明之方法。
步驟S105:取得螢幕16之解析度。使用者於前一步驟點擊登入輸入框三40(密碼輸入框)時,即觸發處理器12執行本發明虛擬鍵盤20之第一程式指令,第一程式指令執行後取得螢幕16之解析度並暫存於記憶體14中。螢幕16之解析度係用於計算虛擬鍵盤20之顯示尺寸,如第13圖所示。
步驟S106:處理器12隨機選取第一鍵群28之排列組合。取得螢幕16之解析度後,本發明虛擬鍵盤20之第二程式指令使處理器12
以隨機方式選取第一排列組合或第二排列組合做為第一鍵群28,第一排列組合的由左至右順序為“0、1、2、3、4、5、6、7、8與9”,而第二排列組合的由左至右順序為“1、2、3、4、5、6、7、8、9與0”。在一些實施例中,另包含第三排列組合與第四排列組合可供處理器12隨機選取,第三排列組合的由左至右順序為“0、9、8、7、6、5、4、3、2與1”,而第四排列組合的由左至右順序為“9、8、7、6、5、4、3、2、1與0”。第13圖的實施例是處理器12選取了第一排列組合的順序。
步驟S107:處理器12隨機選取第一鍵群28之按鍵以調整寬度。第二程式指令執行後,本發明虛擬鍵盤20之第三程式指令使處理器12以隨機方式選取第一鍵群28之虛擬按鍵以調整按鍵寬度。在一些實施例中,第三程式指令以隨機方式選取第一鍵群28中的一至複數個虛擬按鍵,再依據步驟S105所取得的螢幕16解析度來計算,將“被隨機選取的按鍵”加以放大按鍵寬度。在一些實施例中,第三程式指令以隨機方式選取第一鍵群28中的一至複數個虛擬按鍵,再依據螢幕16解析度來計算,將“被隨機選取的按鍵”加以縮小按鍵寬度。第三程式指令調整虛擬按鍵的寬度後,使得第一鍵群28具有複數種按鍵寬度。
步驟S108:處理器12隨機選取第二鍵群30之按鍵以調整寬度。第一鍵群28之按鍵調整寬度後,接著,第三程式指令使處理器12以隨機方式選取第二鍵群30之虛擬按鍵以調整按鍵寬度。第二鍵群由左至右順序為“q、w、e、r、t、y、u、i、o與p”。在一些實施例中,第三程式指令以隨機方式選取第二鍵群30中的一至複數個虛擬按鍵,再依據步驟S105所取得的螢幕16解析度來計算,將“被隨機選取的按鍵”加以放大按鍵
寬度。在一些實施例中,第三程式指令以隨機方式選取第二鍵群30中的一至複數個虛擬按鍵,再依據螢幕16解析度來計算,將“被隨機選取的按鍵”加以縮小按鍵寬度。第三程式指令調整虛擬按鍵的寬度後,使得第二鍵群30具有複數種按鍵寬度。
步驟S109:處理器12隨機選取第三鍵群32之按鍵以調整寬度。第二鍵群30之按鍵調整寬度後,接著,第三程式指令使處理器12以隨機方式選取第三鍵群32之虛擬按鍵以調整按鍵寬度。第三鍵群由左至右順序為“a、s、d、f、g、h、j、k與l”。在一些實施例中,第三程式指令以隨機方式選取第三鍵群32中的一至複數個虛擬按鍵,再依據步驟S105所取得的螢幕16解析度來計算,將“被隨機選取的按鍵”加以放大按鍵寬度。在一些實施例中,第三程式指令以隨機方式選取第三鍵群32中的一至複數個虛擬按鍵,再依據螢幕16解析度來計算,將“被隨機選取的按鍵”加以縮小按鍵寬度。第三程式指令調整虛擬按鍵的寬度後,使得第三鍵群32具有複數種按鍵寬度。
步驟S110:處理器12隨機選取第四鍵群34之按鍵以調整寬度。第三鍵群32之按鍵調整寬度後,接著,第三程式指令使處理器12以隨機方式選取第四鍵群34之虛擬按鍵以調整按鍵寬度。第四鍵群由左至右順序為“z、x、c、v、b、n與m”。在一些實施例中,第三程式指令以隨機方式選取第四鍵群34中的一至複數個虛擬按鍵,再依據步驟S105所取得的螢幕16解析度來計算,將“被隨機選取的按鍵”加以放大按鍵寬度。在一些實施例中,第三程式指令以隨機方式選取第四鍵群34中的一至複數個虛擬按鍵,再依據螢幕16解析度來計算,將“被隨機選取的按鍵”加以
縮小按鍵寬度。第三程式指令調整虛擬按鍵的寬度後,使得第四鍵群34具有複數種按鍵寬度。
步驟S111:於螢幕16上顯示虛擬鍵盤20。第三程式指令隨機調整完各鍵群之按鍵寬度後,本發明虛擬鍵盤20之第四程式指令於螢幕16上顯示虛擬鍵盤20。在一些實施例中,虛擬鍵盤20由上至下之順序為第一鍵群28、第二鍵群30、第三鍵群32及第四鍵群34。在一些實施例中,虛擬鍵盤20由上至下之順序為第二鍵群30、第三鍵群32、第四鍵群34及第一鍵群28。在一些實施例中,第四程式指令顯示的虛擬鍵盤20更包括一個呈現框26,如第13圖所示。使用者於此實施例之虛擬鍵盤20輸入密碼時,所輸入的字元串(即,密碼)會先暫時顯示於呈現框26,當使用者按下虛擬鍵盤20之“OK鍵”後,所輸入的字元串才會被傳送至登入輸入框三40(密碼輸入框)。在一些實施例中,第四程式指令顯示的虛擬鍵盤20如第14圖所示,使用者於此實施例之虛擬鍵盤20輸入密碼時,所輸入的字元串會直接顯示在登入輸入框三40,意即,本實施例係應用程式22之登入輸入框三40與虛擬鍵盤20之呈現框26共用同一個密碼輸入框。
步驟S112:選取虛擬鍵盤20之按鍵以輸入密碼。第四程式指令於螢幕16顯示虛擬鍵盤20後,使用者以點選虛擬按鍵方式輸入密碼。使用者點選按鍵(即,點擊事件發生於按鍵的點擊區域)時,由本發明虛擬鍵盤20之第五程式指令接收並記錄每次的點擊座標,再由第五程式指令將點擊座標進行分析比對,以查詢點擊座標所對應的字元(或功能鍵)為何者。最後,第五程式指令將所對應的字元顯示於呈現框26中,同時暫存於記憶體14。每個點擊座標分析比對後係對應一個字元(或功能鍵),而記憶體14中
依序儲存的多個字元合稱為“字元串”。在一些實施例中,第五程式指令並非直接在呈現框26中顯示點擊座標所對應的字元串,而是顯示星號(*)取代。
步驟S113:點選虛擬鍵盤20之“OK鍵”。密碼輸入完畢後,使用者點選虛擬鍵盤20之“OK鍵”,此時,本發明虛擬鍵盤20之第六程式指令以檢核函數將字元串(即,密碼)產生一個對應的檢查碼(Checksum)並暫存於記憶體14中。在一些實施例中,檢核函數為雜湊函數(Hash Function),而其產生對應的檢查碼即為雜湊值(Hash Value)。
步驟S114:將密碼傳送至密碼輸入框。第六程式指令產生對應的檢查碼後,由第五程式指令將記憶體14中的字元串傳送給程用程式22的密碼輸入框(登入輸入框三40),同時,將記憶體14中的檢查碼傳送給應用程式22。應用程式22接收到檢查碼以及字元串(透過登入輸入框三40接收)後即以檢查碼驗證字元串的資料真偽。
步驟S115:點選登入鍵42。登入輸入框三40接收到字元串以及檢查碼,並驗證資料真偽後,使用者即可點選登入鍵42。
上述實施例操作流程中,步驟S104至步驟S114為本發明顯示動態虛擬鍵盤之方法,其餘步驟係屬先前技術;在一些實施例中,亦可由步驟S103開始利用本發明之虛擬鍵盤20輸入帳戶/用戶代號。
上述步驟S113至步驟S115所利用的檢核函數與檢查碼,係本發明為防止裝置10被植入木馬程式或是駭客侵入後,以竄改記憶體中的資料方式將相關輸入值予以改變,故,本發明以檢核函數與檢查碼進行資料真偽之驗證。
上述操作流程係以螢幕觸控式之裝置10(即,智慧型手機)
為例來說明,本發明亦可應用於非螢幕觸控式之裝置10,例如個人電腦或筆記型電腦。當應用於非螢幕觸控式之裝置10時,在步驟S103使用者係以實體鍵盤進行操作,或以輸入設備模組24(如滑鼠)進行按鍵之點選,而在步驟S104、步驟S112及步驟S113使用者係以輸入設備模組24進行按鍵之點選。另外,由於個人電腦的螢幕16較大,有足夠的顯示區域,故,在一些實施例中,本發明之虛擬鍵盤20於個人電腦/筆記型電腦…等裝置10執行時,係以固定尺寸顯示,步驟S105即不需偵測螢幕16之解析度。
對本發明的不同實施例可理解的是,由電腦執行的程式指令可實行流程圖中的各個方塊、流程圖中方塊的組合、以及各實施例中的步驟。把該等程式指令提供給一處理器操作以產生一機器或產生硬體與軟體協同運作的資源,藉此在該處理器上執行該等指令時,將產生用以實行流程圖方塊指明之動作或技術效果的構件。不同集合的程式指令亦可使展示於流程圖方塊中的至少某些操作步驟並行地進行,且虛擬鍵盤的各個程式指令所表達的技術內容可能依不同實施例而不同。再者,亦可在不只一個處理器上進行某些該等步驟,例如本發明裝置中微處理器與周邊介面處理器所協同運作的狀況。此外,在不偏離本發明範圍或精神的條件下,流程圖中之一或多個方塊或方塊的組合亦可與其他方塊或方塊組合同時地進行,或甚至以不同於展示出的順序來進行。
因此,本發明流程圖的方塊支援用以進行指明動作或技術效果的構件組合、用以進行指明動作或技術效果的步驟組合、以及用以進行指明動作或技術效果的程式指令構件。亦可了解的是,這些指明動作或技術效果是由特殊用途硬體式系統或者特殊用途硬體與程式指令協同運作來實行
本發明流程圖的各個方塊以及流程圖的方塊組合。
綜上所述,本發明提出一種顯示動態虛擬鍵盤之技術,解決了先前技術無法同時按傳統QWERTY鍵盤佈局的順序排列,又避開惡意程式側錄點擊座標的問題,藉由本發明的技術可滿足使用者習慣上操作的需求,又提高資安保護程度,彌補了先前技術不足之處。
雖然本發明的技術內容已經以較佳實施例揭露如上,然其並非用以限定本發明,任何熟習此技藝者,在不脫離本發明之精神所作些許之更動與潤飾,皆應涵蓋於本發明的範疇內,因此本發明之保護範圍當視後附之申請專利範圍所界定者為準。
Claims (15)
- 一種顯示動態虛擬鍵盤之方法,應用於一裝置以產生一虛擬鍵盤,該裝置包含一處理器、一記憶體及一螢幕,該方法包含:使該處理器以隨機方式自該記憶體中選取一第一排列組合或一第二排列組合做為一第一鍵群,該第一排列組合由左至右順序為“0、1、2、3、4、5、6、7、8與9”,而該第二排列組合由左至右順序為“1、2、3、4、5、6、7、8、9與0”;使該處理器以隨機方式選取該第一鍵群之一至複數個虛擬按鍵以調整一按鍵寬度,使得該第一鍵群具有複數種該按鍵寬度;使該處理器讀取該記憶體中一第二鍵群並以隨機方式選取該第二鍵群之一至複數個該虛擬按鍵以調整該按鍵寬度,使得該第二鍵群具有複數種該按鍵寬度,該第二鍵群由左至右順序為“q、w、e、r、t、y、u、i、o與p”;使該處理器讀取該記憶體中一第三鍵群並以隨機方式選取該第三鍵群之一至複數個該虛擬按鍵以調整該按鍵寬度,使得該第三鍵群具有複數種該按鍵寬度,該第三鍵群由左至右順序為“a、s、d、f、g、h、j、k與l”;使該處理器讀取該記憶體中一第四鍵群並以隨機方式選取該第四鍵群之一至複數個該虛擬按鍵以調整該按鍵寬度,使得該第四鍵群具有複數種該按鍵寬度,該第四鍵群由左至右順序為“z、x、c、v、b、n與m”;於該螢幕顯示該虛擬鍵盤,該虛擬鍵盤由上至下之順序為該第二鍵群、該第三鍵群及該第四鍵群;接收一點擊座標並轉換為該虛擬鍵盤所對應的一字元;將該字元儲存至該記憶體;讀取該記憶體中依序儲存的複數個該字元以組成一字元串;以及,將該字元串傳送至一應用程式之一登入輸入框。
- 如請求項1所述的顯示動態虛擬鍵盤之方法,其中另包含一第三排列組合與一第四排列組合可供該處理器隨機選擇做為該第一鍵群,該第三排列組合的由左至右順序為“0、9、8、7、6、5、4、3、2與1”,而該第四排列組合的由左至右順序為“9、8、7、6、5、4、3、2、1與0”。
- 如請求項1所述的顯示動態虛擬鍵盤之方法,其中該虛擬鍵盤由上至下之順序為第一鍵群、該第二鍵群、該第三鍵群及該第四鍵群。
- 如請求項1所述的顯示動態虛擬鍵盤之方法,其中該虛擬鍵盤由上至下之順序為該第二鍵群、該第三鍵群、該第四鍵群及第一鍵群。
- 如請求項1所述的顯示動態虛擬鍵盤之方法,其中更包含:取得該螢幕之一解析度;以及,該處理器係依據該螢幕之該解析度調整該按鍵寬度。
- 一種電腦程式產品,安裝於具有一螢幕及一記憶體之一裝置,該電腦程式產品包含:一第二程式指令,以隨機方式選取一第一排列組合或一第二排列組合做為一第一鍵群,該第一排列組合由左至右順序為“0、1、2、3、4、5、6、7、8與9”,而該第二排列組合由左至右順序為“1、2、3、4、5、6、7、8、9與0”;一第三程式指令,以隨機方式選取該第一鍵群、一第二鍵群、一第三鍵群及一第四鍵群之一至複數個虛擬按鍵以調整一按鍵寬度,使得該第一鍵群、該第二鍵群、該第三鍵群及該第四鍵群具有複數種該按鍵寬度,該第二鍵群由左至右順序為“q、w、e、r、t、y、u、i、o與p”,該第三鍵群由左至右順序為“a、s、d、f、g、h、j、k與l”,該第四鍵群由左至右順序為“z、x、c、v、b、n與m”;一第四程式指令,於該螢幕顯示一虛擬鍵盤,該虛擬鍵盤由上至下之順序為該第二鍵群、該第三鍵群及該第四鍵群;一第五程式指令,接收一點擊座標並轉換為該虛擬鍵盤所對應的一字元,將該字元顯示於一呈現框並儲存至該記憶體,讀取該記憶體中依序儲存的複數個該字元以組成一字元串,及,將該字元串傳送至一應用程式之一登入輸入框;其中,該等程式指令儲存於該記憶體。
- 如請求項6所述之電腦程式產品,其中更包含:一第三排列組合與一第四排列組合可供該第二程式指令隨機選擇做為該第一鍵群,該第三排列組合的由左至右順序為“0、9、8、7、6、5、4、3、2與1”,而該第四排列組合的由左至右順序為“9、8、7、6、5、4、3、2、1與0”。
- 如請求項6所述之電腦程式產品,其中該虛擬鍵盤由上至下之順序為第一鍵群、該第二鍵群、該第三鍵群及該第四鍵群。
- 如請求項6所述之電腦程式產品,其中該虛擬鍵盤由上至下之順序為該第二鍵群、該第三鍵群、該第四鍵群及第一鍵群。
- 如請求項6所述之電腦程式產品,其中更包含:一第一程式指令,取得該螢幕之一解析度;以及,該第三程式指令係依據該螢幕之該解析度調整該按鍵寬度。
- 一種顯示動態虛擬鍵盤之方法,應用於一裝置以產生一虛擬鍵盤,該裝置包含一處理器、一記憶體及一螢幕,該方法包含:使該處理器以隨機方式自該記憶體中選取一第一排列組合或一第二排列組合做為一第一鍵群,該第一排列組合由左至右順序為“0、1、2、3、4、5、6、7、8與9”,而該第二排列組合由左至右順序為“1、2、3、4、5、6、7、8、9與0”;使該處理器以隨機方式選取該第一鍵群之一至複數個虛擬按鍵以調整一按鍵寬度,使得該第一鍵群具有複數種該按鍵寬度;於該螢幕顯示該虛擬鍵盤;接收一點擊座標並轉換為該虛擬鍵盤所對應的一字元;將該字元儲存至該記憶體;讀取該記憶體中依序儲存的複數個該字元以組成一字元串;以及,將該字元串傳送至一應用程式之一登入輸入框。
- 一種顯示動態虛擬鍵盤之方法,應用於一裝置以產生一虛擬鍵盤,該裝置包含一處理器、一記憶體及一螢幕,該方法包含:使該處理器讀取該記憶體中一第二鍵群並以隨機方式選取該第二鍵群之一至複數個該虛擬按鍵以調整該按鍵寬度,使得該第二鍵群具有複數種該按鍵寬度,該第二鍵群由左至右順序為“q、w、e、r、t、y、u、i、o與p”;使該處理器讀取該記憶體中一第三鍵群並以隨機方式選取該第三鍵群之一至複數個該虛擬按鍵以調整該按鍵寬度,使得該第三鍵群具有複數種該按鍵寬度,該第三鍵群由左至右順序為“a、s、d、f、g、h、j、k與l”;使該處理器讀取該記憶體中一第四鍵群並以隨機方式選取該第四鍵群之一至複數個該虛擬按鍵以調整該按鍵寬度,使得該第四鍵群具有複數種該按鍵寬度,該第四鍵群由左至右順序為“z、x、c、v、b、n與m”;於該螢幕顯示該虛擬鍵盤,該虛擬鍵盤由上至下之順序為該第二鍵群、該第三鍵群及該第四鍵群;接收一點擊座標並轉換為該虛擬鍵盤所對應的一字元;將該字元儲存至該記憶體;讀取該記憶體中依序儲存的複數個該字元以組成一字元串;以及,將該字元串傳送至一應用程式之一登入輸入框。
- 一種顯示動態虛擬鍵盤之方法,應用於一裝置以產生一虛擬鍵盤,該裝置包含一處理器、一記憶體及一螢幕,該方法包含:使該處理器讀取該記憶體中一第二鍵群並以隨機方式選取該第二鍵群之一至複數個該虛擬按鍵以調整該按鍵寬度,使得該第二鍵群具有複數種該按鍵寬度,該第二鍵群由左至右順序為“q、w、e、r、t、y、u、i、o與p”;使該處理器讀取該記憶體中一第三鍵群,該第三鍵群由左至右順序為“a、s、d、f、g、h、j、k與l”;使該處理器讀取該記憶體中一第四鍵群,該第四鍵群由左至右順序為“z、x、c、v、b、n與m”;於該螢幕顯示該虛擬鍵盤,該虛擬鍵盤由上至下之順序為該第二鍵群、該第三鍵群及該第四鍵群;接收一點擊座標並轉換為該虛擬鍵盤所對應的一字元;將該字元儲存至該記憶體;讀取該記憶體中依序儲存的複數個該字元以組成一字元串;以及,將該字元串傳送至一應用程式之一登入輸入框。
- 一種顯示動態虛擬鍵盤之方法,應用於一裝置以產生一虛擬鍵盤,該裝置包含一處理器、一記憶體及一螢幕,該方法包含:使該處理器讀取該記憶體中一第二鍵群,該第二鍵群由左至右順序為“q、w、e、r、t、y、u、i、o與p”;使該處理器讀取該記憶體中一第三鍵群並以隨機方式選取該第三鍵群之一至複數個該虛擬按鍵以調整該按鍵寬度,使得該第三鍵群具有複數種該按鍵寬度,該第三鍵群由左至右順序為“a、s、d、f、g、h、j、k與l”;使該處理器讀取該記憶體中一第四鍵群,該第四鍵群由左至右順序為“z、x、c、v、b、n與m”;於該螢幕顯示該虛擬鍵盤,該虛擬鍵盤由上至下之順序為該第二鍵群、該第三鍵群及該第四鍵群;接收一點擊座標並轉換為該虛擬鍵盤所對應的一字元;將該字元儲存至該記憶體;讀取該記憶體中依序儲存的複數個該字元以組成一字元串;以及,將該字元串傳送至一應用程式之一登入輸入框。
- 一種顯示動態虛擬鍵盤之方法,應用於一裝置以產生一虛擬鍵盤,該裝置包含一處理器、一記憶體及一螢幕,該方法包含:使該處理器讀取該記憶體中一第二鍵群,該第二鍵群由左至右順序為“q、w、e、r、t、y、u、i、o與p”;使該處理器讀取該記憶體中一第三鍵群,該第三鍵群由左至右順序為“a、s、d、f、g、h、j、k與l”;使該處理器讀取該記憶體中一第四鍵群並以隨機方式選取該第四鍵群之一至複數個該虛擬按鍵以調整該按鍵寬度,使得該第四鍵群具有複數種該按鍵寬度,該第四鍵群由左至右順序為“z、x、c、v、b、n與m”;於該螢幕顯示該虛擬鍵盤,該虛擬鍵盤由上至下之順序為該第二鍵群、該第三鍵群及該第四鍵群;接收一點擊座標並轉換為該虛擬鍵盤所對應的一字元;將該字元儲存至該記憶體;讀取該記憶體中依序儲存的複數個該字元以組成一字元串;以及,將該字元串傳送至一應用程式之一登入輸入框。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW107107931A TWI659337B (zh) | 2018-03-08 | 2018-03-08 | 顯示動態虛擬鍵盤之方法及其電腦程式產品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW107107931A TWI659337B (zh) | 2018-03-08 | 2018-03-08 | 顯示動態虛擬鍵盤之方法及其電腦程式產品 |
Publications (2)
Publication Number | Publication Date |
---|---|
TWI659337B true TWI659337B (zh) | 2019-05-11 |
TW201939215A TW201939215A (zh) | 2019-10-01 |
Family
ID=67348150
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW107107931A TWI659337B (zh) | 2018-03-08 | 2018-03-08 | 顯示動態虛擬鍵盤之方法及其電腦程式產品 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI659337B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI428816B (zh) * | 2011-08-04 | 2014-03-01 | Chinatrust Commercial Bank Ltd | Virtual keypad display method |
US20150293694A1 (en) * | 2012-11-27 | 2015-10-15 | Thomson Licensing | Adaptive virtual keyboard |
TWI506477B (zh) * | 2014-04-25 | 2015-11-01 | Joiiup Technology Inc | 虛擬鍵盤之安全輸入方法與系統 |
CN105027064A (zh) * | 2012-11-27 | 2015-11-04 | 汤姆逊许可公司 | 自适应虚拟键盘 |
CN107633166A (zh) * | 2017-07-21 | 2018-01-26 | 徐智能 | 一种隐蔽输入字符的动态虚拟键盘输入方法 |
-
2018
- 2018-03-08 TW TW107107931A patent/TWI659337B/zh active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI428816B (zh) * | 2011-08-04 | 2014-03-01 | Chinatrust Commercial Bank Ltd | Virtual keypad display method |
US20150293694A1 (en) * | 2012-11-27 | 2015-10-15 | Thomson Licensing | Adaptive virtual keyboard |
CN105027064A (zh) * | 2012-11-27 | 2015-11-04 | 汤姆逊许可公司 | 自适应虚拟键盘 |
TWI506477B (zh) * | 2014-04-25 | 2015-11-01 | Joiiup Technology Inc | 虛擬鍵盤之安全輸入方法與系統 |
CN107633166A (zh) * | 2017-07-21 | 2018-01-26 | 徐智能 | 一种隐蔽输入字符的动态虚拟键盘输入方法 |
Also Published As
Publication number | Publication date |
---|---|
TW201939215A (zh) | 2019-10-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109076072B (zh) | Web服务图片密码 | |
US20150100913A1 (en) | Method for providing personalized virtual keyboard | |
US10140465B2 (en) | Methods and systems for user authentication in a computer system using multi-component log-ins, including image-based log-ins | |
US20140098141A1 (en) | Method and Apparatus for Securing Input of Information via Software Keyboards | |
US20170111342A1 (en) | Systems and methods for providing a covert password manager | |
US10402089B2 (en) | Universal keyboard | |
US20110191856A1 (en) | Receiving input data | |
US20120302210A1 (en) | System, method, and program for generating screen | |
US20130106916A1 (en) | Drag and drop human authentication | |
JP2022509469A (ja) | 多重要素ベースのパスワード認証 | |
WO2015166913A9 (ja) | サーバシステム、通信システム、通信端末装置、プログラム、記録媒体及び通信方法 | |
TWI428816B (zh) | Virtual keypad display method | |
CN107851140B (zh) | 利用压力触控生成密码的方法及装置 | |
TWI659337B (zh) | 顯示動態虛擬鍵盤之方法及其電腦程式產品 | |
KR20150100130A (ko) | 보안 키보드 제공 시스템 | |
TWI648658B (zh) | 顯示動態虛擬數字鍵盤之方法及其電腦程式產品 | |
KR102394614B1 (ko) | 키패드 입력 장치 및 방법 | |
TW201939218A (zh) | 顯示動態虛擬鍵盤之方法及其電腦程式產品 | |
JP6493973B2 (ja) | 文字列入力方法及びプログラム | |
KR20110101030A (ko) | 터치스크린을 통한 정보 입력 보안방법 | |
KR101153896B1 (ko) | 비밀 번호 입력 인터페이스 제공 시스템 및 방법 | |
TW201608419A (zh) | 產生動態虛擬鍵盤之系統 | |
GB2504066A (en) | Location of symbols on display of input device modified according to user selection | |
TW201319914A (zh) | 網路資訊的上傳與驗證方法及其應用程式 | |
TW201339887A (zh) | 運用驗證碼防止側錄程式攻擊的方法 |