本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
密碼編譯計算中的欄類型 Clean Rooms
本主題提供的Clean Rooms密碼編譯計算中資料行類型的相關資訊。
Fingerprint專欄
Fingerprint資料行是受密碼編譯保護以便在JOIN陳述式中使用的資料行。
資料fingerprint行中的資料無法解密。只有密封資料行中的資料才能解密。
Fingerprint資料行只能用於下列 SQL 子句和函數:
-
JOIN (INNER, OUTER, LEFT, RIGHT, or FULL)針對其他fingerprint欄:
-
如果將
allowJoinsOnColumnsWithDifferentNames
參數的值設定為false
,則的兩個fingerprint欄也JOIN必須具有相同的名稱。
-
-
SELECT COUNT()
-
SELECT COUNT(DISTINCT )
-
GROUP BY
(只有在協同作業已將preserveNulls
參數值設定為時才使用true
。)
違反這些限制的查詢可能會產生不正確的結果。
密封柱
密封的資料行是受密碼編譯保護以便在SELECT陳述式中使用的資料行。
密封的資料行必須只能用於下列 SQL 子句和函數:
-
SELECT
-
SELECT ... AS
-
SELECT COUNT()
注意
不支援
SELECT COUNT(DISTINCT )
。
違反這些限制的查詢可能會產生不正確的結果。
在加密之前填補資料sealed欄的資料
當你指定一個列應該是一個sealed列,C3R 會詢問你選擇什麼樣的填充。加密前填補資料是選擇性的。如果沒有填補 (填充類型none
),則加密資料的長度會指出的大小cleartext。在某些情況下,的大小cleartext可能會暴露明文。使用填充 (fixed
或的填充類型max
) 時,所有值會先填補成一般大小,然後加密。使用填充時,加密數據的長度不會提供有關原始cleartext長度的信息,除了給出其大小的上限之外。
如果您想要填充列,並且該列中數據的最大字節長度是已知的,請使用fixed
填充。使用至少與該列中最長length
值的字節長度一樣大的值。
注意
如果值超過提供的值,則會發生錯誤且加密失敗length
。
如果您想要填充列,並且該列中數據的最大字節長度不知道,請使用max
填充。此填充模式將所有數據填充到最長值的長度加上其他length
字節。
注意
您可能想要批次加密資料,或定期使用新資料更新資料表。請注意,max
填充會將條目填補到給定批次中最長純文本條目的長度(加上length
字節)。這意味著密文長度可能因批次而異。因此,如果您知道列的最大字節長度,則應該使用fixed
而不是。max
Cleartext專欄
Cleartext資料行是不受密碼編譯保護以便在JOIN或SELECT陳述式中使用的資料行。
Cleartext列可以在 SQL 查詢的任何部分使用。