移動終端 Web版 密碼控制項實現方式

2021-07-27 22:56:14 字數 990 閱讀 9456

一、概要

基於 js+css,採用服務端控制客戶端輸入邏輯的 web 版安全輸入

元件,採用這種機制,可大幅度提高手機、平板系統瀏覽器中輸入密碼的安全性。 

元件特點: 

1、使用者輸入的密碼資訊在客戶端中不會有任何殘留,可有效防止惡意程式通過接

口,記憶體檢視等方式獲取使用者密碼; 

2、採用 rsa 加密演算法對輸入內容進行加密,避免惡意程式對通訊鏈路中的資料

進行攔截分析; 

3、可自適應現有主流螢幕解析度。 

二、實現流程

1、頁面初始化,請求服務端根據規則生成相應的html(密碼控制項)並返回給前端

2、 使用者使用返回的html(密碼控制項),輸入相應的密碼

3、 前端將輸入的密碼通過js rsa演算法加密並提交到服務端

4、 服務端根據規則解密後並進行業務邏輯的後續處理

三、實現細節

1、密碼鍵盤分為數字鍵盤、

字母鍵盤(含大小寫)和全鍵盤

2、 如果是數字鍵盤:生成隨機安全隨機數

0 ~ 9,根據 securerandom.

nextint

()方法

3、 如果是字母鍵盤:生成隨機26個英文本母,根據

chars

(97 + i)

4、 如果是全鍵盤:則是2 、3點的組合

5、 建立乙個

numberpasswordimagemaker類,用於將數字按照設定的規則轉換成 

imageinfo 類

6、 建立乙個

alphabetpasswordimagemaker類,用於將字母(含大小寫)按照設定的規則轉換成 imageinfo 類

7、 建立乙個

htmlmaker類,用於將生成的轉換成div

8、 將div中對應的

keyidnex儲存在

中,用於後續比較

9、 將生成的div通過約定的方式返回給前端

移動web 終端互動優化

移動web頁面上的click事件相應都要慢上300ms 1.tap基礎事件 300ms延遲怎麼破?使用tap事件代替click事件 自定義 tap事件原理 在touchstart touchend時記錄時間 手指位置,在touchend時進行比較,如果手指位置為同一位置 或允許移動乙個非常小的位移值...

WEB密碼安全輸入控制項

在沒有使用ssl加密的系統中登入,登入的使用者名稱和密碼都是在網路中通過明文傳送,安全性較低,可以使用外掛程式形式對密碼進行加密後再傳送。為了保證每次加密的結果的不同 防止跨域提交或擷取加密資訊偽提交 每次加密的key的一部分由伺服器端隨機生成,在頁面載入的時候由伺服器端生成通過頁面js指令碼傳遞給...

移動WEB 仿手機原生相簿 Vue版

由於大小限制,畫質和幀數較差,那些看起來比較可愛,也就沒有計較比例問題 整體flex布局,結合vue和移動touch事件實現,具體細節 上有注釋,想學習的朋友可以看一看.下面主要貼上主要邏輯 具體實現參見 class classobject style styleobject id gallery ...