5deae5d848424d92b5a9de241036b7aa✅ 검증됨 ◐ 일부 검증 ⚠️ 자가신고(폰이 주장) ℹ️ 메타
‘서버 받은 시각’만 서버가 찍은 값이고, 나머지는 봉인 번호·형식 같은 식별 정보입니다.
| media_kind | video |
| 서버 받은 시각 received_at | 2026-06-26T06:09:43.940064Z |
| 봉인 번호 seal_id | 5deae5d848424d92b5a9de241036b7aa |
| 봉인 방식 seal_mode | client-hybrid |
| 봉인 형식 버전 version | seal-manifest/0.2 |
이 봉인은 옛 앱으로 만들어 발췌 기능이 없습니다 — 새 앱으로 봉인한 원본만 잘라낼 수 있어요.
이 봉인에 쓰인 암호 기술 이름입니다.
| 정규화 방식 canonicalization | json-sorted-compact-utf8 |
| 명세 해시 manifest_hash | sha256 |
| 전자서명 방식 signature | ecdsa-p256-sha256 |
| video_hash | sha256 |
폰의 시계·위치센서가 적은 값입니다 — 아래 ‘신뢰된 시각’과는 별개(폰 시계는 틀릴 수 있음).
| 부팅 식별자 boot_id | (없음) |
| 녹음 시각 (폰 주장) captured_at | 2026-06-26T06:09:43.940064Z |
| 위치 (GPS) gps | (없음) |
| 기기 작동시간(ms) monotonic_offset_ms | 545946782 |
| 통신망 시각 nitz_time | (없음) |
폰이 주장하는 기기 정보입니다. 다만 ‘이 봉인을 만든 키가 진짜 발급된 기기 키인지’는 아래 ‘키 신원’에서 확인됩니다.
| 앱 버전 app_version | 0.1-dev |
| 기기·앱 증명 attestation | {"issued_at": null, "kind": "deferred", "nonce": null, "token": null} |
| 운영체제 os | android |
| 기기 식별자 uid | android-0714db7bc754a191 |
| display_name | 윤영빈 |
| 사용자 user_id | dummy:윤영빈 |
| verification_level | dummy |
| verified_at | 2026-06-26T06:09:43.940064Z |
| 코덱 codec | mp4v |
| 재생 길이(ms) duration_ms | 1567 |
| format | mp4 |
| fps | 0 |
| height | 1920 |
| 발췌 증명용 구조 merkle | {"alg": "rfc6962-sha256", "leaf_boundary": "fixed-bytes", "leaf_bytes": 262144, "leaf_count": 14, "root": "31586b77d915e0860b1b3a95d977aa005b21dbbad73177e87eddaae8eb33b898"} |
| original_sha256 | 75cb42839ed50dbd1dbcb95ca1e1455931da16edf7494056b7118d0fcc984ca6 |
| result_sha256 | 6576a30318a07f4684716508bbca750b9e9d6a7ad4938979b6e60d4c58c02f66 |
| result_size_bytes | 3548966 |
| width | 986 |
| applied | True |
| dot_id | 10100120000115369 |
| scheme | smartpaper |
이 공개키로 봉인 내용 전체에 전자서명한 게 맞는지 서버가 확인했습니다 — 내용이 단 한 글자라도 바뀌면 서명이 깨집니다. (폰=하드웨어 키, 서버·인증서=KMS 키)
| 서명 알고리즘 algorithm | ecdsa-p256-sha256 |
| 인증서 체인 cert_chain | [{"issuer_key_id": "8cc4edebc2c47ab0", "not_after": "2026-07-03T06:09:43+00:00", "not_before": "2026-06-26T06:04:43+00:00", "signature": "BzSuna8iBVuhaZ12BGCu6KZaEOUmZX+o56/kpLMnWroFCJZvGmaMBKplejAgv9XnZNuthxwBks8JWMgVMA0OAg==", "subject": {"device_uid": "android-0714db7bc754a191", "key_id": "0714db7bc754a191", "public_key": "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEFZe66WPh4udQMfaIjQniJH6BnVdnyboo8qAaDV1uJ6HpHmRTcf6/T46lbpSnhMZh/jh+gd4tz3iYTlhy9ySoqg==", "user_id": "dummy:윤영빈"}, "version": "seal-cert/0.1"}, {"issuer_key_id": "25eaae2607d1896f", "not_after": "2036-06-23T06:09:43+00:00", "not_before": "2026-06-25T06:09:43+00:00", "signature": "F4ybnkUBmoETuuVixbYKMvo5zFihUQGljA1d4GslSLJUValjnPm7U1NsOmDtOp5pYCBFfa7sptaJom8++/Z/AQ==", "subject": {"device_uid": "issuing-ca", "key_id": "8cc4edebc2c47ab0", "public_key": "W4mPO79KArPILkjWGgysrHx9spoSvYdPHBIp7XGd99Y=", "user_id": null}, "version": "seal-cert/0.1"}] |
| 키 식별자 key_id | 0714db7bc754a191 |
| 공개키 public_key | MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEFZe66WPh4udQMfaIjQniJH6BnVdnyboo8qAaDV1uJ6HpHmRTcf6/T46lbpSnhMZh/jh+gd4tz3iYTlhy9ySoqg== |
| 서명 값 value | MEUCIC4+4zKjhGAM9c0gU3COoK6XNBAjErZz0IKuia9/SQV3AiEArmEz/DQj94z0kXhzC8FNYv3NaPcBhGcPupMD6ClalB8= |
이 봉인을 만든 키가 ‘진짜 발급받은 기기 키’임이 인증서로 신뢰 뿌리까지 확인됐습니다 — 아무 도구로나 위조한 게 아닙니다.
| 신원 등급 tier | 발급된 기기 키 (결속됨) |
| 기기 식별자 device_uid | android-0714db7bc754a191 |
| 사용자 user_id | dummy:윤영빈 |
이 봉인이 ‘이 시각 이전에 존재했다’를 독립 기관(시각 인증기관·블록체인)이 보증합니다. 1개 이상이면 시각 ‘확정’.
봉인 증거와 별개로 서버가 편의상 보관하는 부가물입니다 (없어도 봉인 증명엔 지장 없음).
| 원본 영상 보관 | 있음 (S3) |
| 망점 (추적표식) | 있음 (dot_id 10100120000115369) |
{
"manifest": {
"algorithms": {
"canonicalization": "json-sorted-compact-utf8",
"manifest_hash": "sha256",
"signature": "ecdsa-p256-sha256",
"video_hash": "sha256"
},
"capture": {
"boot_id": null,
"captured_at": "2026-06-26T06:09:43.940064Z",
"gps": null,
"monotonic_offset_ms": 545946782,
"nitz_time": null
},
"device": {
"app_version": "0.1-dev",
"attestation": {
"issued_at": null,
"kind": "deferred",
"nonce": null,
"token": null
},
"os": "android",
"uid": "android-0714db7bc754a191"
},
"identity": {
"display_name": "윤영빈",
"user_id": "dummy:윤영빈",
"verification_level": "dummy",
"verified_at": "2026-06-26T06:09:43.940064Z"
},
"media_kind": "video",
"received_at": "2026-06-26T06:09:43.940064Z",
"seal_id": "5deae5d848424d92b5a9de241036b7aa",
"seal_mode": "client-hybrid",
"version": "seal-manifest/0.2",
"video": {
"codec": "mp4v",
"duration_ms": 1567,
"format": "mp4",
"fps": 0,
"height": 1920,
"merkle": {
"alg": "rfc6962-sha256",
"leaf_boundary": "fixed-bytes",
"leaf_bytes": 262144,
"leaf_count": 14,
"root": "31586b77d915e0860b1b3a95d977aa005b21dbbad73177e87eddaae8eb33b898"
},
"original_sha256": "75cb42839ed50dbd1dbcb95ca1e1455931da16edf7494056b7118d0fcc984ca6",
"result_sha256": "6576a30318a07f4684716508bbca750b9e9d6a7ad4938979b6e60d4c58c02f66",
"result_size_bytes": 3548966,
"width": 986
},
"watermark": {
"applied": true,
"dot_id": "10100120000115369",
"scheme": "smartpaper"
}
},
"manifest_sha256": "8ba446de269109ef3f3490c754efcfc2985090b455f986ca6c9f93bb800c6fbf",
"seal_status": "temporary",
"signature": {
"algorithm": "ecdsa-p256-sha256",
"cert_chain": [
{
"issuer_key_id": "8cc4edebc2c47ab0",
"not_after": "2026-07-03T06:09:43+00:00",
"not_before": "2026-06-26T06:04:43+00:00",
"signature": "BzSuna8iBVuhaZ12BGCu6KZaEOUmZX+o56/kpLMnWroFCJZvGmaMBKplejAgv9XnZNuthxwBks8JWMgVMA0OAg==",
"subject": {
"device_uid": "android-0714db7bc754a191",
"key_id": "0714db7bc754a191",
"public_key": "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEFZe66WPh4udQMfaIjQniJH6BnVdnyboo8qAaDV1uJ6HpHmRTcf6/T46lbpSnhMZh/jh+gd4tz3iYTlhy9ySoqg==",
"user_id": "dummy:윤영빈"
},
"version": "seal-cert/0.1"
},
{
"issuer_key_id": "25eaae2607d1896f",
"not_after": "2036-06-23T06:09:43+00:00",
"not_before": "2026-06-25T06:09:43+00:00",
"signature": "F4ybnkUBmoETuuVixbYKMvo5zFihUQGljA1d4GslSLJUValjnPm7U1NsOmDtOp5pYCBFfa7sptaJom8++/Z/AQ==",
"subject": {
"device_uid": "issuing-ca",
"key_id": "8cc4edebc2c47ab0",
"public_key": "W4mPO79KArPILkjWGgysrHx9spoSvYdPHBIp7XGd99Y=",
"user_id": null
},
"version": "seal-cert/0.1"
}
],
"key_id": "0714db7bc754a191",
"public_key": "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEFZe66WPh4udQMfaIjQniJH6BnVdnyboo8qAaDV1uJ6HpHmRTcf6/T46lbpSnhMZh/jh+gd4tz3iYTlhy9ySoqg==",
"value": "MEUCIC4+4zKjhGAM9c0gU3COoK6XNBAjErZz0IKuia9/SQV3AiEArmEz/DQj94z0kXhzC8FNYv3NaPcBhGcPupMD6ClalB8="
},
"timestamps": [],
"version": "seal-bundle/0.2"
}