A method of securing data transport between an endpoint device, that does not have an IP address, and a gateway device that is connected to the endpoint device using a discovery agent, a discovery service, an enrollment service, a policy service, a device management service, and a connected service, the method comprising:
- sending, by the discovery agent on the endpoint device, to the discovery service on the gateway device, an authenticated identity beacon with a device profile of the endpoint device;
- verifying, by the discovery service, authentication of the endpoint device and the device profile;
- generating, by the discovery service, a certificate request for the endpoint device from a privacy certificate authority to the enrollment service;
- processing, by the enrollment service, the certificate request for the endpoint device that is received in order to translate the certificate request for a certificate authority;
- sending, by the enrollment service to the certificate authority, a certificate request for the endpoint device;
- receiving, by the enrollment service, a certificate for the endpoint device issued by the certificate authority;
- processing, by the enrollment service, the received certificate for the endpoint device in order to translate the received certificate for the endpoint device to represent a privacy certificate authority;
- sending, by the enrollment service, to the discovery service, the certificate for the endpoint device;
- sending, by the enrollment service, a notification of endpoint device registration to a policy service;
- sending, by the policy service, to a device management service a directive to add the endpoint device;
- storing, by the discovery service, an issued endpoint device certificate in a local certificate store of the gateway device;
- receiving, by an application on the gateway device, data in transit from/to the endpoint device to/from the connected service and performing cryptographic operations on the data using the certificate for the endpoint device from the local certificate store, for secure data transport;
- and
- performing, by a multi-stage verified boot loader, a multi-stage verified boot sequence that verifies multiple sets of digital signatures associated with a signed program image on the endpoint device using multiple matching sets of public keys to verify digital signatures generated using corresponding private signing keys by an image signer,
- wherein the digital signatures are verified based on a logical AND or OR operator as a countermeasure to detect compromise of one or more public-private key pairs associated with the signing and verification process, wherein placement order of the digital signatures and signature match criteria is based on a signing specification.