密碼的作業原理如下;
- 假設我們有明文:“helloworld”
- 和關鍵:“關鍵”
- 密鑰將與明文一起重復,例如;
你好世界
鍵鍵鍵
- 然后我們只需要對明文和密鑰中的每個位元組進行異或運算。
我一直在努力尋找所需的加密密鑰索引。
例如,如果我在 w 我需要用 y 異或它,在 d 我的程式需要知道用 k 異或它。如何告訴我的程式與所需的密鑰元素進行異或?
uj5u.com熱心網友回復:
我相信你在問你需要使用的公式。Vernam 密碼的公式是:
- 用于加密 Ci = Pi ^ Ki
- 用于解密 Pi = Ci ^ Ki
我相信您可以使用兩種方法。你可以;
- 有第二個字串,密鑰重復,直到達到明文的長度。
- 使用密鑰的長度作為您所在的明文索引的模數。
對于后者,它如下所示;
while(str[i] != '\0'){
cipher[i] = str[i] ^ key[i%strlen(key)];
i ;
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/416412.html
標籤:
上一篇:C編程-決策制定
