2011-09-26 13 views
5

Bir veritabanında bilgi depolayan bir SOAP WebService'ye bağlanacak Windows (C#), Iphone, Android ve Iphone uygulama geliştiriyorum.C#, ANDROID ve IPHONE arasındaki verileri şifrele

Bu platformlar arasındaki bilgileri şifrelemek/şifresini çözmek için bir yöntem arıyorum. Çapraz platform kütüphanesi var mı?

cevap

2

:

ayrıntılar seçilememektedir göz at. Yapmanız gereken şey her iki platformda da her şeyin aynı olduğundan emin olmaktır:

  1. Aynı mod; CBC veya CTR modunu kullanın.
  2. Aynı IV; açıkça ayarlayın, varsayılanı kullanmayın çünkü farklı sistemlerde genellikle farklı olacaktır.
  3. Aynı anahtar; Açık, ama onlar bayt düzeyinde aynı olması gerekir çünkü metin farklı sistemlerde farklı şekilde kodlanabilir. Kullandığınız kodlamayı açıkça belirtin.
  4. Aynı dolgu; AES için PKCS7 kullanın, yine farklı sistemlerde farklı olabilecek varsayılanlara güvenmeyin.

Ne seçerseniz seçin, işleri açıkça ayarlayın ve varsayılanlara güvenmeyin. Varsayılanlar sistemler arasında farklılık gösterebilir ve herhangi bir farklılık şifre çözme işleminin başarısız olmasına neden olur.

+1

hi her üç platformlar kullanarak bu basit bir demo örnek sağlayabilir? – Pratik

2

MonoTouch ve MonoDroid'te Xamarin'a baktınız mı?

Bu kitaplıkları kullanarak, üç adede yalnızca yerel .Net XML Hizmetlerini kullanabilirsiniz ve tüm arka uç kodunuzu paylaşabilirsiniz.

2

Gelişmiş Şifreleme Standardı (AES) ürününü önermek isterim. Çok güvenli ve eminim ki her platform bu algoritmanın iyi bir varsayılan uygulamasına sahip. @Sascha söylediği gibi AES hemen hemen her platformda kullanılabilir, AES on wikipedia

İlgili konular