Hardware Key

When connecting with the same key_material on different devices, those devices exchanges their hardware fingerprint to check wether they are allowed to connect. This add an extra layer of security in the unlucky case where your secret material is shared by another person on the internet (which could be relatively frequent as users tends use weak passwords).

Those hardware keys are managed by the system entity:

sys{
    AllowedHardware{
        name: String,
        status: String, 
    }
}

name provides the name of the device.

status can have three values: