Witam. Próbuje zaszyfrować przy pomocy RSA pewne dane, niestety zamiast docelowej tablicy byteów o rozmiarze 128, dostaje tablice o rozmiarze 129.. Co mi kompletnie nie pasuje. Czy ktoś widzi problem?

 public byte[] EncryptData(byte[] data2Encrypt)
{
    string key = "109120132967399429278860960508995541528237502902798129123468757937266291492576446330739696001110603907230888610072655818825358503429057592827629436413108566029093628212635953836686562675849720620786279431090218017681061521755056710823876476444260558147179707119674283982419152118103759076030616683978566631413";
    RSACryptoServiceProvider rsa = new RSACryptoServiceProvider(1024);

    BigInteger intk;
    BigInteger.TryParse(key, out intk);

    RSAParameters privateKey = new RSAParameters();
    byte[] expont = { 1, 0, 1 };
    byte[] modulus = intk.ToByteArray();

    Logger.log(Log_Type.ERROR, "Pierwszy bit: " + modulus[0]);
    privateKey.Exponent = expont;
    privateKey.Modulus = intk.ToByteArray();

    rsa.ImportParameters(privateKey);
    return rsa.Encrypt(data2Encrypt, false);
}