public void PublicKeyLength()
        {
            var publicKey = @"-----BEGIN PUBLIC KEY-----
MIIBCgKCAQEAzOmgHr6eI+2uDGCYkEg+aGGxcRwRWYL7g6ynwMxunYdPMw6Kylym
xP5bEGn9s7svfvQdklJNeqU/QdnyNflne70SHB4m7hNYimF8mNbJyUPGs4nIkHW2
jtRmJUeWR3RYcB9upMsNWcZG2wej7oV5eDmVrF7haeMIrQKSU4/IypYgc5coZWf6
EXAdjRPYddpjyS1GaatSBqVp66hlQB8GchcxogTxbWN/jcQp8VwAptK2hx5r/K9C
H9DxWR0VM/m9OIbmrC5cKbksn41OtwpaMe/1KErODVbmVuYm/ol+TCO7CV2Tumoc
F5VttjXLf59tV6ikrhMmuY8fUlnFW1ujvwIDAQAB
-----END PUBLIC KEY-----";

            var keyString = MyRsa.ReadPublicKeyFromPem(publicKey);

            var key = Convert.FromBase64String(keyString);

            Console.WriteLine($"{key.Length}   {keyString.Length}");


            var rsa = RSA.Create(1024);

            var privateKey1 = rsa.ExportRSAPrivateKey();
            var publicKey1 = rsa.ExportRSAPublicKey();


            Console.WriteLine($"{privateKey1.Length}   {publicKey1.Length}");
        }
        public void Signature5()
        {
            // flutter: https://pub.dev/packages/fast_rsa

            var originalText = "UN1VF5P1xviwAj1cvM7IhGZXC9GS8eDpPGxuHV+rqLL2jKlV9oVA43RXVatKcLmmLEhVjlGvtmLFLEM5caCdqOvqlhj6OorrZn+U/VkGGKpuDqmwyUBiY3sp3iLNDwde41LT5Bd5wTASd+s3Pw+V/w==2021-06-02T13:38:00:00";
            var signature = "ob9yALOJQJ3M7726PVwG82X9WjFmdZD/UVeVJAAVL7PIwBJzyGpLp7sFJDi/ZPuXius0y2E+1SOgK7J7VWOYomI5g/64eS8IVjuGAEeHx8S0zJTcNC5HRZI19o5vhgZ5tC3uby8iWWAz2gY30k46Q1VRpuSxAZ0Lw53iHz50I8iEEqD7XJrZ1y2VF+W7vNc6E10iMqrVrgBPoYSAMxHLMD9SR5TOCdUWmouenP7ozMJH3fWLMKHgQ2RZES/sGkTAAbLGZJbMftvH4/sZBWzVQkQ4+rn9jvYSYR6roBfFpR9Tvy8EIAVfZ4EpNR88XmPExIn8bJnH49NrvXoQFfNL5Q==";
            var publicKey = "MIIBCgKCAQEA2rSzrUP+HCjNorb0pH7WpBuc7PiJ6H3ggqvPPoFj937bAiEjs5BP0WTyXcO1GyDdpmHREYMqSupL8cxA9npMbAydt+5Bz9erO9g13ebLm8Q1McBnuzTA02lODj+krESjGbcCJznQ7NGouckcEeNmm/DNp87ozJA8Ng1OwBPEnpm7e/iWQeNsKZy/A1CIJ95oFEDXsqAyqI6+9URuxKOFMKKHhr+DQOtpSlCjE/wWLUKg35DSsHFzpQnxGX4H0PblEeVmoS9qqy0spY+9DDd3RHAdMowTZyZbFN2J4Ahme6Ba1OYLxizbPBfP6jZUJI10kFZljXfN6yzJwmLhrWQ7TQIDAQAB";

            var result = MyRsa.ValidateSignature(originalText, signature, publicKey);

            Assert.IsTrue(result);
        }
        public void Signature3()
        {
            // flutter: https://pub.dev/packages/fast_rsa

            var originalText = "070098c1499e4760a5c1d7888f0e4378_2021-04-28T14:38:13";
            var signature = "Jb1fOu6tPxYPnf0vn7B4/lp17iaBTiLTExQ7O13TxqE8RywO6W1p8uQ1uAIfFIYcDFTGA06QKwk0lZyybMAjMIFtP59NsTyeicPVKnPfu+1ukTDt28yYRdUGj9ZMd1zHh5llaaH8tLHH8JG2WmyKAefuyk5vRanegftQfc5QcpDeKiobI3AVGhPUy7edOx1lMlWrIaKgR3mHc/psmDH2FVBZF5P3aOE6O6Pnn/4ZG0WzRoTTF9Btr+3qV5dry0NldlCQKSHldltEhQlBTWJwTBao24RDmgRuahR40WGn5d+5mersMsMVjP5nsI7Fp7HjEIJmvPd6nO7cYbBaTz5N2w==";
            var publicKey = "MIIBCgKCAQEAzOmgHr6eI+2uDGCYkEg+aGGxcRwRWYL7g6ynwMxunYdPMw6KylymxP5bEGn9s7svfvQdklJNeqU/QdnyNflne70SHB4m7hNYimF8mNbJyUPGs4nIkHW2jtRmJUeWR3RYcB9upMsNWcZG2wej7oV5eDmVrF7haeMIrQKSU4/IypYgc5coZWf6EXAdjRPYddpjyS1GaatSBqVp66hlQB8GchcxogTxbWN/jcQp8VwAptK2hx5r/K9CH9DxWR0VM/m9OIbmrC5cKbksn41OtwpaMe/1KErODVbmVuYm/ol+TCO7CV2TumocF5VttjXLf59tV6ikrhMmuY8fUlnFW1ujvwIDAQAB";

            var result = MyRsa.ValidateSignature(originalText, signature, publicKey);

            Assert.IsTrue(result);
        }