MAGIC

MAGIC MAGIC is a protocol that genericizes the multi-platform payment settlement flow to allow for both money and moneyless transactions between multiple untrusted clients, servers, and peers. Overview This repository contains implementations of the MAGIC protocol in various languages, on various platforms, and, since multiple devices are involved in MAGICal transactions, via various transports. This is a protocol enabled by the asymmetric cryptography of the Sessionless protocol. If you're unfamiliar with Sessionless, I encourage you to check out its repo, or one of its implementations before diving into MAGIC. In a standard client/server relationship, clients make requests to a server, which authenticates the client to make the request, and then serves a response. This relationship is 1:1 because the traditional method of authorization is via a shared secret between client and server. Sometimes communication to a third party is facilitated via server to server communication authorized by API key (another type of shared secret), or via OAuth2.0, which is a flow that generates, you guessed it, a shared secret.