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 üretim kanıtlı tasarım.

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 anlamına gelir (örn. GİB Görüntüleyici imza üretmez).
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.

sarmalayıcı

MegaeDefter4Net.Signing

EDefterSigner dosya/byte sarmalayıcı · 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 dokü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ı üretim kanıtlı; 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ı üretim kanıtlı. Dokümantasyon yalın.

İletişim

Sorularınız mı var?

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

Demo veya teklif iste

Bilgilerinizi bırakın, 24 saat içinde size dönüyoruz.

Bilgileriniz yalnızca size geri dönüş için kullanılır, üçüncü taraflarla paylaşılmaz.

veya doğrudan iletişim

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