0
\$\begingroup\$

Does a SIM card consist of only Flash memory or is there a microprocessor inside as well?

\$\endgroup\$
1
  • \$\begingroup\$ Not sure about SIM, but this chip in a credit card has a microprocessor that can perform encryption and decryption iperations. \$\endgroup\$
    – user76844
    Mar 25, 2017 at 4:38

2 Answers 2

1
\$\begingroup\$

There is a small microcontroller inside.

Most SIM cards these days can be programmed in Java and follow the JavaCard / GlobalPlatform standard. You won't get the keys to install your own applications though.

\$\endgroup\$
4
  • \$\begingroup\$ I couldn't find any online resource/link, where it's explicitly mentioned that the SIM card contains microprocessor/microcontroller. Why do you think we don't have info/details of SIM card about the microprocessor, their architecture, specs etc. The same info is available for the smartphones though. \$\endgroup\$ Mar 25, 2017 at 4:53
  • 1
    \$\begingroup\$ @VishalSharma SIM cards are secure devices, therefore the information about architecture and specs aren't available to the public. You probably don't want average joe mess with critical infrastructure like the cell phone network. That's why you won't find anything about the internals. All the information how to program them, what protocol they speak etc. is standarized and public information though. \$\endgroup\$ Mar 25, 2017 at 5:21
  • 1
    \$\begingroup\$ SIM cards are no different in many ways to Smartcard and similar in some ways to USB storage or SDCards.... they all have a small onboard processor that implements the interface protocol. In the case of SIM/Smartcards, the processor is very secure. This might help you: technoburst.net/search?q=SIM+cards+tutorial&x=0&y=0 \$\endgroup\$ Mar 25, 2017 at 5:56
  • 1
    \$\begingroup\$ The document for the SLE 88CNFX6600P (a random old SIM chip) gives an architecture overview: 32-bit RISC with proprietary instruction set, 660k EEPROM, encrypted 32k RAM, hardware crypto engine and random number generator, security sensors to detect glitching, power management, 33MHz internal clock, memory management with hardware firewalls, etc. Some other SIM chips are ARM Cortex M0 based. 4donline.ihs.com/images/VipMasterIC/IC/INFN/INFNS15319/… \$\endgroup\$ Mar 25, 2017 at 6:39
1
\$\begingroup\$

Even "simple" memory cards like SD, CF, MMC... must have processors inside them because you don't access the memory chips directly. Each memory chip is different in number of pins, address bus width, data bus width, access protocol... so the processor will create a common interface for communicating with external devices.

In case of SIM card there must be a microcontroller in the SIM card to process data, because the purpose of the SIM is to prevent the authentication key from being read. The phone never knows what key the SIM is currently holding. Only the mobile network operator and the SIM know that.

The phone just gives some data to the SIM and the SIM's processor will return back the encrypted data based on the key after some cryptography algorithm. That encrypted data will be sent back to the network operator, who will use the same algorithm to generate the encrypted data from the key in their database. If the two piece of data match, the authentication ends successfully.

More information about the authentication process can be found here

\$\endgroup\$
2
  • \$\begingroup\$ This is interesting. You are saying that an SD card has also got a microprocessor! \$\endgroup\$ Mar 25, 2017 at 6:24
  • \$\begingroup\$ yes. SD protocol has a lot of commands that may be easier to implement in software. Moreover memory access is often in parallel and you need to convert to serial to send via that limited number of pins \$\endgroup\$
    – phuclv
    Mar 25, 2017 at 6:43

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.