DeepFake Check
블로그로 돌아가기
3분 소요

C2PA Cloud-Data Assertion 필수 필드와 금지 Label 확인법

Assertion과 validator 전체 출력을 보존합니다

C2PA 호환 validator로 열기 전에 실제 asset을 그대로 저장합니다. 출처 URL 또는 local path, 입수 시각, 파일 식별자, validator 이름과 version, active manifest label, claim type, 전체 출력을 기록합니다. 이 표는 본문이 제안하는 실무 방식이며 C2PA가 요구하는 보고 형식은 아닙니다. 첫 검증 전에 파일을 screenshot으로 바꾸거나 다시 export하지 않습니다.

Label이 c2pa.cloud-data인 assertion을 찾고 validator가 표시한 field를 그대로 옮깁니다. 바깥 assertion label과 내부 label field를 분리합니다. 내부 field는 참조되는 external assertion을 가리킵니다. 도구가 보여 주지 않은 field는 파일명, badge 또는 다른 manifest를 근거로 채우지 않고 미보고로 둡니다.

질문은 하나입니다. 이 cloud-data assertion이 인용한 C2PA section의 구조와 label 규칙을 만족하는지 확인합니다. External content의 정확성, 안전성 또는 진위는 이 검사로 결정하지 않습니다.

네 개의 필수 field를 먼저 확인합니다

C2PA 2.2는 c2pa.cloud-data assertion에 label, size, location, content_type이 있어야 한다고 규정합니다. 하나라도 없으면 claim은 assertion.cloud-data.malformed로 reject됩니다. 네 field 이름, validator가 표시한 값, 정확한 result code를 같은 case 행에 기록합니다.

Field가 없는 상태와 낯선 값은 구분합니다. 인용한 규칙은 필수 field가 빠진 경우에 이 code를 부여합니다. 익숙하지 않은 값을 임의로 채우거나 모두 malformed라고 판단할 근거는 아닙니다. Validator가 전체 failure badge만 보여 주면 전체 출력을 저장하고 어떤 field가 빠졌는지는 미확인으로 둡니다.

location field는 별도의 external-reference 절차에 따라 검증됩니다. 도구가 보고한 location 결과를 기록하되, validator와 적용 가능한 출처가 제공하지 않은 network retrieval, response content 또는 hash 결과를 이 구조 검사에 덧붙이지 않습니다.

Cloud-data 뒤에 둔 hard binding을 거부합니다

내부 label 값을 확인합니다. External assertion label이 c2pa.hash.data, c2pa.hash.boxes, c2pa.hash.collection.data, deprecated c2pa.hash.bmff.v2, c2pa.hash.bmff.v3 중 하나면 claim은 assertion.cloud-data.hardBinding으로 reject됩니다. Label과 code를 원문대로 저장하며 모든 hash가 금지된다는 넓은 문장으로 바꾸지 않습니다.

이 규칙은 c2pa.cloud-data를 통해 참조할 수 없는 assertion label을 정합니다. Hard-binding reject만으로 asset byte가 바뀌었는지, 누가 편집했는지, 화면의 사건이 거짓인지 판단할 수 없습니다. 해당 asset-binding 결과와 별도 증거가 필요합니다.

Cloud-data assertion이 여러 개면 행을 나눕니다. 한 행이 금지 label을 갖고 다른 행이 다른 label을 가진 경우 결과를 하나의 badge로 합치지 않습니다. 각 label과 validator 결과를 다시 추적할 수 있어야 합니다.

Update manifest의 actions 규칙을 적용합니다

Manifest가 update manifest일 때 external assertion label은 c2pa.actions 또는 c2pa.actions.v2일 수 없습니다. 두 label 모두 assertion.cloud-data.actions로 reject됩니다. 도구가 보고한 manifest type, external label, 정확한 code를 기록합니다.

출력의 다른 곳에 actions라는 단어가 있다는 이유로 이 code를 적용하지 않습니다. 조건은 manifest type과 external assertion label을 함께 요구합니다. Validator가 manifest type을 보여 주지 않으면 직접 code를 지정하지 말고 미확인으로 둡니다.

표에는 asset 식별자, manifest label과 type, 바깥 assertion label, label, size, location, content_type, 보고된 location 검증 결과, 정확한 상태, validator version, 미해결 field를 둡니다. 전체 출력을 첨부합니다.

제한된 결론으로 보고합니다

통과는 해당 validator 실행에서 cloud-data assertion이 이 구조 규칙을 만족했다는 제한된 관찰입니다. 참조 내용의 정확성, signer trust, claim signature, 인물, caption, 날짜, 장소와 사건은 별도로 확인합니다. Reject는 구체적인 conformance 문제를 가리키며 media가 합성 또는 기만이라는 판정은 아닙니다.

보존한 asset을 DeepFakeCheck로 분석할 경우 확률적 signal은 C2PA 표 밖에 두고 실제 파일에 연결합니다. 자동 탐지는 진짜 media를 잘못 표시하는 오탐과 합성·변경 media를 놓치는 미탐을 낼 수 있습니다. DeepFakeCheck는 c2pa.cloud-data assertion을 검증하거나 본문의 failure code를 발행하지 않습니다.

저장한 asset, validator 출력, field 표, 별도의 external-reference 또는 asset-binding 결과, 원 게시물 확인과 사람의 결정을 함께 남깁니다.

출처

  • C2PA, “C2PA Technical Specification, c2pa.cloud-data validation”: https://spec.c2pa.org/specifications/specifications/2.2/specs/C2PA_Specification.html#_c2pa_cloud_data_validation

혹시 AI가 만든 이미지인가요?

고정밀 딥페이크 탐지 도구로 이미지를 바로 분석해 보세요.

이미지 분석하기