public ActionResult Login() { string str; string str2; string str3; Rsa.CreateKey(out str, out str2, out str3); base.ViewData["n"] = str2; base.ViewData["e"] = str3; base.Session["key"] = str; base.ClearCookie("c"); base.ClearCookie("v"); base.ClearCookie("m"); return(base.View()); }
public void RsaTest() { string publicKey; string privateKey; string testData; string decrypted; byte[] encrypted; byte[] bytes; byte[] sign; testData = "Hello World! ppppppppppppppppppppppppppppp" + "pppppppppppppppppppppppppppppppppppppppppp" + "pppppppppppppppppppppppppppppppppppppppppp" + "pppppppppppppppppppppppppppppppppppppppppp" + "pppppppppppppppppppppppppppppppppppppppppp" + "pppppppppppppppppppppppppppppppppppppppppp" + "pppppppppppppppppppppppppppppppppppppppppp" + "pppppppppppppppppppppppppppppppppppppppppp" + "pppppppppppppppppppppppppppppppppppppppppp" + "pppppppppppppppppppppppppppppppppppppppppp" + "pppppppppppppppppppppppppppppppppppppppppp" + "pppppppppppppppppppppp"; Rsa rsa = new Rsa(); (publicKey, privateKey) = rsa.CreateKey(); bytes = Encoding.UTF8.GetBytes(testData); sign = rsa.Sign(bytes, privateKey); if (sign.Equals(testData)) { Assert.Fail("署名に失敗"); } if (!rsa.Verify(bytes, sign, publicKey)) { Assert.Fail("検証に失敗"); } bytes[0] = 100; bytes[1] = 200; if (rsa.Verify(bytes, sign, publicKey)) { Assert.Fail("改ざんされているのに検証に成功"); } }