本公開涉及通信,具體而言,涉及一種數據查詢方法、系統、裝置、設備、介質及產品。
背景技術:
1、在數據流通的過程中,在將個人數據提供給他人之前,需要獲得被查詢人的授權。授權中心可以向對應的被查詢人取得授權,當三方都遵守協議流程時,數據使用方可以基于從授權中心獲取的解密密鑰對數據提供方提供的數據進行解密。
2、現有技術基于半誠實模型,要求參與協議的各方都遵守協議流程。對于更加不安全的情況,例如,在授權中心與數據使用方共謀的情況下,數據使用方可以獲得大量用戶的授權,并獲取大量用戶的數據,從而造成大量數據提供方的數據信息的泄露,進而降低數據流通過程的安全性。
技術實現思路
1、本公開實施例至少提供一種數據查詢方法、系統、裝置、設備、介質及產品。
2、第一方面,本公開實施例提供了一種數據查詢方法,應用于數據提供方,包括:
3、在檢測到授權中心的授權通知之后,通過所述授權中心確定授權密鑰組;所述授權通知攜帶多個用戶的身份標識和授權標識,所述授權密鑰組包含第一用戶的有效授權密鑰和未授權第二用戶的無效授權密鑰;
4、在檢測到數據使用方發送的所述第一用戶的數據查詢請求之后,向所述數據使用方發送生成的第一組密鑰對中的第一公鑰組;
5、獲取所述數據使用方通過所述第一公鑰組中與所述第一用戶對應的第一公鑰對傳輸密鑰加密后的第一加密密鑰;
6、通過所述第一組密鑰對中各私鑰解密所述第一加密密鑰,得到傳輸密鑰組;并基于所述授權密鑰組和所述傳輸密鑰組,依次對每個所述用戶的用戶數據進行雙重加密,并向所述數據使用方反饋加密結果。
7、一種可選的實施方式中,所述在檢測到授權中心的授權通知之后,通過所述授權中心確定授權密鑰組,包括:
8、在檢測到所述授權中心的授權通知之后,生成第二組密鑰對,并向所述授權中心發送所述第二組密鑰對中的第二公鑰組;
9、獲取所述授權中心通過所述第二公鑰組中第k個第二公鑰對授權密鑰進行加密后得到的第二加密密鑰;其中,所述k為所述第一用戶的身份標識在全部用戶的身份標識中的位置;
10、通過所述第二組密鑰對中的各私鑰對所述第二加密密鑰進行解密,解密后得到所述授權密鑰組。
11、一種可選的實施方式中,所述方法還包括:
12、在檢測到所述授權中心的授權通知之后,將所述授權通知中攜帶的每個所述用戶的身份標識和所述第一用戶的授權標識緩存在目標內存中。
13、一種可選的實施方式中,所述基于所述授權密鑰組和所述傳輸密鑰組,依次對每個所述用戶的用戶數據進行雙重加密,并向所述數據使用方反饋加密結果,包括:
14、在目標內存中查找已緩存的身份標識數組;其中,所述身份標識數組包含所述第一用戶的身份標識和所述第二用戶的身份標識;
15、查找所述身份標識數組中每個身份標識相對應的用戶數據;
16、通過所述授權密鑰組中的授權密鑰,依次對所述用戶數據進行加密,得到中間加密數據;
17、通過所述傳輸密鑰組中的傳輸密鑰,依次對所述中間加密數據進行加密,得到所述加密結果。
18、一種可選的實施方式中,所述在檢測到數據使用方發送的所述第一用戶的數據查詢請求之后,向所述數據使用方發送生成的第一組密鑰對中的第一公鑰組,包括:
19、確定所述數據查詢請求中攜帶的授權標識;
20、在確定已緩存授權標識中存在所述授權標識的情況下,生成所述第一組密鑰對,向所述數據使用方發送生成的第一組密鑰對中的第一公鑰組。
21、第二方面,本公開實施例提供了第二種數據查詢方法,應用于數據使用方,包括:
22、向授權中心發送攜帶多個用戶的身份標識的數據使用請求;所述多個用戶包含第一用戶和第二用戶;
23、獲取所述授權中心反饋的授權密鑰和所述第一用戶的授權標識,并向數據提供方發送攜帶所述授權標識的數據查詢請求;
24、獲取所述數據提供方反饋的第一公鑰組,并通過所述第一公鑰組中與所述第一用戶對應的第一公鑰對傳輸密鑰進行加密,得到第一加密密鑰,并向所述數據提供方發送所述第一加密密鑰;
25、獲取加密結果,并基于所述加密結果確定所述第一用戶的用戶數據;所述加密結果為數據提供方基于授權密鑰組和傳輸密鑰組,依次對每個所述用戶的用戶數據進行雙重加密后得到;所述授權密鑰組包含所述第一用戶的有效授權密鑰和未授權第二用戶的無效授權密鑰。
26、一種可選的實施方式中,所述基于所述加密結果確定所述第一用戶的用戶數據,包括:
27、利用所述傳輸密鑰對指定用戶數據的加密結果進行解密,得到中間解密結果;其中,所述指定用戶數據包括:每個所述用戶數據,或者,第k個位置上的用戶數據,所述k為所述第一用戶的身份標識在全部用戶的身份標識中的位置;
28、利用所述授權密鑰對每個所述中間解密結果進行解密,得到目標解密結果;
29、基于所述目標解密結果,確定所述第一用戶的用戶數據。
30、第三方面,本公開實施例還提供了一種數據查詢系統,包括:數據使用方、授權中心和數據提供方;
31、所述數據使用方,用于向所述授權中心發送攜帶多個用戶的身份標識的數據使用請求;所述多個用戶包含第一用戶和第二用戶;以及向數據提供方發送的所述第一用戶的數據查詢請求;以及獲取所述數據提供方反饋的加密結果;
32、所述授權中心,用于響應于該數據使用請求,向待授權的第一用戶發送數據使用授權申請;并在接收到所述第一用戶發送的授權通過消息之后,向數據提供方發送授權通知;其中,所述授權通知攜帶多個用戶的身份標識和授權標識;
33、所述數據提供方,用于在檢測到授權中心的授權通知之后,通過所述授權中心確定授權密鑰組;所述授權密鑰組包含所述第一用戶的有效授權密鑰和未授權第二用戶的無效授權密鑰;以及在檢測到數據使用方發送的所述第一用戶的數據查詢請求之后,向所述數據使用方發送生成的第一組密鑰對中的第一公鑰組;以及獲取所述數據使用方通過所述第一公鑰組中與所述第一用戶對應的第一公鑰對傳輸密鑰加密后的第一加密密鑰;以及通過所述第一組密鑰對中各私鑰解密所述第一加密密鑰,得到傳輸密鑰組,并基于所述授權密鑰組和所述傳輸密鑰組,依次對每個所述用戶的用戶數據進行雙重加密,并向所述數據使用方反饋加密結果。
34、第四方面,本公開實施例還提供了一種數據查詢裝置,設置于數據提供方,所述裝置包括:
35、確定單元,用于在檢測到授權中心的授權通知之后,通過所述授權中心確定授權密鑰組;所述授權通知攜帶多個用戶的身份標識和授權標識,所述授權密鑰組包含第一用戶的有效授權密鑰和未授權第二用戶的無效授權密鑰;
36、第一發送單元,用于在檢測到數據使用方發送的所述第一用戶的數據查詢請求之后,向所述數據使用方發送生成的第一組密鑰對中的第一公鑰組;
37、第一獲取單元,用于獲取所述數據使用方通過所述第一公鑰組中與所述第一用戶對應的第一公鑰對傳輸密鑰加密后的第一加密密鑰;
38、處理單元,用于通過所述第一組密鑰對中各私鑰解密所述第一加密密鑰,得到傳輸密鑰組,并基于所述授權密鑰組和所述傳輸密鑰組,依次對每個所述用戶的用戶數據進行雙重加密,并向所述數據使用方反饋加密結果。
39、第五方面,本公開實施例還提供了第二種數據查詢裝置,設置于數據使用方,所述裝置包括:
40、第二發送單元,向授權中心發送攜帶多個用戶的身份標識的數據使用請求;所述多個用戶包含第一用戶和第二用戶;
41、第二獲取單元,獲取所述授權中心反饋的授權密鑰和所述第一用戶的授權標識,并向數據提供方發送攜帶所述授權標識的數據查詢請求;
42、第三獲取單元,獲取所述數據提供方反饋的第一公鑰組,并通過所述第一公鑰組中與所述第一用戶對應的第一公鑰對傳輸密鑰進行加密,得到第一加密密鑰,并向所述數據提供方發送所述第一加密密鑰;
43、第四獲取單元,獲取加密結果,并基于所述加密結果確定所述第一用戶的用戶數據;所述加密結果為數據提供方基于授權密鑰組和傳輸密鑰組,依次對每個所述用戶的用戶數據進行雙重加密后得到;所述授權密鑰組包含所述第一用戶的有效授權密鑰和未授權第二用戶的無效授權密鑰。
44、第六方面,本公開實施例還提供一種電子設備,包括:處理器、存儲器和總線,所述存儲器存儲有所述處理器可執行的機器可讀指令,當電子設備運行時,所述處理器與所述存儲器之間通過總線通信,所述機器可讀指令被所述處理器執行時執行上述第一方面,或第二方面的步驟。
45、第七方面,本公開實施例還提供一種計算機可讀存儲介質,該計算機可讀存儲介質上存儲有計算機程序,該計算機程序被處理器運行時執行上述第一方面,或第二方面的步驟。
46、第八方面,本公開實施例還提供一種計算機程序產品,所述計算機程序產品被存儲在存儲介質中,所述程序產品被至少一個處理器執行上述第一方面,或第二方面的步驟。
47、在本技術實施例中,授權中心可以向數據提供方發送授權通知,數據提供方在接收到該授權通知之后,通過與授權中心之間的交互流程確定授權密鑰組;之后,數據提供方在檢測到數據使用方發送的第一用戶的數據查詢請求之后,向數據使用方發送生成的第一組密鑰對中的第一公鑰組,并獲取數據使用方通過該第一公鑰組中與該第一用戶對應的第一公鑰對傳輸密鑰加密后的第一加密密鑰,通過該第一組密鑰中各私鑰解密該第一加密密鑰,得到傳輸密鑰組,最后,基于該授權密鑰組和該傳輸密鑰組,依次對每個用戶的用戶數據進行雙重加密,并向數據使用方反饋加密結果。
48、上述實施方式中,通過上述處理方式,可以實現數據使用方無法解密出除第一用戶之外的其他用戶的用戶數據,同時,數據提供方也無法確定數據使用方查詢的是第一用戶的用戶數據,從而保護了雙方的隱私。除此之外,即使數據使用方和授權中心不遵守協議流程,采用上述處理方式,數據提供方最多向數據使用方提供一條未經授權的數據,從而進一步保證了系統的安全性。
49、為使本公開的上述目的、特征和優點能更明顯易懂,下文特舉較佳實施例,并配合所附附圖,作詳細說明如下。