-
+
- Don't know where to start? Gradecoin uses RESTful API, simple
curl
commands or even your browser will work! This website can help as well.
+ - JWT Debugger and the corresponding RFC +
Services
+/register
+-
+
- Student creates their own 2048 bit RSA
keypair
+ - Downloads
Gradecoin
's Public Key from Moodle
+ - Encrypts their JSON wrapped
Public Key
,Student ID
and one timepasswd
using Gradecoin's Public Key
+ - Their public key is now in our database and can be used to sign their JWT's during requests +
/transaction
+-
+
- You can offer a Transaction - POST request
+
-
+
- The request should have
Authorization
+ - The request header should be signed by the Public Key of the
by
field in the transaction
+
+ - The request should have
- fetch the list of
Transaction
s - GET request
+
/block
+-
+
- offer a [
schema::Block
] - POST request +-
+
- The request should have
Authorization
+ - The [
schema::Block::transaction_list
] of the block should be a subset of [schema::Db::pending_transactions
]
+
+ - The request should have
- fetch the last accepted [
schema::Block
] - GET request
+
Authorization
: The request header should have Bearer JWT.Token signed with Student Public Key