VUE密碼登陸加密RSA方案
有一個項目需求需要在前段登陸的時候把登錄密碼加密后發送,這個地方其實很簡單,加密的時候可以使用md5、可以使用sha1,也可以使用現在這個方式加密,就簡單記錄一下沒啥。
RSA是啥
RSA加密算法是一種 非對稱加密算法 ,RSA加密使用了"一對"密鑰.分別是公鑰和私鑰,這個公鑰和私鑰其實就是一組數字!其二進制位長度可以是1024位或者2048位.長度越長其加密強度越大,目前為止公之於眾的能破解的最大長度為768位密鑰,只要高於768位,相對就比較安全.所以目前為止,這種加密算法一直被廣泛使用.
RSA加密與解密
使用 公鑰 加密的數據,利用 私鑰 進行解密。
使用 私鑰 加密的數據,利用 公鑰 進行解密。
安裝依賴
vue使用rsa加密的時候首先需要安裝一個依賴,幫助我們實現加密操作。
npm install jsencrypt
安裝完就可以用了,如果安裝失敗用 cnpm
。
使用
創建一個方法,就是使用我們的密碼加密用的。
passwordEncryption(passwordUser) {
let publicKey = this.secretKey // 從后台獲取公鑰,這個保存一下,在這里用。
console.log('后台公鑰---------> ', publicKey)
let encryptor = new JSEncrypt() // 新建JSEncrypt對象
encryptor.setPublicKey(publicKey) // 設置公鑰
let passwordEncryp = encryptor.encrypt(passwordUser) // 對密碼進行加密
return passwordEncryp
},
然后在需要加密的地方使用就可以了。
let pwd = this.passwordEncryption(this.inputForm.password)