cac:Signature Elemanı XAdES-BES İmza Şeması
Gelir İdaresi Başkanlığı teknik kılavuzları, Vergi Usul Kanunu ve UBL-TR standartları referans alınarak doğrulanmıştır.
Tanımı ve Standart Kriptografik Mimarisi
cac:Signature elemanı; Gelir İdaresi Başkanlığı (GİB) tarafından yayımlanan UBL-TR 1.2 ve 1.2.1 kılavuzlarında yer alan, elektronik belgelerin (e-Fatura, e-İrsaliye, Uygulama Yanıtı vb.) veri bütünlüğünü, inkar edilemezliğini ve hukuki bağlayıcılığını sağlayan dijital imza yapısına işaret eden temel XML üstbilgi bileşenidir.
Türkiye e-dönüşüm mevzuatında, ETSI TS 101 903 standardına uygun XAdES-BES (XML Advanced Electronic Signature - Basic Electronic Signature) formatında enveloped (zarflı) imza kullanımı yasal zorunluluktur.
XML Hiyerarşisi ve Eleman Yapısı
- Kök Zarf Konumu: Asıl kriptografik imza bloğu
ext:UBLExtensions / ext:UBLExtension / ext:ExtensionContent / ds:Signatureyolunda konumlandırılır. - cac:Signature Referansı: Fatura gövdesinde yer alan
<cac:Signature>elemanı, imzanın tekil kimliğine (<cbc:ID>) ve<ds:Signature>alanına işaret eder (ör.URI="#Signature_FAT2026000000001"). - SignatoryParty Elemanı:
<cac:SignatoryParty>altında imzalayan mükellefe (veya yetkili özel entegratöre) ait VKN/TCKN ve unvan bilgileri yer alır. - Özetleme (Digest) ve İmzalama Algoritması: Standart uyarınca SHA-256 (Secure Hash Algorithm 256-bit) özeti alınır ve RSA (2048-bit veya üzeri) özel anahtarı ile şifrelenerek
<ds:SignatureValue>üretilir. - Kanonikleştirme (C14N): XML belgesi imzalanmadan önce
Exclusive XML Canonicalization 1.0 (without comments)algoritması ile standartlaştırılır; bu sayede boşluk ve satır sonu farklılıklarının imza özetini bozması engellenir.
| Özellik | Standart / Değer |
|---|---|
| Referans Standart | ETSI TS 101 903 (XAdES) & W3C XML Signature |
| İmza Profili | XAdES-BES (Enveloped) |
| Özet Algoritması | http://www.w3.org/2001/04/xmlenc#sha256 |
| İmza Algoritması | http://www.w3.org/2001/04/xmldsig-more#rsa-sha256 |
| Kanonikleştirme | http://www.w3.org/2001/10/xml-exc-c14n# |
| Yasal Dayanak | 5070 Sayılı Elektronik İmza Kanunu & VUK 509 Tebliği |
Kanonikleştirme işlemi tamamlandıktan sonra XML belgesi üzerinde herhangi bir ara yazılım veya metin editörü tarafından yapılacak en ufak bir karakter veya satır sonu (CRLF - LF) değişikliği imza özetini bozarak GİB merkezinde 1180 İmza Değeri Geçersiz ret hatasına yol açar.