我尝试加密从文本文件中读取的仿射密码。我的.txt
个文件包含两个密钥:alpha
和beta
。 Alpha
应该是一个奇数,因为gcd(alpha, 26)==1
并生成随机密钥。这是我的代码:
beta = rand() % 26;
但加密无法正常工作。例如:加密后的单词"bahar"
加密后会出现在"XWDWN"
字词中,但应该是"M"
而不是"X"
。密钥为alpha = 3
和beta = 9
,但我的代码选择为key (1, 22) alpha=1 beta=22
。已经选择了不断的alpha "1"
。另一种加密例如(1, 17)
..等等。
答案 0 :(得分:1)
这是加密的方式
putc(((toupper(p) - 'A')*alpha + beta) % 26 + 'A', cipher);