跳转至

eID Platform — 开发者文档

蒙古国国家 eID(Smart-ID / eIDAS 风格)平台的架构、集成与 PKI 文档。 同一套代码库同时服务 eID MongoliaGerege 两个品牌。

从哪里开始?

平台做什么?

  • 2-of-2 门限 ECDSA(Lindell,3 轮)—— 签名私钥永远不会在任何一处完整存在: 一份密钥分片保存在手机上,另一份保存在服务器上。
  • 双密钥、每位公民 2 份证书 —— 身份认证(PIN1,登录)与 签名(PIN2,具备法律效力的签名)。详见: 双证书 eID
  • 身份标识 = civil_id —— 自然人的 ETSI 标识符为 PNOMN-<civil_id>, 组织为 NTRMN-<...>。详见:标识符
  • 通过 DAN 完成 KYC,并使用 ArcFace 人脸比对进行活体检测。

项目结构

组件 技术栈 职责
server/ Go(chi + pgx) RP-API 后端:注册签发、门限签名、CA/OCSP/CRL、管理、KYC
web/ Next.js 16 浏览器 RP 演示(二维码 / 推送登录与签名)
admin/ Next.js 16 管理控制台 —— RP / 用户 / 证书 / 会话管理
ios/ Swift GeregeSmartID SDK + eID Mongolia 应用
android/ Kotlin/Compose mn.eidmongolia.smartid SDK + 示例应用
desktop/ Swift + .NET macOS / Windows RP 客户端 + USB token kit
sdk/ TypeScript RP 侧 SDK@eid-mongolia/sdk

协议层字节兼容性

Go 服务端与 iOS/Android SDK 使用同一套固定协议(继承自最初的 Java 系统)。 各端的密码学序列化必须逐字节一致。该契约由一份冻结的测试夹具(fixture)保证。


本文档由 docs/ 目录下的 markdown 文件自动生成。 如需修改,请点击每个页面右上角的 ✏️ 按钮。