Tink API 會使用任意二進位 blob 做為輸入。這意味著,如果您想 加密結構化資料,例如 通訊協定緩衝區,您需要 先進行編碼
加密通訊協定緩衝區
加密方式:
- 將通訊協定緩衝區序列化到位元組陣列。
- 加密序列化位元組,然後儲存或傳送產生的密文。 您可以使用下列功能:
如何解密:
- 解密密文。
- 如果步驟 1 成功,請將 protobuf 還原序列化。
防範通訊協定緩衝區遭到竄改
在大多數情況下,加密通訊協定緩衝區在驗證時是比較適合單獨驗證。
如何防止通訊協定緩衝區遭竄改:
驗證方法:
- 取得序列化的 protobuf 及其簽章 (或 MAC)。
- 驗證簽章 (或 MAC)。
- 反序列化 protobuf。
請注意,有效的簽章或 MAC 無法保證資料正確 格式化。剖析資料的實作方式必須一律預期 資料可能已損毀。
保護多個資料項目
為了保護多個資料項目,請使用序列化方法。新增所有資料 新增至 protobuf,並依上述方式加密 (或驗證)。
您也可以按照下列方式進行序列化:
serialize(data1 , data2 , …, datan) = 4-byte-data1's length || data1 || 4-byte-data2's length || data2 || … || 4-byte-dataN's length || dataN
最後,加密 (或驗證) 產生的位元組陣列。