我需要在单词中打乱字符。而且这种加扰绝不能是随机的。换句话说,每次加扰(在同一个词上)新结果必须等于上次加扰结果(在同一个词上)。非常简单的例子是 XOR。但是 XOR 很容易解码,我需要更多的力量。你能推荐一个同样适用于 C# 和 Javascript 的库吗?
谢谢你的任何建议!:)
我需要在单词中打乱字符。而且这种加扰绝不能是随机的。换句话说,每次加扰(在同一个词上)新结果必须等于上次加扰结果(在同一个词上)。非常简单的例子是 XOR。但是 XOR 很容易解码,我需要更多的力量。你能推荐一个同样适用于 C# 和 Javascript 的库吗?
谢谢你的任何建议!:)
random
如果你真的想打乱字符, 你可以使用固定种子:
string input = "hello";
char[] chars = input.ToArray();
Random r = new Random(2011); // Random has a fixed seed, so it will always return same numbers (within same input)
for (int i = 0 ; i < chars.Length ; i++)
{
int randomIndex = r.Next(0, chars.Length);
char temp = chars[randomIndex];
chars[randomIndex] = chars[i];
chars[i] = temp;
}
return new string(chars);
尽管我不太同意您尝试做的事情,但这里有一个指向 MD5 javascript 库的链接(假设您尝试做的是某种加密)。至于 C# 部分,它是一个内置功能。
您可以使用任何内置的 .NET 类来生成随机数并使用它们来打乱您的字符串。对于所有后续加扰尝试,您可以使用第一次加扰操作的结果。这假设第一次调用的结果存储在某处。