https://github.com/embox/sim-emulator
https://github.com/embox/sim-emulator
Last synced: 4 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/embox/sim-emulator
- Owner: embox
- License: mit
- Created: 2024-04-05T09:16:15.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2024-07-10T16:06:19.000Z (over 1 year ago)
- Last Synced: 2025-04-26T13:41:39.305Z (9 months ago)
- Language: C
- Size: 616 KB
- Stars: 2
- Watchers: 3
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Sim-emulator
Programmatic simcard open source emulator.
## Dependencies
Make, gcc, Python
## Current state
* Currently only at initial stage with no functional
* Basic system for building simcard filesystem is implemented
## Configuring filesystem of simcard emulator
- To add a file just add it to where it belongs relative to MF directory
- For dedicated files (DF) additional files with information supplied, see .desc files under MF for each dedicated file
- For entry files (EF) format is as follows:
- First line: TRN or LIN - transparent of linear EF
- Second line: fid in hex starting with 0x
- Third line: Short fid (sfid), hex
- Fourth line: Description text
- Fifth line: Record max length for linear EF
- Sixth line: File size for transparent EF, for linear file it is calculated during parsing
- Seventh line: Data in hex each two symob for a byte for transparent EF
- For linear EF Seventh and further lines each represent data for subsequent records
At the moment most of the data in files is copied from *Pysim* project just for reference, and probably needs to be edited in the future
```
make
```
will first check if MF directory has changed. If changed, *translatefs.py* is launched, which generates **fs.inc** file. It contains macros sequence which is understood by gcc at the step of building project
## TODO
* Add apdu command handling
* Add GSM authentication algorythm