ComponentFactory.Krypton.Ribbon.EncryptedLicenseProvider.GenerateLicenseParameters C# (CSharp) Méthode

GenerateLicenseParameters() public méthode

Generate the XML license parameter string that is used to validate licenses generated using the given password
public GenerateLicenseParameters ( string password ) : string
password string The password used to encrypted the license data
Résultat string
        public string GenerateLicenseParameters(string password)
        {
            RSACryptoServiceProvider rsa = new RSACryptoServiceProvider(1024);
            string rsaParam = rsa.ToXmlString(false);

            byte[] designKey = GetEncryptionKey(password);
            byte[] designSignature = rsa.SignData(designKey, new SHA1CryptoServiceProvider());

            // encrypt the design key to produce the runtime key
            //
            DESCryptoServiceProvider des = new DESCryptoServiceProvider();
            des.Key = _desKey;
            des.IV = designKey;
            byte[] encKey = des.CreateEncryptor().TransformFinalBlock(designKey, 0, designKey.Length);
            byte[] runtimeKey = new byte[ArraySize(8)];
            Array.Copy(encKey, 0, runtimeKey, 0, keyLength);

            // sign the runtime key
            //
            byte[] runtimeSignature = rsa.SignData(runtimeKey, new SHA1CryptoServiceProvider());

            // write the license parameters out to an XML string
            //
            MemoryStream stream = new MemoryStream();
            XmlTextWriter writer = new XmlTextWriter(stream, Encoding.ASCII);
            writer.WriteStartElement("LicenseParameters");
            writer.WriteRaw(rsaParam);
            writer.WriteElementString("DesignSignature", Convert.ToBase64String(designSignature));
            writer.WriteElementString("RuntimeSignature", Convert.ToBase64String(runtimeSignature));
            writer.WriteEndElement();
            writer.Close();
            string xml = ASCIIEncoding.ASCII.GetString(stream.ToArray());
            stream.Close();
            return xml;
        }