OK, właśnie dotknąłeś przysłowiowej bomby, więc dalej postępuj ostrożnie ;)
Jeśli to jest cokolwiek poza prywatnym projektem robionym dla siebie, tj. np. jest komercyjnym projektem robionym w pracy, plz plz plz wynajmijcie konsultanta od kryptografii stosowanej, żeby z Wami usiadł nad projektem i powiedział jakiego rodzaju krypto gdzie i jak użyć. Jeśli nie macie żadnego eksperta od kryptografii stosowanej w zespole, to jest bardzo prawdopodobne, że strzelicie sobie w stopę źle używając kryptografii i stworzycie tylko pozór jakiegokolwiek bezpieczeństwa.
Jeśli natomiast to prywatny projekt do nauki, to kontynuujmy wątek :)
Pytanie pierwsze i zasadnicze: jaki masz "threat model", tj. szyfrując dane jakich konkretnie sytuacji chcesz uniknąć i co chcesz z tymi danymi robić?
Tj. czy te dane leżą na dysku i chcecie uniknąć przypadku, w którym kradzież wyłączonego komputera spowoduje dostęp do danych? A może musicie te dane przesyłać pomiędzy różnymi odbiorcami? Etc. Czym więcej o sposobie użycia tych danych napiszesz, tyle trafniej można dobrać choćby rodzinę algorytmów.
RSA jest raczej archaiczne (mimo, że nadal używane) btw, i, z uwagi na bycie szyfrem asymetrycznym, stosowane tylko w konkretnych przypadkach. Plus samym RSA za dużo danych nie zaszyfrujesz (z definicji m, czyli niezaszyfrowane dane, muszą być mniejsze - licząc w bitach - od n, czyli kinda od klucza). Plus tam jeszcze są problemy z paddingiem. Ogólnie dużo lepiej jest użyć gotowych schematów niż próbować używać poszczególnych algorytmów poskładanych "ręcznie" razem.