息安全傳遞系統(tǒng),包括發(fā)送終端和接收終端,其中,如圖1所示,所述發(fā)送終端包括:設(shè)置在終端底層框架中的底層安全模塊、預(yù)先設(shè)置在終端的系統(tǒng)控件中的控制模塊以及應(yīng)用,所述應(yīng)用可以是手機(jī)本身自帶的短信,或者是郵件,也可能是用戶下載的第三方應(yīng)用,比如微信,QQ,其中:
[0052]所述控制模塊,用于當(dāng)所述應(yīng)用的控件被觸發(fā)時(shí),攔截觸發(fā)事件,并通知所述底層安全模塊,在接收到所述底層安全模塊返回的加密密文后傳遞給所述應(yīng)用;
[0053]其中,所述觸發(fā)事件為用戶將要在應(yīng)用的控件中添加信息;所述觸發(fā)事件相關(guān)的信息為用戶將要在應(yīng)用的控件中添加的信息。
[0054]所述底層安全模塊,用于在收到所述控制模塊的通知后,對(duì)所述觸發(fā)事件相關(guān)的信息加密生成加密密文,將所述加密密文發(fā)送至所述控制模塊;
[0055]作為一種優(yōu)選的方式,該發(fā)送終端還包括:
[0056]啟動(dòng)模塊,用于提示終端用戶是否開(kāi)啟安全模式,在接收到開(kāi)啟所述底層安全模塊的請(qǐng)求后,開(kāi)啟安全模式,觸發(fā)所述底層安全模塊啟動(dòng)。
[0057]其中,作為一種優(yōu)選的方式,所述啟動(dòng)模塊,用于開(kāi)啟安全模式,觸發(fā)所述底層安全模塊啟動(dòng),包括:
[0058]提示所述終端用戶輸入安全模式開(kāi)啟密碼;
[0059]確定接收到的所述終端用戶輸入的安全模式開(kāi)啟密碼與預(yù)設(shè)的安全模式開(kāi)啟密碼一致后,通過(guò)驗(yàn)證,觸發(fā)所述底層安全模塊啟動(dòng)。
[0060]其中,在本實(shí)施例中,在終端上預(yù)設(shè)了安全模式開(kāi)啟密碼,用于開(kāi)啟安全模式時(shí)的驗(yàn)證。
[0061]當(dāng)然,終端上也可以不設(shè)置安全模式開(kāi)啟密碼,啟動(dòng)模塊在接收到開(kāi)啟所述底層安全模塊的請(qǐng)求后,直接啟動(dòng)安全模式,不必用戶輸入密碼,直接觸發(fā)所述底層安全模塊啟動(dòng)。
[0062]所述應(yīng)用,用于將所述加密密文發(fā)送給接收終端。
[0063]其中,所述底層安全模塊,用于收到所述控制模塊的通知后,對(duì)所述觸發(fā)事件中相關(guān)的信息加密生成加密密文,包括:
[0064]所述底層安全模塊收到所述控制模塊的通知后,向終端用戶提示輸入通信密鑰,并接收所述終端用戶輸入的通信密鑰,或者,獲取本地存儲(chǔ)的預(yù)設(shè)的通信密鑰;
[0065]所述底層安全模塊利用所述終端用戶輸入的通信密鑰或所述本地存儲(chǔ)的預(yù)設(shè)的通信密鑰采用加密算法對(duì)所述用戶將要在應(yīng)用的控件中添加的信息加密,并添加加密標(biāo)識(shí)或者添加所述加密算法的版本號(hào)和加密標(biāo)識(shí)生成加密密文。
[0066]在本實(shí)施例中,一種優(yōu)選的方式是需要用戶輸入通信密鑰,根據(jù)該通信密鑰加密,該方式的安全性比較高,另一種優(yōu)選的方式是不需要用戶輸入通信密鑰,而是在本地預(yù)設(shè)一個(gè)通信密鑰,每次加密都用這個(gè)密鑰,這種方式,對(duì)用戶而言更為便利,用戶無(wú)需每次都輸入通信密鑰。
[0067]其中,作為一種優(yōu)選的方式,所述應(yīng)用的控件為編輯控件。
[0068]其中,如圖1所示,所述接收終端,包括:設(shè)置在終端底層框架中的底層安全模塊、預(yù)先設(shè)置在終端的系統(tǒng)控件中的控制模塊以及應(yīng)用,其中:
[0069]所述控制模塊,用于當(dāng)所述應(yīng)用的控件被觸發(fā)時(shí),攔截觸發(fā)事件,并通知所述底層安全模塊;
[0070]所述底層安全模塊,用于收到所述控制模塊的通知后,對(duì)所述觸發(fā)事件相關(guān)的信息解密。
[0071]所述應(yīng)用,用于接收到發(fā)送終端發(fā)來(lái)的信息,并提示用戶觸發(fā)所述應(yīng)用的控件;
[0072]所述觸發(fā)事件為終端用戶讀取所述應(yīng)用的控件輸出的所述發(fā)送終端發(fā)來(lái)的信息;所述觸發(fā)事件相關(guān)的信息為所述應(yīng)用的控件輸出的所述發(fā)送終端發(fā)來(lái)的信息。
[0073]其中,作為一種優(yōu)選的方式,該發(fā)送終端還包括與所述控制模塊和所述底層安全模塊相連的啟動(dòng)模塊,其中:
[0074]所述控制模塊,還用于在攔截到觸發(fā)事件時(shí),觸發(fā)所述啟動(dòng)模塊工作;
[0075]所述啟動(dòng)模塊,用于提示終端用戶是否開(kāi)啟安全模式,在接收到所述終端用戶開(kāi)啟安全模式的請(qǐng)求后,開(kāi)啟安全模式,觸發(fā)所述底層安全模塊啟動(dòng)。
[0076]其中,作為一種優(yōu)選的方式,所述啟動(dòng)模塊,用于開(kāi)啟安全模式,觸發(fā)所述底層安全模塊啟動(dòng),包括:
[0077]提示所述終端用戶輸入安全模式開(kāi)啟密碼;
[0078]確定接收到的所述終端用戶輸入的安全模式開(kāi)啟密碼與預(yù)設(shè)的安全模式開(kāi)啟密碼一致后,通過(guò)驗(yàn)證,觸發(fā)所述底層安全模塊啟動(dòng)。
[0079]其中,在本實(shí)施例中,在終端上預(yù)設(shè)了安全模式開(kāi)啟密碼,用于開(kāi)啟安全模式時(shí)的驗(yàn)證。
[0080]當(dāng)然,終端上也可以不設(shè)置安全模式開(kāi)啟密碼,啟動(dòng)模塊在接收到開(kāi)啟所述底層安全模塊的請(qǐng)求后,直接啟動(dòng)安全模式,不必用戶輸入密碼,直接觸發(fā)所述底層安全模塊啟動(dòng)。
[0081]其中,所述應(yīng)用的控件輸出的所述發(fā)送終端發(fā)來(lái)的信息包括:加密信息和加密標(biāo)識(shí),或者加密信息、加密算法的版本號(hào)和加密標(biāo)識(shí);
[0082]其中,所述底層安全模塊,用于收到所述控制模塊的通知后,對(duì)所述觸發(fā)事件相關(guān)的信息解密,包括:
[0083]所述底層安全模塊在用戶讀取應(yīng)用的控件輸出的所述發(fā)送終端發(fā)來(lái)的信息時(shí),識(shí)別出所述加密標(biāo)識(shí)后,向終端用戶提示輸入通信密鑰,并接收所述終端用戶輸入的通信密鑰,或者,識(shí)別出所述加密標(biāo)識(shí)后,獲取本地存儲(chǔ)的預(yù)設(shè)的通信密鑰;
[0084]所述底層安全模塊利用所述終端用戶輸入的通信密鑰或者所述本地存儲(chǔ)的預(yù)設(shè)的通信密鑰,采用預(yù)設(shè)的加密算法或所述加密算法的版本號(hào)對(duì)應(yīng)的加密算法對(duì)所述加密信息解密,向用戶展示解密后的信息的明文。
[0085]在本實(shí)施例中,一種優(yōu)選的方式是需要用戶輸入通信密鑰,根據(jù)該通信密鑰加密,該方式的安全性比較高,另一種優(yōu)選的方式是不需要用戶輸入通信密鑰,而是在本地預(yù)設(shè)一個(gè)通信密鑰,每次加密都用這個(gè)密鑰,這種方式,對(duì)用戶而言更為便利,用戶無(wú)需每次都輸入通信密鑰。
[0086]其中,作為一種優(yōu)選的方式,所述應(yīng)用的控件為顯示控件。
[0087]如圖2所示,本實(shí)施例提供了一種信息安全傳遞方法,包括以下步驟:
[0088]SlOl:在終端的系統(tǒng)控件中預(yù)先設(shè)置控制模塊;
[0089]由于應(yīng)用的控件均是從系統(tǒng)控件繼承而來(lái)的自定義控件,因此,當(dāng)在系統(tǒng)控件中預(yù)置控制模塊后,該控制模塊也會(huì)被應(yīng)用的控件繼承下來(lái),即,應(yīng)用的控件中也存在控制模塊,因此,控制模塊可以攔截應(yīng)用的觸發(fā)事件。
[0090]S102:當(dāng)所述終端的應(yīng)用的控件被觸發(fā)時(shí),所述控制模塊攔截觸發(fā)事件,并通知所述終端的底層安全模塊;
[0091]其中,所述觸發(fā)事件為用戶將要在應(yīng)用的控件中添加信息;所述觸發(fā)事件相關(guān)的信息為用戶將要在應(yīng)用的控件中添加的信息,所述添加的信息可以是文字信息。
[0092]其中,所述應(yīng)用的控件為編輯(EditView)控件,是從系統(tǒng)編輯控件繼承而來(lái)的自定乂控件。
[0093]所述終端可以是觸摸屏智能終端也可以是普通按鍵終端,所述觸發(fā)應(yīng)用的控件是指用戶點(diǎn)擊或按下該控件的按鈕。
[0094]S103:所述底層安全模塊收到所述控制模塊的通知后,對(duì)所述觸發(fā)事件相關(guān)的信息加密生成加密密文;
[0095]其中,在本實(shí)施例中,作為一種優(yōu)選的方式,可以在終端上設(shè)置“密”模式,即前面提到的安全模式,可打開(kāi)/關(guān)閉,打開(kāi)時(shí),即所述底層安全模塊開(kāi)啟,底層安全模塊就會(huì)接管應(yīng)用的控件,就是說(shuō)用戶對(duì)應(yīng)用的控件的觸發(fā)事件不再傳遞給應(yīng)用,而是優(yōu)先由底層安全模塊處理。反之,在關(guān)閉“密”模式后,即所述底層安全模塊關(guān)閉,用戶對(duì)應(yīng)用的控件的觸發(fā)事件會(huì)正常的傳遞給第三方處理。為了打開(kāi)/關(guān)閉“密”模式,需要有一個(gè)開(kāi)關(guān),我們稱之為“密”開(kāi)關(guān)。它可以是一個(gè)終端上真實(shí)存在的按鍵(本文稱作硬“密”按鈕),如圖3 (a)所示,也可以是懸浮在屏幕上的虛擬按鍵(本文稱作軟“密”按鈕)如圖3(b)所示。
[0096]其中,打開(kāi)該安全模式,具體包括:
[0097]提示終端用戶是否開(kāi)啟安全模式,在接收到所述終端用戶開(kāi)啟安全模式的請(qǐng)求后,開(kāi)啟安全模式,觸發(fā)所述底層安全模塊啟動(dòng)。
[0098]其中,作為一種優(yōu)選的方式,所述開(kāi)啟安全模式,觸發(fā)所述底層安全模塊啟動(dòng),包括:
[0099]提示所述終端用戶輸入安全模式開(kāi)啟密碼;
[0100]確定接收到的所述終端用戶輸入的安全模式開(kāi)啟密碼與預(yù)設(shè)的安全模式開(kāi)啟密碼一致后,通過(guò)驗(yàn)證,觸發(fā)所述底層安全模塊啟動(dòng)。
[0101]其中,在本實(shí)施例中,在終端上預(yù)設(shè)了安全模式開(kāi)啟密碼,用于開(kāi)啟安全模式時(shí)的驗(yàn)證。
[0102]當(dāng)然,終端上也可以不設(shè)置安全模式開(kāi)啟密碼,啟動(dòng)模塊在接收到開(kāi)啟所述底層安全模塊的請(qǐng)求后,直接啟動(dòng)安全模式,不必用戶輸入密碼,直接觸發(fā)所述底層安全模塊啟動(dòng)。
[0103]其中,作為一種優(yōu)選的方式,所述底層安全模塊收到所述控制模塊的通知后,對(duì)所述觸發(fā)事件中相關(guān)的信息加密生成加密密文,包括:
[0104]所述底層安全模塊收到所述控制模塊的通知后,向終端用戶提示輸入通信密鑰,并接收所述終端用戶輸入的通信密鑰;其中,通信的雙方應(yīng)當(dāng)事先使用其他方式告訴對(duì)方通信密鑰,比如說(shuō)通過(guò)口頭約定的方式,或者,獲取本地存儲(chǔ)的預(yù)設(shè)的通信密鑰;
[0105]所述底層安全模塊利用所述終端用戶輸入的通信密鑰或所述本地存儲(chǔ)的預(yù)設(shè)的通信密鑰采用加密算法對(duì)所述用戶將要在應(yīng)用的控件中添加的信息加密,并添加加密標(biāo)識(shí)或者添加所述加密算法的版本號(hào)和加密標(biāo)識(shí)生成加密密文。
[0106]具體地,所述底層安全模塊利用所述通信密鑰采用加密算法對(duì)所述用戶將要在應(yīng)用的控件中添加的信息加密生成第一加密密文,第一加密密文是一組字符串,在該字符串前或后添加加密標(biāo)識(shí)(例如,掌心密語(yǔ):),或者在所述第一加密密文前或后添加所述加密算法的版本號(hào)(接收方可以根據(jù)該版本號(hào)對(duì)應(yīng)的加密算法對(duì)加密密文解密)后轉(zhuǎn)化為一組字符串,在該字符串前或后添加加密標(biāo)識(shí)生成最終的加密密文。例如,“掌心密語(yǔ):AAE =VldfffflpZ4qXYMrFLTIYhH7nGF44m2w = = ”,其中,“掌心密語(yǔ):”是加密標(biāo)識(shí),“AAE =”是加密算法的版本號(hào),“VldfffflpZ4qXYMrFLTIYhH7nGF44m2w == ”是真正的密文,明文是“你好”。
[0107]在本實(shí)施例中,一種優(yōu)選的方式是需要用戶輸入通信密鑰,根據(jù)該通信密鑰加密,該方式的安全性比較高,另一種優(yōu)選的方式是不需要用戶輸入通信密鑰,而是在本地預(yù)設(shè)一個(gè)通信密鑰,每次加密都用這個(gè)密鑰,這種方式,對(duì)用戶而言更為便利,用戶無(wú)需每次都輸入通信密鑰。
[0108]S104:所述控制模塊將所述加密密文通過(guò)所述應(yīng)用發(fā)送給接收終端。
[01