Published on: 2019-01-02T13:16:08+00:00
In a recent discussion on the Lightning-dev mailing list, Pavol Rusnak proposed the idea of adding an identicon of the payee node id (public key) next to the QR code for payments in user-facing wallets. This would provide users with a visual verification method to quickly confirm if they have the correct recipient. ZmnSCPxj suggested using Chernoff Faces as the identicon representation since humans are adept at recognizing small changes in faces and remembering them. By using a cryptographic hash function, different faces could be generated based on the public key, making it easy to notice any changes. However, ZmnSCPxj also mentioned the possibility of users obsessively rerolling their pubkey until they acquire a face they like, which could be a source of amusement.A member of the Lightning-dev mailing list put forth the idea of using Chernoff Faces, which are visual representations of data points as faces, to identify node public keys. The goal is to allow for easy recognition and memorization of small changes in a node's public key. To achieve this, a cryptographic hash function could be applied to the public key, and the resulting output could be used in a Chernoff Face generator. This proposal serves as an alternative to the current practice of displaying long hex values for node IDs during payments via QR codes. However, implementing this idea effectively would require its adoption across all user-facing wallets.On December 29th, 2018, a Lightning-dev mailing list discussion took place regarding the improvement of user verification in QR code payments. During this discussion, Pavol Rusnak suggested the concept of displaying an identicon, such as those generated by jdenticon.com, of the payee node ID alongside the QR code for visual verification. William Casarin proposed the use of a visual hashing algorithm that produces uniformly random outputs for small changes in inputs, which would be beneficial in this case. However, he noted that jdenticon did not exhibit this property. Another participant named Max suggested using a confirmation phrase consisting of a few words as an alternative, which could be easier to implement and reliable if a sufficiently large pool of words was available.Pavol Rusnak, a user on the Lightning-dev mailing list, proposed the idea of incorporating an identicon next to the QR code for payments made through QR codes. This would allow users to visually verify the correctness of the recipient by checking the identicon of the payee node id (public key), instead of having to rely on the lengthy hex value. The suggestion received positive interest, with someone even testing jdenticon with their node id to observe if small changes in inputs produced uniformly random visual outputs. However, it was discovered that small changes to the first digit did not affect the visual output at all. While the usefulness of this finding in the present use case is uncertain, it is worth considering for future development.A proposal has emerged to simplify the process of verifying payee node ids (public keys) when conducting payments through QR codes. Currently, users are required to examine lengthy hex values to confirm the identity of the recipient. To streamline this process, an identicon could be added alongside the QR code. This visual representation would enable users to quickly check if the intended recipient is correct. For this feature to be effective, the incorporation of identicons would need to be implemented across all user-facing wallets within the Lightning network.
Updated on: 2023-07-31T21:10:10.927233+00:00