Voy a responder tu pregunta al final. Por favor, revise esto primero para obtener un contexto de mi respuesta:
RSA es un algoritmo de cifrado asimétrico. Por lo tanto, genera un par de claves privada / pública.
Cuando dices que estás compartiendo las claves de A con B, solo debes compartir la clave pública de A. De manera similar, la clave pública de B debe compartirse con A. Esto se puede hacer colocando la clave pública en un certificado y enviando el certificado. O bien, la clave pública también se puede enviar en un archivo de texto tal como está. Pero la clave privada de A permanecerá con A y la clave privada de B permanecerá con B.
Ahora, lo que A debe hacer es generar un número aleatorio, por ejemplo, X, cifrar X con la clave pública de B y enviarlo a B. B lo desencripta con su clave privada.
B generará un número aleatorio Y, cifrará Y con la clave pública de A y lo enviará a A. A lo desencripta con su clave privada.
En este punto, tanto A como B tendrán X y Y. Ahora, pueden generar una clave de sesión AES a partir de X e Y (por ejemplo, tan simple como multiplicarlas y formar XY). Esta clave de sesión se puede utilizar para cifrar / descifrar los datos de la aplicación.
Por lo general, así es como se genera una clave de sesión AES. RSA proporciona una forma de intercambiar los componentes de una clave y los componentes se juntan para formar la clave real. La clave real se utiliza en AES para el cifrado / descifrado.
Ahora que viene a su pregunta, está preguntando "¿es aceptable que tanto A como B estén preconfigurados con una clave secreta AES-256 (en lugar de claves secretas RSA-2048) que se usa para generar un AES? -256 clave de sesión? "
La respuesta es que el objetivo principal de usar RSA es actuar como un mecanismo de intercambio de claves para obtener una clave AES. Si tanto A como B están preconfigurados con la misma clave AES, no tiene sentido utilizar RSA. Puede cifrar / descifrar directamente usando la clave AES. De todos modos, AES es más rápido que RSA ( enlace y claves de sesión de encriptación simétrica en SSL / TLS ).