angularJs自定義服務(實現簽名和加密)

2021-12-30 02:56:09 字數 2158 閱讀 6367

頁面展示:

在應用中進行加密是普遍存在的,個人建議在前端實現加密簽名

對base64、md5、sha1加密演算法簡單解釋:

1、base64是可逆的、對稱的加密演算法;base64具有64個基本字元組成的基本字符集

base64加密原理:

a、base64以3個位元組為一組,而乙個位元組佔8個位(bit)

b、再把24bit分為四組,每組6bit

c、再在每組高二位補00,擴充套件為32bit,形成四個位元組

2、md5簽名是不可逆的訊息摘要演算法;即不能被解密(從密文到明文)(請參考百度:會產生乙個128位訊息摘要

a、填充:首先需要對資訊進行填充,使其位長對512求餘的結果等於448;

b、初始化變數:初始的128位值為初試鏈結變數,這些引數用於第一輪的運算,以大端位元組序來表示,他們分別為: a=0x01234567,b=0x89abcdef,c=0xfedcba98,d=0x76543210

c、處理分組資料

d、輸出:輸出是a、b、c和d的級聯

3、sha1簽名是不可逆的數字簽名演算法(請參考百度:會產生乙個160位的訊息摘要

a、填充:首先需要對資訊進行填充,使其位長對512求餘的結果等於448;

b、補長度:所謂的補長度是將原始資料的長度補到已經進行了補位操作的訊息後面。

c、使用的常量

d、使用的函式:在sha1中我們需要一系列的函式。每個函式ft (0 <= t <= 79)都操作32位字b,c,d並且產生32位字作為輸出

e、計算訊息摘要:必須使用進行了補位和補長度後的訊息來計算訊息摘要。

登入控制模組:

服務模組:

檔案結構:

備註:在angularjs中自定義服務有3種型別:factory,provider,service;請根據您的專案實際需要選擇服務提供方法

angularJs自定義服務

在angularjs中,系統內建的服務都是以 開頭,所以我們的自定義服務盡量避免以 開頭。自定義服務的方式有如下幾種 使用provider方法 this.get function 通過provider方法建立的服務一定要包含 get方法,provider注入的結果就是 get方法返回的結果,如果不包...

AngularJS2 自定義服務

1.在乙個專案中不可避免的要在不同的component中使用同乙份資料,普通的方式是將同樣的 在不同的地方複製貼上,這樣顯然是不可取的。這時候我們可以定義乙個資料服務,當我們需要它的時候只需要在相關元件中注入即可 2.服務對其呼叫者是透明的,使用服務可以讓元件更加清潔,而且後期維護只需要修改服務就可...

angularjs1 6,自定義服務

無標題文件 title script src angular.min.js script head 當你初試angular 時,很自然地就會往controller 和scope 裡堆滿不必要的邏輯。一定要早點意識到,controller 這一層應該很薄 也就是說,應用裡大部分的業務邏輯和持久化資料都...