Private LTE and 5G networks run on SIM cards, the same small chips that go in a phone, and more operators now program their own. Each card needs four values written onto it. The IMSI identifies the card on the network, and the ICCID is its serial number. The other two, the Ki and the OPc, are secret keys, and the network’s core has to hold the same keys or the card won’t connect.
I built the SIM Card Generator at The Edge Mile to make those values for up to 10,000 cards at a time, in about a second. It gives you a file for the SIM writer and a script that loads the same batch into an Open5GS or Rapid5GS core with one command. Open5GS doesn’t ship a CSV importer, and Rapid5GS doesn’t install open5gs-dbctl, so otherwise you’d be typing subscribers into the WebUI one at a time.
Each SIM gets up to four APNs, the network names a device connects through, set up in the core along with download and upload speed caps. There are presets for the network codes private networks use, including the shared code for CBRS networks in the United States.
The generator runs in a sandboxed frame that the browser blocks from making any network request, so the keys are made on the operator’s own computer and nothing else on the page can read them. Every time it loads, it checks its math against the published 3GPP test values and won’t generate anything if a check fails. It can also be downloaded as one file and run on a computer with no network at all.

The tool page also covers the rest of the job: how to program the cards, which network code to choose, and how to read the core’s log when a new SIM won’t connect. I wrote more about how it works in A Key for Every SIM.
If you’re bringing SIMs in-house or standing up a private LTE network, I can help. The Edge Mile sells the Nokia CBRS kits and Rapid5GS Pro that networks like these are built on, and we run wireless networks ourselves. Email The Edge Mile if you want help getting yours on the air.
