MCPcopy
hub / github.com/ayn2op/discordo / decryptUserPayload

Method decryptUserPayload

internal/ui/login/qr/msg.go:257–276  ·  view source on GitHub ↗
(encryptedPayload string)

Source from the content-addressed store, hash-verified

255}
256
257func (m *Model) decryptUserPayload(encryptedPayload string) tview.Cmd {
258 return func() tview.Msg {
259 decodedPayload, err := base64.StdEncoding.DecodeString(encryptedPayload)
260 if err != nil {
261 return newErrMsg(err)
262 }
263
264 decryptedPayload, err := rsa.DecryptOAEP(sha256.New(), nil, m.privateKey, decodedPayload, nil)
265 if err != nil {
266 return newErrMsg(err)
267 }
268
269 parts := strings.Split(string(decryptedPayload), ":")
270 if len(parts) != 4 {
271 return newErrMsg(errors.New("invalid user payload"))
272 }
273
274 return userMsg{discriminator: parts[1], username: parts[3]}
275 }
276}
277
278func (m *Model) exchangeTicket(ticket string) tview.Cmd {
279 return func() tview.Msg {

Callers 1

UpdateMethod · 0.95

Calls 1

newErrMsgFunction · 0.85

Tested by

no test coverage detected