Integrated secure device manager systems and methods for cyber-physical vehicles
Systems and methods are described for a cyber-physical vehicle management system generated by an Integrated Secure Device Manager (ISDM) Authority configured to manage licensing and approval of Cyber-Physical Vehicle (CPV)s, a public/private key pair and a unique ID for the Authority, create a self-signed Authority token signed by the private key, send the Authority token to a plurality of ISDM Node device configured to verify Module device authenticity and in communication with the Authority, store, by each Node, the Authority token, and mark, by each Node, the Authority token as trusted.
1. A method for vehicle management, comprising:
generating, by a management Authority configured to manage licensing and approval of Cyber-Physical Vehicles (CPVs), of a public/private key pair and a unique ID for the management Authority;
creating by the management Authority of a self-signed Authority token signed by the Authority private key;
receiving a token request from a CPV Node device in communication with the management Authority;
determining by the management Authority whether the token request is approved;
upon determining that the token request is approved, sending an Authority token to the CPV Node device;
storing, by the CPV Node device, of the Authority token; and
marking, by the CPV Node device, of the management Authority token as trusted.
2. The method of claim 1 , wherein:
the Authority token comprises the unique ID for the management Authority, the management Authority public key, and a range of time for which the Authority token is valid.
3. The method of claim 1 , wherein the unique ID for the management Authority comprises a truncated cryptographic hash of the management Authority public key.
4. The method of claim 1 , further including the step of sending the Authority token to a CPV Module and storing the Authority token on the CPV Module, wherein the CPV Module is configured to be mechanically coupled to and in communication with a CPV.
5. The method of claim 4 , wherein the sending of the Authority token to the CPV Module is part of a licensing procedure for licensing the CPV Module with the management Authority.
6. The method of claim 1 , further comprising:
generating, prior to sending of the token request, by the CPV Node device, of a Node public/private key pair and a unique Node ID.
7. The method of claim 6 , further comprising:
wherein the token request includes the Node public/private key pair and the unique Node ID.
8. The method of claim 7 , wherein upon determining that the token request is approved, creating by the management Authority of a Node token comprising the unique Node ID, the Node public key, the management Authority public key, the unique management Authority ID, and a range of time for which the Node token is valid, wherein the Node token is signed under the management Authority private key.
9. The method of claim 8 , further comprising the steps of, in response to creating the Node token:
sending, by the management Authority, of the Node token to the CPV Node device; and
storing, by the CPV Node device, of the Node token.
10. The method of claim 1 , further comprising:
upon determining that the token request is not approved, the management Authority returning an error message to the CPV Node device.
11. An apparatus for vehicle management, comprising:
a management Authority in communication with a licensing Authority configured to manage licensing and approval of Cyber-Physical Vehicle (CPV)s, the management Authority including a processor and a memory storing instructions and in electronic communication with the processor, wherein the processor is configured to execute the instructions to:
generate a public/private key pair and a unique ID for the management Authority;
create a self-signed Authority token signed by the private key;
send the Authority token to a CPV Node device, wherein the CPV Node device is configured to verify authenticity of a CPV Module device configured to be mechanically coupled to and in communication with a CPV, wherein the management Authority is in communication with the CPV Node device;
receive from the CPV Node device a token request;
determine whether the token request is approved; and
upon determining that the token request is approved, sending an Authority token to the CPV Node device.
12. The apparatus for vehicle management of claim 11 , wherein the Authority token comprises the unique ID for the management Authority, the management Authority public key, and a range of time for which the Authority token is valid.
13. The apparatus for vehicle management of claim 11 , wherein the unique ID for the management Authority comprises a truncated cryptographic hash of the management Authority public key.
14. The apparatus for vehicle management of claim 11 , the processor further configured to execute the instructions to send the Authority token to a CPV Module such that the Authority token is stored on the CPV Module, wherein the CPV Module is configured to be mechanically coupled to and in communication with a CPV.
15. The apparatus for vehicle management of claim 14 , wherein the sending of the Authority token to the CPV Module is part of a licensing procedure for licensing the CPV Module with the management Authority.
16. The apparatus for vehicle management of claim 11 , wherein the token request includes a public/private key pair of the CPV Node device and a unique Node ID for the CPV Node device, wherein the token request is signed under the Node private key.
17. The apparatus for vehicle management of claim 16 , the processor further configured to execute the instructions to create the Node token comprising the unique Node ID, the Node public key, the ISDM Authority public key, the unique ISDM Authority ID, and a range of time for which the Node token is valid, wherein the Node token is signed under the ISDM Authority private key.
18. The apparatus for vehicle management of claim 11 , further comprising:
upon determining that the token request is not approved, the management Authority returning an error message to the CPV Node device.