using Sarand.Net.Standard.Base.App; using Sarand.Net.Standard.Base.Data; using System; namespace Sarand.BusinessMgr.Net.Standard.Base.Data { //======================================================================= public static class SbmWindowsServiceCrypter { //------------------------------------------------------------------- // Data members. /// /// Encryption is shared between Windows Service app and mobile /// private static readonly String requestDataKey = "~{BusinessMgr}#[WindowsService]&/DataCryption/*|RequestData|"; private static readonly String responseDataKey = "{Sarand}+(BusinessMgr)%\\WindowsService/=@:Response:"; //------------------------------------------------------------------- // R e q u e s t D a t a //------------------------------------------------------------------- /// Encrypt request data public static String EncryptRequestData(String value) { try { return SacsAesIvCrypter.Encrypt(value, requestDataKey); } catch (Exception exc) { SaLogger.Debug("EncryptRequestData " + exc.GetType().Name + ": " + exc.Message); } return value; } /// Decrypt request data public static String DecryptRequestData(String value) { try { return SacsAesIvCrypter.Decrypt(value, requestDataKey); } catch (Exception exc) { SaLogger.Debug("DecryptRequestData " + exc.GetType().Name + ": " + exc.Message); } return value; } //------------------------------------------------------------------- // R e s p o n s e D a t a //------------------------------------------------------------------- /// Encrypt response data public static String EncryptResponseData(String value) { try { return SacsAesIvCrypter.Encrypt(value, responseDataKey); } catch (Exception exc) { SaLogger.Debug("EncryptResponseData " + exc.GetType().Name + ": " + exc.Message); } return value; } /// Decrypt response data public static String DecryptResponseData(String value) { try { return SacsAesIvCrypter.Decrypt(value, responseDataKey); } catch (Exception exc) { SaLogger.Debug("DecryptResponseData " + exc.GetType().Name + ": " + exc.Message); } return value; } //------------------------------------------------------------------- } //======================================================================= }