¿Cómo se pueden usar los certificados de transacción en Hyperledger para hacer cumplir la privacidad?

Estoy creando una aplicación blockchain en Hyperledger que realiza un proceso de licitación para una empresa de fabricación. El proceso de licitación involucra a 4 proveedores (Proveedor A al Proveedor D). El que tenga la oferta más baja gana.

Soy capaz de crear el chaincode para esto. Sin embargo, dado que es una cadena de bloques, los proveedores pueden ver la oferta de cada uno (por ejemplo, simplemente mirando el contenido de los bloques). Además, los proveedores no ganadores sabrán quién ganó realmente el proceso de licitación.

Quiero hacer cumplir las siguientes reglas de privacidad en la cadena de bloques:

a. la oferta de un proveedor en particular debe ser visible solo por la empresa fabricante y el proveedor en sí (por ejemplo, el proveedor A no puede ver la oferta del proveedor B)

si. solo la empresa de fabricación y el proveedor ganador saben quién ganó (por ejemplo, si el proveedor A pierde la oferta, el proveedor A solo sabe que perdió la oferta pero no tiene idea de quién ganó)

He examinado el propósito del certificado de transacción y creo que esto abordará mi preocupación de privacidad.

Puedo solicitar varios certificados de transacción con la API REST. Sin embargo, no estoy seguro de cómo utilizar los certificados de transacción.

¿Está destinado a usarse fuera del chaincode (p. Ej., Se usa para cifrar parámetros que se pasarán a una función de invocación)?

¿O está destinado a pasarse como un parámetro a una función de chaincode y usarlo dentro del chaincode para encriptar datos particulares antes de almacenarlos en la cadena de bloques?

¿Cómo realizo el cifrado real usando los certificados de transacción?

Actualmente estoy usando v0.6 de la tela Hyperledger para mi chaincode. Para mi front end, estoy usando Node.JS HFC SDK v0.6.5.

¿Existe un código de muestra que pueda usar como base para comprender cómo se utilizan los certificados de transacción para abordar la privacidad?