โหมดการเข้ารหัสสมัยใหม่รองรับข้อมูลที่เชื่อมโยง ซึ่งได้รับการตรวจสอบสิทธิ์แต่ไม่ได้เข้ารหัส ซึ่งสามารถใช้เพื่อเชื่อมโยงข้อความที่เข้ารหัสกับบริบทที่เฉพาะเจาะจง
ตัวอย่างการเชื่อมโยงข้อความที่เข้ารหัสกับข้อมูลที่เชื่อมโยง ได้แก่
การเข้ารหัสฐานข้อมูลทีละเซลล์ (หรือทีละคอลัมน์) วิธีนี้ช่วยให้มั่นใจว่าข้อความที่เข้ารหัสของเซลล์จะใช้ได้เฉพาะในเซลล์นั้นๆ เท่านั้น ซึ่งจะช่วยป้องกันไม่ให้ผู้โจมตีย้ายข้อความที่เข้ารหัสจากเซลล์หนึ่งไปยังอีกเซลล์หนึ่ง ในตัวอย่างนี้ ข้อความที่เข้ารหัสควรเชื่อมโยงกับ
column_id
และrow_id
สำหรับเซลล์ฐานข้อมูลที่ระบุการจัดเก็บข้อความที่เข้ารหัสในไคลเอ็นต์ต่างๆ ช่วยให้คุณตรวจจับพฤติกรรมที่ไม่ถูกต้องได้หากไคลเอ็นต์ ก ให้ข้อความที่เข้ารหัสของไคลเอ็นต์ ข เพื่อถอดรหัส ในกรณีนี้ ข้อความที่เข้ารหัสควรเชื่อมโยงกับชื่อของลูกค้า
Tink มีตัวเลือกหลายอย่างในการเชื่อมโยงข้อความที่เข้ารหัสกับบริบท ดังนี้
AEAD, Streaming AEAD และ Deterministic AEAD ทั้งหมดยอมรับอินพุตข้อมูลที่เชื่อมโยงพร้อมกับข้อความธรรมดา การถอดรหัสจะดำเนินการไม่สำเร็จหากไม่ได้ระบุข้อมูลที่เชื่อมโยงกับข้อความที่เข้ารหัส
การเข้ารหัสแบบผสมมีฟีเจอร์เดียวกันนี้โดยใช้พารามิเตอร์ context info