const ( LinkWebPrefix = "https://berty.tech/id#" LinkInternalPrefix = "BERTY://" DefaultChecksumSize = 1 // 1-byte length by default (should have ~1/256 false-positive in case of invalid password) )
func EncryptLink ¶
func EncryptLink(link *messengertypes.BertyLink, passphrase byte) (*messengertypes.BertyLink, error)
EncryptLink converts a clear BertyLink into an encrypted one.
The encrypted link can be marshaled by UnmarshalLink if a passphrase is provided in the URL.
func MarshalLink ¶
MarshalLink returns shareable web and internal URLs.
The web URL is meant to: - be short, - have some parts that are human-readable, - to point to a sub-page of the berty.tech website where some JS code will parse the human-readable part.
The internal URL is meant to generate the most tiny QR codes. These QR codes can only be opened by a Berty app.
Marshal will return an error if the provided link does not contain all the mandatory fields; it may also filter-out some sensitive data.