Yesterday's discussion about digital identity with a colleague from the industry, @ОгО 👋 sparked my thoughts on one of the examples of digital identity, which is the well-known FaceID for all of us. Your biometric data is stored on the device's processor, and you are already actively using this identifier for accessing websites, banking, Diia, the stock exchange, etc. And if we add other personal data to the biometrics, which can be personally edited later (email, place of residence, passport details, diplomas, tax information, etc.), then upon request for specific data, you will be able to disclose only what the system asks for, simply by passing FaceID verification. The ways of use can be improved and expanded to infinity. Convenient, safe, fast.
I am not a programmer, so please do not judge too harshly.
I have researched this issue a bit; the combination of flawless FaceID biometrics and the Sign Protocol's attestation infrastructure is a possible way to create true decentralized identification. This allows transforming local verification on the device into an on-chain proof without disclosing biometric data. Technically, it looks like building a bridge between the isolated iPhone process and the Sign Protocol smart contracts.
It is important to understand that FaceID here acts not as the identifier itself, but as a digital key that opens access to the signature. FaceID does not transmit the mathematical model of your face to the network. Instead, a signing mechanism is used, the user initiates a request for attestation in the dApp, and the device generates a key pair (Public/Private), where the private key is stored exclusively in the secure module of the processor. Access to the signature with this key is granted only after successful face scanning.
To ensure that attestation in the Sign Protocol is anonymous but valid, it is necessary to integrate ZK-SNARKs. The mobile application based on the signature from the Secure Enclave generates a ZK-proof. This proof confirms: "I have a private key, access to which is protected by FaceID, and this key corresponds to the registered public address," but does not specify which key it is. In fact, this is where the recording of the fact occurs through a specific scheme in the Sign Protocol: your mobile node or trusted intermediary (Oracle) verifies the ZK-proof and stamps the attestation.
However, such a system has a critical point of dependency! If the phone is lost, access to the key in the Secure Enclave cannot be restored. Therefore, to ensure the viability of such a model, the implementation of social recovery is necessary, which will allow you to transfer your identity to a new device.
Despite its elegance, such a system has other vulnerabilities: dependency on the Apple ecosystem and potential closed software updates. On the other hand, from an architectural point of view, Apple has made FaceID as isolated as possible. The mathematical model of the face is stored not in the main memory and not in iCloud, but in a separate module, access to which is blocked even for the operating system. Since the system builds a 3D model, it cannot be fooled by a photograph. According to developers, the error rate is 1 in 1,000,000 (in TouchID it is 1 in 50,000).
The combination of such hardware reliability with the decentralization of the Sign Protocol is a step towards true privacy in the digital age.
#SignDigitalSovereignInfra $SIGN .
