v1.0 · .NET 8 · Üretim Onaylı

GİB e-Defter imzalama,
Ma3Api olmadan.

Bit düzeyinde Ma3Api wire-format uyumlu XAdES-BES imzalama ve EU DSS eşdeğeri doğrulama. RSA + ECDSA, USB token + Windows CSP + PFX. Tek bağımlılık: .NET 8.

66birim testi
0warning · 0 error
4kütüphane modülü
~150 msimza başına latency
Özellikler

Yalın bir API'nın arkasında sertleştirilmiş üretim deneyimi.

Her wire-format kararı gerçek GİB red/kabul vakalarıyla doğrulandı. Kaynak yorumlarında tarih + firma + VKN referansları var — bunlar regresyon zırhı.

🔐

XAdES-BES Üretici

SignedProperties, Reference, SignedInfo, KeyInfo — hepsi GİB tooling'in kabul ettiği sıra ve format. Plain c14n, ECDSA-DER, LF-only output.

🪪

3 Anahtar Kaynağı

PKCS#11 (USB e-Mali Mühür), Windows CSP/CNG (RDP-dostu), PFX (test). Tek ISigningKey soyutlamasının arkasında şeffaf seçim.

RSA + ECDSA

P-256/SHA-256, P-384/SHA-384, P-521/SHA-512 — NIST güç eşleme otomatik. Mali Mühür Sürüm 3 + Sürüm 4 birlikte çalışır.

İki Katmanlı Doğrulama

Hızlı kriptografik Verify + EU DSS eşdeğeri DssEquivalentValidator. 7 yapı taşı ayrı raporlanır.

🛡️

KamuSM Kök Zincir

Gömülü kamusm-trusted-cas.json ile sertifika zinciri doğrulama. Yeni CA → JSON güncelle, restart yeter.

🧪

66 xUnit Testi

XAdES round-trip, XmlRepairer, log pattern, certificate utility. CI'da 1 saniyenin altında geçer.

📦

Schematron + XSD

GİB edefter.xsd + 4 schematron kuralı (yevmiye, kebir, berat, rapor) SchematronRunner ile (Saxon-HE).

🔧

XmlRepairer

Yaygın bozuklukları tamir eder: encoding, period bound, MimeType. İmza öncesi otomatik temizlik.

🖥️

RDP / VM Uyumlu

PKCS#11 RDP redirect'i görmüyorsa WindowsCspSigningKey kart store'unu görür. Tek satır kod farkı.

Karşılaştırma

mm.erp vs. alternatifler.

Ma3Api: GİB'in eski Java referansı. GİB Görüntüleyici: yalnızca doğrulama, imzalama yok. Elle yazılan çözümler: çok yaygın ama wire-format ayrıntılarında batar.

mm.erp Ma3Api (Java) GİB Görüntüleyici Elle yazılan .NET
Platform .NET 8 (Windows + Linux)Java 8+ (heavyweight)Java GUI uygulamasıDeğişken
İmza üretimi ✓ XAdES-BES ✓ XAdES-BES ~ kısmi
İmza doğrulama ✓ Hızlı + DSS eşdeğeri~ Temel ✓ Gelişmiş ~ Temel
USB e-Mali Mühür (PKCS#11) ~ Zor
Windows CSP (RDP-dostu) ~
RSA + ECDSA otomatik hash eşleme ✓ P-256/384/521 ~ Sabit
ECDSA-DER encoding (GİB uyumu) ✗ Sık hata kaynağı
Plain c14n (WithComments DEĞİL) ✓ Sabit ✗ Sık hata kaynağı
LF-only output (CRLF normalize) ✗ Windows'da batar
KamuSM kök CA zincir doğrulama ✓ Gömülü JSON ~ Manuel
Schematron (Saxon-HE) ✓ Entegre
XSD şema doğrulama ~
EU DSS eşdeğeri 7 yapı taşı ~ Görsel
İmza zamanı / TSP doğrulama ✓ RFC3161
XmlRepairer (encoding, period bound) ✓ Otomatik
CLI aracı ✓ SignerCli ~ Komut hattı
NuGet entegrasyonu ✓ Doğrudan referans ✗ jar import ~
Latency (imza başına) ~150 ms ~600 ms Değişken
Birim test sayısı 66 ~ Az Çoğunlukla yok
Üretim onayı (gerçek GİB) ✓ 2025-2026 vakaları ✓ Tarihsel
Lisans İç kullanım GİB özel GİB özel
Not: "~" işareti kısmen destekleniyor / manuel çaba gerektiriyor. "✗" o özelliğin bulunmadığını veya o aracın o işlevi yapmadığını gösterir. "—" ilgisiz alanı (örn. GİB Görüntüleyici imza üretmez) ifade eder.
Mimari

İnce katmanlar, net sorumluluklar.

4 .NET projesi + CLI. Her katman tek bir şey yapar; arkasındaki üretim deneyimi yorum bloklarında belgelenmiştir.

çekirdek

MegaeDefter4Net.Crypto

ISigningKey soyutlaması · XAdesBesSigner motoru · c14n · digest · pretty-print.

façade

MegaeDefter4Net.Signing

EDefterSigner dosya/byte façade · PfxSigningKey · CRLF→LF normalize.

donanım

MegaeDefter4Net.SmartCard

Pkcs11SigningKey (akisp11.dll) · WindowsCspSigningKey (CryptoAPI/CNG) · cert seçim ranking'i.

doğrulama

MegaeDefter4Net.Validation

DssEquivalentValidator · XAdesEnvelopeValidator · XsdValidator · SchematronRunner · XmlRepairer.

RSA-SHA256
RSA-SHA384
RSA-SHA512
ECDSA-P256-SHA256
ECDSA-P384-SHA384
ECDSA-P521-SHA512
XML C14N 1.0
XAdES-BES
RFC3161 TSP
PKCS#11 v2.40
CryptoAPI / CNG
Hızlı Başlangıç

Üç satırda imzala.

API yalın. Kütüphaneyi referansa al, anahtarını seç, SignFile çağır.

C# — PFX (test)
using var key = new PfxSigningKey("test.pfx", "1234");
var signer = new EDefterSigner(key, new XAdesSignerOptions
    { ClaimedRole = "Supplier" });
signer.SignFile("yevmiye.xml", "yevmiye.signed.xml");
C# — USB Token (üretim)
using var key = new Pkcs11SigningKey(
    driverPath: CardDriverRegistry.AutoDetect(),
    tokenSerial: null,
    pin: "123456");
new EDefterSigner(key).SignFile("yev.xml", "yev.signed.xml");
C# — Doğrulama
var doc = new XmlDocument { PreserveWhitespace = true };
doc.Load("yev.signed.xml");
// Hızlı kriptografik doğrulama
bool ok = XAdesBesSigner.Verify(doc);

// EU DSS eşdeğeri tam rapor
var report = new DssEquivalentValidator().Validate(doc, "yev.signed.xml");
CLI — SignerCli
# PFX
SignerCli sign-pfx --pfx test.pfx --password 1234 \
    --in yev.xml --out yev.signed.xml --role Supplier

# USB token
SignerCli sign-p11 --in yev.xml --out yev.signed.xml --pin 123456

# Windows store (RDP)
SignerCli sign-csp --in yev.xml --out yev.signed.xml --vkn 1234567890

# Doğrula (DSS modu)
SignerCli verify --in yev.signed.xml --mode dss
Sıkça Sorulan Sorular

Ma3Api, e-imza ve mali mühür kullanımı.

En sık gelen soruların kısa cevapları. Detaylı bilgi için dökümantasyon sayfasına bakın.

Ma3Api alternatifi var mı?

Evet. mm.erp tamamen .NET 8 üzerine yazılmış, Ma3Api'ye bağımlılığı olmayan ve GİB e-Defter web servisi (Ma3Api validator) tarafından üretim ortamında kabul edilen bit düzeyinde uyumlu bir XAdES-BES imzalama kütüphanesidir. Tek bağımlılık .NET 8'dir; Java runtime gerekmez. Üretim deneyimi yorumları kaynak kodda tarih + firma + VKN referansıyla belgelenmiştir.

e-İmza için .NET ortamında hangi kütüphane kullanılmalı?

mm.erp e-imza kütüphanesi RSA + ECDSA (P-256 / P-384 / P-521) algoritmalarını otomatik hash eşleme ile destekler. XAdES-BES envelopeleri, plain c14n, ECDSA-DER encoding ve LF-only output gibi tüm GİB-kritik wire-format kararları sertleştirilmiş; gerçek üretim red/kabul vakalarıyla doğrulanmıştır.

Mali mühür kullanımı için ne gerekli?

USB e-Mali Mühür token (KamuSM tarafından üretilmiş), kart yönetim aracı (AKİS / SafeNet / E-Tugra), 6 haneli kart PIN'i ve Pkcs11SigningKey sınıfı yeterli. CardDriverRegistry.AutoDetect() ile sürücü dosyası (örn. akisp11.dll) otomatik bulunur.

RDP üzerinden mali mühür kullanılabilir mi?

Evet. PKCS#11 sürücüleri RDP redirected smart card'ı görmez — ama Windows Smart Card Service görür. mm.erp WindowsCspSigningKey sınıfı Windows sertifika deposundan (CSP/CNG) çalışır ve RDP'de redirected token'ı şeffafça kullanır. Tek satır kod farkıyla iki yol arasında geçiş yapılır.

İmzalanmış e-Defter dosyası nasıl doğrulanır?

İki katmanlı doğrulama vardır: XAdesBesSigner.Verify hızlı kriptografik doğrulama yapar; DssEquivalentValidator ise EU DSS eşdeğeri 7 yapı taşıyla (FormatChecking, IdentificationOfSigningCertificate, X509CertificateValidation, CryptographicVerification, SignatureAcceptanceValidation, AlgorithmObsolescenceValidation, ValidationContextInitialization) tam zincir doğrulaması yapar. KamuSM kök CA listesi (kamusm-trusted-cas.json) kütüphaneye gömülüdür.

Hangi sertifika türleri destekleniyor?

RSA (1024+ bit, SHA-256/384/512) ve ECDSA (P-256 / P-384 / P-521, eğri-eşleştirmeli SHA). Mali Mühür Sürüm 3 (P-384 ECDSA) ve Sürüm 4 (RSA-2048) birlikte sorunsuz çalışır. Hash algoritması anahtar gücüne göre NIST tavsiyesine uygun otomatik seçilir.

ERP / muhasebe yazılımına nasıl entegre edilir?

Üç yol var: (1) NuGet referansı verip EDefterSigner sınıfını doğrudan kullanmak, (2) SignerCli.exe komut satırı aracını shell-out etmek, (3) Windows servisine HTTP üzerinden istek atmak. Yöntem 1 en hızlısıdır (~150 ms / imza); legacy VB.NET projeler için yöntem 3 izolasyon sağlar.

Lisans ve destek nasıl sağlanıyor?

İç kullanım için ERP İnternet ve Yazılım Hizmetleri Tic. Ltd. Şti. tarafından geliştirilmekte ve bakım yapılmaktadır. 7/24 telefon ve WhatsApp desteği için İletişim bölümüne bakın.

Ma3Api'den çıkın, kontrol sizde olsun.

Tek bağımlılık: .NET 8. Tüm wire-format ayrıntıları sertleştirilmiş. Dökümantasyon yalın.

İletişim

Sorularınız mı var?

7/24 çalışma prensibi ile destek veriyoruz. Size en uygun kanaldan ulaşın.

ERP İnternet ve Yazılım Hizmetleri Tic. Ltd. Şti.

📍 PERPA Tic. Merkezi A Blok · Kat 12 No: 1924 · Şişli / İstanbul

💬 WhatsApp ile yaz
E-posta İletişim e-posta adresi Spam koruması için görsel
Sosyal Facebook · Instagram