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