MicroScurid-C API Documentation
Table of Contents
Top
microscurid.proto
Login
Used for log in
Field |
Type |
Label |
Description |
username |
string |
|
public DID |
LoginRes
Field |
Type |
Label |
Description |
token |
string |
|
short lived encrypted token returned by the server on successful login |
RegisterDeviceIdentity
RegisterDeviceIdentity contains the required structure to register a newly generated Identity on the hardware
TODO: Enhance with other hardware details to include DeviceContext
Field |
Type |
Label |
Description |
did |
string |
|
DID generated on the device |
unixTime |
int64 |
|
time of request |
deviceName |
string |
|
device name provided by the user |
RegisterDeviceIdentityRes
RegisterDeviceIdentityRes returns required response.
Field |
Type |
Label |
Description |
result |
bool |
|
|
VerifySignature
Name |
Number |
Description |
UnknownReq |
0 |
UnknownReq, default fallback field in case unknown enum information is sent from the MicroScurid |
IdentityRegistration |
1 |
IdentityRegistration, used for registering an incoming request with DID (identity) from the device via MicroScurid |
Verify |
2 |
Verify, used for verifying the signature coming along with the identity and the |
Scalar Value Types
.proto Type |
Notes |
C++ |
Java |
Python |
Go |
C# |
PHP |
Ruby |
double |
|
double |
double |
float |
float64 |
double |
float |
Float |
float |
|
float |
float |
float |
float32 |
float |
float |
Float |
int32 |
Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead. |
int32 |
int |
int |
int32 |
int |
integer |
Bignum or Fixnum (as required) |
int64 |
Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead. |
int64 |
long |
int/long |
int64 |
long |
integer/string |
Bignum |
uint32 |
Uses variable-length encoding. |
uint32 |
int |
int/long |
uint32 |
uint |
integer |
Bignum or Fixnum (as required) |
uint64 |
Uses variable-length encoding. |
uint64 |
long |
int/long |
uint64 |
ulong |
integer/string |
Bignum or Fixnum (as required) |
sint32 |
Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. |
int32 |
int |
int |
int32 |
int |
integer |
Bignum or Fixnum (as required) |
sint64 |
Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. |
int64 |
long |
int/long |
int64 |
long |
integer/string |
Bignum |
fixed32 |
Always four bytes. More efficient than uint32 if values are often greater than 2^28. |
uint32 |
int |
int |
uint32 |
uint |
integer |
Bignum or Fixnum (as required) |
fixed64 |
Always eight bytes. More efficient than uint64 if values are often greater than 2^56. |
uint64 |
long |
int/long |
uint64 |
ulong |
integer/string |
Bignum |
sfixed32 |
Always four bytes. |
int32 |
int |
int |
int32 |
int |
integer |
Bignum or Fixnum (as required) |
sfixed64 |
Always eight bytes. |
int64 |
long |
int/long |
int64 |
long |
integer/string |
Bignum |
bool |
|
bool |
boolean |
boolean |
bool |
bool |
boolean |
TrueClass/FalseClass |
string |
A string must always contain UTF-8 encoded or 7-bit ASCII text. |
string |
String |
str/unicode |
string |
string |
string |
String (UTF-8) |
bytes |
May contain any arbitrary sequence of bytes. |
string |
ByteString |
str |
[]byte |
ByteString |
string |
String (ASCII-8BIT) |