public void SetPPKey(PublicPrivateKey ppk) { if (ppkey == null) { ppkey = ppk; } else { throw new System.Exception("Already set"); } }
void RunTestPrime() { PublicPrivateKey ppk = new PublicPrivateKey(); long prime = 1000000000000000000; while (!ppk.isPrime(prime)) { prime--; } Debug.WriteLine($"{prime} is prime"); }
public PublicPrivateKey CreateNewKeyPairKey(String HostSystemId) { var rsa = new RSACryptoServiceProvider(); PublicPrivateKey pair = new PublicPrivateKey(); pair.PrivateKey = rsa.ToXmlString(true); pair.PublicKey = rsa.ToXmlString(false); if (_myKeys.ContainsKey(HostSystemId)) { _myKeys.Remove(HostSystemId); } this._myKeys.Add(HostSystemId, pair); return(pair); }
void Run() { PublicPrivateKey ppl = new PublicPrivateKey(); ppl.p = 3; ppl.q = 11; ppl.e = 17; ppl.d = 13; var enc = ppl.Encrypt(9); Debug.WriteLine($"9 encrypted is {enc}"); var dec = ppl.Decrypt(15); Debug.WriteLine($"15 decrypted is {dec}"); }
public PublicPrivateKey GetKeys() { Chilkat.Rsa rsa = new Chilkat.Rsa(); rsa.GenerateKey(1024); string publicKey = rsa.ExportPublicKey(); string privateKey = rsa.ExportPrivateKey(); var data = new PublicPrivateKey() { PrivateKey = privateKey, PublicKey = publicKey }; return(data); }
public string Build() { SigningCredentials signingCredentials; string? kid = null; if (PublicPrivateKey == null) { Certificate.Verify(nameof(Certificate)).IsNotNull(); var securityKey = new X509SecurityKey(Certificate); signingCredentials = new SigningCredentials(securityKey, SecurityAlgorithms.RsaSha512); } else { kid = PublicPrivateKey.Kid.ToString(); var privateSecurityKey = new RsaSecurityKey(PublicPrivateKey.GetPrivateKey()); signingCredentials = new SigningCredentials(privateSecurityKey, SecurityAlgorithms.RsaSha512); } var header = new JwtHeader(signingCredentials); header["kid"] = kid ?? header["kid"]; var addClaims = new List <Claim>(); if (!WebKey.IsEmpty()) { addClaims.Add(new Claim(JwtStandardClaimNames.WebKeyName, WebKey)); } ; var payload = new JwtPayload(Issuer, Audience, Claims.Concat(addClaims), NotBefore, Expires, IssuedAt); var jwtToken = new JwtSecurityToken(header, payload); var tokenHandler = new JwtSecurityTokenHandler(); return(tokenHandler.WriteToken(jwtToken)); }