Слушатель завершения для операций записи будет вызываться, когда запись была зафиксирована в базе данных на серверах Firebase. Когда вы в автономном режиме, этого не произойдет.
Невозможно отменить подписку на слушателя завершения. Если слушатель все еще существует, когда операция записи завершена, он будет вызываться.
Ну, Вы не упоминали, что встроенный класс не покрывает Вашу потребность, таким образом, как насчет Системы. Безопасность. Криптография. RSACryptoServiceProvider?
Это имеет квалифицированные способы большого набора асимметрично шифровать/дешифровать потоки.
Существует несколько учебных руководств/руководств для взятия Вас по пути:
http://www.codeproject.com/KB/security/RSACryptoPad.aspx
http://www.eggheadcafe.com/articles/20020630.asp
Там являются бесчисленными больше, чтобы быть найденным через Google.
Обновление: О длине-restrictments это, не должны быть никакие проблемы, если Вы просто реализуете тот же буферный алгоритм с обеих сторон, шифрование и дешифрование.
Update2: Да, моим примером был RSACryptoProvider, но можно использовать любой класс, который происходит из Системы. Безопасность. Криптография. AsymmetricAlgorithm, если Вы хотите общедоступное/частное ключевое решение. Или создайте свое собственное... или возможно нет :)
Да, что случилось со встроенными классами?
И если Вы не хотите использовать хранилище сертификатов Windows, можно использовать что-то вроде этого
RSACryptoServiceProvider rscp = new RSACryptoServiceProvider();
rscp.FromXmlString("<RSAKeyValue><Modulus>key data gere</Modulus><Exponent></Exponent></RSAKeyValue>");
Не уверенный, что это - хорошая идея для закрытых ключей, все же.
Существует хорошее учебное руководство на предмете здесь