public virtual string GenerateIV() { if (this.Encryption) { return(RijndaelCryptograph.GenerateIV()); } return(string.Empty); }
IResources CreateResources() { IResources resources = null; #if UNITY_EDITOR if (SimulationSetting.IsSimulationMode) { Debug.Log("Use SimulationResources. Run In Editor"); /* Create a PathInfoParser. */ //IPathInfoParser pathInfoParser = new SimplePathInfoParser("@"); IPathInfoParser pathInfoParser = new SimulationAutoMappingPathInfoParser(); /* Create a BundleManager */ IBundleManager manager = new SimulationBundleManager(); /* Create a BundleResources */ resources = new SimulationResources(pathInfoParser, manager); } else #endif { /* Create a BundleManifestLoader. */ IBundleManifestLoader manifestLoader = new BundleManifestLoader(); /* Loads BundleManifest. */ BundleManifest manifest = manifestLoader.Load(BundleUtil.GetReadOnlyDirectory() + BundleSetting.ManifestFilename); //manifest.ActiveVariants = new string[] { "", "sd" }; manifest.ActiveVariants = new string[] { "", "hd" }; /* Create a PathInfoParser. */ //IPathInfoParser pathInfoParser = new SimplePathInfoParser("@"); IPathInfoParser pathInfoParser = new AutoMappingPathInfoParser(manifest); /* Create a BundleLoaderBuilder */ //ILoaderBuilder builder = new WWWBundleLoaderBuilder(new Uri(BundleUtil.GetReadOnlyDirectory()), false); /* AES128_CBC_PKCS7 */ RijndaelCryptograph rijndaelCryptograph = new RijndaelCryptograph(128, Encoding.ASCII.GetBytes(this.key), Encoding.ASCII.GetBytes(this.iv)); /* Use a custom BundleLoaderBuilder */ ILoaderBuilder builder = new CustomBundleLoaderBuilder(new Uri(BundleUtil.GetReadOnlyDirectory()), false, rijndaelCryptograph); /* Create a BundleManager */ IBundleManager manager = new BundleManager(manifest, builder); /* Create a BundleResources */ resources = new BundleResources(pathInfoParser, manager); } return(resources); }
protected virtual List <IBundleModifier> CreateBundleModifierChain() { List <IBundleModifier> bundleModifierChain = new List <IBundleModifier>(); bundleModifierChain.Add(new PublishBundleModifier(bundleInfo => true)); if (this.Encryption) { Func <BundleInfo, bool> filter = null; switch (this.FilterType) { case EncryptionFilterType.All: filter = bundle => { return(true); }; break; case EncryptionFilterType.RegularExpression: filter = bundle => { return(Regex.IsMatch(bundle.FullName, this.filterExpression)); }; break; case EncryptionFilterType.BundleNameList: string[] bundles = Regex.Split(this.bundleNames, @"(\s)", RegexOptions.IgnorePatternWhitespace); filter = bundle => { return(Array.IndexOf(bundles, bundle.FullName) >= 0); }; break; } RijndaelCryptograph rijndaelCryptograph = this.GetRijndaelCryptograph(); bundleModifierChain.Add(new CryptographBundleModifier(rijndaelCryptograph, filter)); } if (this.useHashFilename) { bundleModifierChain.Add(new HashFilenameBundleModifier()); } return(bundleModifierChain); }
public virtual string GenerateKey() { if (this.Encryption) { int keySize = 16; switch (this.Algorithm) { case Algorithm.AES128_CBC_PKCS7: keySize = 16; break; case Algorithm.AES192_CBC_PKCS7: keySize = 24; break; case Algorithm.AES256_CBC_PKCS7: keySize = 32; break; } return(RijndaelCryptograph.GenerateKey(keySize)); } return(string.Empty); }