Cryptography 以函数(a,B)=函数(B,a)的方式输出唯一值的函数

Cryptography 以函数(a,B)=函数(B,a)的方式输出唯一值的函数,cryptography,Cryptography,你会怎么做一个函数,让我从两个输入中得到一个唯一的输出,这样输入的顺序就不重要了?类函数(A,B)=函数(B,A) A和B是字符串将A和B解释为整数,并返回第A个素数乘以第B个素数 例如,假设素数=2,3,5,7,…,则: f(2,3) = f(3,2) = 3*5 = 15 A和B是什么类型?这里与密码学有什么关系F(a,b)=a+b通常,“函数”被称为二元运算符,您所寻求的属性被称为交换属性。实现这一点的方法很多很多。有一些大家都熟悉的简单的交换算子,比如+和*。还有一些更复杂的方法,例如

你会怎么做一个函数,让我从两个输入中得到一个唯一的输出,这样输入的顺序就不重要了?类函数(A,B)=函数(B,A)


A和B是字符串

将A和B解释为整数,并返回第A个素数乘以第B个素数

例如,假设
素数=2,3,5,7,…
,则:

f(2,3) = f(3,2) = 3*5 = 15

A和B是什么类型?这里与密码学有什么关系
F(a,b)=a+b
通常,“函数”被称为二元运算符,您所寻求的属性被称为交换属性。实现这一点的方法很多很多。有一些大家都熟悉的简单的交换算子,比如+和*。还有一些更复杂的方法,例如,让A OP B=SHA256(X | Y)=B OP A,其中X和Y是A,B的排序顺序,对于您选择的一致顺序。是的,排序也是我想到的第一件事。并且需要一个散列来将值恢复到正常大小(否则,仅仅串联本身就可以完成这项工作)。加密安全的散列当然只是实际意义上的唯一。查找第A个素数并不容易,但下一个素数却很难。@kelalaka OP没有说它需要易于计算。我认为这是一个理论问题。