本申請涉及計(jì)算機(jī),具體涉及一種剪切板數(shù)據(jù)保護(hù)方法、裝置、電子設(shè)備及存儲(chǔ)介質(zhì)。
背景技術(shù):
1、為了方便,用戶可以通過剪切板快速復(fù)制存儲(chǔ)數(shù)據(jù),如文本、圖片等。但是,剪切板緩存數(shù)據(jù)在便捷用戶的同時(shí),也一定程度上構(gòu)成了數(shù)據(jù)保護(hù)的漏洞,如果剪切板緩存的數(shù)據(jù)被攻擊者劫持利用,可能造成數(shù)據(jù)的泄漏。因此,需要對剪切板緩存的數(shù)據(jù)進(jìn)行保護(hù)。
2、現(xiàn)有的剪切板數(shù)據(jù)保護(hù)方案基本上都是依賴于注入組件到其他進(jìn)程中,在這些進(jìn)程中掛鉤剪切板相關(guān)的api(應(yīng)用程序編程接口),實(shí)現(xiàn)監(jiān)聽讀、寫、枚舉剪切板數(shù)據(jù)的過程,并在寫剪切板數(shù)據(jù)時(shí)標(biāo)記數(shù)據(jù)來源及進(jìn)一步加密剪切板數(shù)據(jù),即按數(shù)據(jù)來源進(jìn)程與數(shù)據(jù)獲取進(jìn)程間是否允許數(shù)據(jù)流通來調(diào)整枚舉剪切板數(shù)據(jù)及讀剪切板數(shù)據(jù)時(shí)的返回結(jié)果,來實(shí)現(xiàn)控制剪切板數(shù)據(jù)在進(jìn)程間的流通權(quán)限。
3、現(xiàn)有的剪切板數(shù)據(jù)保護(hù)方案的基礎(chǔ)在于,需要成功地將自己的監(jiān)聽組件注入到需要被控制的目標(biāo)進(jìn)程當(dāng)中,才能監(jiān)聽到該目標(biāo)進(jìn)程對剪切板數(shù)據(jù)的讀寫操作,如果因權(quán)限、目標(biāo)軟件的自我保護(hù)等原因造成監(jiān)聽組件沒能注入到目標(biāo)進(jìn)程當(dāng)中或無法正常完成初始化,則監(jiān)聽組件就無法控制這個(gè)目標(biāo)進(jìn)程的剪切板操作,這意味著這個(gè)目標(biāo)進(jìn)程讀取剪切板數(shù)據(jù)時(shí)無法被控制,寫剪切板數(shù)據(jù)時(shí)也將不會(huì)標(biāo)記數(shù)據(jù)來源進(jìn)程,也不會(huì)加密本次寫入的剪切板數(shù)據(jù),因此會(huì)造成剪切板數(shù)據(jù)泄露的隱患。
技術(shù)實(shí)現(xiàn)思路
1、本申請的目的是提供一種剪切板數(shù)據(jù)保護(hù)方法、裝置、電子設(shè)備及存儲(chǔ)介質(zhì),能夠避免發(fā)生剪切板數(shù)據(jù)泄露。
2、第一方面,本申請實(shí)施例提供了一種剪切板數(shù)據(jù)保護(hù)方法,包括:
3、接收到系統(tǒng)發(fā)送的剪切板數(shù)據(jù)變更消息,采用預(yù)設(shè)校驗(yàn)算法對當(dāng)前剪切板數(shù)據(jù)進(jìn)行校驗(yàn)計(jì)算,得到目標(biāo)校驗(yàn)值;
4、若所述目標(biāo)校驗(yàn)值與共享內(nèi)存中存儲(chǔ)的校驗(yàn)值相同,則確定當(dāng)前剪切板數(shù)據(jù)已被加密;
5、若所述目標(biāo)校驗(yàn)值與共享內(nèi)存中存儲(chǔ)的校驗(yàn)值不同,則將當(dāng)前剪切板數(shù)據(jù)清除。
6、一種可能的實(shí)現(xiàn)方式中,所述采用預(yù)設(shè)校驗(yàn)算法對當(dāng)前剪切板數(shù)據(jù)進(jìn)行校驗(yàn)計(jì)算之前,所述方法還包括:
7、判斷當(dāng)前剪切板數(shù)據(jù)是否為預(yù)設(shè)內(nèi)容類型;
8、若當(dāng)前剪切板數(shù)據(jù)是預(yù)設(shè)內(nèi)容類型,則繼續(xù)采用預(yù)設(shè)校驗(yàn)算法對當(dāng)前剪切板數(shù)據(jù)進(jìn)行校驗(yàn)計(jì)算的步驟;
9、若當(dāng)前剪切板數(shù)據(jù)不是預(yù)設(shè)內(nèi)容類型,則結(jié)束處理。
10、一種可能的實(shí)現(xiàn)方式中,所述預(yù)設(shè)內(nèi)容類型包括文本、富文本和圖像中的至少一項(xiàng)。
11、一種可能的實(shí)現(xiàn)方式中,所述方法還包括:
12、在剪切板進(jìn)行寫入數(shù)據(jù)操作時(shí),對寫入數(shù)據(jù)進(jìn)行加密,將加密后的寫入數(shù)據(jù)寫入剪切板;
13、采用預(yù)設(shè)校驗(yàn)算法對加密后的寫入數(shù)據(jù)計(jì)算校驗(yàn)值,將該校驗(yàn)值保存到共享內(nèi)存中。
14、第二方面,本申請實(shí)施例提供了一種剪切板數(shù)據(jù)保護(hù)裝置,包括:
15、校驗(yàn)?zāi)K,用于接收到系統(tǒng)發(fā)送的剪切板數(shù)據(jù)變更消息,采用預(yù)設(shè)校驗(yàn)算法對當(dāng)前剪切板數(shù)據(jù)進(jìn)行校驗(yàn)計(jì)算,得到目標(biāo)校驗(yàn)值;
16、處理模塊,用于若所述目標(biāo)校驗(yàn)值與共享內(nèi)存中存儲(chǔ)的校驗(yàn)值相同,則確定當(dāng)前剪切板數(shù)據(jù)已被加密;若所述目標(biāo)校驗(yàn)值與共享內(nèi)存中存儲(chǔ)的校驗(yàn)值不同,則將當(dāng)前剪切板數(shù)據(jù)清除。
17、一種可能的實(shí)現(xiàn)方式中,所述校驗(yàn)?zāi)K,還用于:
18、在采用預(yù)設(shè)校驗(yàn)算法對當(dāng)前剪切板數(shù)據(jù)進(jìn)行校驗(yàn)計(jì)算之前,判斷當(dāng)前剪切板數(shù)據(jù)是否為預(yù)設(shè)內(nèi)容類型;
19、若當(dāng)前剪切板數(shù)據(jù)是預(yù)設(shè)內(nèi)容類型,則繼續(xù)采用預(yù)設(shè)校驗(yàn)算法對當(dāng)前剪切板數(shù)據(jù)進(jìn)行校驗(yàn)計(jì)算的步驟;
20、若當(dāng)前剪切板數(shù)據(jù)不是預(yù)設(shè)內(nèi)容類型,則結(jié)束處理。
21、一種可能的實(shí)現(xiàn)方式中,所述預(yù)設(shè)內(nèi)容類型包括文本、富文本和圖像中的至少一項(xiàng)。
22、一種可能的實(shí)現(xiàn)方式中,所述裝置還包括:
23、加密模塊,用于在剪切板進(jìn)行寫入數(shù)據(jù)操作時(shí),對寫入數(shù)據(jù)進(jìn)行加密,將加密后的寫入數(shù)據(jù)寫入剪切板;
24、所述校驗(yàn)?zāi)K,還用于采用預(yù)設(shè)校驗(yàn)算法對加密后的寫入數(shù)據(jù)計(jì)算校驗(yàn)值,將該校驗(yàn)值保存到共享內(nèi)存中。
25、第三方面,本申請?zhí)峁┝艘环N電子設(shè)備,包括:存儲(chǔ)器、處理器及存儲(chǔ)在所述存儲(chǔ)器上并可在所述處理器上運(yùn)行的計(jì)算機(jī)程序,所述處理器運(yùn)行所述計(jì)算機(jī)程序時(shí)執(zhí)行以實(shí)現(xiàn)如第一方面所述的方法。
26、第四方面,本申請實(shí)提供了一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)可讀指令,所述計(jì)算機(jī)可讀指令可被處理器執(zhí)行以實(shí)現(xiàn)如第一方面所述的方法。
27、相較于現(xiàn)有技術(shù),本申請?zhí)峁┑募羟邪鍞?shù)據(jù)保護(hù)方法,接收到系統(tǒng)發(fā)送的剪切板數(shù)據(jù)變更消息,采用預(yù)設(shè)校驗(yàn)算法對當(dāng)前剪切板數(shù)據(jù)進(jìn)行校驗(yàn)計(jì)算,得到目標(biāo)校驗(yàn)值;若所述目標(biāo)校驗(yàn)值與共享內(nèi)存中存儲(chǔ)的校驗(yàn)值相同,則確定當(dāng)前剪切板數(shù)據(jù)已被加密;若所述目標(biāo)校驗(yàn)值與共享內(nèi)存中存儲(chǔ)的校驗(yàn)值不同,則將當(dāng)前剪切板數(shù)據(jù)清除。可見,本申請預(yù)先對寫入剪切板的數(shù)據(jù)進(jìn)行加密以及校驗(yàn)值計(jì)算,當(dāng)剪切板數(shù)據(jù)發(fā)生變更時(shí),根據(jù)校驗(yàn)值可以判斷剪切板數(shù)據(jù)是否已被加密,與現(xiàn)有技術(shù)相比,本申請寫入剪切板的數(shù)據(jù)必須被加密,否則會(huì)被清除,從而避免了無保護(hù)地操作剪切板數(shù)據(jù)造成的泄密風(fēng)險(xiǎn)。
1.一種剪切板數(shù)據(jù)保護(hù)方法,其特征在于,包括:
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述采用預(yù)設(shè)校驗(yàn)算法對當(dāng)前剪切板數(shù)據(jù)進(jìn)行校驗(yàn)計(jì)算之前,所述方法還包括:
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述預(yù)設(shè)內(nèi)容類型包括文本、富文本和圖像中的至少一項(xiàng)。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法還包括:
5.一種剪切板數(shù)據(jù)保護(hù)裝置,其特征在于,包括:
6.根據(jù)權(quán)利要求5所述的裝置,其特征在于,所述校驗(yàn)?zāi)K,還用于:
7.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述預(yù)設(shè)內(nèi)容類型包括文本、富文本和圖像中的至少一項(xiàng)。
8.根據(jù)權(quán)利要求5所述的裝置,其特征在于,所述裝置還包括:
9.一種電子設(shè)備,包括:存儲(chǔ)器、處理器及存儲(chǔ)在所述存儲(chǔ)器上并可在所述處理器上運(yùn)行的計(jì)算機(jī)程序,其特征在于,所述處理器運(yùn)行所述計(jì)算機(jī)程序時(shí)以實(shí)現(xiàn)如權(quán)利要求1至4任一項(xiàng)所述的方法。
10.一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其特征在于,其上存儲(chǔ)有計(jì)算機(jī)可讀指令,所述計(jì)算機(jī)可讀指令可被處理器執(zhí)行以實(shí)現(xiàn)如權(quán)利要求1至4任一項(xiàng)所述的方法。