因此,我试图提供一个安全的应用程序消息通信系统,它提供了 CIA 的所有好处。
我有一个发件人和一个收件人。
发件人密钥:私人 = (55,27) 公共 = (55,3)
接收器密钥:私有 = (35, 29) 公共 = (35,29)
在这个特定场景中,我使用了 RSA、数字签名和移位密码。
但是,由于某种原因,在将其实现到代码中时,我被卡住了。
对于我的特殊情况:
我有消息字符串“CIS”
在决定 Ks (5) 之后
我使用 ShiftCipher 将所有字母按指定的 Ks 移动,并收到消息“hnx”,在使用 ASCII 转换为 bigInteger 后,我得到 204210220。(这是在每个值加上 100 后得到 3 个数字)信。)
所以这是我在逐步过程中迷失的地方。
据我了解。我首先对消息进行哈希处理。因此,在决定哈希为 6 时,(204210220 % 6) 我得到 4。
然后,我加密散列消息。这将是 Ka-(H(m)) 或其他 4^26 mod 55。这让我得到 49。
我想使用数字签名来集成它。这将是
47^27 mod 55。这让我得到了答案 53。
接下来,我会用 Bob 的公钥 Ks,所以 5^29 mod 35,得到 10。
在此之后,我对该怎么做感到困惑。
据我所知,我想加密 53 个密钥,但我对哪个密钥感到困惑。
除此之外,在最终将所有这些发送给接收者之后,由于散列是一种单向函数,他们应该如何获取消息?
我已经在多个不同类的代码中实现了这一切,这些类来回传递值,所以我认为只输入我的逻辑会更容易,所以道歉!
任何帮助将不胜感激!