TW201923647A - Traceable multi-party data processing method, apparatus and device - Google Patents

Traceable multi-party data processing method, apparatus and device Download PDF

Info

Publication number
TW201923647A
TW201923647A TW107132211A TW107132211A TW201923647A TW 201923647 A TW201923647 A TW 201923647A TW 107132211 A TW107132211 A TW 107132211A TW 107132211 A TW107132211 A TW 107132211A TW 201923647 A TW201923647 A TW 201923647A
Authority
TW
Taiwan
Prior art keywords
data
encrypted
traceability
identification
party
Prior art date
Application number
TW107132211A
Other languages
Chinese (zh)
Inventor
劉正
Original Assignee
香港商阿里巴巴集團服務有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 香港商阿里巴巴集團服務有限公司 filed Critical 香港商阿里巴巴集團服務有限公司
Publication of TW201923647A publication Critical patent/TW201923647A/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/16Program or content traceability, e.g. by watermarking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Storage Device Security (AREA)

Abstract

The embodiment of the present specification discloses a traceable multi-party data processing method, apparatus and device, for each data provider, the corresponding identification data, i.e., the traceability identifier, can be defined regarding the data to be encrypted, as traceability basis, the identification data can function to identify the data to be encrypted and the data provider from which the data to be encrypted comes. Further, after the encrypted data is generated by performing encryption processing on the data to be encrypted and the traceability identifier, the encrypted data may be sent to the data processing platform. Then, the data processing platform can realize the traceability of the data according to the identification data.

Description

可溯源的多方數據處理方法、裝置及設備Traceable multi-party data processing method, device and equipment

本申請係關於電腦技術領域,尤其關於可溯源的多方數據處理方法、裝置及設備。The present application relates to the field of computer technology, and in particular, to a method, a device, and a device for processing multi-party data that can be traced.

目前,隨著大數據的發展,多方數據的融合處理也成為可能。   在現有的多方數據融合場景下,不同的數據提供方之間在不暴露原始數據的情況下進行聯合計算。在此過程中,為了避免數據洩露,不同的數據提供方通常會針對各自的數據進行加密,並由相應的數據平台在加密後的密文數據基礎上進行數據處理。在上述場景下,可能需要在數據處理結果中確定出數據的原始來源。   基於此,我們需要一種有效地多方數據的溯源方式。At present, with the development of big data, fusion processing of multi-party data is also possible. In the existing multi-party data fusion scenario, different data providers perform joint calculations without exposing the original data. In this process, in order to avoid data leakage, different data providers usually encrypt their data, and the corresponding data platform performs data processing based on the encrypted ciphertext data. In the above scenario, it may be necessary to determine the original source of the data in the data processing results. Based on this, we need an effective source tracing method for multiparty data.

本說明書實施例提供可溯源的多方數據處理方法、裝置及設備,用以在多方數據處理的場景下,進行有效、準確地數據溯源。   本說明書實施例提供的一種可溯源的多方數據處理方法,包括:   針對待加密數據,增加對應於該待加密數據的溯源標識;   對所述待加密數據和所述溯源標識進行加密,生成加密數據;   將包含所述溯源標識的所述加密數據發送至數據處理平台,以進行多方數據融合處理。   本說明書實施例提供的另一種可溯源的多方數據處理方法,包括:   接收數據提供方發送的包含溯源標識的加密數據;   確定所述加密數據中的溯源標識;   針對所述加密進行數據融合計算處理,生成包含所述溯源標識的數據融合結果,以便根據所述溯源標識對數據融合結果中的加密數據進行溯源。   本說明書實施例提供的一種可溯源的多方數據處理裝置,包括:   標識模組,針對待加密數據,增加對應於該待加密數據的溯源標識;   加密模組,對所述待加密數據和所述溯源標識進行加密,生成加密數據;   發送模組,將包含所述溯源標識的所述加密數據發送至數據處理平台,以進行多方數據融合處理。   本說明書實施例提供的另一種可溯源的多方數據處理裝置,包括:   接收模組,接收數據提供方發送的包含溯源標識的加密數據;   確定模組,確定所述加密數據中的溯源標識;   處理模組,針對所述加密進行數據融合計算處理,生成包含所述溯源標識的數據融合結果,以便根據所述溯源標識對數據融合結果中的加密數據進行溯源。   對應地,本說明書實施例中還提供一種可溯源的多方數據處理設備,包括:處理器、記憶體,其中:   所述記憶體,儲存可溯源的多方數據處理程式;   所述處理器,調用記憶體中儲存的可溯源的多方數據處理程式,並執行:   針對待加密數據,增加對應於該待加密數據的溯源標識;   對所述待加密數據和所述溯源標識進行加密,生成加密數據;   將包含所述溯源標識的所述加密數據發送至數據處理平台,以進行多方數據融合處理。   本說明書實施例中還提供另一種可溯源的多方數據處理設備,包括:處理器、記憶體,其中:   所述記憶體,儲存可溯源的多方數據處理程式;   所述處理器,調用記憶體中儲存的可溯源的多方數據處理程式,並執行:   接收數據提供方發送的包含溯源標識的加密數據;   確定所述加密數據中的溯源標識;   針對所述加密進行數據融合計算處理,生成包含所述溯源標識的數據融合結果,以便根據所述溯源標識對數據融合結果中的加密數據進行溯源。   本說明書實施例採用的上述至少一個技術方案能夠達到以下有益效果:   對於每一數據提供方而言,針對待加密數據,可定義相應的標識數據,即溯源標識,所述的標識數據作為溯源依據,能夠起到標識待加密數據及該待加密數據所源於的數據提供方的作用。進一步地,針對待加密數據和溯源標識進行加密處理生成加密數據後,可將該加密數據發送給數據處理平台,那麼,數據處理平台便可根據溯源標識實現加密數據的溯源。所述的溯源標識與原始欄位相關聯,這樣一來,在數據融合處理過程中,溯源標識將傳遞至最終的數據融合結果中,並基於該溯源標識,可以針對融合結果進行溯源,其溯源精度可以達到欄位級別。The embodiments of the present specification provide multi-party data processing methods, devices, and equipment that can be traced to perform effective and accurate data traceability in a multi-party data processing scenario. An embodiment of the present specification provides a method for processing multi-party data that can be traced, including: 增加 for data to be encrypted, adding a traceability identifier corresponding to the data to be encrypted; 加密 encrypting the data to be encrypted and the traceability identifier to generate encrypted data Sending the encrypted data including the traceability identifier to a data processing platform for multi-party data fusion processing. Another traceable multi-party data processing method provided by the embodiment of this specification includes: receiving encrypted data including a traceability identifier sent by a data provider; determining a traceability identifier in the encrypted data; 数据 data fusion calculation processing for the encryption To generate a data fusion result including the traceability identifier, so as to trace the encrypted data in the data fusion result according to the traceability identifier. A traceable multi-party data processing device provided by an embodiment of this specification includes: an identification module, for data to be encrypted, adding a traceability identification corresponding to the data to be encrypted; an encryption module, for the data to be encrypted and the The traceability identification is encrypted to generate encrypted data; a sending module sends the encrypted data including the traceability identification to a data processing platform for multi-party data fusion processing. Another type of multi-party data processing device provided by the embodiments of this specification includes: a receiving module, which receives encrypted data sent by the data provider and includes a traceability identifier; a determination module, which determines the traceability identifier in the encrypted data; processing A module performs data fusion calculation processing for the encryption to generate a data fusion result including the traceability identifier, so as to trace the encrypted data in the data fusion result according to the traceability identifier. Correspondingly, an embodiment of the present specification also provides a traceable multi-party data processing device, including: a processor and a memory, wherein: the memory stores a traceable multi-party data processing program; the processor calls a memory The traceable multi-party data processing program stored in the body and executes: For the data to be encrypted, add a traceability identifier corresponding to the data to be encrypted; 加密 encrypt the data to be encrypted and the source identification to generate encrypted data; The encrypted data including the traceability identifier is sent to a data processing platform for multi-party data fusion processing. The embodiment of the present specification also provides another traceable multi-party data processing device, including: a processor and a memory, wherein: the memory stores a traceable multi-party data processing program; the processor calls the memory Stored and traceable multi-party data processing program, and execute: receive encrypted data sent by the data provider that contains the traceability identification; determine the traceability identification in the encrypted data; 进行 perform data fusion calculation processing for the encryption to generate the The data fusion result of the traceability identification, so as to trace the encrypted data in the data fusion result according to the traceability identification. The at least one of the above technical solutions adopted in the embodiments of this specification can achieve the following beneficial effects: For each data provider, for the data to be encrypted, corresponding identification data can be defined, that is, the traceability identification, and the identification data is used as the basis for traceability , Can play a role in identifying the data to be encrypted and the data provider from which the data to be encrypted originated. Further, after encrypting the data to be encrypted and the traceability identification to generate encrypted data, the encrypted data can be sent to a data processing platform, and then the data processing platform can implement the traceability of the encrypted data according to the traceability identification. The traceability identification is associated with the original field. In this way, during the data fusion process, the traceability identification will be passed to the final data fusion result, and based on the traceability identification, the fusion result can be traced to the source, and its traceability accuracy Can reach field level.

為使本申請的目的、技術方案和優點更加清楚,下面將結合本申請具體實施例及相應的附圖對本申請技術方案進行清楚、完整地描述。顯然,所描述的實施例僅是本申請一部分實施例,而不是全部的實施例。基於本申請中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都屬於本申請保護的範圍。   多方數據的融合處理,可認為是基於多個數據提供方所提供的數據進行諸如:最大值統計(max)、最小值統計(min)、平均值計算(average)、累加值計算(sum)、計數(count)等數據處理,這裡並不作具體限定。   例如:金融平台與多家銀行對接,在此情況下,金融平台可獲取用戶在各銀行的信用記錄數據,進行多方數據融合處理,以便計算出該用戶的綜合信用分。基於該示例,對於任一家銀行而言,並不希望將該銀行內的用戶數據公開,故各銀行會針對用戶的部分或全部的信用記錄數據進行加密,經過加密的數據發送給金融平台,透過相應的數據融合演算法進行信用分的計算,其過程中由於涉及用戶個人的數據被加密,從而不會暴露用戶的相關資訊。   在上述示例中,被加密的信用記錄數據中可能包含不同維度的數據(如:貸款額度、還款頻率、收入水平等),而不同維度能夠影響用戶綜合信用分的程度(亦即,權重)通常是不同的。在實際應用中,金融平台為了最佳化數據融合演算法,可能會調整不同維度的權重。但對於加密後的信用記錄數據而言,金融平台難以進行確定所述加密的信用記錄數據所對應的維度,即,難以進行數據的溯源。   為此,在本說明書中的一個或多個實施例中,提供了一種可溯源的多方數據處理方法,在進行多方數據融合的場景下,可以實現針對源自於不同數據提供方的數據進行準確溯源,溯源精度可以達到欄位級別。   需要說明的是,上述可溯源的多方數據處理方法可以採用如圖1所示的架構。該架構中至少可包括:數據提供方、數據處理平台以及可信第三方。其中:   所述的數據提供方,可認為是用於提供數據的銀行、網站、電信營運商等企業或機構。在一些實施例中,數據提供方也可以是同一企業或機構內部的不同部門。在另一些實施例中,數據提供方還可以是個人用戶。當然,這裡並不作具體限定。不同的數據提供方將數據發送給數據處理平台,以使得數據處理平台進行多方數據的融合處理。   所述的數據處理平台,用於進行多方數據融合計算處理(如上述示例中的金融平台)。在實際應用中,為了適應巨量數據的處理,數據處理平台通常可採用分散/集群式的架構。   所述的可信第三方,可認為是用於提供加密密鑰的第三方網站、機構等,如:密鑰管理中心(Key Manage Center,KMC)。在加密過程中,數據提供方或數據處理平台,均可使用由可信第三方所提供的密鑰進行加密/解密處理。其加密方式具體可以為對稱或非對稱加密,解密時則可採用相應的解密方式進行處理,這裡便不再過多贅述。   在上述如圖1所示的架構基礎上,下面將具體闡述本說明書實施例中的可溯源的多方數據處理方法。 一、在數據提供方側   如圖2所示,基於數據提供方側的可溯源的多方數據處理方法,可包括如下步驟:   步驟S201:針對待加密數據,增加對應於該待加密數據的溯源標識。   所述的待加密數據,可認為是數據提供方所要發送至數據處理平台上進行數據融合處理的數據,諸如:待加密的欄位、欄位值、編碼等字符串,或者,待加密的圖像、音頻、視頻等多媒體數據等等。當然,具體將根據實際應用的需要進行確定。在後續的描述中,將以待加密數據為欄位的形式為例進行說明,這裡並不應作為對本申請的限定。   所述的溯源標識,用於標識待加密數據,以便在融合處理的過程中進行數據的溯源。在實際應用中,溯源標識可由數據提供方自行定義。作為本說明書實施例中的一種可行方式,溯源標識可用於反映待加密數據類型或屬性特徵,如:在一個簡單的示例中,待加密數據的溯源標識為A-2,該溯源標識可表示該待加密數據的類型為A-2。   作為本說明書實施例中的另一種可行方式,溯源標識可作為待加密數據所屬欄位的編號,如:在一個簡單的示例中,待加密數據的溯源標識為0100,該溯源標識可表示與待加密數據有關的欄位的編號為0100。   當然,這裡僅僅列舉出溯源標識的可能情況,在實際應用中,溯源標識所採用的字符形式、所表徵的含義,通常可根據實際應用的需要進行確定,在此並不作具體限定。   步驟S203:對所述待加密數據和所述溯源標識進行加密,生成加密數據。   在本說明書實施例中,溯源標識與待加密數據相匹配,作為溯源的依據,與待加密數據進行匹配綁定後一併進行加密。加密的方式具體可以採用加鹽加密,在此情況下,可在鹽中添加溯源標識,並以包含溯源標識的鹽進行加鹽加密處理。   當然,在實際應用中,溯源標識與待加密數據之間的匹配綁定的方式,可以是將溯源標識以字符串的方式插入至待加密數據的首端或末尾,形成“溯源標識+待加密數據”或“待加密數據+溯源標識”的結構。當然,這樣的方式並不應構成對本申請的限定。   步驟S205:將包含所述溯源標識的所述加密數據發送至數據處理平台,進行多方數據融合處理。   在實際的數據融合場景下,對於每一數據提供方而言,將包含有溯源依據(即,溯源標識)的加密數據發送給數據處理平台,這樣一來,數據處理平台在進行數據融合處理的過程中,便可以實現精確地數據溯源。   透過上述步驟,對於每一數據提供方而言,針對待加密數據,可定義相應的標識數據,所述的標識數據作為溯源依據,能夠起到標識待加密數據及該待加密數據所源於的數據提供方的作用。進一步地,針對待加密數據和標識數據進行加密處理生成加密數據後,可將該加密數據發送給數據處理平台,那麼,數據處理平台便可根據標識數據實現加密數據的溯源。   對於前述內容,需要說明的是,待加密數據中包含原始欄位。具體而言,作為本說明書實施例中的一種可能方式,數據提供方可採用數據表的儲存結構進行數據儲存。在實際的數據融合處理過程中,數據提供方通常會將數據表中所儲存的數據發送至數據處理平台進行數據融合處理。而在數據表這種儲存結構下,數據表中的每一列數據,代表著具有相同共性的數據,用來描述該列數據特性的列名稱為欄位(field,在本申請的實施例中,為了與“加密欄位”等描述相區別,故將加密前的欄位稱為“原始欄位”)。也就是說,在本說明書實施例中,溯源標識與欄位進行匹配綁定。故,數據提供方可針對原始欄位以及原始欄位相匹配的溯源標識進行加密,形成加密數據。這樣一來,便可以實現欄位級的溯源。   那麼,結合以上內容,數據提供方針對數據進行加密便可以如圖3所示。在圖3中,每一數據提供方均提供所需加密的數據(即,待加密數據),這些待加密數據可以是待加密的原始欄位。數據提供方可以採用加鹽加密演算法,針對原始欄位進行加密處理,亦即,針對原始欄位加鹽,所添加的鹽中包含溯源標識。例如:在圖3中,溯源標識“0100”作為鹽的一部分,與鹽中的剩餘部分“Aaa”共同構成鹽;同樣,溯源標識“0001”與“Bbb”共同構成鹽。但應注意的是,圖3中所示出的溯源標識以及鹽中的剩餘部分,均是進行過加密運算後所得到的加密結果,為了便於理解,圖3中以“0100”、“0001”、“Aaa”、“Bbb”等形式表達。   在此基礎上,數據提供方可以採用可信第三方所提供的密鑰進行加密(加密方式不限於對稱加密或非對稱加密),形成加密數據(其中包含加密欄位),此時,加密欄位中包含:加密後的鹽(溯源標識+鹽的剩餘部分)以及密文資訊(該密文資訊可認為是原始欄位經過加密處理後所生成,如圖3中的11*f和22*e)。   這裡需要說明的是,在某些對數據安全要求較高的應用場景下,當針對待加密欄位及其鹽進行加密時,針對鹽中的溯源標識的加密方式與針對鹽的剩餘部分以及待加密欄位的加密方式可以不一致。在一個簡單示例中,加密方式可以為:   Md5(Md5(待加密欄位+鹽的剩餘部分)+溯源標識)   可見,針對待加密欄位和鹽的剩餘部分,先進行Md5加密,再將其加密結果與溯源標識進行另一次Md5加密。經過這樣的加密方式所得到的加密數據,數據處理平台可以使用相應的密鑰進行解密,從而獲知溯源標識,而欄位尚處於加密狀態,從而能夠保證欄位的安全。   當然,除了上例所示的加密方式之外,還可以使用部分加密演算法,針對“待加密欄位+鹽的剩餘部分”使用加密演算法A進行部分加密,針對“溯源標識”使用加密演算法B進行部分加密。具體採用何種加密方式,可根據實際應用的需要進行確定。   在另一些可能的應用場景下,在鹽中,溯源標識設置在指定位置,那麼,針對鹽和待加密欄位的加密結果進行解密後,數據處理平台可以透過鹽的指定位置,獲知相應的溯源標識。當然,該方式可以應用在對數據安全要求不高的場景下,這裡並不應構成對本申請的限定。 二、在數據處理平台側   如圖4所示,基於數據處理平台側的可溯源的多方數據處理方法,可包括如下步驟:   步驟S401:接收數據提供方發送的包含溯源標識的加密數據。   在本說明書實施例中,數據處理平台將接收來源於不同數據提供方所發送的加密數據。當然,有關溯源標識、加密數據的內容可以參考前述內容,這裡不再過多贅述。   步驟S403:確定所述加密數據中的溯源標識。   溯源標識作為後續融合處理過程中的溯源依據,數據處理平台在接收到來源於數據提供方的加密數據後,可確定出加密數據中所包含的溯源標識,以便在後續過程中進行溯源處理。   可以理解的是,在前述實施例中,數據提供方使用可信第三方的加密密鑰進行加密,那麼,數據處理平台可使用該可信第三方對應的解密密鑰針對已加密的數據進行解密,從而確定出其中的溯源標識。   在實際應用時,數據處理平台可針對解密後所得到的溯源標識進行記錄。   步驟S405:針對所述加密數據進行數據融合計算處理,生成包含所述溯源標識的數據融合結果,以便根據所述溯源標識對數據融合結果中的加密數據進行溯源。   在本說明書實施例中,可採用前述的融合處理方式,針對加密數據進行融合計算處理,並得到所需的數據融合結果(例如:前述示例中用戶的綜合信用分)。當然,應理解,在數據融合處理的過程中,加密數據可能進行多次加密-解密-融合的處理過程。   這裡需要說明的是,在進行融合計算處理的過程中,通常是針對加密數據中除溯源標識以外的數據部分進行融合計算處理。這樣也就保證了該溯源標識在融合計算處理的過程中可持續傳遞,並保留其數據格式。   在進行溯源時,便可基於已記錄的溯源標識,在融合計算處理後的融合結果中實現溯源。   具體而言,在一些實際應用場景中,與前述如圖3所示的內容相對應,溯源標識作為鹽的一部分,匹配於數據表中的欄位(亦即,前述的原始欄位)。所以,對於數據處理平台而言,對應於圖3所示的內容,該數據處理平台對加密數據的融合處理示意圖可如圖5所示。在圖5中,數據處理平台將確定出加密欄位中包含的鹽(及鹽中包含的溯源標識),以及相應的密文資訊。應理解,在實際的數據融合處理中,數據處理平台可能會基於密文資訊,進行多次加密/解密處理(通常是基於加密UDF函數實現),最終得到相應的數據融合結果。在這個過程中,溯源標識將持續傳遞。   那麼,對於最終得到的數據融合結果(通常採用輸出表的方式展現)而言,根據已記錄的溯源標識可知,該數據融合結果(已經過解密處理)中,包含兩種不同來源的溯源標識,亦即,來源於數據提供方A和數據提供方B的溯源標識0100及0001。值的注意的是,在圖5中,將這兩種溯源標識合併表示為01000001,這樣一來,當數據處理平台需要查詢溯源標識時,可以按照設定的字符長度,分別獲得兩個溯源標識。當然,應理解的是,圖5中所示的表示方式僅是一種示例,在實際應用時,還可以採用不同的表示形式,如:在不同的溯源標識之間設置分隔符。這裡並不應構成對本申請的限定。   這裡需要說明的是,由於在加密階段,數據提供方使用了可信第三方的密鑰,因此,數據處理平台在對加密數據進行解密時,也將使用可信第三方的相應密鑰進行解密。並且,數據處理平台對密文資訊進行多次加密/解密的過程中,也會使用可信第三方的密鑰,當然,使用密鑰加密/解密的過程屬於現有技術,這裡不再過多贅述。   以上為本申請提供的可溯源的多方數據處理方法的幾種實施例,基於同樣的思路,本申請還提供了可溯源的多方數據處理裝置的實施例,如圖6所示,在數據提供方側,可溯源的多方數據處理裝置包括:   標識模組601,針對待加密數據,增加對應於該待加密數據的溯源標識;   加密模組602,對所述待加密數據和所述溯源標識進行加密,生成加密數據;   發送模組603,將包含所述溯源標識的所述加密數據發送至數據處理平台,以進行多方數據融合處理。   進一步地,所述標識模組601,針對所述待加密數據,採用加鹽演算法,在所述待加密數據的基礎上加鹽,在所述鹽中添加對應於該待加密數據的溯源標識。   所述加密模組602,採用由可信第三方所提供的密鑰,對所述待加密數據以及包含所述溯源標識的鹽進行加密,生成加密數據;   其中,所述加密數據中包含加密後的、含有溯源標識的鹽,以及待加密數據所對應的密文資訊。   在本說明書實施例中,在數據處理平台側,還提供了可溯源的多方數據處理裝置的實施例,如圖7所示,具體包括:   接收模組701,接收數據提供方發送的包含溯源標識的加密數據;   確定模組702,確定所述加密數據中的溯源標識;   處理模組703,針對所述加密進行數據融合計算處理,生成包含所述溯源標識的數據融合結果,以便根據所述溯源標識對數據融合結果中的加密數據進行溯源。   進一步地,所述加密數據中包含加密後的、含有溯源標識的鹽,以及待加密數據所對應的密文資訊;   所述確定模組702,對所述加密數據進行解密,確定出包含在所述鹽中的溯源標識,並記錄。   所述處理模組703,針對非溯源標識的加密數據進行融合計算處理。   所述處理模組703,在針對所述數據融合結果進行解密後所得到的解密結果中,根據已記錄的溯源標識進行溯源。   所述確定模組702/處理模組703,使用由可信第三方提供密鑰進行解密。   在20世紀90年代,對於一個技術的改進可以很明顯地區分是硬體上的改進(例如,對二極體、電晶體、開關等電路結構的改進)還是軟體上的改進(對於方法流程的改進)。然而,隨著技術的發展,當今的很多方法流程的改進已經可以視為硬體電路結構的直接改進。設計人員幾乎都透過將改進的方法流程編程到硬體電路中來得到相應的硬體電路結構。因此,不能說一個方法流程的改進就不能用硬體實體模組來實現。例如,可編程邏輯器件(Programmable Logic Device, PLD)(例如現場可編程閘陣列(Field Programmable Gate Array,FPGA))就是這樣一種積體電路,其邏輯功能由用戶對器件編程來確定。由設計人員自行編程來把一個數位系統“集成”在一片PLD上,而不需要請晶片製造廠商來設計和製作專用的積體電路晶片。而且,如今,取代手工地製作積體電路晶片,這種編程也多半改用“邏輯編譯器(logic compiler)”軟體來實現,它與程式開發撰寫時所用的軟體編譯器相類似,而要編譯之前的原始代碼也得用特定的編程語言來撰寫,此稱之為硬體描述語言(Hardware Description Language,HDL),而HDL也並非僅有一種,而是有許多種,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware Description Language)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(Ruby Hardware Description Language)等,目前最普遍使用的是VHDL(Very-High-Speed Integrated Circuit Hardware Description Language)與Verilog。本領域技術人員也應該清楚,只需要將方法流程用上述幾種硬體描述語言稍作邏輯編程並編程到積體電路中,就可以很容易得到實現該邏輯方法流程的硬體電路。   控制器可以按任何適當的方式實現,例如,控制器可以採取例如微處理器或處理器以及儲存可由該(微)處理器執行的電腦可讀程式代碼(例如軟體或韌體)的電腦可讀媒體、邏輯閘、開關、專用積體電路(Application Specific Integrated Circuit,ASIC)、可編程邏輯控制器和嵌入微控制器的形式,控制器的例子包括但不限於以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20 以及Silicone Labs C8051F320,記憶體控制器還可以被實現為記憶體的控制邏輯的一部分。本領域技術人員也知道,除了以純電腦可讀程式代碼方式實現控制器以外,完全可以透過將方法步驟進行邏輯編程來使得控制器以邏輯閘、開關、專用積體電路、可編程邏輯控制器和嵌入微控制器等的形式來實現相同功能。因此這種控制器可以被認為是一種硬體部件,而對其內包括的用於實現各種功能的裝置也可以視為硬體部件內的結構。或者甚至,可以將用於實現各種功能的裝置視為既可以是實現方法的軟體模組又可以是硬體部件內的結構。   上述實施例闡明的系統、裝置、模組或單元,具體可以由電腦晶片或實體實現,或者由具有某種功能的產品來實現。一種典型的實現設備為電腦。具體的,電腦例如可以為個人電腦、膝上型電腦、蜂窩電話、相機電話、智能電話、個人數位助理、媒體播放器、導航設備、電子郵件設備、遊戲控制台、平板電腦、可穿戴設備或者這些設備中的任何設備的組合。   為了描述的方便,描述以上裝置時以功能分為各種單元分別描述。當然,在實施本申請時可以把各單元的功能在同一個或多個軟體和/或硬體中實現。   本領域內的技術人員應明白,本發明的實施例可提供為方法、系統、或電腦程式產品。因此,本發明可採用完全硬體實施例、完全軟體實施例、或結合軟體和硬體方面的實施例的形式。而且,本發明可採用在一個或多個其中包含有電腦可用程式代碼的電腦可用儲存媒體(包括但不限於磁碟記憶體、CD-ROM、光學記憶體等)上實施的電腦程式產品的形式。   本發明是參照根據本發明實施例的方法、設備(系統)、和電腦程式產品的流程圖和/或方框圖來描述的。應理解可由電腦程式指令實現流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結合。可提供這些電腦程式指令到通用電腦、專用電腦、嵌入式處理機或其他可編程數據處理設備的處理器以產生一個機器,使得透過電腦或其他可編程數據處理設備的處理器執行的指令產生用於實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。   這些電腦程式指令也可儲存在能引導電腦或其他可編程數據處理設備以特定方式工作的電腦可讀記憶體中,使得儲存在該電腦可讀記憶體中的指令產生包括指令裝置的製造品,該指令裝置實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。   這些電腦程式指令也可裝載到電腦或其他可編程數據處理設備上,使得在電腦或其他可編程設備上執行一系列操作步驟以產生電腦實現的處理,從而在電腦或其他可編程設備上執行的指令提供用於實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。   在一個典型的配置中,計算設備包括一個或多個處理器(CPU)、輸入/輸出介面、網路介面和記憶體。   記憶體可能包括電腦可讀媒體中的非永久性記憶體,隨機存取記憶體(RAM)和/或非易失性記憶體等形式,如唯讀記憶體(ROM)或快閃記憶體(flash RAM)。記憶體是電腦可讀媒體的示例。   電腦可讀媒體包括永久性和非永久性、可移動和非可移動媒體可以由任何方法或技術來實現資訊儲存。資訊可以是電腦可讀指令、資料結構、程式的模組或其他數據。電腦的儲存媒體的例子包括,但不限於相變內存(PRAM)、靜態隨機存取記憶體(SRAM)、動態隨機存取記憶體(DRAM)、其他類型的隨機存取記憶體(RAM)、唯讀記憶體(ROM)、電可擦除可編程唯讀記憶體(EEPROM)、快閃記憶體或其他記憶體技術、唯讀光碟唯讀記憶體(CD-ROM)、數位多功能光碟(DVD)或其他光學儲存、磁盒式磁帶,磁帶磁磁片儲存或其他磁性儲存設備或任何其他非傳輸媒體,可用於儲存可以被計算設備訪問的資訊。按照本文中的界定,電腦可讀媒體不包括暫存電腦可讀媒體(transitory media),如調製的數據信號和載波。   還需要說明的是,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、商品或者設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、商品或者設備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,並不排除在包括所述要素的過程、方法、商品或者設備中還存在另外的相同要素。   本領域技術人員應明白,本申請的實施例可提供為方法、系統或電腦程式產品。因此,本申請可採用完全硬體實施例、完全軟體實施例或結合軟體和硬體方面的實施例的形式。而且,本申請可採用在一個或多個其中包含有電腦可用程式碼的電腦可用儲存媒體(包括但不限於磁片記憶體、CD-ROM、光學記憶體等)上實施的電腦程式產品的形式。   本申請可以在由電腦執行的電腦可執行指令的一般上下文中描述,例如程式模組。一般地,程式模組包括執行特定事務或實現特定抽象資料類型的常式、程式、對象、元件、資料結構等等。也可以在分散式運算環境中實踐本申請,在這些分散式運算環境中,由透過通信網路而被連接的遠端處理設備來執行事務。在分散式運算環境中,程式模組可以位於包括儲存設備在內的本地和遠端電腦儲存媒體中。   本說明書中的各個實施例均採用遞進的方式描述,各個實施例之間相同相似的部分互相參見即可,每個實施例重點說明的都是與其他實施例的不同之處。尤其,對於系統實施例而言,由於其基本相似於方法實施例,所以描述的比較簡單,相關之處參見方法實施例的部分說明即可。   以上所述僅為本申請的實施例而已,並不用於限制本申請。對於本領域技術人員來說,本申請可以有各種更改和變化。凡在本申請的精神和原理之內所作的任何修改、等同替換、改進等,均應包含在本申請的申請專利範圍之內。In order to make the purpose, technical solution, and advantages of the present application clearer, the technical solution of the present application will be clearly and completely described in combination with specific embodiments of the present application and corresponding drawings. Obviously, the described embodiments are only a part of the embodiments of the present application, but not all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by a person of ordinary skill in the art without creative efforts shall fall within the protection scope of the present application. Multi-party data fusion processing can be considered based on data provided by multiple data providers such as: maximum statistics (max), minimum statistics (min), average calculation (average), cumulative value calculation (sum), Data processing such as count is not specifically limited here. For example: the financial platform is connected with multiple banks. In this case, the financial platform can obtain the user's credit record data at each bank and perform multi-party data fusion processing in order to calculate the user's comprehensive credit score. Based on this example, for any bank, it is not desirable to make the user data in the bank public, so each bank will encrypt some or all of the user's credit record data, and the encrypted data will be sent to the financial platform. The corresponding data fusion algorithm calculates the credit score. In the process, the personal data of the user is encrypted, so the relevant information of the user will not be exposed. In the above example, the encrypted credit record data may contain data of different dimensions (such as: loan amount, repayment frequency, income level, etc.), and the different dimensions can affect the degree of user's comprehensive credit score (that is, weight) It's usually different. In actual applications, financial platforms may adjust weights in different dimensions in order to optimize data fusion algorithms. However, for encrypted credit record data, it is difficult for a financial platform to determine the dimensions corresponding to the encrypted credit record data, that is, it is difficult to trace the source of the data. For this reason, in one or more embodiments in this specification, a method for processing multi-party data with traceable source is provided. In the scenario of multi-party data fusion, accurate data from different data providers can be realized. Traceability, traceability accuracy can reach the field level. It should be noted that the above-mentioned traceable multi-party data processing method can adopt the architecture shown in FIG. 1. The architecture may include at least: a data provider, a data processing platform, and a trusted third party. Among them: The data provider mentioned in (1) may be considered as a bank, website, telecommunication operator, etc. used to provide data. In some embodiments, the data provider may also be different departments within the same enterprise or organization. In other embodiments, the data provider may also be an individual user. Of course, it is not specifically limited here. Different data providers send data to the data processing platform, so that the data processing platform performs multi-party data fusion processing. The data processing platform described above is used for multi-party data fusion calculation processing (such as the financial platform in the above example). In actual applications, in order to adapt to the processing of huge amounts of data, the data processing platform can usually adopt a decentralized / cluster architecture. The trusted third parties mentioned above can be considered as third-party websites, institutions, etc. used to provide encryption keys, such as: Key Management Center (KMC). During the encryption process, the data provider or data processing platform can use the key provided by a trusted third party for encryption / decryption processing. The encryption method may specifically be symmetric or asymmetric encryption, and the corresponding decryption method may be used for processing when decrypting, which will not be described in detail here. Based on the above-mentioned architecture shown in FIG. 1, the traceable multi-party data processing method in the embodiment of the present specification will be specifically explained below. First, as shown in FIG. 2 on the data provider side, the multi-party data processing method based on traceable data on the data provider side may include the following steps: Step S201: For the data to be encrypted, add a traceability identifier corresponding to the data to be encrypted . The to-be-encrypted data may be considered to be data to be sent by a data provider to a data processing platform for data fusion processing, such as: a string to be encrypted, a field value, an encoding, or a picture to be encrypted. Multimedia data such as video, audio, video, etc. Of course, the specific will be determined according to the needs of the actual application. In the following description, the form of data to be encrypted will be used as an example for illustration, which should not be used as a limitation on this application. The traceability identification mentioned in is used to identify the data to be encrypted in order to trace the source during the fusion process. In practical applications, the traceability identifier can be defined by the data provider. As a feasible way in the embodiments of this specification, the traceability identifier can be used to reflect the type or attribute characteristics of the data to be encrypted. For example, in a simple example, the traceability identifier of the data to be encrypted is A-2, and the traceability identifier can represent the The type of data to be encrypted is A-2. As another feasible way in the embodiment of the present specification, the traceability identifier can be used as the number of the field to which the data to be encrypted belongs. For example, in a simple example, the traceability identifier of the data to be encrypted is 0100. Encrypted data has a field number of 0100. Of course, only the possible situations of the traceability identification are listed here. In practical applications, the character form and the meaning of the traceability identification can usually be determined according to the needs of the actual application, and it is not specifically limited here. Step S203: Encrypt the data to be encrypted and the traceability identifier to generate encrypted data. In the embodiment of the present specification, the traceability identifier matches the data to be encrypted, and is used as the basis for traceability. After being matched and bound with the data to be encrypted, it is encrypted together. The encryption method may specifically adopt salt-added encryption. In this case, a traceability identifier may be added to the salt, and salt-encryption processing may be performed on the salt including the traceability identifier. Of course, in practical applications, the way of matching and binding between the traceability identifier and the data to be encrypted can be to insert the traceability identifier into the beginning or end of the data to be encrypted in the form of a string to form a "traceability identifier + to be encrypted" Data "or" data to be encrypted + traceability identification ". Of course, such an approach should not constitute a limitation on this application. Step S205: Send the encrypted data including the traceability identifier to a data processing platform for multi-party data fusion processing. In the actual data fusion scenario, for each data provider, the encrypted data containing the traceability basis (that is, the traceability identification) is sent to the data processing platform. In this way, the data processing platform is performing data fusion processing. In the process, accurate data traceability can be achieved. Through the above steps, for each data provider, for the data to be encrypted, corresponding identification data can be defined, and the identification data can be used as a source of traceability to identify the data to be encrypted and the source of the data to be encrypted. The role of the data provider. Further, after encrypting the encrypted data and the identification data to generate encrypted data, the encrypted data can be sent to a data processing platform, and then the data processing platform can implement the traceability of the encrypted data according to the identification data. For the foregoing, it should be noted that the data to be encrypted contains the original field. Specifically, as a possible way in the embodiment of the present specification, the data provider may use a data table storage structure for data storage. In the actual data fusion process, the data provider usually sends the data stored in the data table to the data processing platform for data fusion processing. Under the storage structure of a data table, each column of data in the data table represents data having the same commonality. The column name used to describe the characteristics of the data in the column is a field (field, in the embodiment of the present application, To distinguish it from descriptions such as "encrypted fields", the fields before encryption are referred to as "original fields"). That is, in the embodiment of the present specification, the traceability identifier is matched with the field. Therefore, the data provider can encrypt the original field and the traceability identifier that matches the original field to form encrypted data. This allows field-level traceability. Then, combining the above, the data provider can encrypt the data as shown in Figure 3. In FIG. 3, each data provider provides data to be encrypted (ie, data to be encrypted), and these data to be encrypted may be original fields to be encrypted. The data provider can use a salting encryption algorithm to encrypt the original field, that is, add salt to the original field, and the added salt contains the traceability identifier. For example: in FIG. 3, the traceability identifier "0100" as a part of the salt, and the remaining portion "Aaa" in the salt together constitute a salt; similarly, the traceability identifier "0001" and "Bbb" together constitute a salt. However, it should be noted that the traceability identification shown in Figure 3 and the rest of the salt are encrypted results obtained after the encryption operation is performed. In order to facilitate understanding, "0100" and "0001" are used in Figure 3 , "Aaa", "Bbb", etc. On this basis, the data provider can use a key provided by a trusted third party for encryption (the encryption method is not limited to symmetric encryption or asymmetric encryption) to form encrypted data (including encrypted fields). At this time, the encrypted field The bits include: the encrypted salt (the traceability identifier + the remainder of the salt) and the ciphertext information (the ciphertext information can be considered as the original field generated after encryption processing, as shown in Figure 3 11 * f and 22 * e). What needs to be explained here is that in some application scenarios with high data security requirements, when encrypting the field to be encrypted and its salt, the encryption method for the traceability identification in the salt and the rest of the salt and the The encryption method of the encryption field can be inconsistent. In a simple example, the encryption method can be: Md5 (Md5 (the field to be encrypted + the remainder of the salt) + traceability identification) It can be seen that for the field to be encrypted and the remaining part of the salt, Md5 is encrypted first, and then it is encrypted. The encryption result and the traceability identification are encrypted for another Md5. The encrypted data obtained by such an encryption method can be decrypted by the data processing platform using the corresponding key to obtain the traceability identification, and the field is still in an encrypted state, thereby ensuring the security of the field. Of course, in addition to the encryption method shown in the above example, you can also use a partial encryption algorithm, use the encryption algorithm A for "the field to be encrypted + the remainder of the salt" for partial encryption, and use the encryption algorithm for "source identification" Method B performs partial encryption. The specific encryption method can be determined according to the needs of the actual application. In other possible application scenarios, in the salt, the traceability identification is set at the specified location. Then, after decrypting the encryption results of the salt and the field to be encrypted, the data processing platform can learn the corresponding traceability through the specified location of the salt. Logo. Of course, this method can be applied in scenarios where data security requirements are not high, and this should not constitute a limitation on this application. Second, on the data processing platform side As shown in FIG. 4, the traceable multi-party data processing method based on the data processing platform side can include the following steps: Step S401: Receive encrypted data sent by the data provider that contains the traceability identification. In the embodiment of this specification, the data processing platform will receive encrypted data sent from different data providers. Of course, for the content of the traceability identification and encrypted data, please refer to the foregoing content, which will not be repeated here. Step S403: Determine a traceability identifier in the encrypted data.源 The traceability identification is used as the traceability basis in the subsequent fusion processing process. After receiving the encrypted data from the data provider, the data processing platform can determine the traceability identification contained in the encrypted data for traceability processing in the subsequent process. It can be understood that, in the foregoing embodiment, the data provider uses the encryption key of a trusted third party for encryption, then the data processing platform can use the decryption key corresponding to the trusted third party to decrypt the encrypted data. To determine the traceability identifier.实际 In actual application, the data processing platform can record the traceability identification obtained after decryption. Step S405: Perform data fusion calculation processing on the encrypted data to generate a data fusion result including the traceability identifier, so as to trace the encrypted data in the data fusion result according to the traceability identifier. In the embodiment of this specification, the aforementioned fusion processing method may be adopted to perform fusion calculation processing on encrypted data and obtain the required data fusion result (for example, the user's comprehensive credit score in the foregoing example). Of course, it should be understood that in the process of data fusion processing, the encrypted data may undergo multiple encryption-decryption-fusion processing processes.需要 It needs to be explained here that in the process of performing fusion calculation processing, the fusion calculation processing is usually performed on the data part of the encrypted data other than the traceability identifier. This also ensures that the traceability identifier is continuously transmitted during the fusion computing process, and retains its data format. When tracing, the tracing can be realized in the fusion result after the fusion calculation process based on the recorded traceability identification. Specifically, in some practical application scenarios, corresponding to the foregoing content shown in FIG. 3, the traceability identifier, as part of the salt, matches the field in the data table (that is, the aforementioned original field). Therefore, for the data processing platform, corresponding to the content shown in FIG. 3, the schematic diagram of the data processing platform's fusion processing of encrypted data can be shown in FIG. 5. In Figure 5, the data processing platform will determine the salt (and the traceability identifier contained in the salt) contained in the encrypted field, and the corresponding ciphertext information. It should be understood that in the actual data fusion processing, the data processing platform may perform multiple encryption / decryption processing (usually based on the encrypted UDF function) based on the ciphertext information, and finally obtain the corresponding data fusion result. In this process, the traceability identification will be continuously transmitted. Then, for the final data fusion result (usually displayed in the form of an output table), according to the recorded traceability identifier, it can be known that the data fusion result (which has been decrypted) includes traceability identifiers from two different sources. That is, the traceability identifiers 0100 and 0001 originating from the data provider A and the data provider B. It is worth noting that in FIG. 5, the two types of traceability identifiers are combined and expressed as 01000001. In this way, when the data processing platform needs to query the traceability identifiers, two traceability identifiers can be obtained according to the set character length. Of course, it should be understood that the representation manner shown in FIG. 5 is only an example. In practical applications, different representation forms may also be adopted, such as setting a separator between different traceability identifiers. This should not constitute a limitation on this application. What needs to be explained here is that since the data provider uses the key of a trusted third party during the encryption phase, when the data processing platform decrypts the encrypted data, it will also use the corresponding key of the trusted third party for decryption . In addition, the data processing platform also uses the key of a trusted third party in the process of encrypting / decrypting the ciphertext information multiple times. Of course, the process of using the key for encryption / decryption belongs to the prior art, and is not repeated here. The above are several embodiments of the traceable multi-party data processing method provided by the present application. Based on the same idea, this application also provides an embodiment of the traceable multi-party data processing device. As shown in FIG. On the other hand, the traceable multi-party data processing device includes: an identification module 601 that adds a traceability identifier corresponding to the data to be encrypted for the data to be encrypted; an encryption module 602 that encrypts the data to be encrypted and the traceability identifier To generate encrypted data; a sending module 603 that sends the encrypted data including the traceability identifier to a data processing platform for multi-party data fusion processing. Further, the identification module 601 uses a salting algorithm for the data to be encrypted, adds salt to the data to be encrypted, and adds a traceability identifier corresponding to the data to be encrypted to the salt. . The encryption module 602 uses a key provided by a trusted third party to encrypt the data to be encrypted and the salt including the traceability identifier to generate encrypted data; wherein the encrypted data includes encrypted data , The salt containing the traceability identifier, and the ciphertext information corresponding to the data to be encrypted. In the embodiment of this specification, on the data processing platform side, an embodiment of a traceable multi-party data processing device is also provided. As shown in FIG. 7, it specifically includes: a receiving module 701, which receives a traceability identifier sent by a data provider Encrypted data; determination module 702 determines the traceability identification in the encrypted data; processing module 703 performs data fusion calculation processing for the encryption to generate a data fusion result containing the traceability identification, so as to be based on the traceability Identifies the traceability of the encrypted data in the data fusion result. Further, the encrypted data includes an encrypted salt containing a traceability identifier, and ciphertext information corresponding to the data to be encrypted; the determining module 702 decrypts the encrypted data to determine that it is included in the encrypted data; State the traceability identification in the salt and record it. (2) The processing module 703 performs fusion calculation processing on the encrypted data of the non-traceable identifier. The processing module 703 performs traceability according to the recorded traceability identifier in the decryption result obtained after decrypting the data fusion result. The determination module 702 / processing module 703 uses a key provided by a trusted third party for decryption. In the 1990s, for a technical improvement, it can be clearly distinguished whether it is an improvement in hardware (for example, the improvement of circuit structures such as diodes, transistors, switches, etc.) or an improvement in software (for method and process Improve). However, with the development of technology, the improvement of many methods and processes can be regarded as a direct improvement of the hardware circuit structure. Designers almost always get the corresponding hardware circuit structure by programming the improved method flow into the hardware circuit. Therefore, it cannot be said that the improvement of a method flow cannot be realized by a hardware entity module. For example, a programmable logic device (Programmable Logic Device, PLD) (such as a Field Programmable Gate Array (FPGA)) is such an integrated circuit whose logic function is determined by the user programming the device. It is programmed by the designer to "integrate" a digital system on a PLD, without having to ask a chip manufacturer to design and manufacture a dedicated integrated circuit chip. Moreover, nowadays, instead of making integrated circuit chips manually, this programming is mostly implemented using "logic compiler" software, which is similar to the software compiler used in program development and writing, and requires compilation. The previous original code must also be written in a specific programming language. This is called the Hardware Description Language (HDL). There is not only one kind of HDL, but many types, such as ABEL (Advanced Boolean Expression Language), AHDL (Altera Hardware Description Language), Confluence, CUPL (Cornell University Programming Language), HDCal, JHDL (Java Hardware Description Language), Lava, Lola, MyHDL, PALASM, RHDL (Ruby Hardware Description Language), etc. VHDL (Very-High-Speed Integrated Circuit Hardware Description Language) and Verilog are commonly used. Those skilled in the art should also be clear that the hardware circuit that implements the logic method flow can be easily obtained by simply programming the method flow into the integrated circuit with the above-mentioned several hardware description languages. The controller may be implemented in any suitable way, for example, the controller may take the form of a microprocessor or processor and a computer-readable storage of computer-readable program code (such as software or firmware) executable by the (micro) processor. Media, logic gates, switches, application specific integrated circuits (ASICs), programmable logic controllers and embedded microcontrollers. Examples of controllers include, but are not limited to, the following microcontrollers: ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20 and Silicone Labs C8051F320, the memory controller can also be implemented as part of the control logic of the memory. Those skilled in the art also know that, in addition to implementing the controller in pure computer-readable program code, it is entirely possible to make the controller use logic gates, switches, dedicated integrated circuits, programmable logic controllers, and Embedded in the form of a microcontroller, etc. to achieve the same function. Therefore, the controller can be considered as a hardware component, and the device included in the controller for implementing various functions can also be considered as a structure in the hardware component. Or even, a device for implementing various functions can be regarded as a structure that can be both a software module implementing the method and a hardware component.的 The system, device, module, or unit described in the above embodiments may be implemented by a computer chip or entity, or a product with a certain function. A typical implementation is a computer. Specifically, the computer may be, for example, a personal computer, a laptop, a cellular phone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or A combination of any of these devices. For the convenience of description, when describing the above device, the functions are divided into various units and described separately. Of course, when implementing the present application, the functions of each unit may be implemented in the same software or multiple software and / or hardware.的 Those skilled in the art should understand that the embodiments of the present invention may be provided as a method, a system, or a computer program product. Therefore, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present invention may take the form of a computer program product implemented on one or more computer-usable storage media (including, but not limited to, magnetic disk memory, CD-ROM, optical memory, etc.) containing computer-usable program codes. . The present invention is described with reference to flowcharts and / or block diagrams of methods, devices (systems), and computer program products according to embodiments of the present invention. It should be understood that each process and / or block in the flowchart and / or block diagram, and the combination of the process and / or block in the flowchart and / or block diagram can be implemented by computer program instructions. These computer program instructions can be provided to the processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing device to generate a machine, so that instructions generated by the processor of the computer or other programmable data processing device can be used to generate instructions. Means for realizing the functions specified in one or more flowcharts and / or one or more blocks of the block diagrams. These computer program instructions may also be stored in a computer-readable memory that can guide a computer or other programmable data processing device to work in a specific manner, so that the instructions stored in the computer-readable memory generate a manufactured article including a command device, The instruction device implements the functions specified in a flowchart or a plurality of processes and / or a block or a block of the block diagram. These computer program instructions can also be loaded on a computer or other programmable data processing device, so that a series of operating steps can be performed on the computer or other programmable device to generate a computer-implemented process, which can be executed on the computer or other programmable device. The instructions provide steps for implementing the functions specified in one or more flowcharts and / or one or more blocks of the block diagrams.计算 In a typical configuration, a computing device includes one or more processors (CPUs), input / output interfaces, network interfaces, and memory. Memory may include non-permanent memory, random access memory (RAM), and / or non-volatile memory in computer-readable media, such as read-only memory (ROM) or flash memory ( flash RAM). Memory is an example of a computer-readable medium. Computer-readable media include permanent and non-permanent, removable and non-removable media. Information can be stored by any method or technology. Information can be computer-readable instructions, data structures, modules of programs, or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), Read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, read-only disc read-only memory (CD-ROM), digital versatile disc ( DVD) or other optical storage, magnetic tape cartridges, magnetic tape storage or other magnetic storage devices, or any other non-transmitting media, can be used to store information that can be accessed by computing devices. As defined herein, computer-readable media does not include temporary computer-readable media (transitory media), such as modulated data signals and carrier waves. It should also be noted that the terms "including," "including," or any other variation thereof are intended to encompass non-exclusive inclusion, so that a process, method, product, or device that includes a series of elements includes not only those elements but also Other elements not explicitly listed, or those that are inherent to such a process, method, product, or device. Without more restrictions, the elements defined by the sentence "including a ..." do not exclude the existence of other identical elements in the process, method, product or equipment including the elements.技术 Those skilled in the art should understand that the embodiments of the present application can be provided as a method, a system or a computer program product. Therefore, this application may take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware aspects. Moreover, this application may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to magnetic disk memory, CD-ROM, optical memory, etc.) containing computer-usable code. . This application can be described in the general context of computer-executable instructions executed by a computer, such as program modules. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform specific transactions or implement specific abstract data types. The present application can also be practiced in a decentralized computing environment. In these decentralized computing environments, transactions are performed by a remote processing device connected through a communication network. In a distributed computing environment, program modules can be located in local and remote computer storage media, including storage devices.的 Each embodiment in this specification is described in a progressive manner, and the same or similar parts between the various embodiments can be referred to each other. Each embodiment focuses on the differences from other embodiments. In particular, for the system embodiment, since it is basically similar to the method embodiment, the description is relatively simple. For the relevant part, refer to the description of the method embodiment. The above descriptions are merely examples of the present application and are not intended to limit the present application. For those skilled in the art, this application may have various modifications and changes. Any modification, equivalent replacement, or improvement made within the spirit and principle of this application shall be included in the scope of the patent application for this application.

601‧‧‧標識模組601‧‧‧Identification Module

602‧‧‧加密模組602‧‧‧ Encryption Module

603‧‧‧發送模組603‧‧‧ sending module

701‧‧‧接收模組701‧‧‧Receiving module

702‧‧‧確定模組702‧‧‧ Determine the module

703‧‧‧處理模組703‧‧‧Processing Module

此處所說明的附圖用來提供對本申請的進一步理解,構成本申請的一部分,本申請的示意性實施例及其說明用於解釋本申請,並不構成對本申請的不當限定。在附圖中:   圖1為本說明書實施例提供的可溯源的多方數據處理過程所基於的架構示意圖;   圖2為本說明書實施例提供的在數據提供方側的可溯源的多方數據處理過程;   圖3為本說明書實施例提供的數據提供方進行數據加密的示意圖;   圖4為本說明書實施例提供的在數據處理平台側的可溯源的多方數據處理過程;   圖5為本說明書實施例提供的數據處理平台進行數據融合處理的示意圖;   圖6為本說明書實施例提供的在數據提供方側的可溯源的多方數據處理裝置結構示意圖;   圖7為本說明書實施例提供的在數據處理平台側的可溯源的多方數據處理裝置結構示意圖。The drawings described here are used to provide a further understanding of the present application and constitute a part of the present application. The schematic embodiments of the present application and the description thereof are used to explain the present application, and do not constitute an improper limitation on the present application. In the drawings: FIG. 1 is a schematic diagram of an architecture based on a traceable multi-party data processing process provided by an embodiment of the specification; FIG. 2 is a traceable multi-party data processing process at a data provider side provided by an embodiment of the specification; Figure 3 is a schematic diagram of data encryption provided by a data provider according to an embodiment of the specification; Figure 4 is a traceable multi-party data processing process on a data processing platform side provided by an embodiment of the specification; Figure 5 is provided by an embodiment of the specification Schematic diagram of data fusion processing performed by the data processing platform; FIG. 6 is a structural diagram of a traceable multi-party data processing device on the data provider side provided by the embodiment of the present specification; FIG. 7 is a data processing platform side provided by the embodiment of the present specification Schematic diagram of a traceable multi-party data processing device.

Claims (18)

一種可溯源的多方數據處理方法,該方法包括:   針對待加密數據,增加對應於該待加密數據的溯源標識;   對該待加密數據和該溯源標識進行加密,生成加密數據;   將包含該溯源標識的該加密數據發送至數據處理平台,以進行多方數據融合處理。A traceable multi-party data processing method, the method includes: for data to be encrypted, adding a traceability identification corresponding to the data to be encrypted; 加密 encrypting the data to be encrypted and the traceability identification to generate encrypted data; including the traceability identification The encrypted data is sent to a data processing platform for multi-party data fusion processing. 如請求項1所述的方法,增加對應於該待加密數據的溯源標識,具體包括:   針對該待加密數據,採用加鹽演算法,在該待加密數據的基礎上加鹽;   在該鹽中添加對應於該待加密數據的溯源標識。The method according to claim 1, adding a traceability identifier corresponding to the data to be encrypted, specifically includes: using a salting algorithm for the data to be encrypted, and adding salt on the basis of the data to be encrypted; in the salt Add a traceability identifier corresponding to the data to be encrypted. 如請求項2所述的方法,對該待加密數據和該溯源標識進行加密,生成加密數據,具體包括:   使用由可信第三方所提供的密鑰,對該待加密數據以及包含該溯源標識的鹽進行加密,生成加密數據;   其中,該加密數據中包含加密後的、含有溯源標識的鹽,以及待加密數據所對應的密文資訊。The method according to claim 2, encrypting the to-be-encrypted data and the traceability identifier to generate encrypted data, specifically including: using a key provided by a trusted third party to the to-be-encrypted data and including the traceability identifier The encrypted salt is encrypted to generate encrypted data; The encrypted data includes the encrypted salt containing the traceability identifier and the ciphertext information corresponding to the data to be encrypted. 一種可溯源的多方數據處理方法,該方法包括:   接收數據提供方發送的包含溯源標識的加密數據;   確定該加密數據中的溯源標識;   針對該加密數據進行數據融合計算處理,生成包含該溯源標識的數據融合結果,以便根據該溯源標識對數據融合結果中的加密數據進行溯源。A traceable multi-party data processing method, the method includes: receiving encrypted data sent by a data provider including a traceability identifier; determining a traceability identifier in the encrypted data; 进行 performing a data fusion calculation process on the encrypted data to generate the traceability identifier Data fusion result, so as to trace the encrypted data in the data fusion result according to the source identification. 如請求項4所述的方法,該加密數據中包含加密後的、含有溯源標識的鹽,以及待加密數據所對應的密文資訊;   確定該加密數據中的溯源標識,具體包括:   對該加密數據進行解密,確定出包含在該鹽中的溯源標識,並記錄。The method according to claim 4, the encrypted data includes an encrypted salt containing a traceability identification, and ciphertext information corresponding to the data to be encrypted; determining the traceability identification in the encrypted data, including: the encryption The data is decrypted and the traceability identification contained in the salt is determined and recorded. 如請求項5所述的方法,針對該加密數據進行數據融合計算處理,具體包括:   針對非溯源標識的加密數據進行融合計算處理。According to the method described in claim 5, performing data fusion calculation processing on the encrypted data specifically includes: 进行 performing fusion calculation processing on the encrypted data that is not traceable. 如請求項5所述的方法,根據該溯源標識對數據融合結果中的加密數據進行溯源,具體包括:   在針對該數據融合結果進行解密後所得到的解密結果中,根據已記錄的溯源標識進行溯源。According to the method described in claim 5, tracing the encrypted data in the data fusion result according to the traceability identifier specifically includes: 中 In the decryption result obtained after decrypting the data fusion result, perform the record according to the recorded traceability identifier. Traceability. 如請求項5或7所述的方法,採用如下方式進行解密,具體包括:   使用由可信第三方提供密鑰進行解密。The method described in claim 5 or 7 uses the following methods for decryption, which specifically include: Decryption using a key provided by a trusted third party. 一種可溯源的多方數據處理裝置,包括:   標識模組,針對待加密數據,增加對應於該待加密數據的溯源標識;   加密模組,對該待加密數據和該溯源標識進行加密,生成加密數據;   發送模組,將包含該溯源標識的該加密數據發送至數據處理平台,以進行多方數據融合處理。A traceable multi-party data processing device includes: 源 an identification module that adds a traceability identifier corresponding to the data to be encrypted for the data to be encrypted; an encryption module that encrypts the data to be encrypted and the traceability identifier to generate encrypted data A sending module sends the encrypted data including the traceability identification to a data processing platform for multi-party data fusion processing. 如請求項9所述的裝置,該標識模組,針對該待加密數據,採用加鹽演算法,在該待加密數據的基礎上加鹽,在該鹽中添加對應於該待加密數據的溯源標識。The device according to claim 9, the identification module uses a salting algorithm for the data to be encrypted, adds salt to the data to be encrypted, and adds traceability corresponding to the data to be encrypted to the salt Logo. 如請求項10所述的裝置,該加密模組,使用由可信第三方所提供的密鑰,對該待加密數據以及包含該溯源標識的鹽進行加密,生成加密數據;   其中,該加密數據中包含加密後的、含有溯源標識的鹽,以及待加密數據所對應的密文資訊。The device according to claim 10, the encryption module uses the key provided by a trusted third party to encrypt the data to be encrypted and the salt containing the traceability identification to generate encrypted data; wherein the encrypted data It contains the encrypted salt, which contains the traceability identifier, and the ciphertext information corresponding to the data to be encrypted. 一種可溯源的多方數據處理裝置,包括:   接收模組,接收數據提供方發送的包含溯源標識的加密數據;   確定模組,確定該加密數據中的溯源標識;   處理模組,針對該加密進行數據融合計算處理,生成包含該溯源標識的數據融合結果,以便根據該溯源標識對數據融合結果中的加密數據進行溯源。A traceable multi-party data processing device includes: : a receiving module that receives encrypted data including a traceability identification sent by a data provider; a determination module that determines a traceability identification in the encrypted data; a processing module that performs data on the encryption The fusion calculation process generates a data fusion result including the traceability identifier, so as to trace the encrypted data in the data fusion result according to the traceability identifier. 如請求項12所述的裝置,該加密數據中包含加密後的、含有溯源標識的鹽,以及待加密數據所對應的密文資訊;   該確定模組,對該加密數據進行解密,確定出包含在該鹽中的溯源標識,並記錄。The device according to claim 12, the encrypted data includes an encrypted salt containing a traceability identifier, and ciphertext information corresponding to the data to be encrypted; the determination module decrypts the encrypted data to determine that the Traceability identification in this salt and record. 如請求項13所述的裝置,該處理模組,針對非溯源標識的加密數據進行融合計算處理。The device according to claim 13, the processing module performs fusion calculation processing on the encrypted data of the non-traceable identity. 如請求項13所述的裝置,該處理模組,在針對該數據融合結果進行解密後所得到的解密結果中,根據已記錄的溯源標識進行溯源。The apparatus according to claim 13, the processing module, in the decryption result obtained after decrypting the data fusion result, traces the source according to the recorded traceability identifier. 如請求項13或15所述的裝置,該確定模組或處理模組,使用由可信第三方提供密鑰進行解密。The device according to claim 13 or 15, the determining module or the processing module is decrypted using a key provided by a trusted third party. 一種可溯源的多方數據處理設備,包括:處理器、記憶體,其中:   該記憶體,儲存可溯源的多方數據處理程式;   該處理器,調用記憶體中儲存的可溯源的多方數據處理程式,並執行:   針對待加密數據,增加對應於該待加密數據的溯源標識;   對該待加密數據和該溯源標識進行加密,生成加密數據;   將包含該溯源標識的該加密數據發送至數據處理平台,以進行多方數據融合處理。A traceable multi-party data processing device includes a processor and a memory, wherein: the memory stores a traceable multi-party data processing program; the processor calls a traceable multi-party data processing program stored in the memory, And execute: for the data to be encrypted, add a traceability identification corresponding to the data to be encrypted; 加密 encrypt the data to be encrypted and the traceability identification to generate encrypted data; 发送 send the encrypted data containing the traceability identification to a data processing platform, For multi-party data fusion processing. 一種可溯源的多方數據處理設備,包括:處理器、記憶體,其中:   該記憶體,儲存可溯源的多方數據處理程式;   該處理器,調用記憶體中儲存的可溯源的多方數據處理程式,並執行:   接收數據提供方發送的包含溯源標識的加密數據;   確定該加密數據中的溯源標識;   針對該加密進行數據融合計算處理,生成包含該溯源標識的數據融合結果,以便根據該溯源標識對數據融合結果中的加密數據進行溯源。A traceable multi-party data processing device includes a processor and a memory, wherein: the memory stores a traceable multi-party data processing program; the processor calls a traceable multi-party data processing program stored in the memory, And execute: receiving the encrypted data containing the traceability identification sent by the data provider; determining the traceability identification in the encrypted data; 进行 performing data fusion calculation processing for the encryption to generate a data fusion result containing the traceability identification, so as to The encrypted data in the data fusion result is traced.
TW107132211A 2017-11-17 2018-09-13 Traceable multi-party data processing method, apparatus and device TW201923647A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201711146501.0A CN109800582B (en) 2017-11-17 2017-11-17 Traceable multi-party data processing method, device and equipment
??201711146501.0 2017-11-17

Publications (1)

Publication Number Publication Date
TW201923647A true TW201923647A (en) 2019-06-16

Family

ID=66540004

Family Applications (1)

Application Number Title Priority Date Filing Date
TW107132211A TW201923647A (en) 2017-11-17 2018-09-13 Traceable multi-party data processing method, apparatus and device

Country Status (3)

Country Link
CN (2) CN109800582B (en)
TW (1) TW201923647A (en)
WO (1) WO2019095854A1 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110866274A (en) * 2019-11-12 2020-03-06 支付宝(杭州)信息技术有限公司 Data fusion method, data fusion platform, data fusion system and data processing platform
CN111131266A (en) * 2019-12-26 2020-05-08 广州信天翁信息科技有限公司 Data tag, responsibility tracing method and device
CN113222344A (en) * 2021-04-15 2021-08-06 卓尔智联(武汉)研究院有限公司 Block chain data processing method and device and storage medium
CN113380016A (en) * 2021-06-09 2021-09-10 贵州电网有限责任公司 Metering automation system based on handheld device and use method thereof
CN114547641B (en) * 2022-01-05 2024-04-26 浪潮工业互联网股份有限公司 Industrial data tracking method, device, equipment and medium based on block chain

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007531373A (en) * 2004-03-23 2007-11-01 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ Anonymous integrity of transmitted data
DE102006006057B4 (en) * 2006-02-09 2007-12-27 Infineon Technologies Ag Data encryption apparatus and method for encrypting data
CN101593196B (en) * 2008-05-30 2013-09-25 日电(中国)有限公司 Method, device and system for rapidly searching ciphertext
SE533757C2 (en) * 2008-09-15 2010-12-28 Security Alliance Stockholm Ab Data processing systems for collaboration between actors for the protection of an area
CN103618693B (en) * 2013-10-31 2017-01-11 中国航天科工集团第二研究院七〇六所 A cloud manufacturing user data management and control method based on labels
CN103577611A (en) * 2013-11-25 2014-02-12 方正国际软件有限公司 Data unifying device and data unifying method
CN104091272A (en) * 2014-07-09 2014-10-08 北京信长城技术研究院 Identifying and tracing system with unique identity and method
CN104156434B (en) * 2014-08-12 2017-10-24 北京嘉和美康信息技术有限公司 The date storage method and its control device of a kind of biological sample bank
CN104281794A (en) * 2014-09-23 2015-01-14 北京奇艺世纪科技有限公司 Password storing and verifying method and password storing and verifying device
US10341103B2 (en) * 2015-01-29 2019-07-02 Entit Software Llc Data analytics on encrypted data elements
CN105792110B (en) * 2016-03-30 2019-04-30 上海申腾信息技术有限公司 A kind of data fusion of multiple data origin, the processing method of intelligent search
CN106060078B (en) * 2016-07-11 2019-01-01 浪潮(北京)电子信息产业有限公司 User information encryption method, register method and verification method applied to cloud platform
CN106059762B (en) * 2016-07-26 2019-05-14 江苏国泰新点软件有限公司 Data safety processing method and device

Also Published As

Publication number Publication date
CN111737716A (en) 2020-10-02
CN109800582B (en) 2020-05-15
WO2019095854A1 (en) 2019-05-23
CN109800582A (en) 2019-05-24

Similar Documents

Publication Publication Date Title
TWI734041B (en) Method and device for data audit
CN109831298B (en) Method for safely updating key in block chain, node and storage medium
CN109936626B (en) Method, node and storage medium for implementing privacy protection in block chain
WO2021103708A1 (en) Data query method, apparatus, device and system based on privacy information protection
TW201923647A (en) Traceable multi-party data processing method, apparatus and device
CN110020855B (en) Method, node and storage medium for realizing privacy protection in block chain
CN110033267B (en) Method, node, system and storage medium for implementing privacy protection in block chain
CN110032885B (en) Method, node and storage medium for implementing privacy protection in block chain
CN110008735B (en) Method, node and storage medium for realizing contract calling in block chain
TWI686071B (en) Key management method, device and equipment
CN110020549B (en) Method, node and storage medium for implementing privacy protection in block chain
WO2020233642A1 (en) Conditional receipt storage method and node which combine code labelling and type dimension
CN110263544B (en) Receipt storage method and node combining transaction type and judgment condition
CN110060054B (en) Method, node, system and storage medium for implementing privacy protection in block chain
WO2020233638A1 (en) Receipt storage method and node based on code labeling and transaction type
CN111612462B (en) Method, node and storage medium for implementing privacy protection in blockchain
CN110245947B (en) Receipt storage method and node combining conditional restrictions of transaction and user types
WO2020233637A1 (en) Receipt storage method combining code labelling with user type, and node
CN110032876B (en) Method, node and storage medium for implementing privacy protection in block chain
CN110245944B (en) Receipt storage method and node based on user type
CN110020856B (en) Method, node and storage medium for realizing mixed transaction in block chain
TWI686712B (en) Data statistic method, device and equipment based on obfuscation circuit
WO2021017424A1 (en) Data preprocessing method and apparatus, ciphertext data obtaining method and apparatus, and electronic device
CN111639362B (en) Method, node and storage medium for implementing privacy protection in blockchain
CN110245943B (en) Receipt storage method and node based on judgment condition