13 Nisan 2026

TROIA Web Service’te Encryption ve Compression Neden Sık Karışır?

TROIA Web Service’te şifreleme ve sıkıştırma çoğu zaman aynı şey sanılır. Oysa encryption bir güvenlik seçimi, compression ise boyut optimizasyonudur. Bu teknik not, iki kavramı sahadaki karışıklıklarıyla birlikte netleştirir.

Yazar: Fatih Görgülü

TROIA Web Service şifreleme ve sıkıştırma ayrımını vurgulayan kapak görseli

TROIA Web Service tarafında encryption ve compression aynı torbaya konur, ama aynı şey değildir. Encryption, verinin güvenli taşınmasını sağlar. Compression ise payload’ı küçültür. İkisini karıştırmak, sahada en çok destek alan hata sınıfıdır.

Encryption ne zaman devreye girer?

Encryption varsayılan değildir. login() çağrısında Encrypted=true gönderildiğinde sunucu bir EncryptionKey döndürür. Bu anahtar UTF-8 byte dizisine çevrilir ve AES/CBC/PKCS7/128 yapılandırmasıyla kullanılır.

  • Encrypted bağlantıda Parameters string’i şifrelenir.
  • Şifreli veri Base64 formatına çevrilir ve öyle taşınır.
  • Response için Base64 → byte → decrypt → UTF-8 sırası uygulanır.

Compression nasıl çalışır?

Compression, belirli boyutun üzerindeki response’larda devreye girer. Sistem response’u byte dizisine çevirir, zip stream ile sıkıştırır ve Base64 formatında taşır. Compressed flag, bu durumun göstergesidir.

  • Response boyutu belirli eşiği aşarsa compress edilir.
  • Compressed=true ise Base64 → byte → decompress → UTF-8 yapılır.
  • Şifreli response’larda compression uygulanmaz.

İkisi bir arada kullanılıyorsa

Encryption ve compression birlikte kullanılabilir ama sıra önemlidir. Şifreli bağlantıda parametre sıkıştırılacaksa, önce şifrele sonra sıkıştır kuralına sadık kalmak gerekir.

  • Encryption ve compression sırası karışırsa payload çözülemez.
  • Sunucu şifreli response’a compression uygulamaz; bunu varsayım yapma.
  • Compressed flag ve encryption tercihi birlikte okunmalıdır.

Sahada en sık yapılan hatalar

  • Encrypted=true gönderip parametreleri şifrelememek.
  • EncryptionKey’i byte dizisine çevirmeden kullanmak.
  • Compressed=true olduğu halde response’u açmamak.
  • Şifreli response’u compress edilmiş sanmak.
  • Base64/UTF-8 dönüşümlerini yanlış sırada yapmak.

Mini kontrol listesi

  • Encrypted bağlantıda: login → EncryptionKey → encrypt → Base64.
  • Compressed response: Base64 → decompress → UTF-8.
  • Encrypted response: Base64 → decrypt → UTF-8.
  • Her çağrıda SessionId + SecurityKey var mı?

İlgili okumalar

TROIA callService() nasıl çalışır?, TROIA Web Service rehberi, Canias ERP ana sayfa.

Canias cluster içinde

Bu yazı Canias, go-live, steering veya fit-gap hattının bir parçası. Landing ve rehberlerle birlikte okunduğunda daha güçlü bir karar çerçevesi verir.

İlgili yazılar

TROIA Web Service’te Encryption ve Compression Neden Sık Karışır? | Fatih Görgülü | Fatih Görgülü