Device provisioning code examples
Disconnected provisioning examples
Guardian supports C#, C++, and C for disconnected provisioning.
C# example
public static void DisconnectedProvisioning()
{
medcrypt.guardian.ProvisionFilesInput provisioningFilesInput =
new medcrypt.guardian.ProvisionFilesInput();
/* Customer data about the provisioning system */
string componentHandle = "my_component_handle";
string systemId = "my_system_name";
string hardwareId = "my_serial_number";
/* Load provisioning files to input file storage buffers */
provisioningFilesInput.trustStore =
File.ReadAllBytes(@"TrustStore.mcts");
provisioningFilesInput.privateIdentity =
File.ReadAllBytes(@"PrivateIdentity.mcpip");
provisioningFilesInput.certifiedProfile =
File.ReadAllBytes(@"CertifiedProvisioningProfile.mcpp");
/* Create Guardian */
medcrypt.guardian.Guardian gdn = new medcrypt.guardian.Guardian();
/* Create default options */
medcrypt.guardian.ProvisioningGenerateOptions options =
new medcrypt.guardian.ProvisioningGenerateOptions();
/* Call generate provision request */
medcrypt.guardian.ProvisionFilesOutput provisioningOutputFiles =
gdn.GenerateProvisionRequest(
provisioningFilesInput,
options,
componentHandle,
systemId,
hardwareId);
/* Persist provision request and generated private identity */
File.WriteAllBytes(
@"GeneratedPrivateIdentity.mcpi",
provisioningOutputFiles.generatedPrivateIdentity);
File.WriteAllBytes(
@"ProvisionRequest.mcpr",
provisioningOutputFiles.provisionRequest);
}C++ example
C example
The C interface uses streams for all large inputs and outputs. The example below will show these streams backed by buffers. Output buffers will be arbitrarily sized.
Connected device provisioning examples
Guardian supports C# and C++ for connected provisioning.
C# example
C++ example
Proxy device provisioning examples
Guardian supports C# and C++ for proxy provisioning. Since Guardian does not support connected provisioning, it cannot proxy a provision request.
C# example
C++ example
Last updated
Was this helpful?

