J'ai donc une situation où je dois passer certains paramètres sur l'URL. Afin de ne pas avoir id = 1 sur l'URL, j'ai ajouté une méthode de cryptage simple pour obfusciter les valeurs. Cela a bien fonctionné dans le pays .Net. Maintenant, cependant, je dois diriger d'une page ASP classique à cette page .net qui attend les paramètres à crypter. Je ne suis pas vraiment familier avec le cryptage ou asp classique et espérais que quelqu'un serait en mesure de me diriger vers une bonne librairie JS, ou simplement fournir une version classique de cette fonction? S'il y a quelque chose qui ne va pas avec le code .Net, j'aimerais avoir des commentaires à ce sujet.Convertir un extrait de C# en vbscript
est ici la méthode de cryptage:
public static string Encrypt(string Input)
{
try
{
key = Encoding.UTF8.GetBytes(EncryptionKey.Substring(0, 8));
var des = new DESCryptoServiceProvider();
Byte[] inputByteArray = Encoding.UTF8.GetBytes(Input);
var ms = new MemoryStream();
var cs = new CryptoStream(ms, des.CreateEncryptor(key, IV), CryptoStreamMode.Write);
cs.Write(inputByteArray, 0, inputByteArray.Length);
cs.FlushFinalBlock();
return Convert.ToBase64String(ms.ToArray());
}
catch (Exception)
{
return "";
}
}
Et voici la méthode de décryptage (je en ai besoin pour décrypter le asp classique texte crypté):
public static string Decrypt(string Input)
{
try
{
key = Encoding.UTF8.GetBytes(EncryptionKey.Substring(0, 8));
var des = new DESCryptoServiceProvider();
var inputByteArray = Convert.FromBase64String(Input);
var ms = new MemoryStream();
var cs = new CryptoStream(ms, des.CreateDecryptor(key, IV), CryptoStreamMode.Write);
cs.Write(inputByteArray, 0, inputByteArray.Length);
cs.FlushFinalBlock();
Encoding encoding = Encoding.UTF8;
return encoding.GetString(ms.ToArray());
}
catch (Exception)
{
return "";
}
}
Merci pour toute aide!
Merci pour l'entrée. J'ai envisagé de le faire à un moment donné, mais j'ai rencontré des problèmes lors de l'exécution de composants COM personnalisés sous IIS x64. Quelqu'un peut-il confirmer que c'est ou n'est pas faisable, et s'il y a des considérations spéciales pour la mise en œuvre sous x64? –
Vous pouvez accéder aux composants COM + personnalisés dans x64. Je ne sais pas si ce sont des étapes personnalisées, mais c'est possible. Nous avons un code hérité qui le fait. – Jab
Allez dans vos options de compilation et sous essai avancé pour le ciblage de processeur x64 spécifiquement et ensuite assurez-vous qu'il est configuré pour s'enregistrer pour COM Interop. Je n'ai pas encore eu de problème une fois que j'ai fait cela. J'ai également trouvé que l'utilisation d'un déploiement .NET fonctionne mieux à l'enregistrement des DLL, bien que j'ai également créé des fichiers BAT, en référençant les commandes regasm manuellement. – RiddlerDev